Note
This plugin is part of the community.mongodb collection (version 1.3.1).
You might already have this collection installed if you are using the ansible
package. It is not included in ansible-core
. To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install community.mongodb
.
To use it in a playbook, specify: community.mongodb.mongodb_shard
.
New in version 1.0.0: of community.mongodb
The below requirements are needed on the host that executes this module.
Parameter | Choices/Defaults | Comments |
---|---|---|
auth_mechanism string |
| Authentication type. |
connection_options list / elements=raw | Additional connection options. Supply as a list of dicts or strings containing key value pairs seperated with '='. | |
login_database string | Default: "admin" | The database where login credentials are stored. |
login_host string | Default: "localhost" | The host running MongoDB instance to login to. |
login_password string | The password used to authenticate with. Required when login_user is specified. | |
login_port integer | Default: 27017 | The MongoDB server port to login to. |
login_user string | The MongoDB user to login with. Required when login_password is specified. | |
mongos_process string | Default: "mongos" | Provide a custom name for the mongos process you are connecting to. Most users can ignore this setting. |
shard string / required | The shard connection string. Should be supplied in the form <replicaset>/host:port as detailed in https://docs.mongodb.com/manual/tutorial/add-shards-to-shard-cluster/. For example rs0/example1.mongodb.com:27017. | |
sharded_databases raw | Enable sharding on the listed database. Can be supplied as a string or a list of strings. Sharding cannot be disabled on a database. | |
ssl boolean |
| Whether to use an SSL connection when connecting to the database. |
ssl_ca_certs string | The ssl_ca_certs option takes a path to a CA file. | |
ssl_cert_reqs string |
| Specifies whether a certificate is required from the other side of the connection, and whether it will be validated if provided. |
ssl_certfile string | Present a client certificate using the ssl_certfile option. | |
ssl_crlfile string | The ssl_crlfile option takes a path to a CRL file. | |
ssl_keyfile string | Private key for the client certificate. | |
ssl_pem_passphrase string | Passphrase to decrypt encrypted private keys. | |
state string |
| Whether the shard should be present or absent from the Cluster. |
Note
- name: Add a replicaset shard named rs1 with a member running on port 27018 on mongodb0.example.net community.mongodb.mongodb_shard: login_user: admin login_password: admin shard: "rs1/mongodb0.example.net:27018" state: present - name: Add a standalone mongod shard running on port 27018 of mongodb0.example.net community.mongodb.mongodb_shard: login_user: admin login_password: admin shard: "mongodb0.example.net:27018" state: present - name: To remove a shard called 'rs1' community.mongodb.mongodb_shard: login_user: admin login_password: admin shard: rs1 state: absent # Single node shard running on localhost - name: Ensure shard rs0 exists community.mongodb.mongodb_shard: login_user: admin login_password: secret shard: "rs0/localhost:3001" state: present # Single node shard running on localhost - name: Ensure shard rs1 exists community.mongodb.mongodb_shard: login_user: admin login_password: secret shard: "rs1/localhost:3002" state: present # Enable sharding on a few databases when creating the shard - name: To remove a shard called 'rs1' community.mongodb.mongodb_shard: login_user: admin login_password: admin shard: rs1 sharded_databases: - db1 - db2 state: present
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
mongodb_shard string | success | The name of the shard to create. |
sharded_enabled list / elements=string | success when sharding is enabled | Databases that have had sharding enabled during module execution. |
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/mongodb/mongodb_shard_module.html