Ansible adalah alat otomatisasi sumber terbuka dan gratis yang disponsori oleh Red Hat. Dengan menggunakan kemungkinan, kami dapat mengelola dan mengkonfigurasi sistem Linux dan Windows tanpa instalasi agen apa pun di dalamnya. Ini pada dasarnya bekerja pada protokol ssh dan dapat mengonfigurasi ratusan server plus sekaligus. Dalam terminologi yang memungkinkan, sistem tempat Ansible diinstal disebut host kontrol /node dan sistem yang dikelola oleh ansible disebut host terkelola.
Dalam postingan ini, kita akan membahas cara menginstal Ansible versi terbaru di Rocky Linux 8. Berikut adalah detail penyiapan lab Ansible saya:
- Node Kontrol – 192.168.1.170 – Minimal Rocky Linux 8
- Host Terkelola 1 – 192.168.1.121 – Ubuntu 20.04 LTS
- Host Terkelola 2 – 192.168.1.122 – Rocky Linux 8
- mengurus pengguna dengan hak admin
Instal Ansible melalui perintah dnf
1) Perbarui sistem
Untuk memperbarui rocky linux 8, jalankan di bawah perintah dnf.
$ sudo dnf update -y
Setelah semua pembaruan diinstal, reboot sistem Anda sekali.
$ sudo reboot
2) Konfigurasikan repositori EPEL
Paket yang memungkinkan dan dependensinya tidak tersedia di repositori paket Rocky Linux 8 default. Jadi, untuk menginstall memungkinkan melalui dnf , kita harus mengkonfigurasi repositori EPEL terlebih dahulu.
Jalankan perintah berikut,
$ sudo dnf install -y epel-release
3) Instal Ansible dengan perintah dnf
Sekarang kita siap untuk menginstal ansible dengan perintah dnf, jalankan
$ sudo dnf install ansible -y
Setelah memungkinkan dan dependensinya berhasil diinstal. Verifikasi versinya dengan menjalankan perintah berikut,
$ memungkinkan --version
Instalasi yang Memungkinkan dengan pip
Jika Anda mencari Ansible versi terbaru, maka instal ansible dengan pip. Lihat langkah-langkah berikut.
Catatan:Pada saat menulis posting ini, kemungkinan 4.3.0 tersedia
1) Instal semua pembaruan
Instal semua pembaruan yang tersedia menggunakan perintah di bawah ini,
$ sudo dnf update -y
Nyalakan ulang sistem sekali setelah menginstal pembaruan,
$ reboot
2) Instal python 3.8 dan dependensi lainnya
Jalankan perintah berikut untuk menginstal python 3.8 dan dependensi lainnya
$ sudo modul dnf -y install python38$ sudo alternatif --config python
Ketik 3 dan tekan enter
3) Instal Ansible versi terbaru dengan pip
Jalankan perintah berikut satu demi satu untuk menginstal yang memungkinkan,
$ sudo pip3 install setuptools-rust wheel$ sudo pip3 install --upgrade pip$ sudo python -m pip install ansible
Output dari perintah python di atas akan seperti di bawah ini:
Output di atas mengonfirmasi bahwa Ansible telah berhasil diinstal. Mari kita verifikasi versi Ansible menggunakan perintah ansible berikut,
$ memungkinkan --version
Verifikasi Instalasi yang Memungkinkan
Setiap kali Ansible diinstal dengan perintah dnf atau yum maka file konfigurasi default 'ansible.cfg' dibuat secara otomatis di bawah folder '/etc/ansible'. Tetapi ketika kita menginstalnya dengan pip maka kita harus membuat file konfigurasinya secara manual.
Disarankan untuk membuat ansible.cfg untuk setiap proyek. Untuk tujuan demonstrasi, saya membuat proyek otomatisasi. Jalankan perintah mkdir berikut,
$ otomatisasi mkdir$ otomatisasi cd
Buat file ansible.cfg dengan konten berikut,
$ vi ansible.cfg[defaults]inventory =/home/sysops/auotmation/inventoryremote_user =sysopshost_key_checking =False[privilege_escalation]become=Truebecome_method=sudobecome_user=rootbecome_ask_pass>Simpan dan keluar dari file.
Sekarang buat file inventaris di bawah proyek otomatisasi (folder) dengan konten berikut.
$ vi inventory[prod]192.168.1.121[test]192.168.1.122Simpan &tutup file.
Jika Anda memperhatikan dengan cermat file ansible.cfg, saya telah menggunakan remote_user sebagai 'sysops'. Jadi mari buat kunci ssh untuk pengguna sysops dan bagikan di antara host yang dikelola.
$ ssh-keygen
Bagikan kunci SSH menggunakan perintah ssh-copy-id,
$ ssh-copy-id [dilindungi email]$ ssh-copy-id [dilindungi email]
Catatan:Jalankan perintah berikut pada setiap host yang dikelola untuk menjalankan semua perintah tanpa meminta kata sandi,
# echo "sysops ALL=(ALL) NOPASSWD:ALL"> /etc/sudoers.d/sysopsVerifikasi konektivitas dari node kontrol ke host yang dikelola menggunakan modul ping,
$ cd automation/$ ansible -i inventory all -m ping
Mari kita buat contoh buku pedoman (web.yaml) untuk menginstal nginx dan php pada host yang dikelola,
$ vi web.yaml---- name:Play to Packages hosts: - test - prod tasks: - name:Install php and nginx package: name: - php - nginx state:presentSimpan dan tutup file.
Jalankan playbook menggunakan perintah di bawah ansible-playbook,
$ ansible-playbook -i inventory web.yamlOutput dari perintah di atas akan seperti di bawah ini
Bagus, output di atas mengonfirmasi bahwa playbook telah berhasil dijalankan dan juga mengonfirmasi bahwa Ansible telah diinstal dengan benar.
Itu saja dari postingan ini. Saya percaya posting ini membantu Anda menginstal dan menggunakan Ansible di Rocky Linux 8. Silakan bagikan umpan balik dan pertanyaan Anda di bagian komentar di bawah.
Bacaan yang Disarankan: Cara Menggunakan Handler di Ansible Playbook
Cara Install Apache Subversion (SVN) di RHEL 8 / Rocky Linux 8 Cara Instal Docker dan Docker-Compose di Rocky Linux 8Rocky Linux