Kā instalēt un konfigurēt iespējamo automatizācijas rīku IT pārvaldībai - 1. daļa


Ansible ir atvērta pirmkoda jaudīga automatizācijas programmatūra programmatūras lietojumprogrammu konfigurēšanai, pārvaldīšanai un izvietošanai mezglos bez dīkstāves, vienkārši izmantojot SSH. Mūsdienās lielākā daļa IT automatizācijas rīku darbojas kā aģents attālajā resursdatorā, taču darbībai vienkārši ir nepieciešams SSH savienojums un Python (2.4 vai jaunāka versija), kas jāinstalē attālos mezglos.

Ir pieejami daudzi līdzīgi automatizācijas rīki, piemēram, Leļļu, Capistrano, šefpavārs, sāls, Space Walk utt., Bet Ansible kategorizē divu veidu serveros: mašīnu un mezglu kontrolē.

Kontrolējošā mašīna, kurā ir instalēta Ansible un mezglus pārvalda šī kontrolējošā mašīna, izmantojot SSH. Mezglu atrašanās vieta tiek noteikta, kontrolējot mašīnu, izmantojot tās inventāru.

Vadošā mašīna (Ansible) izvieto moduļus mezglos, izmantojot SSH protokolu, un šie moduļi tiek īslaicīgi saglabāti attālos mezglos un sazinās ar Ansible mašīnu, izmantojot JSON savienojumu, izmantojot standarta izvadi.

Ansible nav aģentu, tas nozīmē, ka nav nepieciešams veikt aģentu instalēšanu attālos mezglos, tāpēc tas nozīmē, ka Ansible nav fona dēmonu vai programmu, kas tiek izpildītas, ja tā nepārvalda nevienu mezglu.

Ansible var apstrādāt 100 vienības mezglus no vienas sistēmas, izmantojot SSH savienojumu, un visu darbību var apstrādāt un izpildīt ar vienu komandu ‘ansible’. Bet dažos gadījumos, kad izvietošanai bija jāizpilda vairākas komandas, šeit mēs varam izveidot atskaņošanas grāmatas.

Playbooks ir virkne komandu, ar kurām var veikt vairākus uzdevumus, un katra no tām ir YAML faila formātā.

Programmu Ansible var izmantot IT infrastruktūrā, lai pārvaldītu un izvietotu programmatūras lietojumprogrammas attālos mezglos. Piemēram, pieņemsim, ka jums ir jāizvieto viena programmatūra vai vairākas programmatūras 100 mezglos ar vienu komandu, šeit attēlā ir redzams ansible, ar Ansible palīdzību jūs varat izvietot tik daudz kā lietojumprogrammas daudziem mezgliem ar vienu komandu, bet jums ir jābūt nedaudz programmēšanas zināšanām, lai izprastu izmantojamos skriptus.

Mēs esam apkopojuši sēriju par Ansible, virsraksts “Sagatavošanās jūsu IT infrastruktūras ieviešanai ar Ansible IT automatizācijas rīku”, izmantojot 1. – 4. Daļu un aptver šādas tēmas.

Šajā rakstā mēs parādīsim, kā instalēt 'Ansible' RHEL/CentOS 7/6, Fedora 21-19, Ubuntu 14.10-13.04 un Debian 7/6 sistēmās, kā arī mēs iepazīsimies ar dažiem pamatiem, kā pārvaldīt serveri, instalējot paketes, lietojot atjauninājumus un daudz ko citu no pamata līdz profesionālam.

  1. Operētājsistēma : RHEL/CentOS/Fedora un Ubuntu/Debian/Linux Mint
  2. Jinja2 : moderns, ātrs un viegli lietojams atsevišķs veidņu dzinējs Python.
  3. PyYAML : Python programmēšanas valodas YAML parsētājs un izstarotājs.
  4. parmiko : vietējā Python SSHv2 kanālu bibliotēka.
  5. httplib2 : visaptveroša HTTP klienta bibliotēka.
  6. sshpass : neinteraktīva ssh paroles autentifikācija.

Operating System :	Linux Mint 17.1 Rebecca
IP Address	 :	192.168.0.254
Host-name	 :	tecmint.instrcutor.com
User		 :	tecmint
Node 1: 192.168.0.112
Node 2: 192.168.0.113
Node 3: 192.168.0.114

1. solis: Vadības iekārtas uzstādīšana - iespējams

1. Pirms servera “Ansible” instalēšanas vispirms pārbaudīsim servera datus, piemēram, resursdatora nosaukumu un IP adresi. Piesakieties serverī kā root lietotājs un izpildiet tālāk norādīto komandu, lai apstiprinātu sistēmas iestatījumus, kurus izmantosim šai iestatīšanai.

# sudo ifconfig | grep inet

2. Kad esat apstiprinājis sistēmas iestatījumus, ir pienācis laiks sistēmā instalēt ‘Ansible’ programmatūru.

Šeit mēs izmantosim oficiālu Ansible PPA repozitoriju sistēmā, vienkārši palaidiet zemāk esošās komandas, lai pievienotu repozitoriju.

$ sudo apt-add-repository ppa:ansible/ansible -y
$ sudo apt-get update && sudo apt-get install ansible -y

Diemžēl uz RedHat balstītiem kloniem nav oficiāla Ansible repozitorija, taču mēs varam instalēt Ansible, iespējojot epel repozitoriju zem RHEL/CentOS 6, 7 un pašlaik atbalstītajiem fedora izplatījumiem.

Fedora lietotāji var tieši instalēt Ansible, izmantojot noklusējuma repozitoriju, taču, ja izmantojat RHEL/CentOS 6, 7, jums ir jāiespējo EPEL repo.

Pēc epel repozitorija konfigurēšanas jūs varat instalēt Ansible, izmantojot šādu komandu.

$ sudo yum install ansible -y

Pēc veiksmīgas instalēšanas versiju var pārbaudīt, izpildot komandu zemāk.

# ansible --version

2. solis: SSH atslēgu sagatavošana attālajiem saimniekiem

4. Lai veiktu jebkādu izvietošanu vai pārvaldību no localhost uz attālo resursdatoru, vispirms mums jāizveido un kopēt ssh atslēgas uz attālo resursdatoru. Katrā attālajā resursdatorā būs lietotāja konta tintmint (jūsu gadījumā tas var būt atšķirīgs lietotājs).

Vispirms ļaujiet mums izveidot SSH atslēgu, izmantojot zemāk esošo komandu, un kopējiet atslēgu attālajos resursdatoros.

# ssh-keygen -t rsa -b 4096 -C "[email "

5. Pēc veiksmīgas SSH atslēgas izveides tagad izveidoto atslēgu nokopējiet uz visiem trim attālajiem serveriem.

# ssh-copy-id [email 
# ssh-copy-id [email 
# ssh-copy-id [email 

6. Pēc visu SSH atslēgu nokopēšanas uz attālo resursdatoru, tagad veiciet ssh atslēgu autentifikāciju visos attālajos resursdatoros, lai pārbaudītu, vai autentifikācija darbojas vai nē.

$ ssh [email 
$ ssh [email 
$ ssh [email