On this page
community.mongodb.mongodb_oplog – Resizes the MongoDB oplog.
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_oplog
.
New in version 1.0.0: of community.mongodb
Synopsis
- Resizes the MongoDB oplog.
- This module should only be used with MongoDB 3.6 and above.
- Old MongoDB versions should use an alternative method.
- Consult https://docs.mongodb.com/manual/tutorial/change-oplog-size for further info.
Requirements
The below requirements are needed on the host that executes this module.
- pymongo
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
auth_mechanism
string
|
|
Authentication type.
|
compact
boolean
|
|
Runs compact against the oplog.rs collection in the local database to reclaim disk space.
Performs no actions against PRIMARY members.
The MongoDB user must have the compact role on the local database for this feature to work.
|
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.
|
|
oplog_size_mb
integer / required
|
New size of the oplog in MB.
|
|
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.
|
|
ver
string
|
Default:
"3.6"
|
Version of MongoDB this module is supported from.
You probably don't want to modifiy this.
Included here for internal testing.
|
Notes
Note
- Requires the pymongo Python package on the remote host, version 2.4.2+. This can be installed using pip or the OS package manager. @see http://api.mongodb.org/python/current/installation.html
Examples
- name: Resize oplog to 16 gigabytes, or 16000 megabytes
community.mongodb.mongodb_oplog:
oplog_size_mb: 16000
- name: Resize oplog to 8 gigabytes and compact secondaries to reclaim space
community.mongodb.mongodb_oplog:
oplog_size_mb: 8000
compact: true
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 member oplog was modified.
|
compacted
boolean
|
success |
Whether the member oplog was compacted.
|
failed
boolean
|
failed |
If something went wrong
|
msg
string
|
success |
A short description of what happened.
|
Authors
- Rhys Campbell (@rhysmeister)
© 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_oplog_module.html