Vo svojom každodennom pracovnom toku pracujem s mnohými vzdialenými systémami Linux, väčšina z nich je založená na Debiane.
Môžem vám otvorene povedať, že niekedy je pre SSH veľmi únavné vykonať všetky stroje, vykonať aktualizáciu apt-get a potom skontrolovať, či nie sú k dispozícii žiadne aktualizácie, a nainštalovať ich. Aj keď sa prihlasujete SSH bez hesla, trvá to nesmierne dlho.
Keď sa neustále pýtam, ako môžem tento proces zautomatizovať? Našiel som Ansible!
V tomto návode vám ukážem, ako využiť tento výkonný automatizačný nástroj na aktualizáciu všetkých vašich vzdialených systémov pomocou programu apt. Udržiavanie aktuálnosti a používanie všetkých opráv vo vašom systéme pomôže zaistiť bezpečnosť vášho systému.
Čo je možné?
Ansible je výkonný automatizačný nástroj, ktorý vám umožňuje vzdialenú a automatickú konfiguráciu a správu systémov. Okrem toho ponúka presvedčivé funkcie, ako je vzdialená inštalácia softvéru, vracanie zmien v prípade chýb, zálohovanie, vzdialené sťahovanie a mnoho ďalších.
Ansible sa tiež veľmi ľahko používa. Využíva súbory YAML, ktoré sa ľahko zapisujú a sú dobre čitateľné, a vysokú úroveň zabezpečenia, pretože na prihlásenie a správu systémov používa SSH.
Správa viac ako jedného systému z jedného nástroja je viac ako triumfálne a každý správca systému by mal byť oboznámený, ak ešte nepoužíva nástroj Ansible.
Inštalácia Ansible
Keďže chvály Ansible nie sú v poriadku, pozrime sa na inštaláciu Ansible na našom lokálnom počítači na správu vzdialených serverov.
V tomto návode budem ako svoj miestny počítač používať Ubuntu 20.10. Ak sa chcete dozvedieť, ako nainštalovať Ansible na iné systémy, pozrite sa do dokumentácie.
V systéme Ubuntu použite príkazy:
sudo apt aktualizáciasudo apt install software-properties-common
sudo add-apt-repository --yes --update ppa: ansible/ansible
sudo apt install ansible
Možné pridanie hostiteľov
Ak nie ste oboznámení s Ansible, prvým krokom je vytvorenie inventára vzdialených počítačov, ktoré chcete automatizovať. Môžete to urobiť úpravou súboru/etc/ansible/hosts.
Ak chcete pridať servery Debian, zadajte položky ako:
[debian]192.168.0.13
Môžete zadať IP adresu vzdialeného hostiteľa alebo použiť názov hostiteľa zariadenia.
Keď máme v konfiguračnom súbore zoznam hostiteľov, ktorých máme spravovať, môžeme pokračovať a automatizovať aktualizácie.
Aktualizujte pomocou vhodného modulu
Na vzdialenú aktualizáciu a správu balíkov na počítačoch s operačným systémom Debian používame modul apt poskytovaný spoločnosťou Ansible. Modul apt nám umožňuje spravovať balíky apt s inými konfiguráciami.
Aktualizujte vyrovnávaciu pamäť úložiska
Na aktualizáciu vyrovnávacej pamäte úložiska pomocou programu Ansible môžeme použiť playbook, ako je uvedené nižšie:
- hostitelia: debian
stať sa: áno
stať sa_metódou: sudo
úlohy:
- názov: „Aktualizovať vyrovnávaciu pamäť úložiska“
výstižné:
update_cache: pravda
cache_valid_time: 3600
force_apt_get: pravda
Uložte súbor a spustite ho pomocou príkazu ako:
ansible-playbook-užívateľ = debian apt.yamlSpustí sa príručka a vykonajú sa zadané úlohy. Výstup je nasledujúci:
V hernom zošite Ansible začneme zadaním hostiteľov. V tomto prípade chceme iba hostiteľov Debianu.
Ďalej sme ho nastavili tak, aby sa stal pravdivým, a umožnil používateľovi zvýšiť oprávnenia pomocou sudo, ako je uvedené v príkazu become_method.
Nakoniec sme nastavili úlohy na aktualizáciu vyrovnávacej pamäte úložiska. Nastavili sme tiež cache_valid_time ako 3600, ktorý obnovuje vyrovnávaciu pamäť, ak je staršia ako uvedený čas.
POZNÁMKA: Namiesto aptitude použite force_apt-get.
Inovujte všetky balíky
Môžeme tiež aktualizovať všetky balíky v systéme, ktoré zodpovedajú príkazu:
Aby sme to urobili pomocou playlistu Ansible, pridáme súbor yaml ako:
---- hostitelia: všetci
stať sa: áno
stať sa_metódou: sudo
úlohy:
- názov: „Aktualizovať vyrovnávaciu pamäť a úplnú aktualizáciu systému“
výstižné:
update_cache: pravda
aktualizácia: dist
cache_valid_time: 3600
force_apt_get: pravda
Podobne spustite vyššie uvedený Ansible Playbook, ako je uvedené v prvom príkaze.
Záver
V tomto návode sme si rýchlo prešli, čo je Ansible, čo ponúka a ako môžeme pomocou jeho modulov vykonať aktualizáciu systému na systéme založenom na Debiane.
Ďakujem & Happy Automation