GNU/Linux >> Znalost Linux >  >> Linux

Stručný úvod do rolí Ansible pro správu systému Linux

Ansible je open source automatizační platforma, která zahrnuje správu konfigurace, nasazení aplikací a orchestraci infrastruktury. Je to oblíbený automatizační nástroj pro inženýry DevOps a pro systémové administrátory. Systémoví administrátoři často čelí kariérnímu vyhoření kvůli dlouhým hodinám a provádění opakujících se úkolů na mnoha systémech, ale Ansible pomáhá tyto úkoly snadněji dokončit. Úkoly, jako je vytváření uživatelů, správa služeb a instalace softwaru, lze provádět pomocí Ansible. Ansible je založen na procedurách spíše než deklarativní, což znamená, že zapíšete všechny požadované kroky do souboru YAML a poté je spustíte postupně na všech cílových systémech.

[ Mohlo by se vám také líbit: Použití příručky Ansible ke správě aktualizací pracovní stanice a serveru ]

Uzly

V architektuře Ansible máte uzel řadiče a spravované uzly. Ansible je nainstalován pouze na uzlu řadiče. Je to nástroj bez agenta a nemusí se instalovat na spravované uzly. Řadič a spravované uzly jsou propojeny pomocí protokolu SSH. Všechny úkoly jsou zapsány do „playbooku“ pomocí jazyka YAML. Každá příručka může obsahovat více přehrání které obsahují úkoly a úkoly obsahují moduly . Moduly jsou opakovaně použitelné samostatné skripty, které spravují některé aspekty chování systému. Moduly Ansible jsou také známé jako zásuvné moduly úloh nebo zásuvné moduly knihoven.

Role

Příručky pro složité úkoly mohou být zdlouhavé, a proto mohou být obtížně čitelné a pochopitelné. Řešením tohoto problému jsou role Ansible . Pomocí rolí můžete dlouhé příručky rozdělit do několika souborů, aby byla každá příručka snadno čitelná a srozumitelná. Role jsou kolekce šablon, souborů, proměnných, modulů a úkolů. Primárním účelem rolí je opětovné použití kódu Ansible. Inženýři a správci systému DevOps by se měli vždy snažit znovu použít svůj kód. Ansible role může obsahovat více playbooků. Může snadno znovu použít kód napsaný kýmkoli, pokud je role vhodná pro daný případ. Můžete například napsat příručku pro hostování Apache a poté tento kód znovu použít změnou obsahu index.html změnit možnosti pro nějakou jinou aplikaci nebo službu.

Následuje přehled struktury role Ansible. Skládá se z mnoha podadresářů, jako například:

|-- README.md
|-- defaults
|-------main.yml
|-- files
|-- handlers
|-------main.yml
|-- meta
|-------main.yml
|-- tasks
|-------main.yml
|-- templates
|-- tests
|-------inventory
|-- vars
|-------main.yml

Zpočátku jsou všechny soubory vytvořeny prázdné pomocí ansible-galaxy příkaz. V závislosti na úkolu tedy můžete tyto adresáře použít. Například vars adresář ukládá proměnné. V tasks adresář, máte main.yml , což je hlavní příručka. templates adresář je pro ukládání šablon Jinja. handlers adresář je pro ukládání handlerů.

Výhody Ansible rolí:

  • Povolit opětovné použití obsahu
  • Umožněte spravovat velké projekty

Dostupné role jsou strukturované adresáře obsahující podadresáře.

Věděli jste ale, že Red Hat Enterprise Linux také poskytuje některé role systému Ansible pro správu úloh operačního systému?

Systémové role

rhel-system-roles balíček je dostupný v kanálu Extras (EPEL). rhel-system-roles balíček se používá ke konfiguraci hostitelů RHEL. Existuje sedm výchozích rhel-system-roles k dispozici:

  • rhel-system-roles.kdump – Tato role konfiguruje službu obnovy po havárii kdump. Kdump je funkce linuxového jádra a je užitečná při analýze příčiny pádu jádra.
  • rhel-system-roles.network – Tato role je vyhrazena pro síťová rozhraní. To pomáhá konfigurovat síťová rozhraní v systémech Linux.
  • rhel-system-roles.selinux – Tato role spravuje SELinux. To pomáhá konfigurovat režim SELinux, soubory, kontext portu atd.
  • rhel-system-roles.timesync – Tato role se používá ke konfiguraci NTP nebo PTP ve vašem systému Linux.
  • rhel-system-roles.postfix – Tato role je vyhrazena pro správu agenta pro přenos pošty Postfixu.
  • rhel-system-roles.firewall – Jak název napovídá, tato role se týká především správy konfigurace brány firewall hostitelského systému.
  • rhel-system-roles.tuned – Tuned je služba ladění systému v Linuxu pro sledování připojených zařízení. Takže tato role je konfigurovat vyladěnou službu pro výkon systému.

rhel-system-roles balíček je odvozen z open source linuxových systémových rolí. Tato role v systému Linux je k dispozici na Ansible Galaxy. rhel-system-roles je podporován Red Hatem, takže si to můžete představit jako rhel-system-roles jsou po proudu systémových rolí Linuxu. Chcete-li nainstalovat rhel-system-roles na vašem počítači použijte:

$ sudo yum -y install rhel-system-roles
or
$ sudo dnf -y install rhel-system-roles

Tyto role jsou umístěny v /usr/share/ansible/roles/ adresář.

Toto je výchozí cesta, takže kdykoli použijete příručky k odkazování na tyto role, nemusíte explicitně uvádět absolutní cestu. Můžete se také podívat na dokumentaci pro použití rolí Ansible. Cesta k dokumentaci je /usr/share/doc/rhel-system-roles

Adresář dokumentace pro každou roli obsahuje podrobné informace o této roli. Příkladem této role je například soubor README.md atd. Dokumentace je jasná.

Následuje příklad role.

Příklad

Pokud chcete změnit režim SELinux místního hostitele nebo jakéhokoli hostitelského počítače, použijte systémové role. Pro tento úkol použijte rhel-system-roles.selinux

Pro tento úkol vypadá ansible-playbook takto:

---

- name: a playbook for SELinux mode
 hosts: localhost
 roles:

- rhel-system-roles.selinux
 vars:

- selinux_state: disabled

Po spuštění playbooku můžete ověřit, zda se režim SELinux změnil nebo ne.

[ Hledáte více o automatizaci systému? Začněte s The Automated Enterprise, bezplatnou knihou od Red Hat. ] 

Sbalit

Tento krátký úvod k rolím Ansible by měl stačit k tomu, abyste je mohli začít používat ve svých příručkách. Pamatujte, že Ansible má zefektivnit a zjednodušit tyto opakující se úkoly a usnadnit život vašeho správce systému.


Linux
  1. Co je Linux? Průvodce pro netechnické uživatele

  2. Demystifikování Ansible pro systémové správce Linuxu

  3. RHCE Ansible Series #10:Role systému RHEL

  1. 10 modulů Ansible pro automatizaci systému Linux

  2. 8 tipů pro spolehlivou automatizaci systému Linux

  3. 10 základních knih o správě systému Linux pro začátečníky i zkušené

  1. Úvod do bpftrace pro Linux

  2. Úvod do emulátoru terminálu DomTerm pro Linux

  3. Úvod do souborového systému Linux