ansible --version
📌Ansible sürümünü ve python yolunu gösterir.
ansible all -m ping
📌Tüm sunuculara ping modülü ile bağlantıyı test eder.
ansible myhost -m ping
📌Tek bir sunucuya ping testi yapar.
ansible all -i inventory.ini -m ping
📌Özel envanter dosyası ile işlem yapar.
ansible all --list-hosts
📌Envanterdeki tüm hostları listeler.
ansible-inventory --list
📌Tüm inventory gruplarını JSON formatında listeler.
ansible-inventory --graph
📌Envanter ilişkilerini grafiksel olarak gösterir.
ansible all -m shell -a "uptime"
📌Tüm sunucularda shell komutu çalıştırır.
ansible web -m shell -a "df -h"
📌Belirli gruptaki hostlarda komut çalıştırır.
ansible all -k -m ping
📌SSH parolası sorarak işlem yapar.
ansible all -b -m shell -a "whoami"
📌Komutu sudo ile çalıştırır.
ansible all -u deploy -m ping
📌Bağlantıyı deploy kullanıcısı ile yapar.
ansible-playbook site.yml
📌Belirtilen playbook’u çalıştırır.
ansible-playbook -l webservers site.yml
📌Sadece belirli grupta çalıştırır.
ansible-playbook --check site.yml
📌Değişiklik yapmadan ne olacağını gösterir.
ansible-playbook -vvv site.yml
📌Detaylı debug çıktısı verir.
ansible-playbook site.yml --extra-vars "env=prod"
📌Playbook’a değişken yollar.
ansible-playbook --syntax-check site.yml
📌YAML dosyasının hatalarını kontrol eder.
ansible-doc -l
📌Tüm modülleri listeler.
ansible-doc copy
📌Belirli modülün açıklamasını gösterir.
ansible all -m copy -a "src=/tmp/file dest=/tmp/"
📌Dosya kopyalar.
ansible all -m file -a "path=/tmp/file state=absent"
📌Dosya veya dizini siler.
ansible all -m file -a "path=/tmp/test state=directory"
📌Dizin oluşturur.
ansible all -m yum -a "name=htop state=present"
📌Yum ile paket yükler.
ansible all -m apt -a "name=nginx state=absent"
📌APT ile paket siler.
ansible all -m service -a "name=httpd state=started"
📌Hizmeti başlatır.
ansible all -m service -a "name=httpd state=stopped"
📌Hizmeti durdurur.
ansible all -m service -a "name=sshd state=restarted"
📌Hizmeti yeniden başlatır.
ansible all -m user -a "name=deployer state=present"
📌Yeni kullanıcı oluşturur.
ansible all -m user -a "name=deployer state=absent"
📌Kullanıcıyı siler.
ansible all -m file -a "path=/tmp/test mode=0755"
📌Dosya izinlerini değiştirir.
ansible all -m shell -a "hostname" -o
📌Çıktıyı JSON formatında verir.
ansible all -m ping -T 10
📌Ping zaman aşımı ayarı yapar.
ansible all -m cron -a "name='backup' minute=0 hour=1 job='/usr/bin/backup.sh'"
📌Yeni cron görevi ekler.
ansible all -m cron -a "name='backup' state=absent"
📌Cron görevini siler.
ansible all -m lineinfile -a "path=/etc/hosts line='127.0.0.1 myhost'"
📌Dosyaya satır ekler.
ansible all -m lineinfile -a "path=/etc/hosts regexp='myhost' state=absent"
📌Dosyadan satır siler.
ansible all -m shell -a 'export VAR=value'
📌Ortam değişkeni ayarlar.
ansible-inventory -i inventory.ini --list
📌JSON çıktısı alır.
ansible-playbook site.yml --tags "install"
📌Belirli tag’lere sahip task’ları çalıştırır.
ansible-playbook site.yml --skip-tags "deploy"
📌Belirli tag’leri atlar.
ansible localhost -m ping -c local
📌Yerel çalıştırma yapar.
ansible all -m template -a "src=file.j2 dest=/tmp/file"
📌Jinja2 template kullanır.
ansible-config dump
📌Aktif konfigürasyonu gösterir.
ansible-config list
📌Tüm ayar seçeneklerini listeler.
ansible-playbook site.yml --force-handlers
📌Handler’ları hata durumunda bile çalıştırır.
ansible all -m shell -a "exit 1" || true
📌Komut başarısız olsa bile playbook’u durdurmaz.
ansible-playbook site.yml --ask-vault-pass
📌Vault şifresi sorar.
ansible-vault encrypt secrets.yml
📌Dosyayı şifreler.
ansible-vault decrypt secrets.yml
📌Dosya şifre çözme.
ansible-vault edit secrets.yml
📌Şifreli dosyayı düzenler.
ansible-vault rekey secrets.yml
📌Vault şifresini değiştirir.
ansible all -a "sleep 5" -f 10
📌10 paralel işlem çalıştırır.
ANSIBLE_HOST_KEY_CHECKING=False ansible all -m ping
📌SSH host key kontrolünü devre dışı bırakır.
ansible-playbook site.yml --forks=5
📌İşlem hatası sonrası devam eder.
ansible-playbook site.yml --vault-password-file pass.txt
📌Şifreyi dosyadan okur.
ansible-playbook site.yml --diff
📌Dosya değişikliklerini gösterir.
ansible all -m command -a "ls -l"
📌Shell kullanılmadan komut çalıştırır.
ansible all -m setup
📌Tüm sistem bilgilerini toplar.
ansible all -m setup -a "filter=ansible_hostname"
📌Belirli fact’ı filtreler.
ansible all -m ping -o
📌Bağlantıyı ve çıktıyı tek satırda gösterir.
ansible all -m shell -a ". /etc/profile && mycommand"
📌Ortam değişkenleri yükler.
when: ansible_os_family == "RedHat"
📌Görev koşullu çalışır.
notify: restart nginx
📌Değişiklik sonrası handler tetikler.
with_items:
- nginx
- httpd
📌Tekrarlayan görevler için kullanılır.
block:
- name: Task1
...
- name: Task2
...
📌Görevleri blok içinde gruplar.
register: result
📌Sonucu değişkene atar.
- debug:
var: result
📌Değişken çıktısını gösterir.
- stat:
path: /etc/passwd
📌Dosya bilgilerini okur.
- replace:
path: /tmp/file
regexp: 'foo'
replace: 'bar'
📌Dosyada kelime değiştirir.
- set_fact:
my_var: "test"
📌Dinamik değişken tanımlar.
- pause:
seconds: 5
📌Belirli süre bekler.
- fail:
msg: "Hata oluştu!"
📌Manuel hata fırlatır.
- wait_for:
port: 22
timeout: 30
📌Bağlantıyı bekler.
- include_tasks: mytasks.yml
📌Görev dosyası çağırır.
- import_tasks: mytasks.yml
📌Görev dosyasını import eder.
ansible-galaxy install geerlingguy.nginx
📌Galaxy’den rol indirir.
ansible-galaxy list
📌Kurulu rolleri listeler.
ansible-galaxy remove geerlingguy.nginx
📌Rolü siler.
ansible-vault create secrets.yml
📌Şifreli dosya oluşturur.
source venv/bin/activate
📌Virtualenv ortamını kullanır.
ansible webservers:dbservers -m ping
📌Birden fazla grup çalıştırır.
ansible -i ec2.py all -m ping
📌Dinamik envanter kullanır.
[all:vars]
ansible_user=ubuntu
📌Varsayılan kullanıcı tanımlar.
[all:vars]
ansible_ssh_pass=1234
📌Varsayılan şifre tanımlar.
ansible_ssh_common_args='-o ProxyCommand="ssh -W %h:%p bastion"'
📌Jump host ayarı.
ansible all --list-hosts
📌Host listesini verir.
ansible all -m setup --tree out/
📌JSON çıktısını klasöre kaydeder.
ansible myhost -m setup
📌Detaylı sistem bilgisi alır.
ansible all -m ping --private-key ~/.ssh/id_rsa
📌Özel anahtar kullanır.
ansible-playbook deploy.yml --extra-vars "branch=dev"
📌Branch parametresi yollar.
ignore_errors: yes
📌Görevi hatada atlar.
ansible localhost -m setup
📌Yerel faktörleri gösterir.
strategy: free
📌Görevlerin sıradan bağımsız çalışmasını sağlar.
ansible_port=2222
📌SSH portunu değiştirir.
environment:
PATH: "/usr/local/bin:{{ ansible_env.PATH }}"
📌Playbook ortam değişkeni belirler.
ansible all -a "uptime"
📌Modül belirtmeden komut çalıştırır.
ansible-playbook --syntax-check deploy.yml
📌Syntax hatası kontrolü yapar.
ansible-playbook deploy.yml -i localhost,
📌Yerel deploy çalıştırır.
ansible --help
📌Ansible yardım ekranını gösterir.