Ansible adalah tool automation yang powerful buat manage infrastruktur IT. Beda sama tools automation lain, Ansible agentless—artinya gak perlu install software khusus di server target, cukup di control node aja. Artikel ini bakal ngebahas cara install Ansible di berbagai OS populer.
Apa Itu Ansible?
Sebelum masuk ke cara install, penting buat paham dulu apa itu Ansible dan kenapa banyak dipake:
- Agentless: Gak perlu install agent di target server
- Idempotent: Bisa di-run berkali-kali tanpa efek samping
- Mudah dibaca: Menggunakan YAML (Yet Another Markup Language)
- Modular: Punya ribuan module siap pakai
Ansible bekerja dengan arsitektur Control Node → Managed Nodes. Control node itu komputer tempat Ansible diinstall, sedangkan managed nodes adalah server-server yang mau di-manage.
Persyaratan Sistem
Sebelum install, pastikan sistemmu memenuhi persyaratan berikut:Table
| Komponen | Requirement |
|---|---|
| Python | Versi 3.9 atau lebih baru |
| OS Control Node | Linux/Unix (Windows bisa via WSL) |
| SSH Access | Ke semua managed nodes |
| Memory | Minimal 2GB RAM (untuk control node) |
Catatan Penting: Ansible control node hanya support Linux/Unix. Kalo pake Windows, wajib pake WSL (Windows Subsystem for Linux).
1. Instalasi di Ubuntu/Debian
Ubuntu dan turunannya adalah OS yang paling sering dipake buat jadi control node. Ada dua cara: pake package manager official atau PPA.
Metode A: Dari Repository Official (Recommended)
# Update package list
sudo apt update
# Install Ansible
sudo apt install ansible -y
# Verifikasi instalasi
ansible --version
Metode B: Dari PPA (Versi Terbaru)
Kalo mau versi Ansible yang lebih fresh:
# Install dependencies
sudo apt update
sudo apt install software-properties-common -y
# Add Ansible PPA
sudo add-apt-repository --yes --update ppa:ansible/ansible
# Install Ansible
sudo apt install ansible -y
Troubleshooting Ubuntu/Debian
Kalo ketemu error unauthenticated packages, jalankan:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys <KEY_ID>
2. Instalasi di CentOS/RHEL/Fedora
Distro keluarga Red Hat punya cara install yang sedikit beda tergantung versinya.
Fedora (Versi Terbaru)
Fedora udah pake dnf sebagai default package manager.
# Install langsung dari repo Fedora
sudo dnf install ansible -y
# Atau pake pip kalo mau versi spesifik
sudo dnf install python3-pip -y
pip3 install ansible --user
CentOS/RHEL 8 dan 9
# Install EPEL repository dulu (Extra Packages for Enterprise Linux)
sudo dnf install epel-release -y
# Install Ansible
sudo dnf install ansible -y
CentOS/RHEL 7
Versi ini masih pake yum:
# Install EPEL
sudo yum install epel-release -y
# Install Ansible
sudo yum install ansible -y
Install Versi Spesifik via pip
Kalo butuh versi Ansible tertentu:
# Install pip dulu
sudo dnf install python3-pip -y
# Install versi spesifik
pip3 install ansible==2.9.27
# Atau versi terbaru
pip3 install --upgrade ansible
3. Instalasi di Arch Linux
Buat pengguna Arch yang suka bleeding edge:
# Install dari official repo
sudo pacman -S ansible
# Atau pake AUR kalo mau versi development
yay -S ansible-git
Arch biasanya udah nyediain versi Ansible yang cukup baru, jadi gak perlu tambahan repo.
4. Instalasi di macOS
Meskipun macOS bisa jadi control node, ini bukan setup production yang ideal. Lebih cocok buat development atau testing.
Menggunakan Homebrew (Recommended)
# Update Homebrew dulu
brew update
# Install Ansible
brew install ansible
# Cek versi
ansible --version
Menggunakan pip
Kalo udah punya Python3 dari python.org atau pyenv:
pip3 install ansible --user
# Tambahkan ke PATH kalo perlu
export PATH="$HOME/Library/Python/3.x/bin:$PATH"
Tips macOS: Kalo pake Apple Silicon (M1/M2), pastikan Homebrew diinstall di
/opt/homebrew, bukan/usr/local.
5. Instalasi di Windows (via WSL)
Windows gak bisa jadi control node secara native, tapi bisa lewat WSL.
Setup WSL
# Buka PowerShell sebagai Administrator
wsl --install
# Restart komputer, kemudian setup Ubuntu WSL
Install Ansible di WSL
Setelah WSL Ubuntu jalan, ikutin langkah instalasi Ubuntu di atas:
sudo apt update && sudo apt install ansible -y
Akses Windows Files dari WSL
File Windows ada di /mnt/c/:
cd /mnt/c/Users/Username/Documents/ansible-project
ansible-playbook playbook.yml
6. Instalasi dengan Python pip (Cross-Platform)
Metode ini paling fleksibel dan bisa dipake di hampir semua OS yang punya Python.
Install pip dan Virtual Environment
# Install pip (kalo belum ada)
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py
# Buat virtual environment (recommended)
python3 -m venv ansible-env
source ansible-env/bin/activate # Linux/Mac
# atau
ansible-env\Scripts\activate # Windows
Install Ansible via pip
# Install versi terbaru
pip install ansible
# Install dengan extra dependencies
pip install ansible[azure] # Buat Azure
pip install ansible[aws] # Buat AWS
pip install ansible[gcp] # Buat Google Cloud
pip install ansible[windows] # Buat manage Windows hosts
# Install versi spesifik
pip install ansible-core==2.15.0
Keuntungan pip Install
- Bisa pake versi spesifik
- Gak perlu root access (dengan
--useratau virtualenv) - Mudah upgrade/downgrade
- Bisa install di user space
Konfigurasi Awal Setelah Instalasi
Setelah Ansible keinstall, ada beberapa konfigurasi yang perlu dilakukan:
1. Setup Inventory File
Buat file inventory.ini:
[webservers]
web1.example.com
web2.example.com ansible_user=admin
[dbservers]
db1.example.com ansible_port=2222
[all:vars]
ansible_python_interpreter=/usr/bin/python3
2. Test Koneksi
# Ping semua host di inventory
ansible all -i inventory.ini -m ping
# Kalo pake SSH key
ansible all -i inventory.ini -m ping --private-key=~/.ssh/id_rsa
3. Struktur Direktori Project
ansible-project/
├── ansible.cfg # Konfigurasi Ansible
├── inventory/
│ ├── production.ini
│ └── staging.ini
├── group_vars/
│ └── all.yml
├── host_vars/
├── roles/
│ └── common/
├── playbooks/
│ └── site.yml
└── files/
Tips dan Best Practices
- Selalu pake virtualenv kalo install via pip biar gak konflik sama system Python
- Version pinning: Tentuin versi Ansible di
requirements.txt:plainCopyansible==9.1.0 - Gunakan
ansible-navigatorbuat development yang lebih modern (based on Execution Environments) - Setup SSH key-based authentication biar gak perlu password terus
- Test di staging dulu sebelum sentuh production
Kesimpulan
Ansible bisa diinstall di hampir semua platform dengan berbagai metode. Pilih metode yang sesuai sama kebutuhan:
- Production server: Pake package manager (apt, dnf, pacman)
- Development: Pake pip dengan virtualenv
- Windows: Wajib WSL, gak ada pilihan lain
- Versi spesifik: Pake pip
Yang paling penting, setelah install langsung cobain buat inventory sederhana dan test koneksi ke target host. Kalo udah bisa ping, berarti siap mulai otomasi!