Модуль community.mongodb.mongodb_index — создает или удаляет индексы в коллекциях MongoDB.
Примечание
Этот модуль входит в коллекцию community.mongodb (версия 1.7.12).
Эта коллекция может быть уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Чтобы установить ее, используйте: ansible-galaxy collection install community.mongodb. Для использования этого модуля требуются дополнительные компоненты; подробности см. в разделе Требования.
Чтобы использовать модуль в сценарии, укажите: community.mongodb.mongodb_index.
Добавлено в community.mongodb 1.0.0
Краткое описание
- Создает или удаляет индексы в коллекциях MongoDB.
- Поддерживает различные параметры индексов, например unique, sparse и partial.
- Проверяет наличие индексов только по имени.
Требования
На узле, выполняющем этот модуль, должны быть установлены следующие компоненты.
- pymongo
Параметры
Параметр | Комментарии |
|---|---|
atlas_auth boolean | Способ аутентификации, предназначенный для экземпляров MongoDB Atlas Варианты:
|
auth_mechanism string | Тип аутентификации. Варианты:
|
connection_options list / elements=any | Дополнительные параметры подключения. Передайте список словарей или строк, содержащих пары «ключ=значение». |
indexes list / elements=any / required | Список индексов для создания или удаления |
login_database string | База данных, в которой хранятся учетные данные для входа. По умолчанию: |
login_host string | Узел, на котором запущен экземпляр MongoDB, к которому выполняется подключение. По умолчанию: |
login_password string | Пароль для аутентификации. Обязателен, если указан login_user. |
login_port integer | Порт сервера MongoDB, к которому выполняется подключение. По умолчанию: |
login_user string | Пользователь MongoDB для подключения. Обязателен, если указан login_password. |
replica_set string | Набор реплик для подключения (для операций записи подключение автоматически выполняется к первичному узлу). |
ssl псевдонимы: tls boolean | Использовать ли SSL-подключение при подключении к базе данных. Варианты:
|
ssl_ca_certs псевдонимы: tlsCAFile string | Параметр ssl_ca_certs принимает путь к файлу центра сертификации. |
ssl_cert_reqs псевдонимы: tlsAllowInvalidCertificates string | Указывает, требуется ли сертификат от другой стороны подключения и следует ли проверять его, если он предоставлен. Варианты:
|
ssl_certfile псевдонимы: tlsCertificateKeyFile string | Предоставляет клиентский сертификат с помощью параметра ssl_certfile. |
ssl_crlfile string | Параметр ssl_crlfile принимает путь к файлу списка отозванных сертификатов. |
ssl_keyfile string | Закрытый ключ клиентского сертификата. |
ssl_pem_passphrase псевдонимы: tlsCertificateKeyFilePassword string | Парольная фраза для расшифровки зашифрованных закрытых ключей. |
strict_compatibility boolean | Строго проверять требования к версиям pymongo и MongoDB Варианты:
|
Примечания
Примечание
- На удаленном узле требуется пакет Python pymongo версии 4 или выше.
Примеры
- name: Create a single index on a collection
community.mongodb.mongodb_index:
login_user: admin
login_password: secret
indexes:
- database: mydb
collection: test
keys:
- username: 1
last_login: -1
options:
name: myindex
state: present
- name: Drop an index on a collection
community.mongodb.mongodb_index:
login_user: admin
login_password: secret
indexes:
- database: mydb
collection: test
options:
name: myindex
state: absent
- name: Create multiple indexes
community.mongodb.mongodb_index:
login_user: admin
login_password: secret
indexes:
- database: mydb
collection: test
keys:
- username: 1
last_login: -1
options:
name: myindex
state: present
- database: mydb
collection: test
keys:
- email: 1
last_login: -1
options:
name: myindex2
state: present
- name: Add a unique index
community.mongodb.mongodb_index:
login_port: 27017
login_user: admin
login_password: secret
login_database: "admin"
indexes:
- database: "test"
collection: "rhys"
keys:
username: 1
options:
name: myuniqueindex
unique: true
state: present
- name: Add a ttl index
community.mongodb.mongodb_index:
login_port: 27017
login_user: admin
login_password: secret
login_database: "admin"
indexes:
- database: "test"
collection: "rhys"
keys:
created: 1
options:
name: myttlindex
expireAfterSeconds: 3600
state: present
- name: Add a sparse index
community.mongodb.mongodb_index:
login_port: 27017
login_user: admin
login_password: secret
login_database: "admin"
indexes:
- database: "test"
collection: "rhys"
keys:
last_login: -1
options:
name: mysparseindex
sparse: true
state: present
- name: Add a partial index
community.mongodb.mongodb_index:
login_port: 27017
login_user: admin
login_password: secret
login_database: "admin"
indexes:
- database: "test"
collection: "rhys"
keys:
last_login: -1
options:
name: mypartialindex
partialFilterExpression:
rating:
$gt: 5
state: present
- name: Add a index in the background (background option is deprecated from 4.2+)
community.mongodb.mongodb_index:
login_port: 27017
login_user: admin
login_password: secret
login_database: "admin"
indexes:
- database: "test"
collection: "rhys"
options:
name: idxbackground
keys:
username: -1
backgroud: true
state: present
- name: Check creating 5 index all with multiple options specified
community.mongodb.mongodb_index:
login_port: 27017
login_user: admin
login_password: secret
login_database: "admin"
indexes:
- database: "test"
collection: "indextest"
options:
name: "idx_unq_username"
unique: true
keys:
username: -1
state: present
- database: "test"
collection: "indextest"
options:
name: "idx_last_login"
sparse: true
keys:
last_login: -1
state: present
- database: "test"
collection: "indextest"
options:
name: "myindex"
keys:
first_name: 1
last_name: -1
city: 1
state: present
- database: "test"
collection: partialtest
options:
name: "idx_partialtest"
partialFilterExpression:
rating:
$gt: 5
keys:
rating: -1
title: 1
state: present
- database: "test"
collection: "wideindex"
options:
name: "mywideindex"
keys:
email: -1
username: 1
first_name: 1
last_name: 1
dob: -1
city: 1
last_login: -1
review_count: 1
rating_count: 1
last_post: -1
state: present
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, характерные только для этого модуля:
Ключ | Описание |
|---|---|
changed boolean | Указывает, что модуль внес изменения. Возвращается: Если модуль внес изменения. |
failed boolean | Указывает, что выполнение модуля завершилось с ошибкой. Возвращается: Если при выполнении модуля произошла ошибка. |
indexes_created list / elements=string | Список созданных индексов. Возвращается: всегда Пример: |
indexes_dropped list / elements=string | Список удаленных индексов. Возвращается: всегда Пример: |
Ссылки на коллекцию
© 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/community/mongodb/mongodb_index_module.html