Otu esi emepụta na budata ọrụ na Galaxy nwere ike ma jiri ha - Nkebi 9


Na akụkụ 9 nke otu faịlụ egwu egwu.

Otú ọ dị, ide akwụkwọ egwuregwu maka ijikwa otu ọrụ na gburugburu dị iche iche nwere ike bụrụ ihe siri ike ma nke a na-ebutekarị koodu redundancy. Na mgbakwunye, mgbagwoju anya karịa nwere ike itinye n'ihe isi ike na ijikwa ngwaọrụ niile.

Na-abịa ọrụ. N'ebe enwere ike, a na-eji ọrụ maka ịkụda akwụkwọ egwuregwu ka ọ bụrụ faịlụ enwere ike iji mee ihe n'ọtụtụ oge ndị ọzọ ebe mkpa bilitere ịrụ ọrụ yiri ya. Nke a wepụrụ mkpa idegharị akwụkwọ egwuregwu ugboro ugboro ma na-echekwa oge na ike dị ukwuu.

Ọrụ bụ naanị ọrụ nke akwụkwọ egwuregwu. Ọrụ ụgbọ mmiri nwere ọmarịcha ihe ga-abụ akwụkwọ egwuregwu: Ọrụ, faịlụ, modul, mgbanwe na ndebiri. Ọzọkwa, mara na ọrụ ọ bụla na-ejedebe na otu ọrụ ma ọ bụ mmepụta achọrọ.

Ịmepụta Ọrụ Kwesịrị Ekwesị

Iji mepụta ọrụ na ike, jiri syntax naanị.

# ansible-galaxy init role_name 

A ga-emepụta ọtụtụ akwụkwọ ndekọ aha na faịlụ n'ime ndekọ ọrụ gị ugbu a. N'okwu a, ekpebiri m ịmepụta ọrụ na /etc/ansible/roles directory.

Ka anyị mepụta ọrụ a na-akpọ apache.

# ansible-galaxy init apache

Jiri iwu osisi ka ị lelee nhazi ndekọ nke ọrụ ahụ.

# tree apache

Dị ka ị na-ahụ, e mepụtala ọtụtụ akwụkwọ ndekọ aha, agbanyeghị, ọ bụghị ha niile ka a ga-eji na akwụkwọ egwuregwu.

Ugbu a, ka iji ọrụ gị emepụtara ọhụrụ na akwụkwọ egwuregwu, kọwapụta otu ọrụ na faịlụ main.yml dị na ndekọ ọrụ nke ọrụ ọhụrụ gị.

/apache/tasks/main.yml

---

- hosts: database_servers

  tasks:

    - name: Install Apache2 on Ubuntu webserver
      apt:
         name: apache2
         state: installed

Emechaa, mepụta faịlụ egwu egwu wee kpọọ ọrụ dịka egosiri.

--- 
- hosts: webservers
  roles:
   - apache

Ịwụnye Ọrụ sitere na Galaxy nwere ike ime

Ọrụ na-arụ ọrụ dị oke mkpa n'ịkekọrịta koodu n'etiti ndị ọrụ ndị ọzọ na obodo nwere ike iji ikpo okwu Galaxy nwere ike. Na Galaxy nwere ike ịnweta, ị na-enweta ọtụtụ puku ọrụ na-arụ ọrụ dị iche iche dị ka ntinye nke sava weebụ na ọdụ data, ngwaọrụ nlekota oru, wdg.

Galaxy Ansible bụ nchekwa data ma ọ bụ ebe nchekwa nke ọrụ ndị nwere ike ị nwere ike itinye n'ime akwụkwọ egwuregwu gị wee nyere aka hazie ọrụ gị.

Ka ịchọọ ọrụ na Galaxy nwere ike, mee naanị iwu ahụ.

# ansible-galaxy search <role>

Dịka ọmụmaatụ iji chọọ ọrụ akpọrọ mysql run.

# ansible-galaxy search mysql

Dịka ị na-ahụ, enwere ọtụtụ narị ọrụ dabara na isiokwu ọchụchọ mysql. Agbanyeghị, ọ bụghị ọrụ niile ga-eme ihe ịchọrọ, yabụ na-atụ aro ka ị gụọ ntuziaka a nke ọma.

Iji kpokọta ozi ndị ọzọ gbasara ọrụ, mee naanị iwu nke nwere ike ime:

# ansible-galaxy info 5KYDEV0P5.skydevops-mysql

N'ihe atụ anyị, anyị ga-etinye ọrụ 5KYDEV0P5.skydevops-mysql.

# ansible-galaxy install 5KYDEV0P5.skydevops-mysql

A na-ebudata ma wepụta ọrụ a na ndekọ ọrụ ndabara dị na /etc/ansible/roles.

Enwere ike ịkpọ ọrụ ahụ na akwụkwọ egwuregwu, dịka ọmụmaatụ:

---
- name: Install MySQL server
  hosts: webservers

 roles:
    • 5KYDEV0P5.skydevops-mysql

Ugbu a ị nwere ike ịgba akwụkwọ egwu egwu dị ka egosiri.

# ansible-playbook install_mysql.yml

Na mgbakwunye, ị nwere ike ịga na Galaxy Ansible site na ihe nchọgharị weebụ gị wee jiri aka gị chọọ ọrụ maka ịrụ ọrụ dị iche iche dị ka dashboard siri kọwaa.

Dịka ọmụmaatụ, iji chọọ ọrụ nleba anya dị ka elasticsearch, pịa nhọrọ 'Nleba anya' wee chọọ ọrụ dịka egosiri.

Galaxy nwere ike na-eme ka ọ dịrị ndị ọrụ mfe ịwụnye ọrụ kachasị mma site na ịdepụta ọrụ kachasị ewu ewu na nke ebudatara. Iji nweta ozi ndị ọzọ gbasara otu ọrụ, pịa ya naanị.

N'ime akwụkwọ egwuregwu, ị nwekwara ike ịkọwapụta ihe karịrị otu ọrụ, dịka ọmụmaatụ.

---
- name: Install MySQL server
  hosts: webservers

 roles:
    • 5KYDEV0P5.skydevops-mysql
    • Aaronpederson.mariadb

Iji depụta ọrụ arụnyere, gbaa ọsọ.

# ansible-galaxy list

Ọrụ na-eme ka ọ dị mfe ijikwa ma kesaa akwụkwọ egwuregwu nwere ike ime. N'ụzọ dị otú a, ha na-azọpụta onye ọrụ a otutu oge na-agbalị ịde nza nke redundant code na-etinye oge dị ukwuu nke a gaara eji na ndị ọzọ usoro nchịkwa ọrụ. Ma nke ahụ bụ maka ntuziaka a.