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.