rockandska.influxdb
ansible-role-influxdb
InfluxDBのバイナリからインストール・設定するためのAnsibleロールです。
Ansible Galaxyで入手可能です。
Ansible Galaxy:
リモートホストの要件
すべてのディストリビューション
- logrotate
- python requests >= 1.0.0(このロールでユーザー、データベース、保持ポリシーの管理を使用する場合)
- python influxdb >= 0.9.0(このロールでユーザー、データベース、保持ポリシーの管理を使用する場合)
Debian / Ubuntu
- apt-transport-https
- gpg-agent
- ca-certificates
CentOS / RedHat
- gnupg2
ロール変数
デフォルトの変数は defaults/main.yml
にあります。
---
###########
# インストール #
###########
influxdb_version: 1.7.4
influxdb_rpm_url: "https://dl.influxdata.com/influxdb/releases/influxdb-{{ influxdb_version }}.x86_64.rpm"
influxdb_rpm_sha256: "93caa49159e76b3338abc191c85d46d134ac67697a0c7f874c937baa38dd6a5e"
influxdb_rpm_dest_path: "/usr/src"
influxdb_deb_url: "https://dl.influxdata.com/influxdb/releases/influxdb_{{ influxdb_version }}_amd64.deb"
influxdb_deb_sha256: "5488bd8889de7d45aa09cdccc845156e2d59442871ad6899d64d797e42f2888b"
influxdb_deb_dest_path: "/usr/src"
#################
# カスタム設定 #
#################
influxdb_vars_files: []
influxdb_config_tpl: etc/influxdb/influxdb.conf.j2
influxdb_config: {}
influxdb_systemd_override_tpl: etc/systemd/system/influxdb.service.d/override.conf.j2
influxdb_systemd_override: {}
influxdb_custom_logrotate_tpl: etc/logrotate.d/influxdb.j2
influxdb_custom_logrotate:
############
# APIユーザー #
############
influxdb_management_hostname:
influxdb_management_port:
influxdb_management_validate_certs:
influxdb_management_proxies:
influxdb_management_login_username:
influxdb_management_login_password:
influxdb_management_retries:
influxdb_management_ssl:
influxdb_management_timeout:
influxdb_management_udp_port:
influxdb_management_use_udp:
#########
# ユーザー #
#########
influxdb_users_to_create: []
influxdb_users_to_delete: []
#############
# データベース #
#############
influxdb_databases_to_create: []
influxdb_databases_to_delete: []
############
# ポリシー #
############
influxdb_retention_policies_to_create: []
#########
# デバッグ #
#########
influxdb_hide_log: true
詳細
influxdb_version
- https://dl.influxdata.com/influxdb/releases で利用可能なInfluxDBのバージョンを指定します。
- 古いバージョンはダウンロードページには表示されませんが、直接リンクから入手できます。
influxdb_rpm_url
- RPMパッケージのURL
influxdb_rpm_sha256
- パッケージの整合性を確認するためのSHA256
- 最新リリースのInfluxDBダウンロードページで入手可能です。
influxdb_rpm_dest_path
- RPMパッケージをダウンロードするパス
influxdb_deb_url
- DEBパッケージのURL
influxdb_deb_sha256
- パッケージの整合性を確認するためのSHA256
- 最新リリースのInfluxDBダウンロードページで入手可能です。
influxdb_deb_dest_path
- DEBパッケージをダウンロードするパス
influxdb_vars_files
- 必要に応じてデフォルトの変数をオーバーライドするために使用される変数ファイルのリスト
- 相対パスを使用する場合、これらのファイルをプレイブックの
vars
ディレクトリの隣に置いてください。 - 例:
influxdb_vars_files: - settings.yml
influxdb_config_tpl
- InfluxDB設定テンプレートのパス
- 独自のテンプレートを使用する場合
- プレイブックの隣にある
templates
ディレクトリにテンプレートを追加 - デフォルトのパスとは異なるパスを使用
- プレイブックの隣にある
influxdb_config
適用するカスタムInfluxDB設定を表す辞書
特殊なキーは二重引用符で囲みます(例: "[meta]")
カスタム設定を使用する場合、influxdb/#12140 により適用する必要がある最小限のセクションがあります。
例:
influxdb_config: reporting-disabled: true "[meta]": dir: /var/lib/influxdb/meta "[data]": dir: /var/lib/influxdb/data wal-dir: /var/lib/influxdb/wal "[http]": auth-enabled: true "[[graphite]]": enable: true batch-size: 5000
influxdb_systemd_override_tpl
- InfluxDB systemdオーバーライドテンプレートのパス
influxdb_systemd_override
- systemdオーバーライド設定を表す辞書
- 1つ目のレベルはiniセクションに使用されます。
- 2つ目のレベルはキー/値に使用されます。
- 例:
influxdb_systemd_override: Service: LimitNOFILE: 30000
influxdb_custom_logrotate_tpl
- InfluxDBカスタムlogrotateテンプレートのパス
influxdb_custom_logrotate
- InfluxDBログ用のログローテートオプションのマルチライン文字列
- デフォルトの設定を上書きします。
- 注意:カスタムログローテート設定でデフォルトの設定を置き換えると、変数を解除しても設定が残ります。
その他の変数は省略します。
例のプレイブック
- hosts: influxdb
roles:
- rockandska.influxdb
ローカルテスト
ローカルでロールをテストする最適な方法は、Dockerとmolecule(v2.x)を使用することです。システムにDockerをインストールする必要があります。システムに適したDockerパッケージの「はじめに」を参照してください。 複数のAnsibleバージョンでのテストを簡単に行うために、toxを使用しています。toxをインストールするには、次のコマンドを実行します。
$ sudo pip install tox
# または
$ pip install --user tox
すべてのAnsibleバージョンでテストを実行するには(警告:少し時間がかかる場合があります)
$ tox
カスタム環境でカスタムmoleculeコマンドを実行するには、デフォルトのテストシナリオを使用します。
$ tox -e py27-ansible25 -- molecule test -s default
moleculeの詳細については、ドキュメントを参照してください。
リモートDockerホストでテストを実行したい場合は、toxテストの実行前に DOCKER_HOST
変数を指定してください。
ライセンス
BSD