ユーザーとして Opsgenie の利用を開始する
プロフィールの設定、Opsgenie からの通知の取得、オンコール スケジュールの表示に関するすべての方法を説明します。
Opsgenie の Icinga プラグインは、Icinga との双方向の統合をサポートしています。この統合は Opsgenie の Icinga 固有の実行可能ファイルと OEC ユーティリティを活用して、リッチ アラート (ステータス、アラート ヒストグラム、トレンドなど) を自動で作成して Icinga と Opsgenie 間でアラートのステータスを同期します。
Icinga 統合プラグインは、Opsgenie の全機能を活用して Icinga との双方向の統合を提供します。以下の手順では、Icinga 統合プラグインを使用して、Opsgenie と Icinga を統合する方法を説明します。ご使用の Linux ディストリビューションと Icinga の設定によっては、これらの手順に若干の変更が必要になる場合があることに注意してください。
インストール パッケージは、以下のシステムをサポートしています。
RedHat ベースの Linux ディストリビューション
Debian ベースの Linux ディストリビューション
Opsgenie Edge Connector (OEC) は Icinga 統合の送信認証を設定するための必須条件です。OEC と Icinga のスクリプトを組み合わせて使用して、Icinga のアラートを更新できます。これによって、独自のスクリプトをデプロイしたり、提供されたスクリプトを変更したり、カスタマイズしたアクションを Icinga 上で実行したりできます。Icinga パッケージの最新バージョンは、このリポジトリからダウンロードしてください。
rpm -i opsgenie-icinga-<your_version>.rpm
rpm をアップグレードする前に、設定ファイルをバックアップします。
rpm パッケージは、アップグレード中に既存の設定を上書きしません。新しい既定の設定ファイルは integration.conf.rpmnew として保存されます。バージョン 201X-XX-XX から 2.X.X にアップグレードするには、--force パラメーターを追加します。例: rpm -U --force opsgenie-icinga-<your_version>.rpm
rpm アップグレードの設定ファイル処理に関する詳細をご確認ください。
次のコマンドを実行します。
dpkg -i opsgenie-icinga-<your_version>.deb
Opsgenie の Free プランまたは Essentials プランを使用している、または Jira Service Management の Standard プランで Opsgenie を使用している場合は、チーム ダッシュボードからのみこの統合を追加できます。このプランでは、[設定] の [統合] ページが利用できません。
[チーム] に移動して自分のチームを選択します。
左側のナビゲーションで [統合] を選択し、[統合を追加] を選択します。
統合をチーム ダッシュボードから追加すると、そのチーム統合の所有者になります。Opsgenie では、この統合を通じて受信したアラートはそのチームのみに割り当てられます。このセクションの残りの手順に従って、統合を設定してください。
Opsgenie に Icinga 統合を追加するには:
[設定] > [統合] の順に移動します。
[統合を追加] を選択します。
検索を実行して「Icinga」を選択します。
次の画面で、統合の名前を入力します。
オプション: 特定のチームが統合からのアラートを受信するようにする場合は、[Assignee team (担当者チーム)] のチームを選択します。
[続行] を選択します。
この時点で、統合が保存されます。
[統合を設定する手順] セクションを展開し、API キーをコピーします。
このキーは、後で Icinga で統合を設定するときに使用します。Icinga はこのキーを使用して、Opsgenie に対する認証を実行し、Icinga アラートの処理に使用する統合を指定します。
[統合をオンにする] を選択します。
統合のために作成したルールは、統合をオンにした場合にのみ機能します。
プラグインは golang-executable ファイル (send2opsgenie としてプラグインに含まれる) を使用して、Opsgenie でアラートを作成、承認、クローズします。Opsgenie でアラートを作成、承認、クローズするために、イベントでこのファイルを実行するように Icinga を設定します。次の表は必須のパラメーターとステータスを一覧にしたものです。
設定パラメーター | 説明 | 入力必須 | 場所 |
---|---|---|---|
API キー | 上記で作成した Icinga インテグレーションから API キーをコピーします。send2opsgenie はこのキーを使用して Opsgenie への認証を行います。API キーは、アラートの処理に使用する必要がある適切なインテグレーション設定を識別するためにも用いられます。 | はい | /home/opsgenie/oec/conf/config.json |
ベース URL | Opsgenie を別のドメイン (例: EU、サンドボックス) から使用している場合尾、この [configuration.Opsgenie Icinga integration, Advanced Settings] ページを更新する必要があります。 | 任意 | /home/opsgenie/oec/conf/config.json |
responders | responders フィールドは、Icinga アラートを通知する必要があるチームを指定するために使用されます。このフィールドは、既定のチーム フィールド値を設定するために使用されます。Opsgenie Icinga インテグレーションの [詳細設定] ページで、異なるアラートを異なるチームにルーティングするように変更します。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
tags | [Tags] フィールドは、Opsgenie で作成されたアラートのタグを指定するために使用されます。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
icinga_server | icinga_server フィールドは Opsgenie で Icinga サーバーを識別するために使用されて、複数の Icinga サーバーがある場合にのみ必要です。このフィールドは、Opsgenie がユーザーが実行したアクション (承認、クローズなど) を OEC 経由で Icinga サーバーに返送するときに使用されます。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
logPath | ログ ファイルの完全なパスを指定します。(既定値は /var/log/opsgenie/isend2opsgenie.log)。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
icinga2opsgenie.http.proxy.enabled | icinga2opsgenie.http.proxy.enabled フィールドは、外部プロキシの設定を有効/無効化します。既定値は false です。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
icinga2opsgenie.http.proxy.host | これは、プロキシのホストです。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
icinga2opsgenie.http.proxy.port | プロキシのポートです。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
icinga2opsgenie.http.proxy.scheme | これは、プロキシ接続プロトコルです。プロキシ サーバーによって、http または https になる場合があります。既定値は http です。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
icinga2opsgenie.http.proxy.username | プロキシ認証ユーザー名です。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
icinga2opsgenie.http.proxy.password | これは、プロキシ認証パスワードです。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
golang 実行可能ファイルを次の 3 つの方法のいずれかで設定します。
/home/opsgenie/oec/conf/integration.conf ファイルから設定します。これによって、過去にスクリプトで行った設定がすべて上書きされます。
このセクションの前半で説明したように、Icinga で作成された通知のコマンドにフラグを入力して設定します。apiKey には -apiKey フラグを使用します。
追加のカスタム引数を送信するには、フラグの後に追加します。例: customArgName1 customArgValue1 customArgName2 customArgValue2。入力フィールドの必要な場所に {{_payload.customArgName}} を追加することで、カスタム引数を解析できます。生のパラメーターの使用方法に関する詳細をご確認ください。
send2opsgenie.go スクリプトの apiKey を設定します。スクリプトを再度ビルドして、新しい実行可能ファイルを /home/opsgenie/oec/scripts ディレクトリに配置します。send2opsgenie.go の場所と go スクリプトのビルド方法の詳細については、この記事の「send2opsgenie のソースと再コンパイル」セクションを参照してください。
1. /home/opsgenie/oec/opsgenie-icinga/opsgenie.cfg ファイル (連絡先、そのホスト、サービス通知コマンドを設定します) を /usr/local/icinga/etc/objects ディレクトリにコピーします。
シェル
1
cp /home/opsgenie/oec/opsgenie-icinga/opsgenie.cfg /usr/local/icinga/etc/objects
2. メインの Icinga 設定ファイル (ICINGA_HOME/etc/icinga.cfg) に次の行を追加します。
シェル
1
2
3
...
cfg_file=/usr/local/icinga/etc/objects/opsgenie.cfg
...
ICINGA_HOME/etc/objects/contacts.cfg ファイル内の Icinga 設定のメイン連絡先グループに連絡先「opsgenie」を追加します。既定の設定である contacts.cfg を使用する場合は、「opsgenie」ユーザーを「admins」連絡先グループに追加します。
4. Icinga を再起動します。
特に問題がない場合は、Icinga で作成されたすべての通知について Opsgenie にアラートが表示されます。
これはオプションのステップです。
統合設定ページの [Icinga にアラート アクションを送信] チェックボックスを選択します。OEC と Icinga のスクリプトを組み合わせて使用して、Icinga のアラートを更新できます。これによって、独自のスクリプトをデプロイしたり、提供されたスクリプトを変更したり、カスタマイズしたアクションを Icinga 上で実行したりできます。
Icinga でアクションを実行するために、OEC は設定ファイル config.json (/home/opsgenie/oec/conf/oec-config.json にあります) から設定パラメーターを取得します。
alert_histogram_image_url: OEC は、この URL を使用して Icinga からヒストグラム画像を取得します。ローカル ホストを Icinga サーバー アドレスと置き換える必要があります。
trends_image_url: OEC は、この URL を使用して Icinga からトレンド画像を取得します。ローカル ホストを Icinga サーバー アドレスと置き換える必要があります。
command_url: アラートが承認された場合やコメントされた場合などに Icinga アラートを更新するための URL。
user: Icinga ヒストグラムとトレンド画像を取得するために Icinga Web サーバーを認証するユーザー名。
password: Icinga ヒストグラムとトレンド画像を取得するために Icinga Web サーバーを認証するパスワード。
ダウンロードしたパッケージには、OEC ユーティリティ (/usr/local/bin にあります) と、OEC が実行する必要のあるスクリプト (/home/opsgenie/oec/scripts にあります) が含まれています。設定後、OEC を必ず実行してください。OEC の実行に関する詳細をご確認ください。
Icinga 統合パッケージは SSL v1.0 をサポートしていません。Icinga サーバーで SSL v1.0 を使用している場合は、SSL サーバーをアップグレードしてください。
send2opsgenie 実行可能ファイルのソースは /usr/bin/ にあります。send2opsgenie.go 実行可能ファイルのソースは /home/opsgenie/oec/scripts にあります。なお、こちらのリポジトリでも入手できます。実行可能ファイルの動作を変更するには、send2opsgenie.go を編集して、go build send2opsgenie.go コマンドでビルドします。
go のインストールについては、http://golang.org/doc/install を参照してください。プラグインの実行ファイルは linux/386 システム用に構築されていることに注意してください。
統合が機能しない場合は、このセクションを確認して、規定のガイドラインに従ってください。
シェルから次のテスト コマンドを実行して、Opsgenie でアラートが作成されているかを確認します。
1
/home/opsgenie/oec/scripts/send2opsgenie -entityType=host -t=PROBLEM -hs=DOWN -hn=test_host
"Trace/breakpoint trap (トレース/ブレークポイント トラップ)" エラーが発生した場合は、send2opsgenie プラグインがサーバー ディストリビューションと互換性がありません。この記事の「send2opsgenie のソースと再コンパイル」セクションでの説明のとおり、特定のサーバー環境に従って send2opsgenie.go を再ビルドしてください。
アラートが Opsgenie で作成されている場合は、統合が正しく設定されています。この場合、Icinga が Opsgenie の連絡先にアラートを通知していないことが考えられます。Icinga アラートの通知ログを確認してください。
アラートが Opsgenie で作成されていない場合は、/var/log/oec/send2opsgenie.log にあるログを確認してください。
ログ ファイルで以下のエラーがないか探します。
「RestException[Could not authenticate.]」がログにある場合は、Opsgenie が API キーを識別できなかったことを意味します。この記事の「Icinga で Opsgenie プラグインを設定する」セクションに記載されているステップに従って、API キーが正しく設定されているか確認してください。
問題がわからない場合は、プラグインのログ レベルをデバッグに設定して、もう一度お試しください。アトラシアンにお問い合わせのうえ、ログを共有してください。
/var/log/oec/send2opsgenie.log ファイル、またはログがない場合は、次をご確認ください。
Icinga ユーザーが /var/log/oec ディレクトリに書き込む権限を持っているかどうか、ご確認ください。インストール パッケージによって自動で実行されます。問題が発生した場合は、次のコマンドを実行してください。
chown -R icinga:opsgenie /var/log/oec
/opt/icinga/log/zeneventd.log の Icinga サーバーのログを確認します。send2opsgenie に関するエラー ログがあるかどうか確認してください。必要に応じてログを添えて、アトラシアンにお問い合わせください。
send2opsgenie プラグインのログ レベルをデバッグに設定しましょう。/home/opsgenie/oec/conf/integration.conf ファイルを開いて、send2opsgenie.logger=warning 行を icinga2opsgenie.logger=debug に変更します。
アクティビティ ログを確認します。
「Posted [Acknowledge] action to Icinga..」がログにない場合は、Opsgenie が「承認」アクションを Icinga に送信しなかったことを意味します。統合設定を確認してください。アラート アクションと一致していない可能性があります。
「Posted [Acknowledge] action to Icinga..」のみがログに記録されており、それ以降に関連するログがない場合は、OEC に接続の問題が発生している可能性があります。ログを確認してください。
rpm パッケージのインストール時に、そのパッケージが旧バージョンであることが判明した場合は、代わりに rpm -i opsgenie-icinga-1.0.4-rpm-x86-64.rpm --nodeps をご利用ください。
「インストール済みです」というエラーが表示された場合は、代わりに rpm -i opsgenie-icinga-1.0.4-rpm-x86-64.rpm --force をご利用ください。
この内容はお役に立ちましたか?