Odgovorno

Kako izraditi odgovorni inventar u JSON formatu

Kako izraditi odgovorni inventar u JSON formatu
Prema zadanim postavkama datoteka Ansible inventara koristi format konfiguracije INI. Također možete koristiti format konfiguracije JSON (JavaScript Object Notation) za datoteke odgovornog inventara.

U ovom članku pokazat ću vam kako koristiti format JSON konfiguracije za izradu datoteka inventara Ansible. Pa, krenimo.

Preduvjeti:

Ako želite isprobati primjere ovog članka,

1) Na računalu morate imati instaliran Ansible.
2) Morate imati najmanje 6 Linux hostova konfiguriranih za Ansible automatizaciju.

Na LinuxHintu postoji mnogo članaka posvećenih Instaliranju Ansible i konfiguriranju hostova za Ansible automatizaciju. Možete ih provjeriti ako je potrebno.

Izrada direktorija projekata:

U ovom ću članku koristiti Visual Studio Code za uređivanje konfiguracijske datoteke Ansible, datoteke inventara i knjiga za reprodukciju. Možete koristiti bilo koji uređivač ili IDE koji želite.

Prije nego što započnete, kreirajmo direktorij projekta kako bismo mogli organizirati datoteke projekta.

Stvorio sam novi direktorij projekata json-inventar / u mojoj DOM direktorija kao što možete vidjeti na snimci zaslona u nastavku.

Nakon što stvorite novi direktorij projekata, otvorite ga svojim omiljenim uređivačem teksta ili IDE-om.

U Visual Studio Code idite na Datoteka > Otvori mapu .. kako je označeno na snimci zaslona u nastavku.

Sada odaberite direktorij projekta json-inventar / i kliknite na u redu.

Direktorij projekta treba otvoriti Visual Studio Code.

Sada kliknite na Nova datoteka  i stvorite novu datoteku ansible.usp.

Zatim unesite sljedeće retke u ansible.usp datoteka.

[zadane postavke]
inventar = domaćini.json
host_key_checking = Netačno

Kada završite, pritisnite + S spasiti ansible.usp datoteka.

Na isti način stvorite a domaćini.json datoteka. Ovo je datoteka JSON inventara. Ostavite to za sada prazno. Na tome ćemo raditi kasnije.

Sada kliknite na Nova mapa  i stvorite novi direktorij igraonice kao što je prikazano na snimci zaslona u nastavku.

Dodavanje hostova u datoteku JSON inventara:

U ovom odjeljku pokazat ću vam kako dodati hostove u datoteku inventara u JSON formatu.

U domaćini.json datoteku inventara, dodate svi odjeljak.


"svi":

U svi odjeljak, dodajte a domaćin odjeljak i dodajte svoje domaćine.


"svi":
"domaćini":
"host1": null,
"host2": null


Na primjer, možete dodati hostove vm1.nodekite.com i vm2.nodekite.com u domaćini.json spis inventara kako slijedi.


"svi":
"domaćini":
"vm1.nodekite.com ": null,
"vm2.nodekite.com ": null


Kada završite, pritisnite + S spasiti domaćini.json datoteka.

Sljedećom naredbom možete provjeriti koji su hostovi dostupni u vašoj datoteci inventara:

$ ansible --list-domaćini svi

Kao što vidite, domaćini koje sam dodao u svoju datoteku inventara (vm1.nodekite.com i vm2.nodekite.com) su navedeni.

Grupiranje hostova u datoteci JSON inventara:

U ovom odjeljku pokazat ću vam kako grupirati hostove u vašoj JSON datoteci inventara.

Zadana grupa domaćina u Ansibleu je svi. The svi group ima sve domaćine iz svake grupe (uključujući domaćine iz svi skupina).

Grupe domaćina dodajete u djeco odjeljak vaše JSON datoteke inventara.


"svi":
..
"djeca":
"grupa1":
,
"grupa2":



Na primjer, za dodavanje domaćina vm3.nodekite.com i vm4.nodekite.com u mreža grupi i dodajte domaćine vm5.nodekite.com i vm6.nodekite.com u db grupi, upišite sljedeće retke u datoteku JSON inventara.


"svi":
"domaćini":
"vm1.nodekite.com ": null,
"vm2.nodekite.com ": null
,
"djeca":
"mreža":
"domaćini":
"vm3.nodekite.com ": null,
"vm4.nodekite.com ": null

,
"db":
"domaćini":
"vm5.nodekite.com ": null,
"vm6.nodekite.com ": null




Kada završite, pritisnite + S spasiti domaćini.json datoteka.

Ovdje označene linije dodaju domaćine vm3.nodekite.com i vm4.nodekite.com u mreža skupina.

Označene linije dodaju domaćine vm5.nodekite.com i vm6.nodekite.com u db skupina.

Sada možete navesti sve dostupne hostove u svojoj JSON datoteci inventara pomoću sljedeće naredbe:

$ ansible --list-domaćini svi

Kao što vidite, svi domaćini iz svake grupe (mreža, db, i svi).

Da biste popisali dostupne domaćine iz mreža samo grupa, pokrenite sljedeću naredbu:

$ ansible --list-domaćini web

Kao što vidite, svi domaćini u mreža prikazuju se grupa.

Na isti način možete navesti sve dostupne hostove s db grupa sa sljedećom naredbom:

$ ansible --list-hosts db

Kao što vidite, svi domaćini u db prikazuju se grupa.

Dodavanje globalnih činjenica u datoteku JSON inventara:

U Ansibleu varijable se nazivaju i činjenicama. Globalne činjenice ili globalne varijable dostupne su svim domaćinima svake grupe u vašoj JSON inventarnoj datoteci. U ovom odjeljku pokazat ću vam kako dodati globalne činjenice ili globalne varijable u odgovor.

Možete dodati globalne činjenice ili globalne varijable u vars odjeljak iznutra svi odjeljak vaše JSON datoteke inventara kako slijedi:


"svi":
"domaćini":
..
,
"vars":
"variable1": "vrijednost1",
"variable2": "vrijednost2"
,
"djeca":
"mreža":
..
,
"db":
..



Na primjer, možete dodati globalne činjenice / varijable webroot i indeks u vars odjeljak vaše JSON datoteke inventara kako slijedi:


"svi":
"domaćini":
"vm1.nodekite.com ": null,
"vm2.nodekite.com ": null
,
"vars":
"webroot": "/ var / www / html",
"index": "indeks.php "
,
"djeca":
"mreža":
"domaćini":
"vm3.nodekite.com ": null,
"vm4.nodekite.com ": null

,
"db":
"domaćini":
"vm5.nodekite.com ": null,
"vm6.nodekite.com ": null




Kada završite, pritisnite + S za spremanje datoteke JSON inventara.

Kako bih provjerio rade li globalne činjenice / varijable, stvorit ću novu knjigu priručnika print_vars1.yaml. Svrha ove knjige je ispisati činjenice / varijable pomoću otklanjanje pogrešaka modul Ansible. Također će nam pomoći da kasnije razumijemo prioritet činjenica / varijabli.

Dakle, stvorite novu knjigu s igrama print_vars1.yaml u vašem igraonice / imenik i unesite sljedeće retke u svoj print_vars1.yaml datoteka.

- domaćini: svi
korisnik: ansible
zadaci:
- ime: Ispis mrežnog korijena i indeksa
otklanjanje pogrešaka:
msg: 'WebRoot webroot i indeks index'

Kada završite, pritisnite + S spasiti print_vars1.yaml datoteka.

Da biste provjerili rade li globalne činjenice / varijable, pokrenite print_vars1.yaml playbook kako slijedi:

$ ansible-playbook playbooks / print_vars1.yaml

Knjiga s igrama trebala bi se uspješno izvoditi.

Pomaknite se natrag do ZADATAK odjeljak. Kao što vidite, webroot i indeks činjenice / varijable primjenjuju se na svakog hosta u mojoj datoteci JSON inventara. Dakle, globalne činjenice / varijable djeluju.

Dodavanje činjenica o grupi u datoteku JSON inventara:

Možete dodati činjenice / varijable i za određenu grupu domaćina. U ovom odjeljku pokazat ću vam kako dodati grupne činjenice / varijable u svoju JSON datoteku inventara.

Dat ću isto webroot i indeks činjenice u mreža grupa domaćina moje JSON datoteke inventara. Vrijednost ovih činjenica bit će drugačija. Učinio sam to tako da i vi možete razumjeti kako činjenice / varijabilni prioritet funkcioniraju u Ansibleu.

Da dodam činjenice webroot i indeks u mreža grupa domaćina, dodajte a vars odjeljak u mreža odjeljak vaše JSON datoteke inventara kako slijedi:


"svi":
"domaćini":
"vm1.nodekite.com ": null,
"vm2.nodekite.com ": null
,
"vars":
"webroot": "/ var / www / html",
"index": "indeks.php "
,
"djeca":
"mreža":
"domaćini":
"vm3.nodekite.com ": null,
"vm4.nodekite.com ": null
,
"vars":
"webroot": "/ web / public_html",
"index": "indeks.html "

,
"db":
"domaćini":
"vm5.nodekite.com ": null,
"vm6.nodekite.com ": null




Kada završite, pritisnite + S za spremanje datoteke JSON inventara.

Da biste provjerili činjenice, pokrenite print_vars1.yaml playbook kako slijedi:

$ ansible-playbook playbooks / print_vars1.yaml

Kao što vidite, skup činjenica webroot i indeks dostupni su samo domaćinima vm3.nodekite.com i vm4.nodekite.com, domaćini u mreža skupina.

Također, primijetite da su činjenice o grupi (webroot i indeks) zamijenio globalne činjenice (webroot i indeks). Dakle, možete reći da grupne činjenice imaju veći prioritet od globalnih činjenica.

Dodavanje činjenica o hostu u datoteku JSON inventara:

Činjenice / varijable specifične za hosta možete dodati i u svoju datoteku JSON inventara. U ovom odjeljku pokazat ću vam kako dodati činjenice / varijable specifične za hosta u vašu datoteku JSON inventara.

Za globalne ili grupne činjenice zadržali smo vrijednost domaćina null.

Da biste dodali činjenice o hostu, zamijenite null s podacima o vašem hostu u datoteci JSON inventara kako slijedi:

"domaćini":
"host1":
"var1": "vrijednost1",
"var2": "vrijednost2",
,
"host2":
"var2": "vrijednost3",
"var3": "vrijednost4",

Na primjer, za dodavanje indeks domaćin činjenica za vm5.nodekite.com domaćina, zamijeniti null s činjenicama o domaćinu kako slijedi.


"svi":
"domaćini":
"vm1.nodekite.com ": null,
"vm2.nodekite.com ": null
,
"vars":
"webroot": "/ var / www / html",
"index": "indeks.php "
,
"djeca":
"mreža":
"domaćini":
"vm3.nodekite.com ": null,
"vm4.nodekite.com ": null
,
"vars":
"webroot": "/ web / public_html",
"index": "indeks.html "

,
"db":
"domaćini":
"vm5.nodekite.com ":
"index": "indeks.pi "
,
"vm6.nodekite.com ": null




Kada završite, pritisnite + S za spremanje datoteke JSON inventara.

Da biste provjerili dostupne činjenice, pokrenite print_vars1.yaml playbook kako slijedi:

$ ansible-playbook playbooks / print_vars1.yaml

Kao što vidite, indeks činjenica je dostupna samo za vm5.nodekite.com domaćin.

Također primijetite da je činjenica hosta zamijenila globalnu činjenicu. Činjenice / varijable domaćina imaju najveći prioritet u Ansibleu. Dakle, činjenice / varijable domaćina zamijenit će grupne činjenice / varijable i globalne činjenice / varijable.

Zaključak:

U ovom sam vam članku pokazao kako izraditi datoteku inventara Ansible u JSON formatu. Pokazao sam vam kako dodati domaćine, dodati grupe hostova, dodati globalne činjenice, dodati činjenice o grupama i dodati činjenice o hostu u svoju datoteku inventara u JSON formatu.

Kako obrnuti smjer pomicanja miša i dodirnih pločica u sustavu Windows 10
Miš i Dodirna pločaRačunarstvo ne samo da olakšava, već i učinkovitije i oduzima puno vremena. Ne možemo zamisliti život bez ovih uređaja, ali činjeni...
Kako promijeniti pokazivač miša i veličinu, boju i shemu pokazivača na sustavu Windows 10
Pokazivač i pokazivač miša u sustavu Windows 10 vrlo su važni aspekti operativnog sustava. To se može reći i za druge operativne sustave, tako da u is...
Besplatni i otvoreni kodni pokretački programi za razvoj Linux igara
Ovaj će članak pokriti popis besplatnih i open source pokretačkih igara koje se mogu koristiti za razvoj 2D i 3D igara na Linuxu. Brojni su takvi moto...