logicmonitor - Управление вашей учётной записью LogicMonitor с помощью Ansible Playbooks
Новая версия 2.2.
Обзор
- LogicMonitor — это хостинг-платформа для мониторинга инфраструктуры с полным стеком.
- Этот модуль управляет хостами, группами хостов и коллекторами в вашей учётной записи LogicMonitor.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- Существующая учётная запись LogicMonitor
- Linux
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| action обязательно |
| Действие, которое необходимо выполнить над целевым объектом. Add: Добавление объекта в вашу учётную запись LogicMonitor. Remove: Удаление объекта из вашей учётной записи LogicMonitor. Update: Обновление свойств, описания или групп (target=host) объекта в вашей учётной записи LogicMonitor. SDT: Планирование простоя для объекта в вашей учётной записи LogicMonitor. |
| alertenable bool |
| Логический флаг для включения или отключения оповещений для объекта. Необязательно для управления всеми хостами (action=add или action=update). |
| collector | Полное доменное имя коллектора в вашей учётной записи LogicMonitor. Это обязательно для создания хоста LogicMonitor (target=host action=add). Это обязательно для обновления, удаления или планирования простоя для хостов, если «displayname» не указан (target=host action=update action=remove action=sdt). | |
| company обязательно | Название компании учётной записи LogicMonitor. Если вы войдёте в свою учётную запись по адресу "superheroes.logicmonitor.com", используйте "superheroes". | |
| description | Значение по умолчанию: "" | Подробное текстовое описание объекта в вашей учётной записи LogicMonitor. Необязательно для управления хостами и группами хостов (target=host или target=hostgroup; action=add или action=update). |
| displayname | Значение по умолчанию: "hostname -f" | Идентификатор отображения хоста в вашей учётной записи LogicMonitor или желаемый идентификатор отображения устройства для управления. Необязательно для управления хостами (target=host). |
| duration | Значение по умолчанию: 30 | Продолжительность (минуты) запланированного простоя (SDT). Необязательно для ввода объекта в SDT (action=sdt). |
| fullpath | Полный путь к объекту группы хостов, которым вы хотите управлять. Рекомендуется выполнять на одном хосте Ansible. Обязательно для управления группами хостов LogicMonitor (target=hostgroup). | |
| groups | Значение по умолчанию: [] | Список групп, членом которых должен быть хост. Необязательно для управления хостами (target=host; action=add или action=update). |
| hostname | Значение по умолчанию: "hostname -f" | Имя хоста хоста в вашей учётной записи LogicMonitor или желаемое имя хоста устройства для управления. Необязательно для управления хостами (target=host). |
| id | Идентификатор источника данных, на который нужно нацелить. Обязательно для управления источниками данных LogicMonitor (target=datasource). | |
| password обязательно | Пароль указанного пользователя LogicMonitor | |
| properties | Значение по умолчанию: {} | Словарь свойств, которые нужно задать для хоста LogicMonitor или группы хостов. Необязательно для управления хостами и группами хостов (target=host или target=hostgroup; action=add или action=update). Этот параметр добавит или обновит существующие свойства в вашей учётной записи LogicMonitor. |
| starttime | Значение по умолчанию: "Сейчас" | Время начала запланированного простоя (SDT). Необязательно для управления SDT (action=sdt). ГГГГ-ММ-ДД ЧЧ:ММ |
| target обязательно |
| Тип объекта LogicMonitor, которым вы хотите управлять. Collector: Выполнение действий над коллектором LogicMonitor. ПРИМЕЧАНИЕ. Для управления службами коллектора 'logicmonitor-agent' и 'logicmonitor-watchdog' следует использовать модули Ansible service, такие как service или supervisorctl. В частности, вам, вероятно, нужно будет запустить эти службы после добавления коллектора и остановить эти службы перед удалением коллектора. Host: Выполнение действий над устройством хоста. Hostgroup: Выполнение действий над группой хостов LogicMonitor. ПРИМЕЧАНИЕ. Задачи хоста и группы хостов всегда должны выполняться с помощью delegate_to: localhost. Нет никаких преимуществ в выполнении этих задач на удалённом хосте, и это обычно приводит к проблемам. |
| user обязательно | Имя пользователя LogicMonitor. Модуль выполнит аутентификацию и выполнит действия от имени этого пользователя. |
Примечания
Примечание
- Для работы этого модуля необходимо наличие существующей учётной записи LogicMonitor.
Примеры
# example of adding a new LogicMonitor collector to these devices
---
- hosts: collectors
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: Deploy/verify LogicMonitor collectors
become: yes
logicmonitor:
target: collector
action: add
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
#example of adding a list of hosts into monitoring
---
- hosts: hosts
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: Deploy LogicMonitor Host
# All tasks except for target=collector should use delegate_to: localhost
logicmonitor:
target: host
action: add
collector: mycompany-Collector
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
groups: /servers/production,/datacenter1
properties:
snmp.community: secret
dc: 1
type: prod
delegate_to: localhost
#example of putting a datasource in SDT
---
- hosts: localhost
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: SDT a datasource
# All tasks except for target=collector should use delegate_to: localhost
logicmonitor:
target: datasource
action: sdt
id: 123
duration: 3000
starttime: '2017-03-04 05:06'
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
#example of creating a hostgroup
---
- hosts: localhost
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: Create a host group
# All tasks except for target=collector should use delegate_to: localhost
logicmonitor:
target: hostgroup
action: add
fullpath: /servers/development
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
properties:
snmp.community: commstring
type: dev
#example of putting a list of hosts into SDT
---
- hosts: hosts
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: SDT hosts
# All tasks except for target=collector should use delegate_to: localhost
logicmonitor:
target: host
action: sdt
duration: 3000
starttime: '2016-11-10 09:08'
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
collector: mycompany-Collector
delegate_to: localhost
#example of putting a host group in SDT
---
- hosts: localhost
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: SDT a host group
# All tasks except for target=collector should use delegate_to: localhost
logicmonitor:
target: hostgroup
action: sdt
fullpath: /servers/development
duration: 3000
starttime: '2017-03-04 05:06'
company=: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
#example of updating a list of hosts
---
- hosts: hosts
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: Update a list of hosts
# All tasks except for target=collector should use delegate_to: localhost
logicmonitor:
target: host
action: update
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
collector: mycompany-Collector
groups: /servers/production,/datacenter5
properties:
snmp.community: commstring
dc: 5
delegate_to: localhost
#example of updating a hostgroup
---
- hosts: hosts
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: Update a host group
# All tasks except for target=collector should use delegate_to: localhost
logicmonitor:
target: hostgroup
action: update
fullpath: /servers/development
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
properties:
snmp.community: hg
type: dev
status: test
delegate_to: localhost
#example of removing a list of hosts from monitoring
---
- hosts: hosts
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: Remove LogicMonitor hosts
# All tasks except for target=collector should use delegate_to: localhost
logicmonitor:
target: host
action: remove
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
collector: mycompany-Collector
delegate_to: localhost
#example of removing a host group
---
- hosts: hosts
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: Remove LogicMonitor development servers hostgroup
# All tasks except for target=collector should use delegate_to: localhost
logicmonitor:
target: hostgroup
action: remove
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
fullpath: /servers/development
delegate_to: localhost
- name: Remove LogicMonitor servers hostgroup
# All tasks except for target=collector should use delegate_to: localhost
logicmonitor:
target: hostgroup
action: remove
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
fullpath: /servers
delegate_to: localhost
- name: Remove LogicMonitor datacenter1 hostgroup
# All tasks except for target=collector should use delegate_to: localhost
logicmonitor:
target: hostgroup
action: remove
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
fullpath: /datacenter1
delegate_to: localhost
- name: Remove LogicMonitor datacenter5 hostgroup
# All tasks except for target=collector should use delegate_to: localhost
logicmonitor:
target: hostgroup
action: remove
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
fullpath: /datacenter5
delegate_to: localhost
### example of removing a new LogicMonitor collector to these devices
---
- hosts: collectors
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: Remove LogicMonitor collectors
become: yes
logicmonitor:
target: collector
action: remove
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
#complete example
---
- hosts: localhost
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: Create a host group
logicmonitor:
target: hostgroup
action: add
fullpath: /servers/production/database
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
properties:
snmp.community: commstring
- name: SDT a host group
logicmonitor:
target: hostgroup
action: sdt
fullpath: /servers/production/web
duration: 3000
starttime: '2012-03-04 05:06'
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
- hosts: collectors
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: Deploy/verify LogicMonitor collectors
logicmonitor:
target: collector
action: add
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
- name: Place LogicMonitor collectors into 30 minute Scheduled downtime
logicmonitor:
target: collector
action: sdt
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
- name: Deploy LogicMonitor Host
logicmonitor:
target: host
action: add
collector: agent1.ethandev.com
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
properties:
snmp.community: commstring
dc: 1
groups: /servers/production/collectors, /datacenter1
delegate_to: localhost
- hosts: database-servers
remote_user: '{{ username }}'
vars:
company: mycompany
user: myusername
password: mypassword
tasks:
- name: deploy logicmonitor hosts
logicmonitor:
target: host
action: add
collector: monitoring.dev.com
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
properties:
snmp.community: commstring
type: db
dc: 1
groups: /servers/production/database, /datacenter1
delegate_to: localhost
- name: schedule 5 hour downtime for 2012-11-10 09:08
logicmonitor:
target: host
action: sdt
duration: 3000
starttime: '2012-11-10 09:08'
company: '{{ company }}'
user: '{{ user }}'
password: '{{ password }}'
delegate_to: localhost
Возвращаемые значения
Общие значения возврата описаны в здесь, следующие — поля, уникальные для данного модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| success boolean | success | Флаг, указывающий на успешное выполнение. Пример: True |
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантирует обратную совместимость.
Техническое обслуживание
Этот модуль помечен как сообщество, что означает, что его поддерживает сообщество Ansible. Подробнее см. Поддержка и техническое обслуживание модулей.
Список других модулей, поддерживаемых сообществом Ansible, см. здесь.
Автор
- Ethan Culler-Mayeno (@ethanculler)
- Jeff Wozniak (@woz5999)
Подсказка
Если вы обнаружите какие-либо проблемы в этом документе, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/logicmonitor_module.html