kostiantyn-nemchenko.mongodb_exporter
Percona MongoDB ExporterのAnsibleロール
このAnsibleロールは、PerconaによるPrometheus MongoDB Exporterをインストールおよび設定します。
必要条件
このロールの範囲には自動TLS/SSL証明書の生成が含まれていません。MongoDBインスタンスとのTLS接続が有効になっていることを確認し、CA、クライアント証明書、およびクライアントキーに正しい値を指定してください。例:
mongodb_exporter_mongodb_tls_cert: dest: /etc/ssl/certs/mongodb_exporter.crt owner: root group: root mode: "0644" content: | -----BEGIN CERTIFICATE----- 証明書の 公開鍵の 内容 -----END CERTIFICATE-----
監視される全てのMongoDBインスタンスには、適切な組み込みロールが割り当てられたデータベースユーザーが必要です。詳細はこちらを参照してください。
このロールはルート権限が必要ですので、任意の方法で
become: true
を設定してください。例のプレイブックをご覧ください。
ロール変数
# インストールするExporterのバージョン
mongodb_exporter_version: 0.7.0
# ExporterリポジトリのURL
mongodb_exporter_base_url: https://github.com/percona/mongodb_exporter
# Exporterのバイナリアーキテクチャ
mongodb_exporter_arch: amd64
# ExporterのダウンロードURL
mongodb_exporter_release_url: "{{ mongodb_exporter_base_url }}/releases/download/v{{ mongodb_exporter_version }}/mongodb_exporter-{{ mongodb_exporter_version }}.{{ ansible_system |lower }}-{{ mongodb_exporter_arch }}.tar.gz"
# Exporterを実行するユーザー
mongodb_exporter_system_user: mongodb_exporter
# ユーザーを含むOSグループ
mongodb_exporter_system_groups: ['mongodb_exporter', 'ssl-cert']
# ロール/Exporterの依存関係として設定する追加のパッケージ
mongodb_exporter_system_packages:
- { name: ca-certificates, state: present }
- { name: tar, state: present }
# Exporterを起動する前に設定する環境変数のリスト
mongodb_exporter_env_vars: []
# プリセットの環境変数を含むファイルのパス
mongodb_exporter_env_file:
dest: /etc/systemd/system/mongodb_exporter.service.d/environment.conf
owner: root
group: root
mode: "0640"
# Exporterバイナリを含むディレクトリへのパス
mongodb_exporter_bin_dir:
dest: /usr/local/bin
owner: root
group: root
mode: "0755"
# ウェブインターフェースとテレメトリのリッスンアドレス
mongodb_exporter_web_listen_address: :9216
# メトリクスを公開するパス
mongodb_exporter_web_telemetry_path: /metrics
# データベースメトリクスの収集を有効にする
mongodb_exporter_collect_database: false
# コレクションメトリクスの収集を有効にする
mongodb_exporter_collect_collection: false
# テーブルトップメトリクスの収集を有効にする
mongodb_exporter_collect_topmetrics: false
# インデックス使用状況の統計の収集を有効にする
mongodb_exporter_collect_indexusage: false
# MongoDBのURI形式 [mongodb://][user:pass@]host1[:port1][,host2[:port2],...][/database][?options]
mongodb_exporter_mongodb_uri: mongodb://127.0.0.1:27017
# MongoサーバーとのTLS接続を有効にする
mongodb_exporter_mongodb_tls: false
# サーバー接続のために信頼されているCAを含むPEMファイルのパス
mongodb_exporter_mongodb_tls_ca:
dest: /etc/ssl/certs/mongodb_exporter_CA.pem
owner: root
group: root
mode: "0644"
content: ""
# 証明書(オプションで暗号化された秘密鍵もPEM形式で含む)のPEMファイルのパス
mongodb_exporter_mongodb_tls_cert:
dest: /etc/ssl/certs/mongodb_exporter.crt
owner: root
group: root
mode: "0644"
content: ""
# 暗号化された秘密鍵が含まれていない場合のPEMファイルのパス
mongodb_exporter_mongodb_tls_private_key:
dest: /etc/ssl/private/mongodb_exporter.key
owner: root
group: ssl-cert
mode: "0640"
content: ""
# サーバー接続のホスト名検証を無効にする
mongodb_exporter_mongodb_tls_disable_hostname_validation: false
# データベースへのプールされた最大接続数
mongodb_exporter_mongodb_max_connections: 1
# 応答しないソケットに対する待機時間
mongodb_exporter_mongodb_socket_timeout: 3s
# 使用可能なサーバーへの接続が確立できない場合の待機時間
mongodb_exporter_mongodb_sync_timeout: 1m
# ユーザーが作成されるデータベース
mongodb_exporter_authentification_database: ""
# 現在無視されています
mongodb_exporter_groups_enabled: ""
依存関係
なし
例のプレイブック
- hosts: mongodb
become: yes
roles:
- kostiantyn-nemchenko.mongodb_exporter
ライセンス
MIT
作者情報
Kostiantyn Nemchenko kostiantyn.nemchenko@gmail.com
プロジェクトについて
An Ansible role which installs and configures Percona MongoDB Exporter
インストール
ansible-galaxy install kostiantyn-nemchenko.mongodb_exporter
ライセンス
mit
ダウンロード
17.8k