Az Ansible Galaxy a közösség által létrehozott Ansible szerepeket és gyűjteményeket tárolja. Ahelyett, hogy a semmiből átírná őket, telepítheti a számítógépére az Ansible Galaxy parancssori eszközzel, és felhasználhatja őket a játékkönyveken.
Megírhatja szerepeit és gyűjteményeit, és feltöltheti azokat az Ansible Galaxy-ra. Ez a cikk hatályán kívül esik.
Ebben a cikkben bemutatom, hogyan használhatja az Ansible Galaxy parancssori eszközt az Ansible Galaxy szerepkörök és gyűjtemények telepítéséhez és felhasználásához a játékkönyvben. Tehát kezdjük.
Előfeltételek:
Ha ki szeretné próbálni a cikk példáit,
1) A számítógépére telepítve kell lennie az Ansible programnak.
2) Legalább 2 Linux hosztnak (egy Debian 10 és egy CentOS 7) rendelkeznie kell az Ansible automatizáláshoz.
A LinuxHint-en számos cikk foglalkozik az Ansible telepítésével és a gazdagépek konfigurálásával az Ansible automatizáláshoz. Szükség esetén megnézheti őket.
Projektkönyvtár beállítása:
Mielőtt elkezdenénk, hozzunk létre egy projekt könyvtárat, hogy rendezhessük a projekt fájljainkat.
Projekt könyvtár létrehozása galaxy-demo / a te ITTHON könyvtárba, futtassa a következő parancsot:
$ mkdir -pv galaxy-demo / playbooks, vars
Most keresse meg a galaxy-demo / könyvtárat az alábbiak szerint:
$ cd galaxy-demo /
Hozzon létre egy Ansible konfigurációs fájlt lehetséges.vö a projekt könyvtárban az alábbiak szerint:
$ nano ansible.vö
Írja be a következő sorokat a lehetséges.vö fájl.
[alapértelmezések]leltár = hosztok
host_key_checking = Hamis
Ha végzett, nyomja meg a gombot
Hozzon létre egy Ansible készletfájlt otthont ad a projekt könyvtárban az alábbiak szerint:
$ nano házigazdák
Írja be a következő sorokat a otthont ad leltárfájl.
[adatbázis]vm1.nodekite.com
[web]
vm9.nodekite.com
Itt, vm1.nodekite.com egy Debian 10 gazdagép, és vm9.nodekite.com egy CentOS 7 gazdagép.
Ha végzett, nyomja meg a gombot
Annak ellenőrzéséhez, hogy képes-e pingelni a távoli Ansible hosztokat a számítógépről, futtassa a következő parancsot:
$ ansible all -u ansible -m ping
Mint láthatja, pingelhetem a távoli Ansible hosts vm1-t.nodekite.com és vm9.nodekite.com.
Ansible Galaxy szerepek és gyűjtemények keresése:
Az Ansible Galaxy szerepkörökre és gyűjteményekre kereshet az Ansible Galaxy hivatalos weboldalán.
Amint a weboldal betöltődik, kattintson a keresés ikonra az Ansible Galaxy szerepkörök és gyűjtemények megkereséséhez.
Írja be, amit keres, és kattintson a keresés ikonra.
Ebben a példában kerestem mysql szerver. Amint láthatja, megjelenik a keresési eredmény.
A keresési kifejezés mysql szerver 2 gyűjteményt és sok szerepet adott vissza.
A szerep egy Ansible modul, amely konkrét dolgokat végez. Egy gyűjteménynek sok szerepe van. Ez a fő különbség a szerep és a gyűjtemény között.
Ha többet szeretne megtudni egy szerepről, kattintson a szerepre.
A Részletek Egy szerepcsomag fülén technikai információk láthatók a szerepről.
A Olvasd el fülön megjelenik a szerep telepítési és használati információi.
Ugyanígy egy gyűjtőcsomagnak telepítési információi lesznek a Részletek fülre.
A Tartalom lapon megjelennek a gyűjtemények által telepíteni kívánt szerepkörök.
A Olvasd el lapon hasznos információk jelennek meg a gyűjteményről.
Ansible Galaxy szerepkörök telepítése és használata:
Ebben a részben bemutatom, hogyan kell telepíteni és használni az Ansible Galaxy szerepet. Tehát kezdjük.
Mondjuk; telepíteni szeretné az Ansible Galaxy szerepet geerlingguy.mysql.
Ehhez futtassa a következő parancsot:
$ ansible-galaxy install geerlingguy.mysql
Ansible Galaxy szerep geerlingguy.mysql telepíteni kell.
Hozzon létre egy játékkönyvet install_database.yaml ban,-ben játékkönyvek / könyvtár a geerlingguy.mysql szerepe az alábbiak szerint:
$ nano playbooks / install_database.yaml
Ezután írja be a következő sorokat a install_database.yaml fájl.
- hosztok: adatbázisfelhasználó: ansible
vált: igen
vars_files:
-… / Vars / database.yaml
szerepek:
- szerep: geerlingguy.mysql
Ha végzett, nyomja meg a gombot
Itt a szerepe geerlingguy.mysql a szerepek szakasz.
A vars_files szakasz a szükséges szerep / játékkönyv változók felvételére szolgál a játékkönyvbe. Itt a változók a vars / database.yaml fájl.
Most hozzon létre egy adatbázis.yaml fájl a vars / könyvtárat az alábbiak szerint:
$ nano vars / adatbázis.yaml
Most adja hozzá a kívánt változókat a adatbázis.yaml fájl. A következő változókat adtam hozzá a adatbázis.yaml fájl.
mysql_databases:- név: db01
kódolás: utf8mb4
összeállítás: utf8mb4_unicode_ci
mysql_users:
- név: linuxhint
házigazda: "%"
jelszó: titok
priv: "db01.*:MINDEN"
Ezek a változók konfigurálják geeringguy.mysql szerepet, hogy új felhasználót hozzon létre linuxhint, beállítja a jelszót titok a linuxhint felhasználó létrehoz egy új adatbázist db01 és támogatások linuxhint felhasználó teljes hozzáférése a db01 adatbázis.
Ha végzett, nyomja meg a gombot
Most futtathatja a install_database.yaml játékkönyv az alábbiak szerint:
$ ansible-playbook playbooks / install_database.yaml
Amint láthatja, a játékkönyv a geerlingguy.mysql szerep. Eltarthat egy ideig, amíg elkészül.
Ezen a ponton a install_mysql.yaml a játékkönyvet ki kell tölteni.
A vm1-en.nodekite.com Debian 10 host, az mysql a szolgáltatás fut, ahogy az alábbi képernyőképen látható,
A MySQL adatbázis-kiszolgálóra is bejelentkezhetek linuxhint felhasználó.
Mint láthatja, az adatbázis db01 is létrejön.
Tehát így telepíti és használja az Ansible Galaxy szerepköröket.
Lehetséges gyűjtemények telepítése és használata:
Ebben a részben bemutatom, hogyan kell telepíteni és használni az Ansible Galaxy kollekciót. Tehát kezdjük.
Mondjuk; telepíteni szeretné az Ansible Galaxy kollekciót geerlingguy.php_roles.
Ehhez futtassa a következő parancsot:
$ ansible-galaxy collection install geerlingguy.php_roles
A kollekció geerlingguy.php_roles telepíteni kell.
A gyűjtemény használatához hozzon létre egy újat playbook install_php.yaml ban,-ben játékkönyvek / könyvtárat az alábbiak szerint:
$ nano playbooks / install_php.yaml
Írja be a következő sorokat a install_php.yaml fájl.
- gazdagépek: webfelhasználó: ansible
vált: igen
gyűjtemények:
- geerlingguy.php_roles
szerepek:
- szerep: php
- szerep: php_versions
változatok:
php_version: '7.3 '
Ha végzett, nyomja meg a gombot
Ezek a sorok importálják a geerlingguy.php_roles gyűjtemény a játékkönyvben.
Ban,-ben szerepek szakaszban felhasználhatja a gyűjteményéhez szükséges szerepeket. Itt 2 szerepet (php és php_verziók) tól geerlingguy.php_roles Gyűjtemény.
A php szerep nem rendelkezik szerepspecifikus változókkal.
Ha egy szerepkört változók segítségével kíván konfigurálni, felveheti azokat a vars szakasza szerep alábbiak szerint.
A gyűjtemény hivatalos Ansible Galaxy oldalán megtalálhatja, hogy milyen szerepkörök használhatók
A szerep hivatalos Ansible Galaxy oldalán információkat talál arról, hogy milyen változókkal konfigurálhatja a szerepet.
Most futtathatja a install_php.yaml játékkönyv az alábbiak szerint:
$ ansible-playbook playbooks / install_php.yaml
Amint láthatja, a játékkönyv fut. Eltarthat egy ideig, amíg elkészül.
Ekkor elkészül a játékkönyv.
Mint láthatja, hozzáférhetek az Apache 2 webszerverhez, amely a CentOS 7 host vm9-en fut.nodekite.com.
Létrehoztam egy index.php fájl a / var / www / html / a CentOS 7 host vm9 könyvtáram.nodekite.com.
Amint láthatja, a webszerver szolgálhat index.php oldal helyesen.
Így telepíti és használja az Ansible Galaxy gyűjteményeket.
Következtetés:
Ebben a cikkben elmagyaráztam, hogy mi az Ansible Galaxy. Bemutattam az Ansible Galaxy szerepköreinek / gyűjteményeinek telepítését és használatát is. Az Ansible Galaxy segít elkerülni a kerék újratalálását, más néven kódismétlést. Gyorsabban kell elvégeznie az Ansible projekteket az Ansible Galaxy segítségével.