Ansible Komutları: Yeni Başlayanlar İçin Kapsamlı Bir Rehber

Ansible Komutları: Yeni Başlayanlar İçin Kapsamlı Bir Rehber 1
Ansible Komutları: Yeni Başlayanlar İçin Kapsamlı Bir Rehber 3

Ansible, otomasyonu ve yönetimi kolaylaştıran açık kaynaklı bir yapılandırma yönetim aracıdır. Bu araç, büyük veya küçük ölçekteki sistemlerinizin yapılandırılmasına ve dağıtımına yardımcı olabilir. Bu makalede, Ansible komutlarının çeşitli kullanımlarını inceleyeceğiz.


Ansible, işletmelerin hızlı ve güvenli bir şekilde kurulum yapabilecekleri bir yapılandırma yönetimi aracıdır. Ancak, bu araç hakkında yeterli bilgiye sahip olmadan, tam potansiyelinden faydalanmak zor olabilir. Bu nedenle, bu makalede Ansible komutlarının çeşitli kullanımlarını ele alacağız.

1. Ansible’a Giriş

1.1 Ansible Temelleri

Ansible, Python dilinde yazılmış bir yazılımdır ve IT altyapısını yönetmek için kullanılır. Linux, Unix ve Windows gibi çeşitli işletim sistemlerinde çalışabilir. Ansible, yapılandırma yönetimi işlemlerini yürütmek için SSH protokolünü kullanır. Ayrıca, diğer yapılandırma yönetimi araçlarına göre daha kolay kurulum sağlar.

1.2 Kurulum

Ansible’ı indirmek ve kurmak oldukça basittir. Linux için, birkaç komut satırı kullanarak kurulum yapabilirsiniz. Örneğin, Ubuntu’da aşağıdaki komut kullanılabilir:

sudo apt-get update

sudo apt-get install ansible

Detaylı Kurulum için Ansible Kurulum

Ansible For Windows için : Ansible For Windows: Ansible Windows’da Kullanımı ve Kurulumu

1.3 Hosts Dosyası Oluşturma

Ansible, yönetilen anahtarlar için bir host dosyası kullanır. Hostlar belirlendikten sonra, bunları gruplandırabilir ve komutları bir gruba veya tüm hostlara uygulayabilirsiniz. İlk olarak, bir hosts dosyası oluşturmanız gerekir. Bu dosya, yönetilen anahtarları listeleyen ve gruplandıran bir yapıdır.

2. Modüller

2.1 Komut Modülü

Ansible‘da, çok sayıda modül bulunur. Bunlardan ilki, genellikle başka bir komut dosyası veya betik çağırmak için kullanılan command modülüdür. Örneğin, aşağıdaki komut, herhangi bir hostta bir dizin listesi döndürür:

ansible all -m command -a 'ls /home'

2.2 Dizin Modülü

file veya copyTabii, devam edelim.

2.2 Dizin Modülü

file veya copy modülü kullanılarak bir dosya, klasör veya dizin oluşturmak veya kopyalamak mümkündür. Örneğin, aşağıdaki komut, belirli bir klasöre bir dosya kopyalar:

ansible all -m copy -a 'src=file.txt dest=/home/user/'

2.3 Service Modülü

Ansible, service modülünü kullanarak hizmetleri (servisleri) kontrol etmenize izin verir. Bu modül, sistemdeki belirli bir hizmeti başlatma, durdurma, yeniden başlatma veya statüsünü sorgulama işlemlerini gerçekleştirebilir. Örneğin, aşağıdaki komut Apache servisinin durumunu sorgular:

ansible webservers -m service -a 'name=httpd state=started'

2.4 User Modülü

user modülü, kullanıcı hesaplarını ve grupları yönetmek için kullanılır. Bu modül, yeni kullanıcı hesapları oluşturma, mevcut olanların silinmesi veya parolalarını değiştirme gibi işlemleri gerçekleştirebilir. Örneğin, aşağıdaki komut, jdoe adında bir kullanıcı hesabını oluşturur:

ansible all -m user -a 'name=jdoe password=<hashed_password>'

3. Playbook’lar

3.1 Playbook Tanımı

Ansible playbook‘ları, yürütülmeli işlemleri belirleyen bir YAML dosyasıdır. Bu dosyalar, birden fazla host üzerindeki yapılandırma işlemlerinin otomatikleştirilmesine izin verir. Ansible playbook’ları, modülleri, değişkenleri ve koşullar gibi farklı özellikleri içerebilir.

3.2 YAML Dosyaları ve Sözdizimi

Playbook’lar YAML formatında yazılır. Bu nedenle, YAML sözdizimine hakim olmanız gerekir. Ayrıca, YAML dosyaları girintilemeleri kabul eder. Bu nedenle, doğru girintilemelere dikkat etmek önemlidir.

3.3 Playbook Oluşturma

Bir playbook oluşturmak için, sadece bir metin düzenleyicisi ve YAML sözdizimine uygun bir dosya gereklidir. İlk olarak, playbook dosyasının adı ve hangi hostlar üzerinde çalışacağı belirtilir. Daha sonra, hangi modüllerin kullanılacağı ve bu modüllerin nasıl yapılandırılacağı belirtilir. Son olarak, playbook dosyası çalıştırılır.

4. Ansible Vault

4.1 Şifreleme ile ilgili temel kavramlar

Ansible Vault, hassas bilgileri şifrelemek için kullanılan bir araçtır. Vault, şifreli verileri YAML dosyalarında saklar. Bu nedenle, verileri çözmek için bir şifre gerekir. Vault, özellikle şifrelenmiş dosyalarda depolanan hassas bilgiler için idealdir.

4.2 Ansible Vault Oluşturma

Vault, Ansible ile birlikte gelir ve ansible-vault komutu kullanılarak oluşturulabilir. Bu komut, bir şifre girilmesini gerektirir ve sonrasında bu şifreyle bir dosya şifrelenir. Örneğin, aşağıdaki komut, secrets.yml dosyasını şifreler:

ansible-vault create secrets.yml

4.3 Vault Dosyası Kullanarak Verileri Şifreleme

Vault dosyası, playbook dosyasında kullanılmadan önce, vault dosyasının şifresi ile erişilebilir hale getirilmelidir. BTabii, devam edelim.

5. Ansible Galaxy

5.1 Ansible Galaxy Nedir?

Ansible Galaxy, Ansible kullanıcılarının playbook’ları, rolleri ve modülleri paylaşabileceği bir platformdur. Bu platformda, başkalarının oluşturduğu role’leri veya modülleri arayarak, kendi yapılandırma işlemlerinizde kullanabilirsiniz. Ayrıca, diğer kullanıcıların playbook’larını inceleyerek, nasıl yapılandırıldıklarını görebilirsiniz.

5.2 Ansible Galaxy’de Rol Bulma

Ansible Galaxy‘de, birçok farklı rol bulunabilir. Bu rollere, farklı anahtar kelime veya etiketler kullanarak kolayca erişilebilir. Örneğin, aşağıdaki komut “apache” rolünü arar:

ansible-galaxy search apache

5.3 Rol Oluşturma

Ansible rolü oluşturmak oldukça basittir. İlk olarak, bir rol adı belirlenir. Daha sonra, bu rol için kullanılacak dosyaların veya modüllerin dizini oluşturulur. Son olarak, roles/main.yml dosyasına, rolün çalıştıracağı modüller veya görevler eklenir.

6. Ansible Tower

6.1 Ansible Tower Nedir?

Ansible Tower, otomasyon uygulamalarını yönetmek için bir web arayüzü sağlayan ticari bir üründür. Ansible Tower, IT altyapısı için tek bir noktadan yapılandırma yönetimini sağlar. Ayrıca, izleme ve raporlama özellikleri de içerir.

6.2 Ansible Tower Kurulumu

Ansible Tower kurulumu oldukça basittir. İlk olarak, kurulum dosyasını indirmek gerekir. Daha sonra, kurulum sihirbazını takip ederek kurulum işlemi tamamlanır. Kurulum sırasında, birkaç parametre belirlemeniz gerekebilir.

6.3 Inventory Ekleme ve Host Grupları Oluşturma

Ansible Tower, hostlar üzerindeki yapılandırma işlemlerini yürütmek için bir inventory kullanır. Bu inventory’e, Ansible Tower arayüzünden yapılabilir. Daha sonra, hostlar gruplara ayrılır ve işlemler bu gruplar üzerinden yapılır.

Ayrıca Detaylı örnekler için : Ansible Kullanım ve Playbook Örnekleri


Ansible, hem küçük hem de büyük ölçekteki sistemlerin yönetimini kolaylaştıran bir yapılandırma yönetimi aracıdır. Bu makalede, Ansible ile ilgili temel bilgileri ele aldık. Ansible komutlarını kullanarak, sistemlerinizi yapılandırabilir, yerel veya uzak sunuculara komut verebilir ve hatta karmaşık yapılandırmaları bile otomatikleştirebilirsiniz.

Sıkça Sorulan Sorular

Ansible’da en sık kullanılan komutlar nelerdir?

“ansible”, “ansible-playbook”, “ansible-galaxy”, “ansible-vault” ve “ansible-doc” gibi komutlar yer alır.

Ansible’da bir modül nasıl çalıştırılır?

Bir modül çalıştırmak için, “ansible” komutunun yanına modül adı eklenir. Örneğin, “ansible -m ping” komutu, “ping” modülünün çalıştırılmasını sağlar.

“ansible” komutu nedir?

“ansible” komutu, Ansible’in en temel komutudur. Bu komut, uzak sunuculara bağlanarak, belirli bir modülün çalıştırılmasını sağlar.

“ansible-playbook” komutu nedir?

“ansible-playbook” komutu, Ansible playbook’larının çalıştırılmasını sağlar. Playbook’lar, birden fazla işlemi bir arada çalıştırmak için kullanılır.

“ansible-galaxy” komutu nedir?

“ansible-galaxy” komutu, Ansible rol ve koleksiyonlarının yönetimi için kullanılır. Bu komut, rol ve koleksiyonların indirilmesi, kurulması ve paylaşılması gibi işlemleri gerçekleştirir.

“ansible-vault” komutu nedir?

“ansible-vault” komutu, Ansible dosyalarının şifrelenmesi ve şifrelerin yönetimi için kullanılır. Bu komut, hassas verilerin korunmasına yardımcı olur.

“ansible-doc” komutu nedir?

“ansible-doc” komutu, Ansible modüllerinin belgelerini görüntülemek için kullanılır. Bu komut, belirli bir modül hakkında ayrıntılı bilgiler sağlar.

Ansible’da dosyalar nasıl şifrelenir?

Dosyaları şifrelemek için, “ansible-vault encrypt” komutu kullanılır. Örneğin, “ansible-vault encrypt my_file.yml” komutu, “my_file.yml” adlı dosyanın şifrelenmesini sağlar.

Yorum yapın