使用 ansible playbook 创建 mongodb 数据库

Dan*_*ylo 5 mongodb

如何使用 Ansible 创建 MongoDB 数据库?是否可以?

如果没有,我可以用 bash 脚本做到这一点吗?

我尝试将 mongodb_user 模块用于 Ansible,但它无法在没有现有表的情况下工作。

Dan*_*ylo 3

- name: Create MongoDB root user siteRootAdmin
  mongodb_user:
    login_port: "27017"
    database: "admin"
    name: "{{ mongodb_admin_user }}"
    password: "{{ mongodb_admin_password }}"
    roles: "root"

- name: Create MongoDB administrative user siteUserAdmin
  mongodb_user:
    login_user: "{{ mongodb_admin_user }}"
    login_password: "{{ mongodb_admin_password }}"
    login_port: "27017"
    database: "e-gov"
    name: "{{ mongodb_user }}"
    password: "{{ mongodb_password }}"
    roles:
      - { db: "admin", role: "readWrite" }
      - { db: "{{ mongodb_database }}", role: "readWrite" }

- name: Create MongoDB backup user siteUserBackup
  mongodb_user:
    login_user: "{{ mongodb_admin_user }}"
    login_password: "{{ mongodb_admin_password }}"
    login_port: "27017"
    database: "e-gov"
    name: "{{ mongodb_backup_user }}"
    password: "{{ mongodb_backup_password }}"
    roles:
      - { db: "admin", role: "backup" }
Run Code Online (Sandbox Code Playgroud)

我这样做了,它适用于 ansible 2.2.0^