logicmonitor - Управление вашей учетной записью LogicMonitor с помощью Ansible Playbook
Новое в версии 2.2.
Описание
- LogicMonitor — это хостируемая платформа мониторинга инфраструктуры полного цикла.
- Этот модуль управляет хостами, группами хостов и коллекторами в вашей учетной записи LogicMonitor.
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- Существующая учетная запись LogicMonitor
- Linux
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| action обязательно |
None | Действие, которое необходимо выполнить над объектом. Add: Добавить объект в вашу учетную запись LogicMonitor. Remove: Удалить объект из вашей учетной записи LogicMonitor. Update: Обновить свойства, описание или группы (target=host) объекта в вашей учетной записи LogicMonitor. SDT: Назначить запланированное время простоя для объекта в вашей учетной записи LogicMonitor. |
| alertenable |
yes | Логический флаг для включения или отключения оповещений для объекта. Необязательно для управления всеми хостами (action=add или action=update). |
| collector | Значение по умолчанию: None | Полное доменное имя коллектора в вашей учетной записи LogicMonitor. Требуется для создания хоста LogicMonitor (target=host action=add). Требуется для обновления, удаления или назначения запланированного времени простоя для хостов, если не указан 'displayname' (target=host action=update action=remove action=sdt). |
| company обязательно | Значение по умолчанию: None | Название компании учетной записи 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 | Значение по умолчанию: None | Полный путь к объекту группы хостов, который вы хотите управлять. Рекомендуется выполнять на одном хосте Ansible. Требуется для управления группами хостов LogicMonitor (target=hostgroup). |
| groups | Значение по умолчанию: [] | Список групп, в которых должен состоять хост. Необязательно для управления хостами (target=host; action=add или action=update). |
| hostname | Значение по умолчанию: hostname -f | Имя хоста хоста в вашей учетной записи LogicMonitor или желаемое имя хоста устройства для управления. Необязательно для управления хостами (target=host). |
| id | Значение по умолчанию: None | Идентификатор источника данных для цели. Требуется для управления источниками данных LogicMonitor (target=datasource). |
| password обязательно | Значение по умолчанию: None | Пароль указанного пользователя LogicMonitor |
| properties | Значение по умолчанию: {} | Словарь свойств для установки на хост или группу хостов LogicMonitor. Необязательно для управления хостами и группами хостов (target=host или target=hostgroup; action=add или action=update). Этот параметр добавит или обновит существующие свойства в вашей учетной записи LogicMonitor. |
| starttime | Значение по умолчанию: Now | Время начала запланированного времени простоя (SDT). Необязательно для управления SDT (action=sdt). ГГГГ-ММ-ДД ЧЧ:ММ |
| target обязательно |
None | Тип объекта LogicMonitor, который вы хотите управлять. Collector: Выполнение действий над коллектором LogicMonitor. ПРИМЕЧАНИЕ. Для управления службами коллектора 'logicmonitor-agent' и 'logicmonitor-watchdog' следует использовать модули служб Ansible, такие как service или supervisorctl. В частности, вам, вероятно, потребуется запустить эти службы после добавления коллектора и остановить их перед удалением коллектора. Host: Выполнение действий над устройством-хостом. Hostgroup: Выполнение действий над группой хостов LogicMonitor. ПРИМЕЧАНИЕ. Задачи для хостов и групп хостов всегда должны выполняться через delegate_to: localhost. Нет преимуществ в выполнении этих задач на удаленном хосте, и это обычно приведет к проблемам. |
| user обязательно | Значение по умолчанию: None | Имя пользователя 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 |
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантируется обратной совместимостью.
Автор
- 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.5/modules/logicmonitor_module.html