Hai semuanya, apa kabar? Kali ini aku mau coba lanjut lagi belajar Ansible-nya. Kali ini kita akan coba eksekusi ad-hoc commands with sudo. Sebelumnya, kita perlu siapkan terlebih dahulu target-nya. Kali ini kita akan gunakan VM Debian 12 sebagai targetnya (masih fresh/kosongan).
spoiler alert: pengujian yang dilakukan pada tulisan ini belum tuntas.
Konfigurasi Jaringan dan Akses Target
Karena VM Debian yang digunakan sebagai target masih polosan dan belum ada konfigurasi lanjutan yang diterapkan (termasuk jaringan), kita perlu menyematkan alamat IP atau lakukan konfigurasi jaringan dasar agar VM ini dapat diakses dari luar (termasuk SSH dari komputer lokal kita).
Konfigurasi jaringan di Debian ada di file /etc/network/interfaces. Sesuaikan agar kita bisa menyematkan IP statis pada sistem Debian.
auto ens18
iface ens18 inet static
address 192.168.9.102/24
gateway 192.168.9.250
dns-nameservers 1.1.1.1
- Aktifkan konfigurasi/interface:
ifup ens18 - Restart jaringan:
systemctl restart networking
Apabila alamat IP baru sudah berhasil disematkan (bisa kita coba ping dari lokal ke Debian dengan IP baru tersebut), kita juga bisa coba dengan tes SSH ke Debian-nya.
Konfigurasi Ansible
Agar tidak selalu memasukkan password saat mengakses Debian, kita dapat kirimkan SSH key dari lokal ke Debian agar Ansible dapat terhubung langsung tanpa password.
ssh-copy-id -i ~/.ssh/ansible.pub debian@192.168.9.102
Update juga repo di Ansible (file inventory). Pastikan diisi dengan alamat IP dan user dari Debian/target server. Contoh isi file inventory:
192.168.9.102 ansible_user=debian
Kendala Server Tujuan
Karena Debian yang digunakan masih “polos”, jadi kita perlu menyesuaikan beberapa konfigurasi agar pengujian bisa lebih lancar.
- Repo error. Debian masih mencari paket pada media CDROM (yang padahal tidak digunakan). Solusinya adalah edit file
/etc/apt/sources.listdan nonaktifkan entri CDROM (pasang tanda#di depannya). - Belum ada sudo. Masuk dulu ke Debian (bisa via SSH) sebagai root (bisa pakai
sujuga), lalu instalsudo, dan tambahkan userdebianke dalam grupsudo.apt update && apt install sudo -y usermod -aG sudo debian - Sesi sudo tidak dapat terhubung. Dapat dikarenakan SSH masih menyimpan sesi lama. Solusinya adalah restart layanan SSH dari Debian:
sudo systemctl restart ssh
Testing Eksekusi Ad Hoc Command
Kita akan coba dulu melakukan update pada Debian dengan menggunakan parameter --become untuk menaikkan hak akses dan --ask-become-pass untuk memasukkan password sudo.
ansible all -m apt -a "update_cache=true" --become --ask-become-pass
Prosesnya memang agak lama (bisa 1-2 menit). Tunggu saja. Selanjutnya kita akan instal suatu aplikasi (vim-nox) untuk diinstal di Debian.
ansible all -m apt -a "name=vim-nox state=present" --become --ask-become-pass
Gangguan yang terjadi adalah saat step selanjutnya yaitu konfigurasi untuk memastikan snap yang digunakan adalah versi terbaru. Saat ini belum berhasil karena Terminal yang digunakan nampak hang dan belum dapat dilanjutkan.
Tulisan kali ini sampai di sini dulu ya. Sampai jumpa. Bye.