Ansible: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 22: Строка 22:
 
ansible --inventory ./inventory-eu-lon-pc8.ini ctl -l 'ctl-*' -m ping
 
ansible --inventory ./inventory-eu-lon-pc8.ini ctl -l 'ctl-*' -m ping
 
</PRE>
 
</PRE>
* <code>--inventory ./inventory-eu-lon-pc8.ini </code>
+
* <code>--inventory ./inventory-eu-lon-pc8.ini </code> файл инвентаря
  +
* <code>ctl </code> группа нод описанная в файле (допустимо <code>all</code>)
* <code>ctl </code>
 
* <code>-l 'ctl-*' </code>
+
* <code>-l 'ctl-*' </code> Маска для выбора нод
* <code>-m ping</code>
+
* <code>-m ping</code> Модуль, в примере - ping
 
 
 
Пример результата
 
Пример результата

Версия 10:41, 14 октября 2025

Ansible

Я не часто пользуюсь ansible и это склерозник что б не гуглить каждый раз

Инвентарь

Пример

[master]
master-0 kaas_name="kaas-node-0e8149aa-5032-4fe3-8ec5-de661acdccc4" profile="unspecified" ansible_host="10.15.20.65"
master-1 kaas_name="kaas-node-3a0c6ddc-4fc1-4f7a-b103-517b2b3a23dc" profile="unspecified" ansible_host="10.15.20.66"
master-2 kaas_name="kaas-node-7eed0dad-3f08-4040-879c-dc33c155ba2a" profile="unspecified" ansible_host="10.15.20.67"
  • [master] — имя группы хостов. Используется в hosts: плейбука и для group_vars/master.yml.
  • master-0 / master-1 / master-2 — inventory_hostname (логическое имя хоста в инвентаре). По нему вы адресуетесь к хосту в паттернах (-l master-0) и в hostvars.
  • ansible_host="10.15.20.X" — адрес/имя, по которому Ansible реально подключается (SSH). Если не задан, Ansible попробует подключаться к inventory_hostname.
  • kaas_name="..." — произвольная переменная хоста. Не встроенная; задаётся вами и доступна в задачах как {{ kaas_name }}.
  • profile="unspecified" — тоже произвольная переменная хоста, доступна как {{ profile }}.

ping

ansible --inventory ./inventory-eu-lon-pc8.ini ctl -l 'ctl-*' -m ping
  • --inventory ./inventory-eu-lon-pc8.ini файл инвентаря
  • ctl группа нод описанная в файле (допустимо all)
  • -l 'ctl-*' Маска для выбора нод
  • -m ping Модуль, в примере - ping

Пример результата

ctl-z02r02b08-08 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python3"
    },
    "changed": false,
    "ping": "pong"
}

33

ansible -i ./inventory-eu-lon-staging2.ini  'ctl:mos-ctl-*' -a 'cat  /etc/sysctl.d/999-udp_sockets.conf'

3