80 lines
2.5 KiB
YAML
80 lines
2.5 KiB
YAML
---
|
|
- name: Use different mongod.conf for auth initialization
|
|
template: src=mongod_init.conf.j2 dest=/etc/mongod.conf owner=root group=root mode=0644
|
|
|
|
- name: Restart mongodb service
|
|
service: name={{ mongodb_daemon_name }} state=restarted
|
|
when: mongodb_manage_service
|
|
|
|
- name: wait MongoDB port is listening
|
|
wait_for: host=127.0.0.1 port="{{ mongodb_net_port }}" delay=5 state=started
|
|
|
|
- name: get pid of mongodb for non daemon mode
|
|
shell: "pidof mongod"
|
|
register: pidof_mongod
|
|
when: mongodb_manage_service == false
|
|
ignore_errors: yes
|
|
|
|
- name: start mongodb daemon
|
|
shell: "LC_ALL=C /usr/bin/mongod --config /etc/mongod.conf --fork"
|
|
when: mongodb_manage_service == false and pidof_mongod.rc == 1
|
|
|
|
- name: create administrative user siteUserAdmin
|
|
mongodb_user:
|
|
database: admin
|
|
name: "{{ item.name }}"
|
|
password: "{{ item.password }}"
|
|
update_password: "{{ mongodb_user_update_password }}"
|
|
roles: "{{ item.roles }}"
|
|
login_port: "{{ mongodb_net_port }}"
|
|
with_items:
|
|
- {
|
|
name: "{{ mongodb_user_admin_name }}",
|
|
password: "{{ mongodb_user_admin_password }}",
|
|
roles: "userAdminAnyDatabase"
|
|
}
|
|
no_log: true
|
|
|
|
- name: create administrative user siteRootAdmin
|
|
mongodb_user:
|
|
database: admin
|
|
name: "{{ item.name }}"
|
|
password: "{{ item.password }}"
|
|
update_password: "{{ mongodb_user_update_password }}"
|
|
roles: "{{ item.roles }}"
|
|
login_port: "{{ mongodb_net_port }}"
|
|
with_items:
|
|
- {
|
|
name: "{{ mongodb_root_admin_name }}",
|
|
password: "{{ mongodb_root_admin_password }}",
|
|
roles: "root"
|
|
}
|
|
no_log: true
|
|
|
|
- name: create backup user "backupuser"
|
|
mongodb_user:
|
|
database: admin
|
|
name: "{{ item.name }}"
|
|
password: "{{ item.password }}"
|
|
update_password: "{{ mongodb_user_update_password }}"
|
|
roles: "{{ item.roles }}"
|
|
login_port: "{{ mongodb_net_port }}"
|
|
with_items:
|
|
- {
|
|
name: "{{ mongodb_root_backup_name }}",
|
|
password: "{{ mongodb_root_backup_password }}",
|
|
roles: "backup,clusterMonitor"
|
|
}
|
|
no_log: true
|
|
|
|
- name: Move back mongod.conf
|
|
template: src=mongod.conf.j2 dest=/etc/mongod.conf owner=root group=root mode=0644
|
|
|
|
- name: Restart mongodb service
|
|
service: name={{ mongodb_daemon_name }} state=restarted
|
|
when: mongodb_manage_service
|
|
|
|
- name: Wait MongoDB port is listening
|
|
wait_for: host="{{ item }}" port="{{ mongodb_net_port }}" delay=5 state=started
|
|
with_items: "{{ mongodb_net_bindip.split(',') | map('replace', '0.0.0.0', '127.0.0.1') | list }}"
|