21/11/2024

Ansible – 14 Installing roles

ansible da paket yönetimi galaxy ile oluyor. Rollerden aslinda surada bahsetmistim : https://buyukburc.de/ansible-2-roles/
Burada anlattigim manuel roller. Birde internetten hazir indirebilecegimiz roller var. iste burada galaxy yi kullaniyoruz.

Herhangi bir görev icin rol arayabiliriz.

localhost@Can:~/Documents/smp1 >$ansible-galaxy role search "zabbix"

Found 212 roles matching your search:

 Name                                   Description
 ----                                   -----------
 0utsider.ansible_zabbix_agent          Installing zabbix-agent for RedHat
 1mr.zabbix_agent2                      install and configure zabbix-agent2
 1mr.zabbix_host                        configure host zabbix settings
 6nsh.zabbix_proxy                      Install configure Zabbix Proxy 5.4
 acandid.zabbix                         Install Zabbix 4.2 Server
 ahelal.zabbix_server                   Deploy Zabbix server for Ubuntu 12.04
 hakamine.c6-zabbix                     role for zabbix
 AlexandreMouraIT.zabbix3server         Configure zabbix 3 Server.

Ayni aratmayi web sayfasi https://galaxy.ansible.com dan da yapabiliriz.

Ansible repositorysinde bir roles klasörü olusturmamiz gerekiyor.

sonra istedigimiz rolü indirip kurabiliriz.

ansible-galaxy install acandid.zabbix  -p roles/

-p ile kurulacagi yeri belirtiyoruz.
Kurulumdan sonra ne geldigine bir bakalim.

tree roles/
roles/
└── acandid.zabbix
    ├── README.md
    ├── defaults
    │   └── main.yml
    ├── meta
    │   └── main.yml
    ├── tasks
    │   ├── config_database.yml
    │   ├── config_zabbix.yml
    │   ├── install_packages.yml
    │   ├── install_repo.yml
    │   ├── main.yml
    │   └── start_services.yml
    ├── templates
    │   ├── zabbix.conf.j2
    │   └── zabbix_server.conf.j2
    └── vars
        ├── RedHat.yml
        ├── main.yml
        └── password.yml

7 directories, 14 files
  • defaults klasörü görüyoruz bu bu rolün default degerlerini icerir ve istersek degistirebiiriz.
  • meta klöasründe üreticisi ile ilgili bilgileri görüyoruz.
  • molecule testing icin
  • vars degiskenler icin.

Peki bunu indirdik kurduk ama ansible bunu görüyor mu?

$ansible-galaxy role list
[WARNING]: - the configured path /Users/can/.ansible/roles does not exist.
[WARNING]: - the configured path /usr/share/ansible/roles does not exist.
[WARNING]: - the configured path /etc/ansible/roles does not exist.

bunu saglamak icin “ansible.cfg” icine

roles_path = roles

ekliyoruz ve tekrar bakiyoruz.

$ansible-galaxy role list
# /Users/can/Documents/project/roles
- acandid.zabbix, master