Install required packages
1) Ansible Kontrol Makinesi Nedir?
Kontrol makinesi, Ansible’ın kurulduğu ana makinedir. Bütün playbook’larınızı burada tutar ve yönetilen hedef sistemlere (managed nodes) bu makineden komut gönderirsiniz.
Ansible doğrudan Windows’a kurulmaz; ancak bir Linux VM üzerinde çalıştırıp Windows sistemlerini hedef olarak yönetebilirsiniz.
2) Ansible Nasıl Kurulur?
Ansible’ı kurmak için iki temel yöntem vardır:
Paket Yöneticileri (Yum, DNF, APT, vb.)
Python PIP (daha esnek, genelde daha güncel sürümü kurmanızı sağlar)
a) Paket Yöneticisi ile Kurulum
CentOS / Red Hat:
sudo yum install ansible
Fedora:
sudo dnf install ansible
Ubuntu / Debian:
sudo apt-get install ansible
Kurulum tamamlandığında, tipik olarak Ansible ile ilgili varsayılan dosyalar (/etc/ansible/ansible.cfg
ve /etc/ansible/hosts
) da oluşturulur.
b) PIP ile Kurulum
Eğer Python (ve PIP) kuruluysa, şu şekilde Ansible’ı kurabilirsiniz:
sudo pip install ansible
Güncellemek isterseniz:
sudo pip install --upgrade ansible
Belirli bir sürüm kurmak isterseniz (örnek: 2.4):
sudo pip install ansible==2.4
Not: PIP ile kurduğunuzda varsayılan envanter dosyası (
/etc/ansible/hosts
) ve varsayılan konfigürasyon dosyası (/etc/ansible/ansible.cfg
) oluşturulmaz. Bunları manuel oluşturmanız gerekir.
3) Statik Envanter (Hosts) Dosyası Oluşturma
Ansible’da yönetilecek hedef makinelerin IP veya hostname bilgileri envanter (inventory) dosyasında yer alır.
Paket yöneticisi ile kurduysanız varsayılan olarak
/etc/ansible/hosts
dosyası gelir.İsterseniz kendi projenizde, playbook’ların yanında bir hosts dosyası oluşturabilir ve onu kullanabilirsiniz.
# /opt/my-playbook/hosts [webservers] web1 ansible_host=192.168.1.100 web2 ansible_host=192.168.1.101
Playbook çalıştırırken bu özel envanter dosyasını şu şekilde belirtebilirsiniz:
ansible-playbook site.yml -i /opt/my-playbook/hosts
4) Ansible Konfigürasyon Dosyası (ansible.cfg) Ayarlama
Varsayılan konum:
/etc/ansible/ansible.cfg
(paket yöneticisi ile kurulduğunda oluşur).İçinde şunlar gibi ayarlar bulunur:
inventory
: Varsayılan envanter dosyası konumugathering
: Fact toplama davranışı (implicit/explicit)timeout
: SSH bağlantısı için zaman aşımıforks
: Paralel çalışacak host sayısıve daha fazlası…
Her projede farklı ayarlar kullanmak istiyorsanız, projenin dizinine yerel bir
ansible.cfg
oluşturabilir ve sadece değiştirmek istediğiniz değerleri yazabilirsiniz:# /opt/my-playbook/ansible.cfg [defaults] gathering = explicit timeout = 20
Ansible, playbook’u bu dizinden çalıştırdığınızda önce burada tanımlı ayarları uygular.
Önemli: PIP ile kurduğunuzda
/etc/ansible/ansible.cfg
otomatik gelmez, bu dosyayı el ile oluşturmanız gerekir (veya bulunduğunuz proje dizinineansible.cfg
koyabilirsiniz).
5) Özet
Kurulum:
Paket yöneticisi (örn.
yum install ansible
) ile kolay kurulum.PIP ile daha güncel veya belirli sürümleri kurmak mümkün. Varsayılan dosyalar otomatik gelmez.
Envanter Dosyası:
/etc/ansible/hosts
veya istediğiniz herhangi bir konumda kendihosts
dosyanız.Playbook’ta
-i
parametresiyle hangi envanterin kullanılacağını belirtebilirsiniz.
Konfigürasyon Dosyası (
ansible.cfg
):Paket yöneticisi kurulumunda
/etc/ansible/ansible.cfg
olarak gelir.Proje bazında yerel
ansible.cfg
oluşturarak varsayılanları kolayca geçersiz kılabilirsiniz.
Last updated
Was this helpful?