ANSIBLE Kurulumu ve İlk Konfigürasyon
Temel ansible kurulumu ve erişim ayarları hakkında ele aldığım yazımın 1. kısmı.

ansible ilk kurulumunu ve diğer sunuculara erişmesi için gereken bazı ayarlardan bahsedeceğim. Öncelikle hangi sistemi kullanacaksanız kurulum için aşağıdaki linkten faydalanabilirsiniz .
ben red hat 7 üzerine kuracağım. bir kaç farklı kurulum şekli var. epel reposu ile kuracağım. aşağıdaki komutlarla ilgili python kütüphaneleri de beraber büyün gereksinimleri yüklenecek.
sudo yum -y update
sudo yum install epel-release
sudo yum -y install ansible

ansible --version

Ansible sunuculara ssh üzerinden ulaşacak bu yüzden ana controller sunucuda ve client sunucularda ansible için user açacağız. bununla ilgili bir kaç ayar daha girilecek ve erişim testi yapacağız.
sudo useradd ansibleadm
sudo passwd ansibleadm
Controller sunucu üzerinde sudo yetkisi de verelim yapacağım değişiklikleri ansibleadm üzerinden yapalım. sudoersde açtığım user için yetki girelim
sudo visudo/ile içine girip satır ekleceğizansibleadm ALL=NOPASSWD: ALL
her iki sunucuda da user yarattıktan sonra sshd confiği üzerinden password auth açacağız.
sudo vi /etc/ssh/sshd_config
bu sshd_config altında passwordauthentication no kısmını güncelleyip yes olanı aktif edeceğiz, ssh keyi paylaşmak için bunu kullanacağız.

bu kısmı değiştirdikten sonra sshd servisini yeniden başlatmamız gerekiyor.
sudo systemctl restart sshd diyerek başlatabiliriz.
yarattığımız ansible userına geçip ssh-key oluşturarak public olanı client sunucu ile paylaştıracağız.

client-1 ipsi için hosts kaydını /etc/hosts dan yapmıştım direk ssh key kopyalama komutu giriyoruz.
ssh-copy-id -i ~/.ssh/id_rsa.pub client-1

gidip client a baktıgınızda .ssh/authorized_keys de controller sunucunun key inin oldugunu görürsünüz. bu işlemlerden sonra artık password istemeden client sunucuya ssh ile bağlanabilirsiniz.

ansible ile ilk erişim denememizi yapabiliriz. bunun için aşağıdaki basit komutu kullanabiliriz. onun öncesinde /etc/ansible/hosts altındaki dosyada erişeceğimiz sunucular için host kaydı gireceğiz bununla ilgili daha sonra detay vericem şimdilik sadece dosyaya IP sini ekleyelim ve ilk komutumuzu çalıştıralım.
ansible "hostname/ip" -m ping

sunucudan pong cevabı dönüyorsa artık ansible ile client sunucu üzerinde otomasyon yapabiliriz anlamına geliyor.
Ansible ile istediğimiz komutu direk tek bir line üzerinden gönderebiliriz adhoc dediğimiz bu yöntemle; hızlı sonuç elde etmek istiyorsak ve daha sonra bu komutu kullanmayacaksak işimizi çözebiliriz.
ansible "host/ip" -m "module" -a "command"

fakat önceden de belirttiğim gibi bu komutu tekrar tekrar kullanmak istediğimizde bu yolla işin içinden çıkılamaz bunun için declaretive olarak yaml file lar yazıp bunlara ne yapıcağını belirttiğimiz şekilde ansible kullanma metodu daha yaygındır. devam part-2 yazısında bundan bahsedeceğim.
bu anlattıklarım başlangıç için faydalı olur umarım. yeni yazımda görüşmek üzere, sağlıklı günler dilerim.
h.a.s.