Spec-Zone.ru › Ansible

модуль telekom_mms.icinga_director.icinga_command_template — Управление шаблонами команд в Icinga2

Примечание

Этот модуль входит в коллекцию telekom_mms.icinga_director (версия 2.5.1).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install telekom_mms.icinga_director.

Чтобы использовать её в плейбуке, укажите: telekom_mms.icinga_director.icinga_command_template.

Добавлено в telekom_mms.icinga_director 1.1.0

  • Краткое описание
  • Параметры
  • Примечания
  • Примеры

Краткое описание

  • Добавляет шаблон команды в Icinga2 или удаляет его через API Director.

Параметры

Параметр

Комментарии

api_timeout

integer

Тайм-аут по умолчанию в секундах для ожидания завершения транзакции.

По умолчанию: 10

append

boolean

добавлено в telekom_mms.icinga_director 1.25.0

Не перезаписывает весь объект, а добавляет заданные свойства.

Примечание — Добавлять значения в существующие vars, imports или любые другие списки/словари нельзя. Необходимо перезаписать весь список/словарь.

Примечание — Также будут применены переменные, заданные по умолчанию, даже если они не указаны.

Варианты:

  • false
  • true

arguments

dictionary

Аргументы шаблона команды.

Для каждого аргумента можно указать строку, json или словарь

При использовании словаря в качестве значения аргумента поддерживаются следующие свойства: skip_key, repeat_key, required, order, description), set_if, value.

Свойство value может быть строкой, json или словарём. Если указать словарь, можно задать его type как Function, а свойству body присвоить фрагмент конфигурации Icinga DSL.

client_cert

path

Файл цепочки сертификатов в формате PEM для аутентификации SSL-клиента.

Этот файл также может содержать ключ; если ключ включён в файл, параметр client_key не требуется.

client_key

path

Файл в формате PEM, содержащий ваш закрытый ключ для аутентификации SSL-клиента.

Если client_cert содержит и сертификат, и ключ, этот параметр не требуется.

command

string

Команда, которую должна выполнить Icinga.

Абсолютные пути принимаются без изменений, к относительным путям добавляется префикс «PluginDir + “», допускаются аналогичные префиксы Constant.

Пробелы разделяют путь к команде и отдельные аргументы.

Обратите внимание: в настоящее время пробелы в именах и путях плагинов не поддерживаются.

disabled

boolean

Отключённые объекты не развёртываются.

Варианты:

  • false ← (по умолчанию)
  • true

force

boolean

Если yes, не использовать кэшированную копию.

Варианты:

  • false ← (по умолчанию)
  • true

force_basic_auth

boolean

Передавать учётные данные, заданные с помощью url_username и url_password, в заголовке HTTP.

Варианты:

  • false ← (по умолчанию)
  • true

http_agent

string

Заголовок, используемый для идентификации; обычно он отображается в журналах веб-сервера.

По умолчанию: "ansible-httpget"

imports

list / elements=string

Импортируемые шаблоны; можно добавить сколько угодно. Обратите внимание: при импорте свойств из нескольких шаблонов важен порядок — последнее значение имеет приоритет.

По умолчанию: []

methods_execute

псевдонимы: command_type

string

Команды проверки плагинов используются для выполнения проверок вашей инфраструктуры.

Команды уведомлений используются для отправки уведомлений пользователям.

Команды событий позволяют запускать определённые действия при возникновении проблем.

Некоторые используют их для механизмов автоматического восстановления, например для перезапуска служб или систем при достижении определённых пороговых значений.

Варианты:

  • "PluginCheck" ← (по умолчанию)
  • "PluginNotification"
  • "PluginEvent"

object_name

псевдонимы: name

string / обязательный

Имя шаблона команды.

state

string

Применяемое состояние функции.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

timeout

string

Необязательный тайм-аут команды. Допустимы значения в секундах или длительности с указанной единицей измерения (например, 1m или 3m 30s).

url

string / обязательный

URL HTTP, HTTPS или FTP в формате (http|https|ftp)://[user[:pass]]@host.domain[:port]/path

url_password

string

Пароль для базовой аутентификации HTTP.

Если параметр url_username не указан, параметр url_password использоваться не будет.

url_username

string

Имя пользователя для базовой аутентификации HTTP.

Этот параметр можно использовать без url_password на сайтах, допускающих пустые пароли.

use_gssapi

boolean

добавлено в ansible-core 2.11

Использовать GSSAPI для аутентификации; обычно это Kerberos или Kerberos через аутентификацию Negotiate.

Требуется установленная библиотека Python gssapi.

Учётные данные GSSAPI можно указать с помощью url_username/url_password или переменной среды GSSAPI KRB5CCNAME, задающей пользовательский кэш учётных данных Kerberos.

Аутентификация NTLM не поддерживается, даже если установлен механизм GSSAPI для NTLM.

Варианты:

  • false ← (по умолчанию)
  • true

use_proxy

boolean

Если no, прокси использоваться не будет, даже если он задан в переменной среды на целевых узлах.

Варианты:

  • false
  • true ← (по умолчанию)

validate_certs

boolean

Если no, сертификаты SSL проверяться не будут.

Используйте этот параметр только на подконтрольных вам сайтах с самоподписанными сертификатами.

Варианты:

  • false
  • true ← (по умолчанию)

vars

dictionary

Пользовательские свойства шаблона команды.

По умолчанию: {}

zone

string

Зона кластера Icinga. Позволяет вручную переопределить решения Director о том, куда развёртывать конфигурацию.

Не рекомендуется делать это, пока вы не разберётесь досконально в принципах работы стека кластера Icinga.

Примечания

Примечание

  • Этот модуль поддерживает режим проверки.

Примеры

- name: Create command template
  telekom_mms.icinga_director.icinga_command_template:
    state: present
    url: "{{ icinga_url }}"
    url_username: "{{ icinga_user }}"
    url_password: "{{ icinga_pass }}"
    arguments:
      '--authpassphrase':
        value: $snmpv3_priv_key$
      '--authprotocol':
        value: $snmpv3_auth_protocol$
      '--critical':
        value: $centreon_critical$
      '--filter':
        value: $centreon_filter$
      '--hostname':
        value: $snmp_address$
      '--maxrepetitions':
        value: $centreon_maxrepetitions$
      '--mode':
        value: $centreon_mode$
      '--plugin':
        value: $centreon_plugin$
      '--privpassphrase':
        value: $snmpv3_auth_key$
      '--privprotocol':
        value: $snmpv3_priv_protocol$
      '--snmp-community':
        value: $snmp_community$
      '--snmp-timeout':
        value: $snmp_timeout$
      '--snmp-username':
        value: $snmpv3_user$
      '--snmp-version':
        value: $snmp_version$
      '--subsetleef':
        value: $centreon_subsetleef$
      '--verbose':
        set_if: $centreon_verbose$
      '--warning':
        value: $centreon_warning$
      '--dummy-arg':
        description: "dummy arg using Icinga DSL code"
        value:
          type: "Function"
          body: 'return macro("$dummy_var$")'
    command: "/opt/centreon-plugins/centreon_plugins.pl"
    command_type: "PluginCheck"
    object_name: centreon-plugins-template
    disabled: false
    vars:
      centreon_maxrepetitions: 20
      centreon_subsetleef: 20
      centreon_verbose: false
      snmp_address: $address$
      snmp_timeout: 60
      snmp_version: '2'
      snmpv3_auth_key: authkey
      snmpv3_priv_key: privkey
      snmpv3_user: user

- name: Update command template
  telekom_mms.icinga_director.icinga_command_template:
    state: present
    url: "{{ icinga_url }}"
    url_username: "{{ icinga_user }}"
    url_password: "{{ icinga_pass }}"
    object_name: centreon-plugins-template
    timeout: "2m"
    append: true

Авторы

  • Lars Krahl (@mmslkr)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/telekom_mms/icinga_director/icinga_command_template_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API