Inventaris Daftar Host Tingkat Lanjut yang Memungkinkan

Inventaris Daftar Host Tingkat Lanjut Yang Memungkinkan



Dengan menggunakan salah satu teknik pengelolaan terbaru, 'Dimungkinkan', kami memperkenalkan cara kami mencantumkan setiap host yang dipantau di perangkat. Di Ansible, kami menggunakan plugin 'inventaris' untuk mencantumkan semua host di jaringan.

Sangat penting untuk memiliki daftar semua mesin host Anda di Ansible. Menjaga file inventaris tetap teratur sama pentingnya dengan memelihara pedoman atau tugas karena Anda akan terus-menerus menemukan diri Anda dalam ketidakpastian dan bertanya pada diri sendiri dengan beberapa kekhawatiran jika file inventaris Anda salah kelola. Selain hal tersebut di atas, definisi file inventaris dari variabel yang diperlukan meminimalkan konten tugas di playbook dan mempercepat interpretasi. Ada sekelompok variabel yang dapat dideklarasikan di playbook dan file inventaris Ansible Anda yang bertanggung jawab untuk menghubungkan dan mengonfigurasi perilaku konektivitas ke mesin host.







Prasyarat:

Berikut ini adalah persyaratan sebelum menerapkan perintah inventaris daftar host di Ansible:



  • Untuk mulai mengimplementasikan, pertama-tama kita membutuhkan perangkat lunak yang digunakan untuk konfigurasi Ansible yang diinstal di perangkat server dengan versi terbaru. Ansible harus dikonfigurasi agar kami dapat dengan mudah mencantumkan mesin all-host di jaringan kami.
  • Untuk melakukan tugas konfigurasi apa pun di Ansible, kami memerlukan manajer konfigurasi utama. Dalam tutorial ini, kami menggunakan server pengontrol sebagai pengontrol utama.
  • Untuk menerapkan perubahan apa pun, kita perlu menargetkan server host di tutorial inventaris daftar host. Di sini, kami memiliki dua host jarak jauh target.

Contoh: Inventaris Daftar Host di Mesin

Berikut adalah contoh yang kami terapkan di alat Ansible untuk memeriksa atau menentukan inventaris daftar host. Untuk itu, kami akan melakukan contoh ini dalam langkah-langkah yang berbeda agar kami dapat dengan mudah memahami cara kerja dan implementasi tutorial ini. Berikut ini adalah langkah-langkahnya:



Langkah 1: Periksa Inventaris Daftar Host Default di Perangkat Host Jarak Jauh Target





Pertama, kami memeriksa berapa banyak host yang ada dalam inventaris alat Ansible. Untuk itu, kami menggunakan pernyataan 'ansible' dengan '—list-hosts' sehingga kami dapat menampilkan node yang ditangani secara default di inventaris.

[ akar @ master mungkin ] # memungkinkan semua --list-hosts



Ini adalah output setelah menulis perintah sebelumnya:

Terminal Ansible menampilkan '0 host' seperti yang Anda lihat di respons yang diberikan karena kami tidak mendeklarasikan inventaris. Kami membuat inventaris untuk mencantumkan inventaris host di terminal sebelum kami mengatasinya.

Inventaris Bawaan:

Saat kami menginstal Ansible di perangkat lunak, Ansible membuat file inventaris yang ditemukan dengan menulis pernyataan berikut di terminal:

[ akar @ master mungkin ] # sudo nano /etc/ansible/hosts

Hasilnya dihasilkan ketika kita menulis pernyataan sebelumnya. Kemudian, ia meminta Anda memasukkan kata sandi:

Dalam snapshot ini, file host Ansible default memberikan informasi mengenai host yang tidak dikelompokkan dan host grup server web. Host ini menyertakan URL dan alamat IP yang berbeda.

Langkah 2: Tentukan Inventaris Kustom di Ansible

Di Ansible, kami juga dapat menentukan inventaris kami dengan menulis beberapa pernyataan di terminal Ansible. Menentukan inventaris saat menjalankan pernyataan dan buku pedoman adalah keputusan bijak yang mencegah bentrok tuan rumah dan kegagalan saat terhubung dengan tuan rumah.

Untuk mulai menentukan inventaris sendiri, pertama-tama kita menulis pernyataan berikut sehingga kita dapat membuat inventaris di Ansible dan mencantumkan host di dalamnya sehingga kita membuat koneksi antara pengontrol Ansible dan host jarak jauh yang ditargetkan.

[ akar @ master mungkin ] # nano host.yml

Setelah menulis pernyataan sebelumnya, inventaris dibuat dan diluncurkan di terminal Ansible baru dengan judul 'hosts.yml'. Selanjutnya, kami mencantumkan host yang ditargetkan satu per satu di inventaris. Host pertama yang kami sambungkan adalah host Linux. Kami memberikan alamat IP host Linux, pengguna yang memungkinkan, kata sandi yang memungkinkan, jenis koneksi, dan nomor port yang memungkinkan. Kami juga melakukan hal yang sama dengan host target kedua. Host kedua yang kami gunakan adalah host Ansible. Semua host yang kami cantumkan berada di bawah parameter Ansible di inventaris.

Kemungkinan:
tuan rumah:
Linux_Host:
memungkinkan_host: 192.168.3.229
ansible_user: root
memungkinkan_password: tpstps_22
koneksi_mungkin: ssh
port_mungkin: 22

Ansible_Host:
ansible_host: 192.168.7.10
ansible_user: iris
ansible_password: TpsTps_1
koneksi_mungkin: ssh
port_mungkin: 22

Setelah membuat file inventaris dan menyediakan host di dalamnya, kami sekarang menghentikan file inventaris dan kembali ke terminal Ansible utama.

Langkah 3: Buat Playbook di Ansible

Selanjutnya, kami membuat buku pedoman di alat Ansible sehingga kami menentukan tugas. Untuk itu, kami menulis perintah berikut di terminal utama Ansible:

[ akar @ master mungkin ] # nano ansible_advanced_inventory.yml

Sekarang, playbook diluncurkan ke terminal baru. Pertama, kami menulis judul buku pedoman. Di baris berikutnya, kami menyediakan host target. Kami menggunakan opsi kumpulkan fakta yang digunakan untuk mendapatkan seluruh informasi dari host. Tapi di sini, kami memberikan 'tidak' yang berarti kami tidak ingin mendapatkan semua data dari host.

Selanjutnya, kami membuat daftar tugas di buku pedoman. Tugas pertama digunakan untuk menampilkan host target dengan nama host. Pada tugas selanjutnya, kami mencetak hasil host.

- nama: Inventaris host lanjutan yang memungkinkan
tuan rumah: Kemungkinan [ 0 ]
collect_facts: tidak
tugas:

- nama: Dapatkan nama host dari node yang dikelola
kerang: 'nama host'
daftar: hasil

- Nama: Cetak nama host
men-debug:
pesan: '{{result.stdout}}'

Sekarang, kami ingin menjalankan playbook bersama dengan file inventaris. Jadi, pertama-tama kita akhiri buku pedoman. Berikut ini adalah pernyataan yang kami gunakan untuk menjalankan perintah:

[ akar @ master mungkin ] # ansible-playbook ansible_advanced_inventory.yml –i host.yml

Berikut tampilan output yang menunjukkan bahwa koneksi berhasil. Karena kami melewati Ansible[0] di playbook, host pertama ditampilkan di output:

Kesimpulan

Kami melakukan diskusi mendalam tentang inventaris Ansible selama tutorial ini. Kami mempelajari cara membuat inventaris di Ansible lalu menghubungkannya dengan host jarak jauh target. Kami juga menerapkan contoh agar kami dapat dengan mudah memahami konsep inventaris yang memungkinkan.