community.mongodb.mongodb_stepdown – Step down the MongoDB node from a PRIMARY state.

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_stepdown.

New in version 1.0.0: of community.mongodb

Synopsis

  • Step down the MongoDB node from the PRIMARY state if it has that status. Returns OK immediately if the member is already in the SECONDARY or ARBITER states. Will wait until a timeout for the member state to reach SECONDARY or PRIMARY, if the member state is currently STARTUP, RECOVERING, STARTUP2 or ROLLBACK, before taking any needed action.

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.
connection_options
list / elements=raw
Additional connection options.
Supply as a list of dicts or strings containing key value pairs seperated with '='.
force
boolean
    Choices:
  • no ←
  • yes
Optional. A boolean that determines whether the primary steps down if no electable and up-to-date secondary exists within the wait period.
interval
integer
Default:
30
The number of seconds to wait between poll executions.
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.
poll
integer
Default:
1
The maximum number of times query for the member status.
secondary_catch_up
integer
Default:
10
The secondaryCatchUpPeriodSecs parameter for the stepDown command.
The number of seconds that mongod will wait for an electable secondary to catch up to the primary.
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.
stepdown_seconds
integer
Default:
60
The number of seconds to step down the primary, during which time the stepdown member is ineligible for becoming primary.

Notes

Note

Examples

- name: Step down the current MongoDB member
  community.mongodb.mongodb_stepdown:
    login_user: admin
    login_password: secret

- name: Step down the current MongoDB member, poll a maximum of 5 times if member state is recovering
  community.mongodb.mongodb_stepdown:
    login_user: admin
    login_password: secret
    poll: 5
    interval: 10

Return Values

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

Key Returned Description
failed
boolean
always
If the module had failed or not.

iteration
integer
always
Number of times the module has queried the replicaset status.

msg
string
always
Status message.



Authors

  • Rhys Campbell (@rhysmeister)