dorancemc.ansible_nagioscore
ナギオスコア
ナギオスコアをデプロイするための役割
要件
なし
役割変数
オブジェクトはyamlファイルで定義され、テンプレートから設定ファイルに変換されます。
変数の詳細はdefault/mainフォルダで確認できます。
オペレーティングシステムごとに定義された変数はvars/フォルダにあります。
vars.yamlファイルのデフォルト値を置き換え、このファイルを暗号化してください。
変数データを修正するには、mainフォルダ内のnagiosフォルダをローカルインベントリフォルダにコピーしてください。
できればgroup_vars/またはhost_vars/フォルダにコピーします。
- ホストとサービス
ホストとサービスは、1つの変数で定義することも、ファイルごとに定義することも可能です。
localhost.yamlには新しいホストを定義する例があります。
ファイル/files/nagiosフォルダを好みの場所にコピーしてください。
ホストごとにホストとサービスを定義するファイルを作成できます。フォルダを作成し、
ファイルのパスを示すように変数を更新します。# nagios_hosts_path: inventory/nagios_hosts
インベントリフォルダに次のようなファイルを作成します:
_host:
host_name: hostname #必須
address: 192.168.0.1 #定義されていない場合、名前で置き換えられます
alias: サーバーの説明
use: テンプレート #定義されていない場合、nagios_host_template_default変数がデフォルトテンプレートです
_services:
servicename: servicecommand!arguments # 'nagios_service_template_default'をサービステンプレートとして定義
servicename-other:
use: service_template
check_command: servicecommand!arguments!arguments #構文: <command_name>!$ARG1$!$ARG2$
#コマンドとパラメータを確認するにはcommands.yamlファイルを参照してください
ホストグループやサービスグループはnagios_hostgroups
およびnagios_servicegroups
変数で定義し、
その中にホストやサービスが属するかどうかを追加できます。
- 連絡先
contacts.yamlを確認して、変数の詳細を取得してください。
ユーザーがhttpasswdファイルから削除されることを確認するには、連絡先定義にstate: absent
を追加します。
これにより、ユーザーは連絡先の定義とhtpasswdファイルから削除されます。
- 連絡先グループ
連絡先グループは通知を管理する最良の方法です。連絡先を作成し、グループに参加させます。
ホストに連絡先グループが定義されていると、すべてのサービスが同じ連絡先グループを継承します。
または、サービスごとに1つの連絡先グループを定義することも可能です。
依存関係
なし
例プレイブック
ナギオスグループを定義し、すべてのナギオスサーバーを含めます:
[nagios]
nagios.example.com ansible_host=192.168.243.220
次のように、プレイブックのデフォルトに含めます:
- hosts: nagios
roles:
- { role: dorancemc.ansible-nagioscore, tags: [ nagioscore ] }
この役割を適用するためにプレイブックを実行します:
ansible-playbook --limit ubuntu playbook.yaml --tags nagioscore
設定のみを適用したい場合は、nagios_config
タグを適用してください:
ansible-playbook --limit ubuntu playbook.yaml --tags nagios_config
Grafana
このデプロイはGrafanaとの統合をサポートしています。デプロイ後、Grafanaを手動でインストールし、
この指示に従って統合を完了します。
https://support.nagios.com/kb/article/nagios-core-using-grafana-with-pnp4nagios-803.html#Grafana_Config
または、Ansibleレシピを使用し、統合を完成させるためにこれらの変数を設定します。
https://github.com/cloudalchemy/ansible-grafana
grafana_plugins:
- sni-pnp-datasource
grafana_datasources:
- name: PNP
type: sni-pnp-datasource
isDefault: true
access: proxy
url: 'http://127.0.0.1/pnp4nagios/'
basicAuth: false
ライセンス
BSD
著者情報
ドランス・マルティネス @dorancemc
ansible-galaxy install dorancemc.ansible_nagioscore