Memulai belajar Ansible

Belajar Ansible: Instalasi Nginx dan PHP-FPM

Pada tulisan kali ini, kita akan mencoba menggunakan Ansible untuk melakukan konfigurasi server.

Sebagai contoh sederhana, kita akan melakukan instalasi:

  • Web server Nginx
  • PHP-FPM

Prosesnya sebenarnya mirip seperti saat menggunakan perintah Linux apt-get, yaitu menginstal paket, mencari file konfigurasi, dan melakukan pengeditan. Namun, dengan menggunakan Ansible, kita akan mendapatkan banyak manfaat seperti otomatisasi, konsistensi konfigurasi, dan kemudahan pengelolaan banyak server.

Anda bisa membaca penjelasan manfaat Ansible pada tulisan berikut:
https://nciptandani.blogspot.com/2021/06/cara-konfigurasi-server-dan-perangkat.html


Struktur Dasar Ansible

Ansible memiliki banyak komponen dan modul. Struktur penulisan kodenya bisa dibagi menjadi beberapa bagian, seperti:

  • Template
  • Playbook
  • Role
  • Handler
  • Task
  • Inventory

Namun, untuk memulai belajar, kita dapat memulai dari langkah yang paling sederhana berikut.


1. Install Ansible di Workstation

Silakan ikuti panduan instalasi pada link berikut:
https://nciptandani.blogspot.com/2021/05/cara-install-ansible-di-ubuntu.html


2. Hubungkan Workstation ke Server Menggunakan SSH Key

Terdapat banyak opsi terkait SSH seperti penggunaan proxy, bastion host, dan pengaturan keamanan lainnya. Namun, untuk tahap awal pembelajaran, kita gunakan cara yang sederhana.


a. Generate SSH Key di Workstation

Jalankan perintah berikut:

ssh-keygen

b. Copy SSH Key ke Server

Gunakan perintah:

ssh-copy-id nasohi@nsh-web1

Pastikan:

  • Server nsh-web1 sudah memiliki user nasohi
  • User tersebut memiliki akses sudo

Jika proses berhasil, Anda sudah dapat login ke server tanpa password, dan koneksi ini bisa digunakan oleh Ansible.


c. Verifikasi Koneksi

Coba login:

ssh nasohi@nsh-web1

Jika berhasil, lanjutkan dengan membuat folder kerja Ansible.


3. Membuat Inventory Ansible

Buat folder kerja:

mkdir learn-ansible
cd learn-ansible

Buat file inventory:

vim inventory

Isi dengan:

nsh-web1 ansible_host=192.168.56.10 ansible_user=nasohi

4. Testing Koneksi dengan Module Ping

Jalankan perintah berikut dari workstation:

ansible all -i inventory -m ping

Contoh output:

nsh-web1 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "ping": "pong"
}

Penjelasan:

  • ansible all → menjalankan ke semua host di inventory
  • -i inventory → menggunakan file inventory
  • -m ping → menjalankan module ping untuk test koneksi

Jika muncul pong, berarti koneksi Ansible ke server sudah berhasil.


Penutup

Sampai tahap ini, kita sudah berhasil:

  • Menginstall Ansible
  • Menyiapkan SSH tanpa password
  • Membuat inventory
  • Menguji koneksi Ansible ke server

Pada tahap selanjutnya, kita dapat mulai membuat playbook untuk melakukan instalasi Nginx dan PHP-FPM secara otomatis.


Oke, sampai di sini dulu.


Komentar

Postingan populer dari blog ini

Cara restart / stop windows service (services.msc) dengan bat / cmd

Learning Haproxy Load Balancer with Podman and Go Backends

Konfigurasi ITNSA OpenVPN auth LDAP