Ansible Quick Start Notlarım: Playbooks

Merhabalar;

Daha önceki yazılarımda ansible’a giriş yapmıştım ve ad-hoc komutlarına değinmiştim. Bu yazımda ise playbooks yapısını anlamaya çalışacağım. Playbooks’lar sayesinde ansible, otomatik olarak kendisine verilen taskları, hedef üzerinde gerçekleştirmektedir. Playbooks’lar yaml dosyasından oluşur ve bu yaml dosyasının içerisnde play denilen küçük küçük tasklardan oluşur. Play’ler host listesinden ve en az bir task’tan meydana gelir. Her task kendi içerinde bir name ve modülden oluşmaktadır ve modüller kendi içinde çeşitli parametreler içerebilir. https://docs.ansible.com/ansible/latest/user_guide/playbooks.html adresinden playbooks’lar ile ilgili detaylı bilgiler edinilebilir.

Bu yazımda basit bir playbooks create edeceğim ve topolojimizdeki workstation1 ve workstation2 makinelerine sırası ile httpd servisi kurup, /var/www/html dizini altında bir index.html dosyası create edip, bu dosyanın içersine basit bir girdi girip, httpd servisini çalıştıracağım.

[ansible@control-node ~]$ vim web.yml
---
- hosts: webservers
  become: yes
  tasks:
  - name: install httpd
    yum:
      name: httpd
      state: latest
  - name: cretae index.html file
    file:
      name: /var/www/html/index.html
      state: touch
  - name: add web content
    lineinfile:
      line: "some contents"
      path: /var/www/html/index.html
  - name: start httpd
    service:
      name: httpd
      state: started

Playbook’u çalıştırmadan önce /etc/asbible/hosts path’i altıdaki envanter dosyasına bi göz atalım.

[ansible@control-node ~]$ tail -n 5 /etc/ansible/hosts

## db-[99:101]-node.example.com
[webservers]
workstation1
workstation2

Artık playbooks’u hedefler üzerinde çalıştırabiliriz.

Curl ile web sunucunun bize verdiği cevabı kontrol edelim.

[ansible@control-node ~]$ curl http://workstation1:80/index.html

Böylelikle ansible kullanrak basit bir web server ayağa kaldırmış olduk…

İlk yorum yapan olun

Bir yanıt bırakın

E-posta hesabınız yayımlanmayacak.


*