„Ansible Galaxy“ talpina bendruomenės sukurtus „Ansible“ vaidmenis ir kolekcijas. Užuot perrašę juos nuo nulio, galite jį įdiegti savo kompiuteryje naudodami komandinės eilutės įrankį „Ansible Galaxy“ ir naudoti savo grojaraščiuose.
Taip pat galite parašyti savo vaidmenis ir kolekcijas ir įkelti jas į „Ansible Galaxy“. Tai nepatenka į šio straipsnio taikymo sritį.
Šiame straipsnyje aš jums parodysiu, kaip naudoti „Ansible Galaxy“ komandų eilutės įrankį, kad įdiegtumėte „Ansible Galaxy“ vaidmenis ir kolekcijas ir naudotumėte jas savo grojaraštyje. Taigi, pradėkime.
Būtinos sąlygos:
Jei norite išbandyti šio straipsnio pavyzdžius,
1) Savo kompiuteryje turite būti įdiegę „Ansible“.
2) Jūs turite turėti bent 2 „Linux“ pagrindinius kompiuterius („Debian 10“ ir „CentOS 7“), sukonfigūruotus „Ansible Automation“.
„LinuxHint“ yra daug straipsnių, skirtų „Ansible“ diegimui ir kompiuterių konfigūravimui „Ansible“ automatizavimui. Jei reikia, galite juos patikrinti.
Projektų katalogo nustatymas:
Prieš pradėdami sukurkime projekto katalogą, kad galėtume sutvarkyti savo projekto failus.
Norėdami sukurti projekto katalogą galaxy-demo / jūsų NAMAI kataloge, vykdykite šią komandą:
$ mkdir -pv galaxy-demo / playbooks, vars
Dabar eikite į galaxy-demo / katalogą taip:
$ cd galaxy-demo /
Sukurkite Ansible konfigūracijos failą įmanoma.plg savo projekto kataloge taip:
$ nano galima.plg
Įveskite šias eilutes įmanoma.plg failą.
[pagal nutylėjimą]inventorius = šeimininkai
host_key_checking = Netiesa
Baigę paspauskite
Sukurkite Ansible inventoriaus failą šeimininkai savo projekto kataloge taip:
$ nano šeimininkai
Įveskite šias eilutes savo šeimininko inventoriaus byla.
[duomenų bazė]vm1.nodekitas.com
[žiniatinklis]
vm9.nodekitas.com
Čia, vm1.nodekitas.com yra „Debian 10“ kompiuteris ir vm9.nodekitas.com yra „CentOS 7“ kompiuteris.
Baigę paspauskite
Norėdami patikrinti, ar galite perkelti nuotolinius „Ansible“ kompiuterius iš kompiuterio, vykdykite šią komandą:
$ ansible all -u ansible -m ping
Kaip matote, galiu pinguoti savo nuotolinius „Ansible hosts“ vm1.nodekitas.com ir vm9.nodekitas.com.
Ieškoma neįmanomų „Galaxy“ vaidmenų ir kolekcijų:
„Ansible Galaxy“ vaidmenų ir kolekcijų galite ieškoti oficialioje „Ansible Galaxy“ svetainėje.
Kai tinklalapis bus įkeltas, spustelėkite paieškos piktogramą, kad ieškotumėte „Ansible Galaxy“ vaidmenų ir kolekcijų.
Dabar įveskite tai, ko ieškote, ir spustelėkite paieškos piktogramą.
Šiame pavyzdyje aš ieškojau mysql serveris. Kaip matote, rodomas paieškos rezultatas.
Paieškos terminas mysql serveris grąžino 2 kolekcijas ir daugybę vaidmenų.
Vaidmuo yra „Ansible“ modulis, kuris atlieka konkrečius dalykus. Kolekcija turi daug vaidmenų. Tai yra pagrindinis vaidmens ir kolekcijos skirtumas.
Norėdami pamatyti daugiau informacijos apie vaidmenį, spustelėkite vaidmenį.
The Išsami informacija Vaidmenų paketo skirtuke bus rodoma techninė informacija apie vaidmenį.
The Skaityk mane skirtuke bus rodoma vaidmens diegimo ir naudojimo informacija.
Lygiai taip pat surinkimo pakete bus informacijos apie diegimą Išsami informacija skirtuką.
Ant Turinys skirtuke bus rodomi vaidmenys, kuriuos įdiegs kolekcijos.
The Skaityk mane skirtuke bus rodoma naudinga informacija apie kolekciją.
Neįmanomų „Galaxy“ vaidmenų įdiegimas ir naudojimas:
Šiame skyriuje aš jums parodysiu, kaip įdiegti ir naudoti „Ansible Galaxy“ vaidmenį. Taigi, pradėkime.
Tarkim; norite įdiegti „Ansible Galaxy“ vaidmenį geerlingguy.mysql.
Norėdami tai padaryti, paleiskite šią komandą:
$ ansible-galaxy install geerlingguy.mysql
Neįmanomas galaktikos vaidmuo geerlingguy.mysql turėtų būti įdiegta.
Sukurkite pjesę install_database.yaml viduje konors grojaraščiai / katalogą geerlingguy.mysql vaidmenį:
„$ nano playbooks / install_database“.yaml
Tada įveskite šias eilutes install_database.yaml failą.
- kompiuteriai: duomenų bazėvartotojas: ansible
tapti: taip
vars_files:
-… / Vars / database.yaml
vaidmenys:
- vaidmuo: geerlingguy.mysql
Baigę paspauskite
Čia vaidmuo geerlingguy.mysql yra naudojamas vaidmenys skyrius.
The vars_files skyrius naudojamas pridėti reikiamus vaidmens / pjesės kintamuosius į pjesę. Čia kintamieji bus dedami į vars / duomenų bazė.yaml failą.
Dabar sukurkite duomenų bazė.yaml failą vars / katalogą taip:
$ nano vars / duomenų bazė.yaml
Dabar pridėkite norimus kintamuosius duomenų bazė.yaml failą. Įtraukiau šiuos kintamuosius į duomenų bazė.yaml failą.
mysql_databases:- pavadinimas: db01
kodavimas: utf8mb4
lyginimas: utf8mb4_unicode_ci
mysql_users:
- vardas: linuxhint
pagrindinis kompiuteris: „%“
slaptažodis: paslaptis
priv: "db01.*: VISI "
Šie kintamieji konfigūruojami geeringguy.mysql vaidmuo, kad jis sukurtų naują vartotoją linuxhint, nustato slaptažodį paslaptis už linuxhint vartotojas, sukuria naują duomenų bazę db01 ir dotacijos linuxhint vartotojo visišką prieigą prie db01 duomenų bazė.
Baigę paspauskite
Dabar galite paleisti install_database.yaml pjesė taip:
$ ansible-playbook playbooks / install_database.yaml
Kaip matote, pjesėje veikia geerlingguy.mysql vaidmuo. Gali praeiti šiek tiek laiko.
Šiuo metu install_mysql.yaml pjesė turėtų būti baigta.
Mano vm1.nodekitas.com „Debian 10“ kompiuteris mysql paslauga veikia, kaip matote toliau pateiktoje ekrano kopijoje,
Taip pat galiu prisijungti prie „MySQL“ duomenų bazės serverio kaip linuxhint Vartotojas.
Kaip matote, duomenų bazė db01 taip pat yra sukurta.
Taigi, taip įdiegiate ir naudojate „Ansible Galaxy“ vaidmenis.
Galimų rinkinių diegimas ir naudojimas:
Šiame skyriuje aš jums parodysiu, kaip įdiegti ir naudoti „Ansible Galaxy“ kolekciją. Taigi, pradėkime.
Tarkim; norite įdiegti „Ansible Galaxy“ kolekciją geerlingguy.php_roles.
Norėdami tai padaryti, paleiskite šią komandą:
$ ansible-galaxy collection įdiegti geerlingguy.php_roles
Kolekcija geerlingguy.php_roles turėtų būti įdiegta.
Norėdami naudoti kolekciją, sukurkite naują grojaraščio install_php.yaml viduje konors grojaraščiai / katalogą taip:
„$ nano“ grojaraščiai / install_php.yaml
Dabar įveskite šias eilutes install_php.yaml failą.
- kompiuteriai: internetasvartotojas: ansible
tapti: taip
kolekcijos:
- geerlingguy.php_roles
vaidmenys:
- vaidmuo: php
- vaidmuo: php_versions
varsas:
php_version: „7.3 '
Baigę paspauskite
Šios eilutės importuoja geerlingguy.php_roles kolekciją savo pjesėje.
Viduje konors vaidmenys skyriuje, galite naudoti jums reikalingus vaidmenis iš savo kolekcijos. Čia aš pridėjau 2 vaidmenis (php ir php_versions) nuo geerlingguy.php_roles kolekcija.
The php vaidmuo neturi jokių kintamųjų, susijusių su vaidmeniu.
Jei norite sukonfigūruoti vaidmenį naudodami kintamuosius, galite juos pridėti prie vars skyrius vaidmuo taip.
Kokius vaidmenis galite naudoti, galite rasti oficialiame kolekcijos „Ansible Galaxy“ puslapyje
Oficialiame vaidmens „Ansible Galaxy“ puslapyje bus informacijos apie tai, kokius kintamuosius galite naudoti sukonfigūruodami vaidmenį.
Dabar galite paleisti install_php.yaml pjesė taip:
$ ansible-playbook playbooks / install_php.yaml
Kaip matote, pjesė veikia. Gali praeiti šiek tiek laiko.
Šiuo metu pjesė turėtų būti baigta.
Kaip matote, galiu pasiekti „Apache 2“ serverį, veikiantį mano „CentOS 7“ pagrindiniame kompiuteryje vm9.nodekitas.com.
Aš taip pat sukūriau indeksas.php failą / var / www / html / mano „CentOS 7“ pagrindinio kompiuterio vm9 katalogas.nodekitas.com.
Kaip matote, žiniatinklio serveris gali aptarnauti indeksas.php puslapis teisingai.
Taigi, taip jūs įdiegiate ir naudojate „Ansible Galaxy“ kolekcijas.
Išvada:
Šiame straipsnyje aš paaiškinau, kas yra „Ansible Galaxy“. Taip pat parodžiau, kaip įdiegti ir naudoti „Ansible Galaxy“ vaidmenis / kolekcijas. „Ansible Galaxy“ padės išvengti naujo rato išradimo, dar vadinamo kodo kartojimu. Turėtumėte sugebėti greičiau atlikti savo „Ansible“ projektus naudodami „Ansible Galaxy“.