Kako namestiti in konfigurirati Ansible Automation Tool za upravljanje IT - 1. del


Ansible je odprtokodna, zmogljiva programska oprema za avtomatizacijo za konfiguriranje, upravljanje in uvajanje programskih aplikacij na vozliščih brez izpadov samo s pomočjo SSH. Danes večina orodij za avtomatizacijo IT deluje kot agent v oddaljenem gostitelju, vendar ansible potrebuje samo SSH povezavo in Python (2.4 ali novejši), ki je nameščen na oddaljenih vozliščih, da izvede to dejanje.

Na voljo je veliko podobnih orodij za avtomatizacijo, kot so Puppet, Capistrano, Chef, Salt, Space Walk itd., Vendar Ansible razvršča v dve vrsti strežnikov: nadzor strojev in vozlišč.

Nadzorni stroj, kjer je nameščen Ansible in upravlja ta vozlišča prek SSH. Mesto vozlišč je določeno s krmiljenjem stroja prek njegovega inventarja.

Nadzorni stroj (Ansible) razporedi module na vozlišča s protokolom SSH, ti moduli pa se začasno shranijo na oddaljenih vozliščih in komunicirajo z Ansible strojem prek povezave JSON prek standardnega izhoda.

Ansible je brez agentov, kar pomeni, da ni treba namestiti nobenega agenta na oddaljenih vozliščih, zato pomeni, da za Ansible ne izvaja nobenega demona ali programov v ozadju, če ne upravlja nobenega vozlišča.

Ansible lahko obdeluje 100 vozlišč iz enega sistema prek SSH povezave, celotno operacijo pa lahko upravlja in izvaja en sam ukaz "ansible". Toda v nekaterih primerih, kjer ste za uvajanje morali izvesti več ukazov, lahko tukaj zgradimo knjige iger.

Playbooks so skupina ukazov, ki lahko izvajajo več nalog, vsaka playbook pa je v obliki datoteke YAML.

Ansible se lahko uporablja v informacijski infrastrukturi za upravljanje in uvajanje programskih aplikacij na oddaljena vozlišča. Recimo, na primer, da morate z enim ukazom na 100 vozlišč razporediti eno programsko opremo ali več programske opreme, tukaj se prikaže ansible, s pomočjo Ansible pa lahko z enim samim ukazom razporedite toliko aplikacij na več vozlišč, vendar morate imeti malo programskega znanja za razumevanje skriptov ansible.

Sestavili smo serijo o podjetju Ansible z naslovom „Priprave na uvajanje vaše IT infrastrukture z orodjem za avtomatizacijo Ansible IT“, ki je del 1–4 in zajema naslednje teme.

V tem članku vam bomo pokazali, kako namestiti 'Ansible' na sisteme RHEL/CentOS 7/6, Fedora 21-19, Ubuntu 14.10-13.04 in Debian 7/6, pa tudi nekaj osnov o tem, kako upravljati strežnik z namestitvijo paketov, uporabo posodobitev in še veliko več od osnovnega do profesionalnega.

  1. Operacijski sistem : RHEL/CentOS/Fedora in Ubuntu/Debian/Linux Mint
  2. Jinja2 : Sodoben, hiter in enostaven za uporabo samostojni mehanizem predlog za Python.
  3. PyYAML : Razčlenjevalnik in oddajnik YAML za programski jezik Python.
  4. parmiko : Izvorna knjižnica kanalov Python SSHv2.
  5. httplib2 : Izčrpna odjemalska knjižnica HTTP.
  6. sshpass : neinteraktivno preverjanje pristnosti gesla ssh.

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. korak: Namestitev nadzorne naprave - Ansible

1. Pred namestitvijo programa »Ansible« na strežnik najprej preverimo podrobnosti strežnika, kot sta ime gostitelja in naslov IP. Prijavite se v strežnik kot korenski uporabnik in z naslednjim ukazom potrdite sistemske nastavitve, ki jih bomo uporabili za to nastavitev.

# sudo ifconfig | grep inet

2. Ko potrdite sistemske nastavitve, je čas, da v sistem namestite programsko opremo ‘Ansible’.

Tukaj bomo uporabili uradno repozitorij Ansible PPA v sistemu, samo zaženite spodnje ukaze, da dodate repozitorij.

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

Na žalost za klone, ki temeljijo na RedHat, ni uradnega repozitorija Ansible, vendar lahko Ansible namestimo tako, da omogočimo epel repozitorij pod RHEL/CentOS 6, 7 in trenutno podprte distribucije Fedora.

Uporabniki Fedore lahko neposredno namestijo Ansible prek privzetega repozitorija, če pa uporabljate RHEL/CentOS 6, 7, morate omogočiti repo EPEL.

Po konfiguraciji repozitorija epel lahko Ansible namestite z naslednjim ukazom.

$ sudo yum install ansible -y

Po uspešni namestitvi lahko različico preverite z izvajanjem spodnjega ukaza.

# ansible --version

2. korak: Priprava ključev SSH na oddaljene gostitelje

4. Za izvedbo kakršne koli razmestitve ali upravljanja z lokalnega gostitelja na oddaljeni gostitelj moramo najprej ustvariti in kopirati ssh ključe na oddaljeni gostitelj. V vsakem oddaljenem gostitelju bo uporabniški račun tecmint (v vašem primeru je lahko drug uporabnik).

Najprej s spodnjim ukazom izdelamo ključ SSH in ga kopiramo na oddaljene gostitelje.

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

5. Po uspešnem ustvarjanju ključa SSH ustvarite ključ na vse tri oddaljene strežnike.

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

6. Po kopiranju vseh ključev SSH na oddaljeni gostitelj zdaj izvedite preverjanje pristnosti ključa ssh na vseh oddaljenih gostiteljih, da preverite, ali preverjanje pristnosti deluje ali ne.

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