community.general.consul_session – Управление сессиями consul
Примечание
Этот плагин входит в состав коллекции community.general (версия 2.0.1).
Для его установки используйте: ansible-galaxy collection install community.general.
Для использования в плейбуке укажите: community.general.consul_session.
Обзор
- Позволяет добавлять, изменять и удалять сессии в кластере consul. Эти сессии могут быть использованы совместно с парами ключ-значение для реализации распределённых блокировок. Подробная документация по работе с сессиями доступна по адресу http://www.consul.io/docs/internals/sessions.html
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- python-consul
- requests
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| behavior строка |
| Необязательное поведение, которое может быть прикреплено к сессии при её создании. Это управляет поведением при аннулировании сессии. |
| checks список / элементы=строка | Проверки, которые будут использоваться для проверки состояния сессии. Если все проверки завершатся неудачно, сессия будет аннулирована, и любые блокировки, связанные с сессией, будут освобождены и могут быть повторно получены после истечения срока ожидания, связанного с блокировкой. | |
| datacenter строка | Имя дата-центра, в котором существует или должна быть создана сессия. | |
| delay целое число | По умолчанию: 15 | Необязательное время ожидания блокировки, которое может быть прикреплено к сессии при её создании. Блокировки для аннулированных сессий заблокированы от приобретения до истечения этого времени ожидания. Длительности указаны в секундах. |
| host строка | По умолчанию: "localhost" | Хост агента consul, по умолчанию localhost. |
| id строка | Идентификатор сессии, обязательный, когда state равен info или remove. | |
| name строка | Имя, которое должно быть связано с сессией. Требуется, когда используется state=node. | |
| node строка | Имя узла, с которым будет связана сессия. По умолчанию это имя агента. | |
| port целое число | По умолчанию: 8500 | Порт, на котором работает агент consul. |
| scheme строка | По умолчанию: "http" | Схема протокола, на котором работает агент consul. |
| state строка |
| Указывает, должна ли сессия присутствовать (т.е. создана, если она не существует), или отсутствовать (удалена, если существует). Если создана, id сессии возвращается в выводе. Если absent, id необходим для удаления сессии. Информация об одной сессии, обо всех сессиях для узла или обо всех доступных сессиях может быть получена, указав info, node или list для state; для node или info, имя узла name или id сессии требуется как параметр. |
| validate_certs булево |
| Подтверждать ли TLS-сертификат агента consul. |
Примеры
- name: Register basic session with consul
community.general.consul_session:
name: session1
- name: Register a session with an existing check
community.general.consul_session:
name: session_with_check
checks:
- existing_check_name
- name: Register a session with lock_delay
community.general.consul_session:
name: session_with_delay
delay: 20s
- name: Retrieve info about session by id
community.general.consul_session:
id: session_id
state: info
- name: Retrieve active sessions
community.general.consul_session:
state: list
Авторы
- Steve Gargan (@sgargan)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/consul_session_module.html