consul_kv – Управление записями в хранилище ключ/значение кластера consul
Новое в версии 2.0.
Обзор
- Позволяет извлекать, добавлять, изменять и удалять записи ключ/значение в кластере consul через агент. Весь контент записи, включая индексы, флаги и сессию, возвращается как «значение».
- Если ключ представляет собой префикс, обратите внимание, что при удалении значения, любое существующее значение возвращается как часть результатов.
- Для получения более подробной информации см. http://www.consul.io/docs/agent/http.html#kv.
Требования
Ниже приведены требования, необходимые на хосте, на котором выполняется этот модуль.
- python >= 2.6
- python-consul
- requests
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
|
cas
-
|
Используется при получении блокировки с сессией. Если
cas равно 0, то Consul поместит ключ только если он еще не существует. Если значение cas не равно нулю, то ключ устанавливается только если индекс совпадает с ModifyIndex этого ключа. |
|
|
flags
-
|
Неявное целочисленное значение, которое можно передать при установке значения.
|
|
|
host
-
|
По умолчанию: "localhost" |
Хост агента consul.
|
|
key
- / обязательно
|
Ключ, в котором должно храниться значение.
|
|
|
port
-
|
По умолчанию: 8500 |
Порт, на котором работает агент consul.
|
|
recurse
boolean
|
|
Если ключ представляет собой префикс, каждая запись с префиксом может быть извлечена, установив это значение на
yes. |
|
scheme
-
добавлен в 2.1
|
По умолчанию: "http" |
Схема протокола, на котором работает агент consul.
|
|
session
-
|
Сессия, которая должна использоваться для получения или освобождения блокировки, связанной с парой ключ/значение.
|
|
|
state
-
|
|
Действие, которое нужно выполнить с предоставленным ключом и значением. Если состояние «настоящий» и `value` установлено, содержимое ключа будет установлено на предоставленное значение и `changed` будет установлено на `true` только если значение отличалось от текущего содержимого. Если состояние «настоящий» и `value` не установлено, возвращается текущее значение, связанное с ключом. Состояние «отсутствует» удалит пару ключ/значение, опять же `changed` будет установлено на true только если ключ фактически существовал до удаления. Можно попытаться получить или освободить блокировку, связанную с парой ключ/значение, состояниями «получить» или «освободить» соответственно. Для попытки требуется действительная сессия. changed будет true, если попытка удалась, false - в противном случае.
|
|
token
-
|
Ключ токена, определяющий набор правил ACL, который контролирует доступ к паре ключ/значение.
|
|
|
validate_certs
boolean
добавлен в 2.1
|
|
Нужно ли проверять сертификат tls агента consul.
|
|
value
- / обязательно
|
Значение должно быть связано с заданным ключом, необходимо, если
state равно present. |
Примеры
# If the key does not exist, the value associated to the "data" property in `retrieved_key` will be `None`
# If the key value is empty string, `retrieved_key["data"]["Value"]` will be `None`
- name: retrieve a value from the key/value store
consul_kv:
key: somekey
register: retrieved_key
- name: Add or update the value associated with a key in the key/value store
consul_kv:
key: somekey
value: somevalue
- name: Remove a key from the store
consul_kv:
key: somekey
state: absent
- name: Add a node to an arbitrary group via consul inventory (see consul.ini)
consul_kv:
key: ansible/groups/dc1/somenode
value: top_secret
- name: Register a key/value pair with an associated session
consul_kv:
key: stg/node/server_birthday
value: 20160509
session: "{{ sessionid }}"
state: acquire
Статус
- Этот модуль не гарантирует обратной совместимости интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- Steve Gargan (@sgargan)
- Colin Nolan (@colin-nolan)
Подсказка
Если вы заметили какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/consul_kv_module.html