Ansible - Ad Hoc Komutları Rehberi - 2020
Ad hoc komutları, hızlı işlevleri gerçekleştirmek için ayrı ayrı çalıştırılabilen komutlardır. Bu komutların daha sonra gerçekleştirilmesine gerek yoktur.
Örneğin, tüm şirket sunucularınızı yeniden başlatmanız gerekir. Bunun için "/usr/bin/ansible" dan Adhoc komutlarını çalıştıracaksınız.
Bu ad-hoc komutlar, yapılandırma yönetimi ve dağıtım için kullanılmaz, çünkü bu komutlar tek kullanımlıktır.
ansible-playbook, yapılandırma yönetimi ve dağıtım için kullanılır.
Paralellik ve Kabuk Komutları
Şirket sunucunuzu aynı anda 12 paralel çatalda yeniden başlatın. Bunun için bağlantı için SSHagent kurmamız gerekiyor.
Kod:
$ ssh-agent bash
$ ssh-add ~/.ssh/id_rsa
Bir gruptaki tüm şirket sunucularınız için yeniden başlatmayı 12 paralel çatalda 'abc' çalıştırmak için -
Kod:
$ Ansible abc -a "/sbin/reboot" -f 12
Varsayılan olarak, Ansible yukarıdaki Ad-hoc komutlarını mevcut kullanıcı hesabından çalıştıracaktır. Bu davranışı değiştirmek istiyorsanız, Ad-hoc komutlarındaki kullanıcı adını aşağıdaki gibi iletmeniz gerekecektir -
Kod:
$ Ansible abc -a "/sbin/reboot" -f 12 -u username
Dosya Transferi
SCP (Güvenli Kopyalama Protokolü) çok sayıda dosyayı paralel olarak birden çok makinede yapmak için Ad-hoc komutlarını kullanabilirsiniz.
Dosyayı birçok sunucuya / makineye aktarma
Kod:
$ Ansible abc -m copy -a "src = /etc/yum.conf dest = /tmp/yum.conf"
Yeni Dizin Oluşturma
Kod:
$ Ansible abc -m file -a "dest = /path/user1/new mode = 777 owner = user1 group = user1 state = directory"
Tüm Dizini ve Dosyaları Silme
Kod:
$ Ansible abc -m file -a "dest = /path/user1/new state = absent"
Paketleri Yönetmek
Ad-hoc komutları yum ve apt için mevcuttur. Aşağıda yum kullanan bazı Ad-hoc komutları verilmiştir.
Aşağıdaki komut yum paketinin kurulu olup olmadığını kontrol eder, ancak güncellemez.
Kod:
$ Ansible abc -m yum -a "name = demo-tomcat-1 state = present"
Aşağıdaki komut paketin kurulu olmadığını kontrol eder.
Kod:
$ Ansible abc -m yum -a "name = demo-tomcat-1 state = absent"
Aşağıdaki komut, paketin en son sürümünün kurulu olup olmadığını kontrol eder.
Kod:
$ Ansible abc -m yum -a "name = demo-tomcat-1 state = latest"
Olguları Toplama
Olgular, başucu kitabında koşullu ifadeleri uygulamak için kullanılabilir. Aşağıdaki Ad-hoc komutuyla tüm olgularınızın anlık bilgilerini bulabilirsiniz -
Kod:
$ Ansible all -m setup