Kako instalirati i konfigurirati odgovorni upravljački čvor - 2. dio


U prethodnoj smo temi naučili o seriji Ansible), pokazat ćemo kako možete instalirati i konfigurirati kontrolni čvor Ansible na RHEL 8.

U našem postavljanju koristit ćemo 1 Ansible poslužitelj i 2 udaljena Linux čvora:

Control Node 1: RHEL 8 Server     IP: 192.168.0.108         Ansible Server
Managed Host 1: Debian 10         IP: 192.168.0.15          Webserver
Managed Host 2: CentOS 8          IP: 192.168.0.200	    Database Server

Kontrolni čvor je Linux poslužitelj koji ima instaliran Ansible i koristi se za upravljanje udaljenim hostovima ili čvorovima. Ovi udaljeni sustavi poznati su kao Upravljani hostovi ili Upravljani čvorovi.

U gore navedenom podešavanju, kontrolni čvor je RHEL 8 poslužitelj na koji će biti instaliran Ansible, a Debian 10 i CentOS 8 upravljani hostovi.

NAPOMENA: Ansible je instaliran samo na kontrolnom čvoru, a ne i na upravljanim hostovima.

Korak 1: Instalacija Pythona 3

Prema zadanim postavkama RHEL 8 dolazi s Pythonom 3 i izvedbom možete provjeriti verziju Pythona instaliranu na vašem poslužitelju.

# python3 -V

Ako iz bilo kojeg razloga Python3 nije instaliran, instalirajte ga pomoću sljedeće dnf naredbe.

# dnf install python3

Ako na vašem sustavu RHEL 8 postoji više verzija Pythona, možete pokrenuti Python 3 kao zadanu verziju Pythona.

# alternatives --set python /usr/bin/python3

Korak 2: Omogućite službeno spremište RedHat

Nakon instalacije Python3, provjerite jeste li omogućili službeno spremište RedHat-a za Ansible, kao što je prikazano u nastavku.

# subscription-manager repos --enable ansible-2.8-for-rhel-8-x86_64-rpms

NAPOMENA: Da bi gornja naredba funkcionirala, osigurajte da ste registrirali svoju RHEL 8 za RedHat pretplatu.

Korak 3: Instalirajte Ansible na RHEL 8

Da biste instalirali Ansible na kontrolnom čvoru, koji je naš sustav RHEL 8, pokrenite naredbu.

# dnf install ansible -y

Jednom instaliranu verziju programa Ansible možete provjeriti pokretanjem naredbe.

# ansible --version

Korak 4: Stvaranje statičke datoteke inventara hosta

Do sada smo uspješno instalirali ansible na Control Node koji je naš RHEL 8 poslužitelj. Udaljeni čvorovi kojima upravlja kontrolni čvor moraju se definirati u datoteci koja se naziva datoteka inventara. Datoteka inventara je obična tekstualna datoteka koja se nalazi na kontrolnom čvoru i sastoji se od imena hosta ili IP adresa udaljenih hostova.

Statička datoteka hosta je obična tekstualna datoteka koja sadrži popis upravljanih čvorova definiranih njihovim IP adresama ili imenima hostova. Stvorimo statičku datoteku ‘hosts’ u direktoriju/etc/ansible /.

# vi /etc/ansible/hosts

Zatim definirajte grupu ili grupe za upravljane hostove. Imamo 2 upravljana hosta kao što se ranije vidjelo u postavljanju pri uvodu ove teme. Iz postava će statička datoteka hosta biti definirana kako slijedi:

[webserver]
192.168.0.15

[database_server]
192.168.0.200

Spremite i zatvorite datoteku inventara.

Za popis pokrenutih upravljanih hostova:

# ansible all -i hosts --list-hosts

Do sada smo uspjeli instalirati Ansible u kontrolni čvor i definirati upravljane hostove u statičkoj datoteci hosta koja se nalazi na kontrolnom čvoru.

Dalje, vidjet ćemo kako možemo upravljati ili kontrolirati svoje udaljene ili upravljane hostove.

Korak 5: Postavite odgovorni upravljački čvor za povezivanje s udaljenim čvorovima

Da bi upravljački čvor Ansible (RHEL 8) upravljao sustavima udaljenih hostova (Debian 10 i CentOS 8), moramo postaviti SSH autentifikaciju bez lozinke za udaljene hostove. Da bi se to dogodilo, trebate generirati par SSH ključeva i spremiti javni ključ na udaljene čvorove.

Na upravljačkom čvoru Ansible prijavite se kao normalan korisnik i izvođenjem para SSH ključeva izvođenjem naredbe.

# su tecmint
$ ssh-keygen

Zatim kopirajte javni ssh ključ na udaljene čvorove kao što je prikazano.

$ ssh-copy-id [email 	        (For Debian 10 node)
$ ssh-copy-id [email 	        (For CentOS 8 node)

Nakon što smo dodali javne ključeve svim našim udaljenim čvorovima, izdat ćemo naredbu ping iz čvora Ansible Control kako bismo osigurali njihovu dostupnost.

$ ansible -m ping all

Iz gornjeg izlaza možemo jasno vidjeti da je naredba ping bila uspješna i uspjeli smo testirati dostupnost svih čvorova.

U ovom smo vodiču uspješno instalirali i postavili Ansible na kontrolnom čvoru koji izvodi RHEL 8. Kasnije smo definirali udaljene hostove u statičkoj datoteci hosta i konfigurirali kontrolni čvor za povezivanje i kontrolu nad upravljanim hostovima postavljanjem SSH autentifikacije bez lozinke.