Sobes.tech
Junior

Ansible-деги өзгөрмөлөрдү белгилөө жолдорун атаңыз.

sobes.tech AI

AIден жооп

Ansibleде өзгөрмөлөрдү бир нече жол менен белгилөө мүмкүн:

  • Инвентар файлдары: hosts файлдарында же group_vars жана host_vars директорийлеринде бөлөк файлдарда.
  • Командалык сап: --extra-vars же -e флагы аркылуу.
  • Playbookтор: vars, vars_files, include_vars бөлүмдөрүндө.
  • Ролдор: vars директорийлеринде же ролду чакырганда параметрлер аркылуу.
  • Ansible конфигурация файлдары: ansible.cfgда, бирок өзгөчө маанилер үчүн сунушталбайт.
  • Динамикалык инвентарь: скрипттер аркылуу, алар инвентарь жана өзгөрмөлөрдү ишке киргизүү учурунда түзөт.
  • Vaults: сырдуу маалыматтарды сактоо үчүн.

Ansibleде өзгөрмөлөрдү белгилөө приоритети төмөндөн жогору:

  1. ansible.cfg
  2. Инвентар файлдары (host_vars, group_vars)
  3. Ролдор (азыркы defaultтен, андан кийин varsтен)
  4. Playbookтеги vars бөлүмү
  5. Командалык сап аркылуу берилген өзгөрмөлөр

Инвентарда өзгөрмө белгилөө мисалы:

# inventory.ini
[webservers]
web1 ansible_host=192.168.1.100

[webservers:vars]
http_port=80

Playbookтеги өзгөрмө белгилөө мисалы:

# playbook.yml
---
- name: Веб-серверди конфигурациялоо
  hosts: webservers
  vars:
    greeting: "Hello, World!"
  tasks:
    - name: Куттуулоо чыгарыңыз
      debug:
        msg: "{{ greeting }}"

Командалык сап аркылуу өзгөрмө белгилөө мисалы:

ansible-playbook playbook.yml -e "user=admin"