Untuk membuat lingkungan labs ansible diperlukankan setidaknya satu host kontrol dan beberapa target host. Hanya host kontrol yang perlu terinstall ansible.
-
[Host Kontrol]
/ | \
[Host Target] [Host Target] [Host Target]
-
Kali ini saya membuat 3 container dengan lxc-proxmox dengan rincian berikut
Ubntuk ansible dapat berkomunikasi dan melakukan automation diperlukan akses SSH ke terget host. Kali ini kita akan mensetup ssh keys ke masing masing hosts. lebih lanjut mengenai SSH
ssh-keygen -t ed25519 -C "Ansible Keys"
Ansible 00: Installation and TestingAnsible 00: Installation and Testing
ssh-copy-id -i ~/.ssh/ansible pod0-ubuntu.yaslab.my.id
Setelah semua sudah siap kita perlu memberi tahu ansible tentang host target yang akan di koneksi. buat file inventory berisikan hostname target.
nano hosts
pod0 ansible_host=pod0-ubuntu.yaslab.my.id
pod1 ansible_host=pod1-debian.yaslab.my.id
pod2 ansible_host=pod2-fedora.yaslab.my.id
Untuk mengetes koneksi terhadap target host kita dapat menggunakan module ansible ping.
ansible all --private-key=~/.ssh/ansible -i hosts -m ping
... SUCCESS
Untuk menghemat pengetikan, Kita dapat mendeklarasikan variable seperti private key, inventory ,users dll. di ansible.cfg
.
ansible.cfg
nano ansible.cfg
[defaults]
inventory = ./hosts
remote_user = ilyasa
private_key_file = ~/.ssh/ansible
lakukan ping tanpa argument
ansible all -m ping