Wéi installéieren a konfiguréieren en Ansible Control Node - Deel 2


Am viregten Thema léiert Dir iwwer d'Ansible Serie), mir weisen wéi Dir en Ansible Kontrollnode op RHEL 8 installéiere kënnt a konfiguréieren.

An eisem Setup wäerte mir 1 Ansible Server an 2 Remote Linux Noden benotzen:

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

E Kontrollnode ass e Linux Server deen Ansible drop installéiert huet a benotzt gëtt fir Remote Hosten oder Noden ze managen. Dës Fernsystemer si bekannt als Managed Hosts oder Managed Noden.

Am Setup uewendriwwer ass de Kontrollnode den RHEL 8 Server op deem Ansible installéiert gëtt an Debian 10 & CentOS 8 sinn déi verwaltete Hosten.

NOTÉIERT: Ansible ass nëmmen um Kontrollnode installéiert an net de verwalteten Hosten.

Schrëtt 1: Python 3 installéieren

Par défaut kënnt RHEL 8 mat Python 3 an Dir kënnt d'Versioun vum Python verifizéieren op Ärem Server installéiert andeems Dir lafen.

# python3 -V

Wann aus irgend engem Grond Python3 net installéiert ass, installéiere se mat dem folgenden dnf Kommando.

# dnf install python3

Wa verschidde Versioune vu Python op Ärem RHEL 8 System existéieren, kënnt Dir Python 3 als Standard Python Versioun setzen andeems Dir leeft.

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

Schrëtt 2: Offiziell RedHat Repository aktivéieren

Nodeems Dir Python3 installéiert hutt, gitt sécher datt Dir RedHat's offiziellen Repository fir Ansible aktivéiert hutt wéi hei ënnendrënner.

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

NOTÉIERT: Fir datt de Kommando uewe funktionnéiert, gitt sécher datt Dir Ären RHEL 8 fir RedHat Abonnement registréiert hutt.

Schrëtt 3: Installéiert Ansible op RHEL 8

Fir Ansible op de Control Node z'installéieren deen eise RHEL 8 System ass, fuert de Kommando.

# dnf install ansible -y

Eemol installéiert, kënnt Dir d'Versioun vun Ansible iwwerpréiwen andeems Dir de Kommando ausféiert.

# ansible --version

Schrëtt 4: Erstellt eng statesch Hostinventardatei

Bis elo hu mir erfollegräich ansible installéiert op der Kontrollnode, deen eise RHEL 8 Server ass. D'Fernknäppchen, déi vum Kontrollnode verwaltet ginn, mussen an enger Datei definéiert ginn, genannt Inventardatei. D'Inventardatei ass eng einfach Textdatei déi um Kontrollknot wunnt a besteet aus den Hostnamen oder IP Adressen vun den Fernhoster.

Eng statesch Hostdatei ass eng einfach Textdatei déi eng Lëscht vu verwalteten Noden enthält, definéiert duerch hir IP Adressen oder Hostnumm. Loosst eis eng statesch Datei 'Host' erstellen am /etc/ansible/ Verzeichnis.

# vi /etc/ansible/hosts

Als nächst, definéiert eng Grupp oder Gruppe fir Är verwaltete Hosten. Mir hunn 2 geréiert Hosten wéi virdru am Setup bei der Aféierung vun dësem Thema gesi gesinn. Aus dem Setup gëtt déi statesch Hostdatei wéi follegt definéiert:

[webserver]
192.168.0.15

[database_server]
192.168.0.200

Späichert a gitt d'Inventardatei aus.

Fir verwaltete Hosten ze lëschten lafen:

# ansible all -i hosts --list-hosts

Bis elo hu mir et fäerdeg bruecht Ansible am Kontrollnode z'installéieren an déi verwaltete Hosten an enger statesch Hostdatei ze definéieren déi um Kontrollknuet wunnt.

Als nächst wäerte mir kucken wéi mir eis Fern oder verwaltete Hosten verwalten oder kontrolléieren.

Schrëtt 5: Setzt den Ansible Control Node fir mat de Remote Nodes ze verbannen

Fir den Ansible Kontrollnode (RHEL 8) fir d'Remote Host Systemer (Debian 10 an CentOS 8) ze verwalten, musse mir Passwuertlos SSH Authentifikatioun op d'Remote Hosten opsetzen. Fir dëst ze geschéien, musst Dir e SSH Schlësselpaar generéieren an den ëffentleche Schlëssel op de Fernknoten späicheren.

Op der Ansible Kontrollnode, loggt Iech als normale Benotzer un a generéiert de SSH Schlësselpaar andeems Dir de Kommando ausféiert.

# su tecmint
$ ssh-keygen

Als nächst kopéiert den ëffentlechen ssh Schlëssel op Fernknoten wéi gewisen.

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

Nodeems mir d'ëffentlech Schlësselen op all eis Fernknäppchen bäigefüügt hunn, gi mir e Ping Kommando aus dem Ansible Control Node fir sécherzestellen datt se erreechbar sinn.

$ ansible -m ping all

Vun der Ausgab hei uewen kënne mir kloer gesinn datt de Ping Kommando erfollegräich war a mir konnten d'Erreechbarkeet op all Noden testen.

An dësem Guide hu mir erfollegräich installéiert an Ariichten Ansible op der Kontroll Node Lafen RHEL 8. Mir spéider de Remote Hosten an enger statesch Hostdatei definéiert an de Kontrollnode konfiguréiert fir déi verwaltete Hosten ze verbannen an ze kontrolléieren andeems Dir SSH Passwuert ouni Authentifikatioun opstellt.