enix.mongodb
enix.mongodb
UnixホストにMongoDBとその拡張機能をデプロイし、設定するための役割(ロール)です。これはAnsibleを使用します。
要件
サポート対象:
- Ubuntu 16.04 "Xenial"
- Ubuntu 18.04 "Bionic"
- Debian 8 "Jessie"
- Debian 9 "Stretch"
- Debian 10 "Buster"
ロール変数
このロールには、ほぼすべてのデフォルト設定が事前にロードされています。各変数は、あなたのホストやグループ変数、インベントリ、またはプレイブックで上書きできます。設定の手助けとして、defaults/main.yml
に注釈付きのデフォルトがあります。提供されるすべての変数はmongodb__
で始まります。
mongodb__version
- インストールするMongoDBソフトウェアのバージョン。これはインストールする安定したブランチを選択します。デフォルトは4.2
。現在利用可能なバージョン: 3.2、3.4、3.6、3.8、4.0、4.2、4.4。mongodb__apt_localkey
- プロキシの背後にあるシステムの場合、レポキーをキーサーバーから取得するのが問題になることがあります。これを有効にすると、ローカルコピーを使用します。リモートリポジトリでキーが変更された場合、警告が表示されるかもしれません。デフォルトはfalse
。mongodb__packages
- インストールするMongoDBパッケージ。デフォルトはmongodb-org
で、すべてをインストールします。以下のいずれかを選択可能: mongodb-org, mongodb-org-server, mongodb-org-mongos, mongodb-org-shell, mongodb-org-tools。詳細は https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/ を参照してください。mongodb__conf_port
- mongodがバインドすべきポート、デフォルトは27017
。mongodb__conf_bindIp
- mongodがバインドすべきIP、デフォルトは127.0.0.1
。mongodb__conf_extra
- mongod.confに設定する追加の構成オプション。これは、デーモンが理解できるyaml構成ブロックである必要があります。
mongodb__conf_extra: |
net.ipv6: false
systemLog:
verbosity: 2
logRotate: reopen
依存関係
- なし
使用法
Ansible Galaxyのrequirements.ymlを使用します。
# enixのmongodb
- src: enix.mongodb
そして、プレイブックのロールに追加します:
- hosts: all
roles:
- role: enix.mongodb
mongodb__version: 4.2
mongodb__packages: ["mongodb-org-server", "mongodb-org-tools"]
このロールをプレイブックとして使用することもできます。プロビジョニングするホストを選択するように求められ、--extra-vars
を使用してプレイをさらに構成できます。
$ ansible-playbook -i inventory --extra-vars='{...}' main.yml
今後の予定
- クラスタリングのサポートを追加
- シャーディングのサポートを追加
- ユーザーと資格情報の管理を可能にする
変更履歴
1.2.0
Debian Busterのサポートを追加
新しいMongoDBバージョン(4.2, 4.4)のサポートを追加
1.1.0
ローカルgnupgキーのサポートを追加
1.0.0
初版。
ライセンス
GPLv2
著者情報
Laurent Corbes laurent.corbes@enix.fr - http://www.enix.io