Ansible adalah alat otomatisasi populer yang digunakan oleh sysadmin dan pengembang untuk mendapatkan komputer dalam keadaan tertentu. Modul yang memungkinkan adalah, dengan cara, perintah apa untuk komputer Linux. Mereka memberikan solusi untuk masalah tertentu, dan satu tugas umum saat memelihara komputer adalah menjaganya agar tetap diperbarui dan konsisten. Dalam artikel ini, saya menunjukkan cara menginstal paket perangkat lunak dengan Ansible.
Persyaratan
Untuk menjalankan Ansible perintah ad hoc dan playbook pada node yang dikelola, pengguna jarak jauh dengan akses SSH diperlukan di setiap node yang dikelola . Untuk contoh ini, saya akan memanggil pengguna itu tux . Tux memerlukan izin untuk menjalankan perintah dengan hak istimewa yang lebih tinggi untuk menginstal paket. Oleh karena itu file /etc/sudoers.d/tux
dengan konten berikut harus ada di semua node yang dikelola:
tux ALL=(ALL) NOPASSWD:ALL
Gunakan visudo
untuk mengedit /etc/sudoers
entri file.
Instalasi paket
Misalkan Anda telah menemukan paket baru yang keren bernama sysstat
yang sekarang ingin Anda instal di semua host Anda sekaligus. Itu pekerjaan mudah untuk Ansible:
$ ansible all --user tux --become \
--module-name dnf -a’name=sysstat state=latest’
Dan Anda sudah selesai.
[ Anda mungkin juga menyukai: Cara membuat Playbook yang Mungkin ]
Satu baris itu disebut perintah ad hoc Ansible. Ini biasanya tugas satu kali yang tidak Anda harapkan untuk diulang. Namun, untuk kepentingan penggunaan kembali, lebih baik untuk memasukkan instruksi tersebut ke dalam buku pedoman Ansible, seperti ini:
---
- hosts: all
tasks:
- name: Make sure the current version of ‘sysstat’ is installed.
dnf:
name: sysstat
state: latest
Simpan buku pedoman ini ke file bernama install_packages.yml
, dan kemudian Anda dapat menjalankannya dengan perintah berikut:
$ ansible-playbook -u tux -b install_packages.yml
Anda dapat memasukkannya ke dalam jadwal dengan cron
, memastikan paket yang diinginkan terinstal dan diinstal ulang jika seseorang menghapusnya.
Instal beberapa paket
Bagaimana jika Anda ingin menginstal daftar paket di semua host Anda? Itu juga mudah:
---
- hosts: all
tasks:
- name: Package installation
dnf:
name:
- sysstat
- httpd
- mariadb-server
state: latest
Jalankan buku pedoman:
$ ansible-playbook -u tux -b install_packages.yml
Saya yakin Anda mendapatkan idenya. Butuh lebih banyak paket? Cukup tambahkan mereka ke daftar.
Menutup
Mengelola perangkat lunak dengan Ansible cukup mudah. Anda dapat menggunakan modul DNF untuk mengelola penginstalan yang sebenarnya dan buku pedoman Ansible berbasis YAML untuk mendistribusikan instruksi penginstalan ke node terkelola Anda. Ini adalah contoh bagus lainnya tentang bagaimana Ansible membuat hidup lebih mudah bagi sysadmin yang mengelola banyak sistem.
[ Dapatkan ebook gratis ini:Mengelola kluster Kubernetes Anda untuk boneka. ]