Jinsi ya Kusakinisha na Kusanidi Njia ya Kudhibiti Inayofaa - Sehemu ya 2


Katika mada iliyotangulia, utajifunza kuhusu mfululizo wa Ansible), tutaonyesha jinsi unavyoweza kusakinisha na kusanidi nodi ya kudhibiti Ansible kwenye RHEL 8.

Katika usanidi wetu, tutatumia seva 1 inayotumika na nodi 2 za mbali za Linux:

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

Nodi ya udhibiti ni seva ya Linux ambayo ina Ansible iliyosakinishwa juu yake na inatumika kwa kudhibiti wapangishi wa mbali au nodi. Mifumo hii ya mbali inajulikana kama Wenyeji Wanaosimamiwa au nodi zinazosimamiwa.

Katika usanidi ulio hapo juu, nodi ya udhibiti ni seva ya RHEL 8 ambayo Ansible itasakinishwa na Debian 10 & CentOS 8 ndio wapangishi wanaosimamiwa.

KUMBUKA: Ansible imewekwa tu kwenye nodi ya udhibiti na sio wapangishi wanaosimamiwa.

Hatua ya 1: Kufunga Python 3

Kwa chaguo-msingi, RHEL 8 inakuja na Python 3 na unaweza kuthibitisha toleo la Python iliyosakinishwa kwenye seva yako kwa kuendesha.

# python3 -V

Ikiwa kwa sababu yoyote Python3 haijasanikishwa, isanikishe kwa kutumia dnf amri ifuatayo.

# dnf install python3

Ikiwa matoleo mengi ya Python yapo kwenye mfumo wako wa RHEL 8, unaweza kuweka Python 3 kama toleo la msingi la Python kwa kuendesha.

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

Hatua ya 2: Wezesha Hifadhi Rasmi ya RedHat

Baada ya kusakinisha Python3, hakikisha kwamba umewezesha hazina rasmi ya RedHat kwa Ansible kama inavyoonyeshwa hapa chini.

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

KUMBUKA: Ili amri iliyo hapo juu ifanye kazi, hakikisha kuwa umesajili RHEL 8 yako kwa usajili wa RedHat.

Hatua ya 3: Sakinisha Ansible kwenye RHEL 8

Ili kufunga Ansible kwenye nodi ya Kudhibiti ambayo ni mfumo wetu wa RHEL 8, endesha amri.

# dnf install ansible -y

Mara tu ikiwa imewekwa, unaweza kuangalia toleo la Ansible iliyosanikishwa kwa kuendesha amri.

# ansible --version

Hatua ya 4: Kuunda Faili ya Mali ya Mwenyeji Tuli

Kufikia sasa, tumefanikiwa kusakinisha ansible kwenye Njia ya Kudhibiti ambayo ni seva yetu ya RHEL 8. Nodi za mbali zitakazodhibitiwa na nodi ya kudhibiti zinahitaji kufafanuliwa katika faili inayoitwa faili ya hesabu. Faili ya orodha ni faili ya maandishi wazi ambayo hukaa kwenye nodi ya udhibiti na inajumuisha majina ya wapangishi wa mbali au anwani za IP.

Faili ya mwenyeji tuli ni faili ya maandishi wazi ambayo ina orodha ya nodi zinazodhibitiwa zinazofafanuliwa na anwani zao za IP au majina ya wapangishaji. Wacha tuunde faili tuli 'majeshi' kwenye saraka ya /etc/ansible/.

# vi /etc/ansible/hosts

Kisha, fafanua kikundi au vikundi vya wapangishi wako wanaodhibitiwa. Tuna wapangishi 2 wanaosimamiwa kama ilivyoonekana hapo awali katika usanidi kwenye utangulizi wa mada hii. Kutoka kwa usanidi, faili ya mwenyeji tuli itafafanuliwa kama ifuatavyo:

[webserver]
192.168.0.15

[database_server]
192.168.0.200

Hifadhi na uondoke kwenye faili ya hesabu.

Ili kuorodhesha wapangishi wanaosimamiwa endesha:

# ansible all -i hosts --list-hosts

Kufikia sasa, tumeweza kusakinisha Ansible katika nodi ya udhibiti na kufafanua wapangishi wanaosimamiwa katika faili tuli ya Seva inayoishi kwenye nodi ya udhibiti.

Kisha, tutaona jinsi tunavyoweza kudhibiti au kudhibiti seva pangishi zetu za mbali au zinazosimamiwa.

Hatua ya 5: Sanidi Njia ya Kudhibiti Inayofaa ili Kuunganishwa na Njia za Mbali

Ili nodi ya kidhibiti Ansible (RHEL 8) kudhibiti mifumo ya seva pangishi ya mbali (Debian 10 na CentOS 8) tunahitaji kusanidi uthibitishaji wa SSH usio na nenosiri kwa seva pangishi za mbali. Ili hili lifanyike, unahitaji kuzalisha jozi ya ufunguo wa SSH na uhifadhi ufunguo wa umma kwa nodi za mbali.

Kwenye nodi ya udhibiti Inayowezekana, ingia kama mtumiaji wa kawaida na utengeneze jozi ya ufunguo wa SSH kwa kuendesha amri.

# su tecmint
$ ssh-keygen

Ifuatayo, nakili kitufe cha umma cha ssh kwa nodi za mbali kama inavyoonyeshwa.

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

Baada ya kuongeza funguo za umma kwa nodi zetu zote za mbali, tutatoa amri ya ping kutoka kwa nodi ya Udhibiti Unaofaa ili kuhakikisha kuwa zinaweza kufikiwa.

$ ansible -m ping all

Kutoka kwa pato hapo juu, tunaweza kuona wazi kuwa amri ya ping ilifanikiwa na tuliweza kujaribu kufikiwa kwa nodi zote.

Katika mwongozo huu, tulisakinisha na kusanidi Ansible kwenye nodi ya udhibiti inayoendesha RHEL 8. Baadaye tulifafanua seva pangishi za mbali katika faili ya seva pangishi tuli na kusanidi nodi ya udhibiti ili kuunganisha na kudhibiti seva pangishi zinazodhibitiwa kwa kusanidi uthibitishaji usio na nenosiri wa SSH.