community.mongodb.mongodb_balancer – Manages the MongoDB Sharded Cluster Balancer.

Note

This plugin is part of the community.mongodb collection (version 1.3.1).

To install it use: ansible-galaxy collection install community.mongodb.

To use it in a playbook, specify: community.mongodb.mongodb_balancer.

New in version 1.0.0: of community.mongodb

Synopsis

  • Manages the MongoDB Sharded Cluster Balancer.

  • Start or stop the balancer.

  • Adjust the cluster chunksize.

  • Enable or disable autosplit.

  • Add or remove a balancer window.

Requirements

The below requirements are needed on the host that executes this module.

  • pymongo

Parameters

Parameter Choices/Defaults Comments
auth_mechanism
string
    Choices:
  • SCRAM-SHA-256
  • SCRAM-SHA-1
  • MONGODB-X509
  • GSSAPI
  • PLAIN
Authentication type.
autosplit
boolean
    Choices:
  • no
  • yes
Disable or enable the autosplit flag in the config.settings collection.
chunksize
integer
Control the size of chunks in the sharded cluster.
Value should be given in MB.
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.
Most users can ignore this setting.
ssl
boolean
    Choices:
  • no ←
  • yes
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
    Choices:
  • CERT_NONE
  • CERT_OPTIONAL
  • CERT_REQUIRED ←
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
    Choices:
  • started ←
  • stopped
Manage the Balancer for the Cluster
window
raw
Schedule the balancer window.
Provide the following dictionary keys start, stop, state
The state key should be "present" or "absent".
The start and stop keys are ignored when state is "absent".
start and stop should be strings in "HH:MM" format indicating the time bounds of the window.

Notes

Note

Examples

- name: Start the balancer
  community.mongodb.mongodb_balancer:
    state: started

- name: Stop the balancer and disable autosplit
  community.mongodb.mongodb_balancer:
    state: stopped
    autosplit: false

- name: Enable autosplit
  community.mongodb.mongodb_balancer:
    autosplit: true

- name: Change the default chunksize to 128MB
  community.mongodb.mongodb_balancer:
    chunksize: 128

- name: Add or update a balancing window
  community.mongodb.mongodb_balancer:
    window:
      start: "23:00"
      stop: "06:00"
      state: "present"

- name: Remove a balancing window
  community.mongodb.mongodb_balancer:
    window:
      state: "absent"

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
changed
boolean
success
Whether the balancer state or autosplit changed.

failed
boolean
failed
If something went wrong

msg
string
failure
A short description of what happened.

new_autosplit
string
When autosplit is changed.
The new state of autosplit.

new_balancer_state
string
When balancer state is changed
The new state of the balancer.

new_chunksize
integer
When chunksize is changed.
The new value for chunksize.

old_autosplit
string
When autosplit is changed.
The previous state of autosplit.

old_balancer_state
string
When balancer state is changed
The previous state of the balancer

old_chunksize
integer
When chunksize is changed.
The previous value for chunksize.



Authors

  • Rhys Campbell (@rhysmeister)