Ansible Tower ile Adım Adım Otomasyon yürütme
Ansible Tower ; Ansible yönetimi için kullanılan kullanıcı ara yüzü fakat ben yazımın devamında anlatırken örneklerimi Ansible Tower’ın…
Ansible Tower ile Adım Adım Otomasyon yurutme
Ansible Tower ; Ansible yönetimi için kullanılan kullanıcı ara yüzü fakat ben yazımın devamında anlatırken örneklerimi Ansible Tower’ın açık kaynak kodlu versiyonu olan AWX üzerinden örnekler vererek anlatacağım.
- Adım ’da bir inventory listesi oluşturacağız.

bu adımda Add inventory diyeceğiz.

Name ve description alanlarını ihtiyacımıza göre özelleştirebilir.Ben Tüm linux tabamlı sunucular için inventory oluşturdum.
2. Adımda oluşturduğumuz inventory’lere host eklemek.

Manuel olarak dhcp01 hostumuzu ekleyebiliriz. İnventory kısmına tıkladığımda , eklemiş olduğumuz linux server ekleriz.

3.adım’da ise tüm listeyi tek tek manul mi ekleyeceğiz ? Cevap Hayır. Bu adımda bunu göstereceğiz.
Önce sunucuya bağlanıp linux_inventory adında dosya ekliyorum. İçine alt alta tüm hostlarımın ip’lerini yazıyoruz.
[root@sl1-ansibletower inventory]# ls
linux_inventory
Daha sonra ben ansible tower’ı docker üzerine kurduğum için , bu dosyayı konteynirin içine atmam gerekiyor.
Aşağıdaki komutu çalıştırarak konteyner adı/id bilgisini elde ediyorum.
[root@sl1-ansibletower inventory]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fab2e27877f2 ansible/awx:17.1.0 "/usr/bin/tini -- /u…" 11 days ago Up 6 days 8052/tcp awx_task
ec2bcff3d6b3 ansible/awx:17.1.0 "/usr/bin/tini -- /b…" 11 days ago Up 6 days 0.0.0.0:80->8052/tcp, :::80->8052/tcp awx_web
7a1164693f4d redis "docker-entrypoint.s…" 11 days ago Up 6 days 6379/tcp awx_redis
8d3eb3f77f4a postgres:12 "docker-entrypoint.s…" 11 days ago Up 6 days 5432/tcp awx_postgres
[root@sl1-ansibletower inventory]# docker cp linux_inventory awx_
kopyalama işlemini yapıyorum.
[root@sl1-ansibletower inventory]# docker cp linux_inventory awx_web:/root/
Successfully copied 6.144kB to awx_web:/root/
daha sonra konteynerin içine bağlanıyorum.
[root@sl1-ansibletower inventory]# docker exec -it ec2bcff3d6b3 /bin/bash
Şimdi ise host bilgilerininin bulunduğu dosyayı inventory’e ekliyorum.
bash-4.4# awx-manage inventory_import --inventory-name ALL_LINUX_SERVERS --source linux_inventory
1.819 INFO Updating inventory 5: ALL_LINUX_SERVERS
2.056 INFO Reading Ansible inventory source: /root/linux_inventory
2.056 INFO Using VIRTUAL_ENV: /var/lib/awx/venv/ansible
2.056 INFO Using PATH: /var/lib/awx/venv/ansible/bin:/usr/pgsql-10/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2.056 INFO Using PYTHONPATH: /var/lib/awx/venv/ansible/lib/python3.6/site-packages:
2.774 ERROR ansible-inventory 2.9.18
2.774 ERROR config file = /etc/ansible/ansible.cfg
2.774 ERROR configured module search path = ['/var/lib/awx/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
2.774 ERROR ansible python module location = /usr/lib/python3.6/site-packages/ansible
2.774 ERROR executable location = /usr/bin/ansible-inventory
2.774 ERROR python version = 3.6.8 (default, Aug 24 2020, 17:57:11) [GCC 8.3.1 20191121 (Red Hat 8.3.1-5)]
2.774 ERROR Using /etc/ansible/ansible.cfg as config file
2.775 ERROR host_list declined parsing /root/linux_inventory as it did not pass its verify_file() method
2.775 ERROR script declined parsing /root/linux_inventory as it did not pass its verify_file() method
2.775 ERROR auto declined parsing /root/linux_inventory as it did not pass its verify_file() method
2.775 ERROR Parsed /root/linux_inventory inventory source with ini plugin
2.799 INFO Processing JSON output...
2.802 INFO Loaded 0 groups, 362 hosts
2023-04-10 09:30:19,419 DEBUG awx.main.models.inventory Going to update inventory computed fields, pk=5
2023-04-10 09:30:19,449 DEBUG awx.main.models.inventory Finished updating inventory computed fields, pk=5, in 0.030 seconds
4.316 INFO Inventory import completed for (ALL_LINUX_SERVERS - 17) in 1.5s
Ansible arayüzüne tekrar bağlanıp hostların gelip gelmediğini kontrol ediyorum. Görüldüğü gibi 362 hostumuzu kullanabiliriz.

4.Adım : Hostları ve İnventory oluşturduk . Bu aşamada eklediğimiz hostları yöneteceğimiz kullanıcıyı ekleyeceğiz.
Credentials kısmına geliyoruz. ADD tıklıyoruz.



5.adım : kullanıcı tamam host tamam. Bu adımda ise bir project oluşturacağız. Altta bulunan resimde gördüğünüz gibi yamlfile oluşturacağız. ve bu dosyayı resimde görüldüğü path atacağız veya o klasörde oluşturacağız.

6 ve son adımda template oluşturup bu template çalıştırıyoruz.

Template oluşturma01

Template oluşturma02.
Bu Adımda da oluşturulan Template Füze ikonuna basarak çalıştırabilirsiniz.

Çalıştırılan template sonuçları
Jobs kısmından detayları görülebilir.


Soru/öneri ve olası hatalar için mts.saygin@gmail.com’ mail atabilirsiniz.
메타데이터
- post_id
- 5cf4dfbaab8d
- slug
- ansible-tower-ile-adım-adım-otomasyon-yürütme-5cf4dfbaab8d
- url
- https://medium.com/@mts.saygin/ansible-tower-ile-ad%C4%B1m-ad%C4%B1m-otomasyon-y%C3%BCr%C3%BCtme-5cf4dfbaab8d
- canonical_url
- https://medium.com/@mts.saygin/ansible-tower-ile-ad%C4%B1m-ad%C4%B1m-otomasyon-y%C3%BCr%C3%BCtme-5cf4dfbaab8d
- author_url
- https://medium.com/@mts.saygin
- status
- ok
- fetched_at
- 2026-07-25 22:12:05