Ghọta akụrụngwa isi nke enwere ike - Akụkụ 1
Ọkachamara Red Hat Certified Specialist in Ansible Automation exam (EX407) bụ mmemme asambodo ọhụrụ site na Red Hat na-anwale nka gị iji nwee ike mezi nhazi nke sistemu na ngwa.
A ga-akpọ usoro isiokwu a Ọkachamara Red Hat Certified Specialist in Ansible Automation exam (EX407) ma kpuchie ebumnuche ule ndị a dabere na Red Hat Enterprise Linux 7.5 na Anụmanụ 2.7, nke anyị ga-ekpuchi n'usoro a ga-ekwe omume:
Ka ịlele ụgwọ na debanye aha maka ule na obodo gị, lelee ibe ule Automation Automation.
N'ime akụkụ nke 1 nke usoro a na-enwe ike ime, anyị ga-atụle ntụle ụfọdụ nke isi ihe dị n'ime ike.
Ihe nwere ike ime bụ ikpo okwu akpaaka na-emepe emepe nke RedHat na-enye gị ohere ijikwa ma jikwaa ọtụtụ sava site na otu ebe etiti. Ọ dị mma karịsịa mgbe ị nwere ọtụtụ ọrụ na-emegharị ugboro ugboro nke kwesịrị ịrụ ọrụ. Yabụ kama ịbanye n'ime oghere ndị a dịpụrụ adịpụ wee rụọ ọrụ gị, ị nwere ike ime nke ọma site na ebe etiti wee jikwaa sava gị nke ọma.
Nke a bara uru ma ọ bụrụ na ịchọrọ idobe nkwụsi ike na ntinye ngwa, belata njehie mmadụ na imezigharị ọrụ ugboro ugboro na nke dịtụ ala.
N'ezie, enwere ụzọ ndị ọzọ na-adịghị mma dị ka Puppet, Chef, na Nnu. Agbanyeghị, A na-ahọrọkarị Ansible n'ihi na ọ dị mfe iji yana dị mfe ịmụta.
Gịnị mere o ji dị mfe ịmụta ị nwere ike ịjụ? Nke a bụ n'ihi na Ansible na-eji YAML (Asụsụ Markup ọzọ) na nhazi ya na ọrụ akpaaka nke mmadụ nwere ike ịgụ ma dịkwa mfe ịgbaso. YAML na-eji protocol SSH iji soro ndị sava dịpụrụ adịpụ na-ekwurịta okwu, n'adịghị ka nyiwe akpaaka ndị ọzọ chọrọ ka ị wụnye onye nnọchi anya na oghere ndị dịpụrụ adịpụ iji soro ha kparịta ụka.
Tupu anyị amalite na Ansible, ọ dị mkpa ka ị mata ụfọdụ okwu okwu ka ị ghara ịla n'iyi ma ọ bụ mgbagwoju anya ka anyị na-aga n'ihu.
Ndepụta ngwaahịa bụ faịlụ ederede nwere ndepụta nke sava ma ọ bụ ọnụ nke ị na-ejikwa ma na-ahazi. Ọtụtụ mgbe, a na-edepụta sava ndị ahụ dabere na aha nnabata ha ma ọ bụ adreesị IP ha.
Faịlụ ngwa ahịa nwere ike ịnwe sistemu dịpụrụ adịpụ nke adreesị IP kọwapụtara dị ka egosiri:
10.200.50.50 10.200.50.51 10.200.50.52
N'aka nke ọzọ, enwere ike ịdepụta ha dịka otu dị iche iche. N'ihe atụ dị n'okpuru ebe a, anyị nwere sava etinyere n'okpuru otu 2 - sava weebụ na ọdụ data. N'ụzọ dị otu a, enwere ike ịdebanye aha ha dịka aha otu ha si dị ọ bụghị adreesị IP ha. Nke a na-eme ka usoro ọrụ dị mfe.
[webservers] 10.200.50.60 10.200.50.61 [databases] 10.200.50.70 10.200.50.71
Ị nwere ike ịnwe ọtụtụ otu nwere ọtụtụ sava ma ọ bụrụ na ị nọ na nnukwu mmepụta gburugburu.
Akwụkwọ egwuregwu bụ usoro nhazi nhazi nke na-akọwa ka aga-esi arụ ọrụ na ndị ọbịa dịpụrụ adịpụ ma ọ bụ otu igwe ndị ọbịa. Edere script ma ọ bụ ntuziaka n'ụdị YAML.
Dịka ọmụmaatụ, ịnwere ike ịnwe faịlụ playbook iji wụnye Apache webserver na CentOS 7 wee kpọọ ya httpd.yml.
Iji mepụta akwụkwọ egwu, gbanye iwu.
$ touch playbook_name.yml
Dịka ọmụmaatụ iji mepụta akwụkwọ egwu egwu a na-akpọ httpd, mee iwu ahụ.
$ touch httpd.yml
Otu faịlụ YAML na-amalite site na akara 3 dị ka egosiri. N'ime faịlụ ahụ, tinye ntuziaka ndị a.
--- - 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
Akwụkwọ egwuregwu dị n'elu na-arụnye sava weebụ Apache na sistemu dịpụrụ adịpụ akọwara dị ka sava weebụ na faịlụ ngwa ahịa. Mgbe echichi nke sava weebụ, A pụrụ imechaa lelee ma ọ bụrụ na sava weebụ Apache amalitela ma na-agba ọsọ.
Modul bụ nkeji koodu pụrụiche eji na akwụkwọ egwuregwu maka ime iwu na ndị ọbịa ma ọ bụ sava dịpụrụ adịpụ. Modul ọ bụla na-esote arụmụka.
Usoro nke modul bụ isi: uru.
- name: Install apache packages yum: name=httpd state=present
Na snippet koodu YAML dị n'elu, -name na yum bụ modul.
Egwuregwu nwere ike ime bụ edemede ma ọ bụ ntụziaka na-akọwa ọrụ a ga-arụ na sava. Nchịkọta egwuregwu bụ akwụkwọ egwuregwu. N'ikwu ya n'ụzọ ọzọ, akwụkwọ egwuregwu bụ nchịkọta nke ọtụtụ egwuregwu, nke ọ bụla n'ime ha na-akọwapụta nke ọma ọrụ a ga-arụ na sava. Ejije dị n'ụdị YAML.
Ọ bụrụ na ị nwere ndabere na mmemme, mgbe ahụ ọ ga-abụ na i jirila mgbanwe. N'ụzọ bụ isi, mgbanwe na-anọchi anya uru. Ngbanwe nwere ike ịgụnye mkpụrụedemede, ọnụọgụgụ, na nrịbama mana ọ ga-abụrịrị na ọ ga-eji mkpụrụedemede malite mgbe niile.
A na-eji mgbanwe mgbanwe mgbe ntuziaka dị iche site n'otu usoro gaa na nke ọzọ. Nke a bụ eziokwu karịsịa n'oge nhazi ma ọ bụ ọrụ na atụmatụ dị iche iche.
Enwere isi ụdị mgbanwe atọ:
- Ụdị akwụkwọ egwuregwu
- Ngbanwe ngwa ahịa
- Mgbanwe pụrụ iche
N'ihe nwere ike ime, a na-ebu ụzọ kọwaa mgbanwe site na iji vars k, wee soro aha agbanwe agbanwe na uru ya.
The syntax bụ dị ka egosiri:
vars: Var name1: ‘My first variable’ Var name2: ‘My second variable’
Tụlee koodu dị n'okpuru.
- hosts: webservers vars: - web_directory:/var/www/html/
N'ihe atụ dị n'elu, mgbanwe ebe a bụ web_directory ma ọ na-enye ntụziaka ka ịmepụta ndekọ na /var/www/html/ ụzọ.
Eziokwu bụ ihe eji arụ ọrụ na-achịkọta mgbe ọ na-eme akwụkwọ egwuregwu na sistemụ nnabata. Ngwongwo ndị a gụnyere aha nnabata, ezinụlọ OS, ụdị CPU, na cores CPU ịkpọtụ ole na ole.
Iji hụtụ ọnụ ọgụgụ eziokwu dị maka ojiji nye iwu a.
$ ansible localhost -m setup
Dịka ị na-ahụ, egosipụtala ọtụtụ eziokwu na ndabara. Ị nwere ike ịga n'ihu wedata nsonaazụ ya site na iji nzacha nzacha dị ka egosiri.
$ ansible localhost -m setup -a "filter=*ipv4"
N'ime ike, faịlụ nhazi bụ faịlụ nwere ntọala paramita dị iche iche na-ekpebi ka enwere ike ịgba ọsọ. Faịlụ nhazi nke ndabara bụ faịlụ ansible.cfg dị na /etc/ansible/ directory.
Ị nwere ike ịlele faịlụ nhazi site na-agba ọsọ:
$ cat /etc/ansible/ansible.cfg
Dị ka ị pụrụ ịhụ, ọtụtụ parameters na-gụnyere dị ka Ndepụta Ngwaahịa na Ọbá akwụkwọ faịlụ ụzọ, sudo ọrụ, plugin nzacha, modul, wdg Ndị a parameters nwere ike gbanwee nanị site na-aza ajụjụ ha si na modifying ụkpụrụ n'ime ya.
Na mgbakwunye, ị nwere ike ịnwe ọtụtụ faịlụ nhazi na-arụ ọrụ na Ansible na-abụghị faịlụ nhazi ndabere gị.
N'ileghachi anya na isi ihe ndị dị na Ansible, anyị nwere olileanya na ị nọ n'ọnọdụ idobe ha n'aka gị wee họrọ ha ka anyị na-aga n'ihu. Soro anyị n'isiokwu na-esote.