mungkin

Cara Membangun Inventaris yang Mungkin dalam Format JSON

Cara Membangun Inventaris yang Mungkin dalam Format JSON
Secara default, file inventaris Ansible menggunakan format konfigurasi INI. Anda juga dapat menggunakan format konfigurasi JSON (JavaScript Object Notation) untuk file inventaris yang memungkinkan juga.

Pada artikel ini, saya akan menunjukkan cara menggunakan format konfigurasi JSON untuk membuat file inventaris Ansible An. Jadi, mari kita mulai.

Prasyarat:

Jika Anda ingin mencoba contoh artikel ini,

1) Anda harus menginstal Ansible di komputer Anda.
2) Anda harus memiliki setidaknya 6 host Linux yang dikonfigurasi untuk otomatisasi yang memungkinkan.

Ada banyak artikel di LinuxHint yang didedikasikan untuk Menginstal Ansible dan mengonfigurasi host untuk otomatisasi Ansible. Anda dapat memeriksanya jika diperlukan.

Membuat Direktori Proyek:

Pada artikel ini, saya akan menggunakan Visual Studio Code untuk mengedit file konfigurasi Ansible, file inventory, dan playbook. Anda dapat menggunakan editor atau IDE apa pun yang Anda inginkan.

Sebelum memulai, mari buat direktori proyek sehingga kita dapat mengatur file proyek kita.

Saya telah membuat direktori proyek baru json-inventaris/ di my RUMAH direktori seperti yang Anda lihat pada tangkapan layar di bawah ini.

Setelah Anda membuat direktori proyek baru, buka dengan editor teks atau IDE favorit Anda.

Dalam Kode Visual Studio, buka Mengajukan > Folder terbuka… seperti yang ditandai pada tangkapan layar di bawah ini.

Sekarang, pilih direktori proyek json-inventaris/ dan klik baik.

Direktori proyek harus dibuka dengan Visual Studio Code.

Sekarang, klik File baru  dan buat file baru mungkin.cfg.

Kemudian, ketik baris berikut di mungkin.cfg mengajukan.

[default]
inventaris          = host.json
host_key_checking  = Salah

Setelah selesai, tekan + S untuk menyelamatkan mungkin.cfg mengajukan.

Dengan cara yang sama, buat tuan rumah.json mengajukan. Ini adalah file inventaris JSON. Biarkan kosong untuk saat ini. Kami akan mengerjakannya nanti.

Sekarang, klik Folder baru  dan buat direktori baru buku pedoman seperti yang ditunjukkan pada tangkapan layar di bawah ini.

Menambahkan Host ke File Inventaris JSON:

Di bagian ini, saya akan menunjukkan cara menambahkan host ke file inventaris Anda dalam format JSON.

Dalam tuan rumah.json file inventaris, Anda menambahkan semua bagian.


"semua":

Di semua bagian, Anda menambahkan tuan rumah bagian dan tambahkan host Anda.


"semua":
"tuan rumah":
"host1": null,
"host2": null


Misalnya, Anda dapat menambahkan host vm1.simpul.com dan vm2.simpul.com dalam tuan rumah.json file inventaris sebagai berikut:.


"semua":
"tuan rumah":
"vm1.simpul.com": null,
"vm2.simpul.com": null


Setelah selesai, tekan + S untuk menyelamatkan tuan rumah.json mengajukan.

Anda dapat memeriksa host mana yang tersedia di file inventaris Anda dengan perintah berikut:

$ ansible --list-hosts all

Seperti yang Anda lihat, host yang saya tambahkan di file inventaris saya (vm1.simpul.com dan vm2.simpul.com) terdaftar.

Pengelompokan Host dalam File Inventaris JSON:

Di bagian ini, saya akan menunjukkan cara mengelompokkan host di file inventaris JSON AndaSON.

Grup host default di Ansible adalah semua. Itu semua grup memiliki semua host dari setiap grup (termasuk host dari semua kelompok).

Anda menambahkan grup tuan rumah di anak-anak bagian dari file inventaris JSON Anda.


"semua":

"anak-anak":
"grup 1":
,
"grup2":



Misalnya, untuk menambahkan host vm3.simpul.com dan vm4.simpul.com dalam jaring grup, dan untuk menambahkan host vm5.simpul.com dan vm6.simpul.com dalam db grup, ketik baris berikut di file inventaris JSON Anda.


"semua":
"tuan rumah":
"vm1.simpul.com": null,
"vm2.simpul.com": null
,
"anak-anak":
"jaring":
"tuan rumah":
"vm3.simpul.com": null,
"vm4.simpul.com": null

,
"db":
"tuan rumah":
"vm5.simpul.com": null,
"vm6.simpul.com": null




Setelah selesai, tekan + S untuk menyelamatkan tuan rumah.json mengajukan.

Di sini, garis yang ditandai menambahkan host vm3.simpul.com dan vm4.simpul.com dalam jaring kelompok.

Garis yang ditandai menambahkan host vm5.simpul.com dan vm6.simpul.com dalam db kelompok.

Sekarang, Anda dapat membuat daftar semua host yang tersedia di file inventaris JSON Anda dengan perintah berikut:

$ ansible --list-hosts all

Seperti yang Anda lihat, semua host dari setiap grup (jaring, db, dan semua) ditampilkan.

Untuk membuat daftar host yang tersedia dari jaring grup saja, jalankan perintah berikut:

$ mungkin --list-hosts web

Seperti yang Anda lihat, semua host di jaring grup ditampilkan.

Dengan cara yang sama, Anda dapat membuat daftar semua host yang tersedia dari db grup dengan perintah berikut:

$ mungkin --list-hosts db

Seperti yang Anda lihat, semua host di db grup ditampilkan.

Menambahkan Fakta Global di File Inventaris JSON:

Dalam Ansible, variabel juga disebut fakta. Fakta global atau variabel global dapat diakses dari setiap host dari setiap grup di file inventaris JSON Anda. Di bagian ini, saya akan menunjukkan kepada Anda bagaimana menambahkan fakta global atau variabel global secara memungkinkan.

Anda dapat menambahkan fakta global atau variabel global di vars bagian dalam semua bagian dari file inventaris JSON Anda sebagai berikut:


"semua":
"tuan rumah":

,
"var":
"variabel1": "nilai1",
"variabel2": "nilai2"
,
"anak-anak":
"jaring":

,
"db":




Misalnya, Anda dapat menambahkan fakta/variabel global akar web dan indeks dalam vars bagian dari file inventaris JSON Anda sebagai berikut:


"semua":
"tuan rumah":
"vm1.simpul.com": null,
"vm2.simpul.com": null
,
"var":
"webroot": "/var/www/html",
"indeks": "indeks.php"
,
"anak-anak":
"jaring":
"tuan rumah":
"vm3.simpul.com": null,
"vm4.simpul.com": null

,
"db":
"tuan rumah":
"vm5.simpul.com": null,
"vm6.simpul.com": null




Setelah selesai, tekan + S untuk menyimpan file inventaris JSON.

Untuk memeriksa apakah fakta/variabel global berfungsi, saya akan membuat buku pedoman baru print_vars1.yaml. Tujuan dari buku pedoman ini adalah untuk mencetak fakta/variabel dengan menggunakan debug modul Ansible. Ini juga akan membantu kita memahami fakta/prioritas variabel nanti.

Jadi, buat buku pedoman baru print_vars1.yaml di kamu buku pedoman/ direktori dan ketik baris berikut di Anda print_vars1.yaml mengajukan.

- tuan rumah: semua
pengguna: mungkin
tugas:
- nama: Cetak webroot dan indeks
debug:
msg: 'WebRoot webroot dan Indeks index'

Setelah selesai, tekan + S untuk menyelamatkan print_vars1.yaml mengajukan.

Untuk memeriksa apakah fakta/variabel global berfungsi, jalankan print_vars1.yaml buku pedoman sebagai berikut:

$ buku pedoman playbook yang memungkinkan/print_vars1.yaml

Playbook harus berjalan dengan sukses.

Gulir kembali ke TUGAS bagian. Seperti yang Anda lihat, akar web dan indeks fakta/variabel diterapkan ke setiap Host di file inventaris JSON saya. Jadi, fakta/variabel global berfungsi.

Menambahkan Fakta Grup di File Inventaris JSON:

Anda juga dapat menambahkan fakta/variabel untuk grup host tertentu. Di bagian ini, saya akan menunjukkan kepada Anda cara menambahkan fakta/variabel grup dalam file inventaris JSON Anda.

Saya akan menambahkan hal yang sama akar web dan indeks fakta di jaring grup host file inventaris JSON saya my. Nilai dari fakta-fakta ini akan berbeda. Saya telah melakukannya sehingga Anda juga dapat memahami bagaimana fakta/prioritas variabel bekerja di Ansible.

Untuk menambahkan fakta akar web dan indeks dalam jaring grup tuan rumah, tambahkan vars bagian di jaring bagian dari file inventaris JSON Anda sebagai berikut:


"semua":
"tuan rumah":
"vm1.simpul.com": null,
"vm2.simpul.com": null
,
"var":
"webroot": "/var/www/html",
"indeks": "indeks.php"
,
"anak-anak":
"jaring":
"tuan rumah":
"vm3.simpul.com": null,
"vm4.simpul.com": null
,
"vars":
"webroot": "/web/public_html",
"indeks": "indeks.html"

,
"db":
"tuan rumah":
"vm5.simpul.com": null,
"vm6.simpul.com": null




Setelah selesai, tekan + S untuk menyimpan file inventaris JSON.

Untuk memeriksa fakta, jalankan print_vars1.yaml buku pedoman sebagai berikut:

$ buku pedoman playbook yang memungkinkan/print_vars1.yaml

Seperti yang Anda lihat, fakta grup akar web dan indeks hanya tersedia untuk tuan rumah vm3.simpul.com dan vm4.simpul.com, tuan rumah di jaring kelompok.

Juga, perhatikan bahwa fakta kelompok (akar web dan indeks) menggantikan fakta global (akar web dan indeks). Jadi, Anda dapat mengatakan bahwa fakta kelompok memiliki prioritas lebih tinggi daripada fakta global.

Menambahkan Fakta Host di File Inventaris JSON:

Anda juga dapat menambahkan fakta/variabel khusus host di file inventaris JSON Anda. Di bagian ini, saya akan menunjukkan kepada Anda cara menambahkan fakta/variabel khusus host di file inventaris JSON Anda.

Untuk fakta global atau grup, kami menjaga nilai tuan rumah batal.

Untuk menambahkan fakta tuan rumah, ganti batal dengan fakta host Anda di file inventaris JSON sebagai berikut:

"tuan rumah":
"host1":
"var1": "nilai1",
"var2": "nilai2",
,
"host2":
"var2": "nilai3",
"var3": "nilai4",

Misalnya, untuk menambahkan indeks fakta tuan rumah untuk vm5.simpul.com tuan rumah, ganti batal dengan fakta tuan rumah sebagai berikut.


"semua":
"tuan rumah":
"vm1.simpul.com": null,
"vm2.simpul.com": null
,
"vars":
"webroot": "/var/www/html",
"indeks": "indeks.php"
,
"anak-anak":
"jaring":
"tuan rumah":
"vm3.simpul.com": null,
"vm4.simpul.com": null
,
"var":
"webroot": "/web/public_html",
"indeks": "indeks.html"

,
"db":
"tuan rumah":
"vm5.simpul.com":
"indeks": "indeks.py"
,
"vm6.simpul.com": null




Setelah selesai, tekan + S untuk menyimpan file inventaris JSON.

Untuk memeriksa fakta yang tersedia, jalankan print_vars1.yaml buku pedoman sebagai berikut:

$ buku pedoman playbook yang memungkinkan/print_vars1.yaml

Seperti yang Anda lihat, indeks fakta hanya tersedia untuk vm5.simpul.com tuan rumah.

Perhatikan juga bahwa fakta tuan rumah menggantikan fakta global. Fakta/variabel host memiliki prioritas tertinggi di Ansible. Jadi, fakta/variabel host akan menggantikan fakta/variabel grup dan fakta/variabel global.

Kesimpulan:

Dalam artikel ini, saya telah menunjukkan kepada Anda cara membuat file inventaris Ansible dalam format JSON. Saya telah menunjukkan kepada Anda cara menambahkan host, menambahkan grup host, menambahkan fakta global, menambahkan fakta grup, dan menambahkan fakta host dalam file inventaris Anda dalam format JSON.

Game Terbaik untuk Dimainkan dengan Pelacakan Tangan
Oculus Quest baru-baru ini memperkenalkan ide hebat pelacakan tangan tanpa pengontrol. Dengan jumlah permainan dan aktivitas yang terus meningkat yang...
Cara Menampilkan Overlay OSD di Aplikasi dan Game Linux Layar Penuh
Memainkan game layar penuh atau menggunakan aplikasi dalam mode layar penuh bebas gangguan dapat memutus Anda dari informasi sistem yang relevan yang ...
5 Kartu Tangkap Game Teratas
Kita semua telah melihat dan menyukai gameplay streaming di YouTube. PewDiePie, Jakesepticye, dan Markiplier hanyalah beberapa pemain top yang telah m...