ユーザーとして Opsgenie の利用を開始する
プロフィールの設定、Opsgenie からの通知の取得、オンコール スケジュールの表示に関するすべての方法を説明します。
Nagios でホストまたはサービスの状態がダウンすると、Opsgenie でアラートが作成されます。
新しいアラートを作成すると、Nagios の関連するヒストグラムとトレンド画像が自動的にアラートに添付されます。
Opsgenie アラートが承認されると、Nagios のアラートも自動的に承認されます。その逆も同様です。
Opsgenie アラートにノートが追加されると、Nagios のアラートも自動的にアップデートされます。その逆も同様です。
Lamp ベースの Nagios 統合ページから旧バージョンの Nagios 統合ドキュメントにアクセスします。
以下の手順では、Opsgenie の Nagios 統合プラグインを使用して、Opsgenie と Nagios を統合する方法を説明します。正確な Linux ディストリビューションと Nagios の設定に応じて、これらの指示を少し変更してください。
Lamp ベースの Nagios プラグインを使用している場合は、既存の設定をすべてバックアップしてください。古いプラグインをアンインストールし、新しいプラグインをインストールします。
提供されるパッケージは、以下のシステムをサポートしています。
Red Hat ベースの Linux ディストリビューション、REHL7 以上
Debian ベースの Linux ディストリビューション、Debian 8 (Jessie) 以上
OEC の最新バージョンをダウンロードする
Nagios パッケージの最新バージョンをダウンロードするには、oec-scripts リポジトリの readme ファイルを使用してください。
Red Hat ベースのディストリビューションの場合
次のコマンドを実行します。
1
rpm -i opsgenie-nagios-<your_version>.rpm
アップグレード時、rpm パッケージは既存の設定を上書きしません。これによって、新しい既定の設定ファイルが opsgenie-integration.conf.rpmnew として保存されます。rpm アップグレード設定ファイルの処理の詳細については、こちらをご参照ください。
バージョン 201X-XX-XX から 2.X.X にアップデートするには、--force パラメーターを追加しなくてはいけません。例:
rpm -U --force opsgenie-integration-<your_version>.rpm
アップデートする前に、設定ファイルをアップデートすることをお勧めします。
Debian ベースのディストリビューションの場合
次のコマンドを実行します。
dpkg -i opsgenie-nagios-<your_version>.deb
この統合はチーム ダッシュボードから追加可能
Opsgenie の Free または Essentials の各プランを使用している、または Jira Service Management の Standard プランで Opsgenie を使用している場合、このプランでは [設定] の [統合] ページが利用できないため、この統合はチーム ダッシュボードからのみ追加できます。
統合をチーム ダッシュボードから追加すると、そのチーム統合の所有者になります。Opsgenie では、この統合を通じて受信したアラートはそのチームのみに割り当てられます。
そのためには、次の手順に従います。
Teams からチーム ダッシュボードに移動します。
[統合] > [統合を追加] の順に選択します。
残りの手順に従って統合を完了します。
[設定] > [統合] の順に移動します。Nagios を検索して [追加] を選択します。
[応答者] フィールドを使用して、Nagios アラートの通知先を指定します。入力し始めるとオート コンプリートの候補が表示されます。
API キーをコピーします。
[Save Integration (統合の保存)] を選択します。
プラグインは golang-executable ファイル (send2opsgenie としてプラグインに含まれる) を使用して、Opsgenie でアラートを作成、確認、クローズします。Nagios は、イベントでこのファイルを実行して、Opsgenie でアラートを作成、認識、クローズするように設定する必要があります。
apiKey の設定は必須です。その他の構成パラメーターは既定に設定されていて、ほとんどの Nagios 実装で動作しますが、変更が必要な場合もあります。
設定パラメーター | 説明 | 入力必須 | 場所 |
---|---|---|---|
API キー | 上記で作成した Nagios 統合から API キーをコピーします。send2opsgenie はこのキーを使用して Opsgenie への認証を行います。API キーは、アラートの処理に使用する必要がある適切なインテグレーション構成を識別するためにも用いられます。 | はい | /home/opsgenie/oec/conf/config.json |
ベース URL | Opsgenie を別のドメインから使っている場合 (例: EU、サンドボックス) は、この設定をアップデートする必要があります。Opsgenie Nagios 統合の [詳細設定] ページ。 | 任意 | /home/opsgenie/oec/conf/config.json |
teams | Teams フィールドは、Nagios アラートを通知する必要があるチームを指定するために使用されます。このフィールドは、既定のチーム フィールド値を設定するために使用されます。これは、Opsgenie Nagios 統合の [詳細設定] ページで、異なるアラートを異なるチームにルーティングするように変更できます。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
tags | [Tags] フィールドは、Opsgenie で作成されたアラートのタグを指定するために使用されます。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
nagios_server | nagios_server フィールドは Opsgenie で Nagios サーバーを識別するために使用され、複数の Nagios サーバーがある場合にのみ必要です。このフィールドは、Opsgenie がユーザーが実行したアクション (承認、クローズなど) を OEC 経由で Nagios サーバーに送り返すときに使用されます。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
logPath | ログ ファイルの完全なパスを指定します。(既定値は /var/log/opsgenie/send2opsgenie.log)。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
nagios2opsgenie.http.proxy.enabled | nagios2opsgenie.http.proxy.enabled フィールドは、外部プロキシの設定を有効または無効にします。既定は false です。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
nagios2opsgenie.http.proxy.host | これは、プロキシのホストです。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
nagios2opsgenie.http.proxy.port | プロキシのポートです。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
nagios2opsgenie.http.proxy.scheme | これは、プロキシ接続プロトコルです。プロキシ サーバーによって、http または https になる場合があります。既定値は http です。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
nagios2opsgenie.http.proxy.username | プロキシ認証ユーザー名です。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
nagios2opsgenie.http.proxy.password | これは、プロキシ認証パスワードです。 | 任意 | /home/opsgenie/oec/conf/opsgenie-integration.conf |
golang 実行可能ファイルを設定するには、次の 3 つの方法があります。
1. conf ファイルからの設定: /home/opsgenie/oec/conf/opsgenie-integration.conf ファイルから設定します。conf ファイルから設定すると、スクリプトで行われた設定が上書きされます。
2. Golang フラグを使用して設定: opsgenie.cfg ファイルでコマンドにフラグを入力して、ファイルで設定できます。apiKey に -apiKey フラグを、nagios_server の名前に -ns フラグをそれぞれ使用します。複数の Nagios サーバーを持っていない場合、Nagios サーバーを定義する必要はありません。フラグを使用すると、上記の他のすべての設定方法が上書きされます。
cfg ファイルから apiKey を次のように設定します。
JSON
1
2
3
4
define command {
command_name notify-service-by-opsgenie
command_line /home/opsgenie/oec/opsgenie-nagios/send2opsgenie -apiKey="apiKey1" -entityType=service ...
}
apiKey を cfg ファイルに追加すると、opsgenie-integration.conf ファイル内の apiKey が上書きされます。
追加のカスタム引数を送信する場合は、customArgName1 customArgValue1 customArgName2 customArgValue2 のようにフラグの後に追加できます。
入力フィールドの必要な場所に {{_payload.customArgName}} を追加することで、カスタム引数を解析できます。
生のパラメーターの使用に関する詳細については、動的フィールドのドキュメントをご確認ください。
3. スクリプトからの設定: send2opsgenie.go スクリプトから apiKey と nagios_server を設定できます。このオプションを使用するには、スクリプトを再構築し、新しい実行可能ファイルを /home/opsgenie/oec/nagios ディレクトリに配置します。send2opsgenie.go の場所と go スクリプトの構築方法については、「ソース」セクションを参照してください。
/home/opsgenie/oec/opsgenie-nagios/opsgenie.cfg 設定ファイル (連絡先とそのホストおよびサービス通知コマンドを設定します) を /usr/local/nagios/etc/objects ディレクトリにコピーします。
cp /home/opsgenie/oec/opsgenie-nagios/opsgenie.cfg /usr/local/nagios/etc/objects)
メインの Nagios 設定ファイル (NAGIOS_HOME/etc/nagios.cfg) に次の行を追加します。
テキスト
1
2
3
...
cfg_file=/usr/local/nagios/etc/objects/opsgenie.cfg
...
3. NAGIOS_HOME/etc/objects/contacts.cfg ファイル内の Nagios 設定のメイン連絡先グループに連絡先「opsgenie」を追加します。デフォルト設定である contacts.cfg を使用する場合は、「opsgenie」ユーザーを「admins」連絡先グループに追加します。
4. Nagios を再起動してください。
問題がない場合は、Nagios で作成されたすべての通知について Opsgenie にアラートが表示されます。
この機能を使用するには、[Send Alert Actions To Nagios (アラート アクションを Nagios に送信する)] チェックボックスを、Opsgenie Nagios インテグレーションで有効にする必要があります。
Opsgenie の OEC と Nagios スクリプトを使用して、Nagios でアラートをアップデートします。これによって、独自のスクリプトや機能をデプロイして提供された機能を変更し、カスタマイズしたアクションを Nagios 上で実行できます。
Nagios でアクションを実行できるようにするには、OEC で設定ファイルから設定パラメーターを取得します。設定ファイルは、/home/opsgenie/oec/conf/config.json の下にあります。
alert_histogram_image_url — OEC は、この URL を使用して Nagios からヒストグラム画像を取得します。ローカル ホストを Nagios サーバー アドレスと置き換える必要があります。
trends_image_url — OEC は、この URL を使用して Nagios からトレンド画像を取得します。ローカル ホストを Nagios サーバー アドレスと置き換える必要があります。
command_url – アラートが承認された場合、コメントされた場合など、Nagios アラートをアップデートするための URLです。
ユーザー パスワード – Nagios ヒストグラムとトレンド画像を取得するために、Nagios web サーバーを認証する資格情報です。
また、ダウンロードしたパッケージには、/usr/local/bin にある OEC ユーティリティと、/home/opsgenie/oec/scripts にある OEC によって実行する必要があるスクリプトが含まれています。OEC の設定が完了したら、OEC を実行する必要があります。OEC を実行する方法に関する詳細については、OEC の実行のドキュメントをご参照ください。
OECを使用している場合、Nagiosで作成された通知ごとに、Opsgenie にホストまたはサービスの現在のステータス情報がリッチアラートに入力されます。
Nagios 統合パッケージは SSL v1.0 をサポートしていません。Nagios のサーバーで SSL v1.0 を使用している場合は、SSL サーバーをアップグレードすることをお勧めします。
インテグレーションをうまく機能させることができない場合は、問題が以下に記載されていないかどうかを確認し、当社のアドバイスに従ってください。
シェルから次のテスト コマンドを実行します。Opsgenie でアラートが作成されているかどうかを確認します。
/home/opsgenie/oec/opsgenie-nagios/send2opsgenie -entityType=host -t=PROBLEM -hs=DOWN -hn=test_host
"Trace/breakpoint trap (トレース / ブレークポイント トラップ)" エラーの場合: send2opsgenie プラグインがサーバー ディストリビューションと互換性がないことを意味します。以下の「ソースと send2opsgenie の再コンパイル」セクションに従い、特定のサーバー環境に従って send2opsgenie.go を再構築します。
Opsgenie でアラートが作成された場合: 統合が正しくインストールされていることを意味します。Nagios が Opsgenie のアラートの連絡先に通知していないことが問題である可能性があります。Nagios のアラート通知ログを確認してください。
問題がある場合は、/var/log/opsgenie/send2opsgenie.log でログを確認してください。ログファイルで以下のエラーを探します。
"RestException[Could not authenticate.] (認証できませんでした。)" がログに表示されたら、Opsgenie が API キーを識別できなかったということです。上記の「Nagios での Opsgenie プラグイン設定」で説明されているように、API キーが正しく設定されているかを確認します。
"Could not execute this action with apiKey of [Nagios] integration ([Nagios] 統合の apiKey でこのアクションを実行できませんでした)" がログに表示された場合、間違った統合パッケージをダウンロードしている可能性があります。Nagios またはその他のものではなく、Nagios 統合パッケージを必ずダウンロードしてください。
他の問題の場合は、プラグインのログ レベルをデバッグに設定してもう一度お試しいただき、お問い合わせフォームでログを送信してください。
/var/log/opsgenie/send2opsgenie.log ファイル、またはログがない場合は、以下を確認してください。
まず、Nagios ユーザーが /var/log/opsgenie ディレクトリへの書き込み権限を持っていることを確認します。インストール パッケージによって自動で実行されます。問題が発生した場合は、chown -R nagios:opsgenie /var/log/opsgenie を実行します。
Nagios サーバーのログを /usr/local/nagios/var/nagios.log で確認してください。send2opsgenie に関するエラー ログがあるかどうかを確認し、それらを添えてお問い合わせください。
send2opsgenie プラグインのログ レベルを DEBUG に設定:
nagios2opsgenie.logger=warning の行を nagios2opsgenie.logger=debug に変更します (*/home/opsgenie/oec/conf/opsgenie-integration.conf** ファイル内)。
まず、アラート ログを確認します。
"Posted [Acknowledge] action to Nagios.. (Nagios に [承認] アクションが投稿されました。)" ログが表示されない場合、これは、Opsgenie が承認アクションを Nagios に送信しなかったことを意味します。統合の設定を確認してください。アラート アクションと一致していない可能性があります。
"Posted [Acknowledge] action to Nagios.. (Nagios に [承認] アクションが投稿されました。)" ログのみが表示され、それ以降関連ログがない場合、OEC に接続の問題が発生している可能性があります。ログを確認してください。
rpm パッケージのインストール中にパッケージが廃止されたことを示すエラーが表示された場合は、代わりに "rpm -i opsgenie-nagios-1.0.4-rpm-x86-64.rpm --nodeps" を使用する必要があります。
"is already installed (インストール済み)" エラーが表示された場合は、代わりに "rpm -i opsgenie-nagios-1.0.4-rpm-x86-64.rpm --force" を使用してください。
スクリプトの実行中に "PermissionError: [Errno 13] Permission denied (権限は拒否されました): details_*" エラーが表示される場合は、スクリプトの添付方法の「file_name」変数にスクリプトのパスを追加します。
実行可能な send2opsgenie のソースは /home/opsgenie/oec/opsgenie-nagios にあり、send2opsgenie.go は //home/opsgenie/oec/opsgenie-nagios にあり、GitHub Opsgenie Integration リポジトリでも入手できます。実行可能ファイルの動作を変更するには、send2opsgenie.go を編集し、以下を使用して構築します。
go build send2opsgenie.go
http://golang.org/doc/install/source を参照してください。send2opsgenie は linux/amd64 システム向けに構築されていることに注意してください。
この内容はお役に立ちましたか?