Skilja kjarnaþætti Ansible - Part 1


Red Hat Certified Specialist in Ansible Automation prófið (EX407) er nýtt vottunarforrit frá Red Hat sem prófar færni þína til að nota Ansible til að gera sjálfvirkan uppsetningu kerfa og forrita.

Serían mun bera titilinn „Red Hat Certified Specialist in Ansible Automation exam (EX407)“ og nær yfir eftirfarandi prófmarkmið byggð á Red Hat Enterprise Linux 7.5 og Ansible 2.7, sem við munum fjalla um í þessari Ansible seríu:

Til að skoða gjöld og skrá þig í próf í þínu landi skaltu skoða Ansible Automation prófsíðuna.

Í þessum hluta 1 af Ansible seríunni munum við fjalla um nokkurt grunnyfirlit yfir kjarnaþætti í Ansible.

Ansible er ókeypis og opinn sjálfvirknivettvangur frá RedHat sem gerir þér kleift að stjórna og stjórna mörgum netþjónum frá einum miðlægum stað. Það er sérstaklega tilvalið þegar þú hefur mörg og endurtekin verkefni sem þarf að framkvæma. Svo í stað þess að skrá þig inn á hvern af þessum ytri hnútum og framkvæma verkefnin þín, geturðu gert það á þægilegan hátt frá miðlægum stað og stjórnað netþjónunum þínum á þægilegan hátt.

Þetta er gagnlegt þegar þú vilt viðhalda samræmi í dreifingu forrita, draga úr mannlegum mistökum og gera sjálfvirk endurtekin og nokkuð hversdagsleg verkefni.

Auðvitað eru aðrir kostir við Ansible eins og puppet, Chef og Salt. Hins vegar er Ansible að mestu valinn vegna þess að það er auðvelt í notkun og auðvelt að læra.

Hvers vegna er einfalt að læra gætirðu spurt? Þetta er vegna þess að Ansible notar YAML (Yet Another Markup Language) í stillingum sínum og sjálfvirkni sem er læsilegt fyrir menn og auðvelt að fylgja eftir. YAML notar SSH samskiptareglur til að eiga samskipti við ytri netþjóna, ólíkt öðrum sjálfvirknipöllum sem krefjast þess að þú setjir upp umboðsmann á ytri hnúta til að eiga samskipti við þá.

Áður en við byrjum með Ansible er mikilvægt að þú kynnir þér nokkur grunnhugtök svo að þú villist ekki eða ruglast þegar við höldum áfram.

Birgðaskrá er textaskrá sem inniheldur lista yfir netþjóna eða hnúta sem þú ert að stjórna og stilla. Venjulega eru netþjónarnir skráðir út frá hýsingarnöfnum þeirra eða IP tölum.

Birgðaskrá getur innihaldið fjarkerfi sem eru skilgreind af IP tölum þeirra eins og sýnt er:

10.200.50.50
10.200.50.51
10.200.50.52

Að öðrum kosti er hægt að skrá þau eftir hópum. Í dæminu hér að neðan erum við með netþjóna sem eru settir undir 2 hópa - vefþjóna og gagnagrunna. Þannig er hægt að vísa til þeirra í samræmi við hópnöfn þeirra en ekki IP tölur þeirra. Þetta einfaldar rekstrarferla enn frekar.

[webservers]
10.200.50.60
10.200.50.61

[databases]
10.200.50.70
10.200.50.71

Þú getur haft marga hópa með marga netþjóna ef þú ert í stóru framleiðsluumhverfi.

Leikbók er sett af stillingarstjórnunarforskriftum sem skilgreina hvernig verkefni á að framkvæma á ytri vélum eða hópi véla. Forskriftirnar eða leiðbeiningarnar eru skrifaðar á YAML sniði.

Til dæmis geturðu haft leikbókarskrá til að setja upp Apache vefþjóninn á CentOS 7 og kalla það httpd.yml.

Til að búa til leikbókina skaltu keyra skipunina.

$ touch playbook_name.yml

Til dæmis til að búa til leikbók sem heitir httpd, keyrðu skipunina.

$ touch httpd.yml

YAML skrá byrjar á 3 bandstrikum eins og sýnt er. Inni í skránni skaltu bæta við eftirfarandi leiðbeiningum.

---
- name: This installs and starts Apache webserver
  hosts: webservers

  tasks:
  - name: Install Apache Webserver 
    yum:   name=httpd  state=latest

 - name: check httpd status
    service:   name=httpd  state=started

Ofangreind leikbók setur upp Apache vefþjón á ytri kerfum sem skilgreind eru sem vefþjónar í birgðaskránni. Eftir uppsetningu vefþjónsins athugar Ansible síðar hvort Apache vefþjónninn sé ræstur og í gangi.

Einingar eru stakar kóðaeiningar sem notaðar eru í leikbókum til að framkvæma skipanir á ytri vélum eða netþjónum. Hverri einingu fylgir rök.

Grunnsnið einingar er lykill: gildi.

- name: Install apache packages 
    yum:   name=httpd  state=present

Í ofangreindum YAML kóðabút eru -name og yum einingar.

Ansible leikrit er handrit eða leiðbeining sem skilgreinir verkefnið sem á að framkvæma á netþjóni. Safn leikrita mynda leikbók. Með öðrum orðum, leikbók er safn af mörgum leikritum, sem hvert um sig kveður skýrt á um verkefnið sem á að framkvæma á netþjóni. Leikrit eru til á YAML sniði.

Ef þú hefur bakgrunn í forritun, þá hefur þú líklegast notað breytur. Í grundvallaratriðum táknar breyta gildi. Breyta getur innihaldið bókstafi, tölustafi og undirstrik en VERÐUR alltaf að byrja á stöfum.

Breytur eru notaðar þegar leiðbeiningar eru mismunandi frá einu kerfi til annars. Þetta á sérstaklega við við uppsetningu eða ýmsa þjónustu og eiginleika.

Það eru 3 megingerðir af breytum:

  • Playbook breytur
  • Birgðabreytur
  • Sérstakar breytur

Í Ansible eru breytur fyrst skilgreindar með vars k, síðan fylgt eftir með breytuheiti og gildi.

Setningafræðin er eins og sýnt er:

vars:
Var name1: ‘My first variable’
	Var name2:  ‘My second variable’

Íhugaðu kóðann hér að neðan.

- hosts: webservers
  vars: 
    - web_directory:/var/www/html/

Í dæminu hér að ofan er breytan hér web_directory og hún gefur fyrirmæli um að búa til möppu í /var/www/html/ slóðinni.

Staðreyndir eru kerfiseiginleikar sem Ansible safnar þegar það keyrir leikbók á hýsingarkerfi. Eiginleikarnir innihalda hýsingarheiti, OS fjölskyldu, CPU gerð og CPU kjarna svo eitthvað sé nefnt.

Til að fá innsýn í fjölda staðreynda sem eru tiltækar til notkunar skaltu gefa út skipunina.

$ ansible localhost -m setup

Eins og þú sérð hefur gríðarlegur fjöldi staðreynda verið sýndur sjálfgefið. Þú getur minnkað niðurstöðurnar enn frekar með því að nota síufæribreytuna eins og sýnt er.

$ ansible localhost -m setup -a "filter=*ipv4"

Í Ansible er stillingarskrá skrá sem inniheldur mismunandi færibreytustillingar sem ákvarða hvernig Ansible keyrir. Sjálfgefin stillingarskrá er ansible.cfg skráin sem er staðsett í /etc/ansible/ möppunni.

Þú getur skoðað stillingarskrána með því að keyra:

$ cat /etc/ansible/ansible.cfg

Eins og þú sérð eru nokkrar breytur innifalinn eins og birgða- og bókasafnsskráarslóðir, sudo notandi, viðbótasíur, einingar osfrv. Þessar breytur er hægt að breyta einfaldlega með því að skrifa athugasemdir og breyta gildunum þar.

Að auki geturðu haft margar stillingarskrár sem vinna með Ansible fyrir utan sjálfgefna stillingarskrána þína.

Eftir að hafa skoðað kjarnaþættina í Ansible, vonum við að þú sért í aðstöðu til að hafa þá innan seilingar og velja þá út þegar við höldum áfram. Taktu þátt í næsta efni þínu.