• 製品
  • 使用を開始する
  • 関連ドキュメント
  • リソース

Zabbix と統合する

この記事では、Jira Service Management Cloud の一部のお客様に段階的に展開されている、Jira Service Management でネイティブに利用できる新しいアラート機能を取り上げています。ご利用のサイトにはまだ表示されていないか、利用できない可能性があります。

Zabbix のロゴ

統合でできるようになること

統合では、Jira Service ManagementZabbix 固有の実行可能ファイルと Jira Edge Connector (JEC) ユーティリティを活用することで、リッチなアラートを自動で作成し、ZabbixJira Service Management の間でアラート ステータスを同期します。Zabbix のアラームは Jira Service Management でアラートが承認されると自動的に承認されます。Jira Service ManagementZabbix プラグインは、Jira Service Management に搭載されている高度な機能を Zabbix で利用できるようになるため、統合方法として推奨されています。

統合による機能

ユーザーが Jira Service Management アプリを使用してモバイル デバイスからアラートを承認すると、そのアラートは Zabbix で承認されます。

統合をセットアップする

Zabbix は双方向の統合です。次の手順でセットアップを行います。

  • Jira Service ManagementZabbix 統合を追加する

  • Zabbix で統合を設定する

Zabbix プラグインをインストールする

以下は、Jira Service ManagementZabbix 統合プラグインを使用して Jira Service ManagementZabbix を統合するための手順です。ご使用の Linux ディストリビューションと Zabbix 設定によっては、これらの手順に若干の変更が必要になる場合があることに注意してください。

前提条件

Zabbix プラグイン パッケージの最新バージョンをダウンロードします。プラグインのダウンロードとインストールの方法はこちらをご確認ください。

パッケージは以下のシステムに対応しています。

  • RedHat ベースの Linux ディストリビューション

  • Debian ベースの Linux ディストリビューション

RedHat ベースのディストリビューションの場合

次のコマンドを実行します。rpm -i jsm-zabbix-<your_version>.rpm

アップグレード中、rpm パッケージは既存の設定を上書きしません。新しい既定の設定ファイルは jsm-integration.conf.rpmnew として保存されます。rpm アップグレード設定ファイルの処理についてはこちらをご確認ください。バージョン 201X-XX-XX から 2.X.X にアップデートするには、--force パラメーターを追加します。次に例を示します。

rpm -U --force jsm-integration-<your_version>.rpm

アップデートする前に設定ファイルをバックアップしてください。

Debian ベースのディストリビューションの場合

次のコマンドを実行します。 dpkg -i jsm-zabbix-<your_version>.deb

Zabbix 統合を追加する

Jira Service Management の Free プランまたは Standard プランを使用している場合は、この統合はチームの運用ページからのみ追加できます。Settings (歯車のアイコン) > Products ([Jira 設定] の下) > OPERATIONS からこの機能にアクセスするには、Premium プランまたは Enterprise プランが必要です。

統合をチームの運用ページから追加すると、そのチームが統合の所有者になります。つまり、Jira Service Management は、この統合を通じて受信したアラートをチームにのみ割り当てます。

Jira Service ManagementZabbix 統合を追加する方法は以下のとおりです。

  1. チームの運用ページに移動します。

  2. 左側のナビゲーション パネルで、[統合]、[統合を追加] の順に選択します。

  3. 検索を実行して「Zabbix」を選択します。

  4. 次の画面で、統合の名前を入力します。

  5. オプション: 特定のチームが統合からのアラートを受信するようにする場合は、[Assignee team (担当者チーム)] のチームを選択します。

  6. [続行] を選択します。
    この時点で、統合が保存されます。

  7. [統合をオンにする] を選択します。
    統合のために作成したルールは、統合をオンにした場合にのみ機能します。

Zabbix でプラグインを設定する (Zabbix バージョン 3.0 以下)

プラグインでは golang 実行可能ファイル (send2jsm としてプラグインに含まれています) を使用して、Jira Service Management でアラートを作成、承認、クローズします。Jira Service Management でアラートを作成、承認、クローズするために、イベントでこのファイルを実行するように Zabbix を設定します。Zabbix フロントエンドを介してアクションを設定します。これは、イベントがトリガーされたときに /home/jsm/jec/jsm-zabbix/send2jsm を実行します。

  1. [アクション] で [Recovery Message (リカバリ メッセージ)] チェックボックスをオンにし、アラートが Zabbix でクローズされたら Jira Service Management でそのアラートがクローズされるようにします。

  2. [Operations (オペレーション)] で、Zabbix サーバー上で実行するリモート コマンドを定義します。*/home/jsm/jec/jsm-zabbix/actionCommand.txt のコマンドを [Command (コマンド)] に貼り付けます。

  3. [Add (追加)]、[Save (保存)] の順に選択します。

send2jsm を動作させるには、いくつかの設定を行う必要があります。以下の表は、パラメーター、パラメーターが配置されている場所、およびそれらの入力が必須であるかどうかをまとめたものです。

設定パラメーター

説明

入力必須

場所

API キー

さきほど作成した Zabbix 統合から API キーをコピーします。send2jsm では、このキーを使用して Jira Service Management への認証を行います。アラートの処理に使用される適切な統合設定の識別にも API キーが使用されます。

はい

/home/jsm/jec/conf/config.json

ベース URL

Jira Service Management を別のドメイン (例: EU、サンドボックス) から使用している場合はこの設定を更新する必要があります。Jira Service ManagementZabbix 統合、詳細設定ページ。

任意

/home/jsm/jec/conf/config.json

responders

responders フィールドは、Zabbix アラートを通知する必要がある対応者を指定するために使用されます。このフィールドは、既定の対応者フィールド値を設定するために使用されます。Jira Service ManagementZabbix 統合の [詳細設定] ページで、異なるアラートを異なるルーティングするよう変更できます。

任意

/home/jsm/jec/conf/jsm-integration.conf

tags

tags フィールドは、Jira Service Management で作成されたアラートのタグを指定するために使用されます。

任意

/home/jsm/jec/conf/jsm-integration.conf

logPath

ログ ファイルの完全なパスを指定します (既定値は /var/log/jsm/send2jsm.log)。

任意

/home/jsm/jec/conf/jsm-integration.conf

zabbix2jsm.http.proxy.enabled

zabbix2jsm.http.proxy.enabled フィールドは外部プロキシの設定を有効または無効にするためのものです。既定値は false です。

任意

/home/jsm/jec/conf/jsm-integration.conf

zabbix2jsm.http.proxy.host

これは、プロキシのホストです。

任意

/home/jsm/jec/conf/jsm-integration.conf

zabbix2jsm.http.proxy.port

プロキシのポートです。

任意

/home/jsm/jec/conf/jsm-integration.conf

zabbix2jsm.http.proxy.scheme

これは、プロキシ接続プロトコルです。プロキシ サーバーによって、http または https になる場合があります。既定値は http です。

任意

/home/jsm/jec/conf/jsm-integration.conf

zabbix2jsm.http.proxy.username

プロキシ認証ユーザー名です。

任意

/home/jsm/jec/conf/jsm-integration.conf

zabbix2jsm.http.proxy.password

これは、プロキシ認証パスワードです。

任意

/home/jsm/jec/conf/jsm-integration.conf

特殊文字 (triggerUrl、ipAddress、date、time の各フィールドを除く) は、Jira Service Management でデータが処理される前に Zabbix の受信ペイロードから削除されます。

Zabbix でプラグインを設定する (Zabbix バージョン 3.2 以上)

プラグインでは golang 実行可能ファイル (send2jsm としてプラグインに含まれています) を使用して、Jira Service Management でアラートを作成、承認、クローズします。Jira Service Management でアラートを作成、承認、クローズするために、イベントでこのファイルを実行するように Zabbix を設定します。

Zabbix フロントエンドを介してアクションを設定します。これは、イベントがトリガーされたときに */home/jsm/jec/jsm-zabbix/send2jsm を実行します。

  1. [設定] > [アクション]、[Create New Action (新規アクションの作成)] の順に選択します。

  2. [Actions (アクション)] で [Operations (実行内容)] を選択します。

  3. [Operations (オペレーション)] で、Zabbix サーバー上で実行するリモート コマンドを定義します。

  4. */home/jsm/jec/jsm-zabbix/actionCommand.txt のコマンドを [Command (コマンド)] に貼り付けます。

  5. [Actions (アクション)] で [Recovery Operations (復旧時の実行内容)] を選択します。

  6. [Recovery Operations (復旧時の実行内容)] で、Zabbix サーバー上で実行するリモート コマンドを定義します。

  7. */home/jsm/jec/jsm-zabbix/actionCommand.txt のコマンドを [Command (コマンド)] に貼り付けます。

  8. [Add (追加)]、[Save (保存)] の順に選択します。

send2jsm を動作させるには、いくつかの追加設定を行います。以下の表は、パラメーター、パラメーターが配置されている場所、およびそれらの入力が必須であるかどうかをまとめたものです。

設定パラメーター

説明

入力必須

場所

API キー

さきほど作成した Zabbix 統合から API キーをコピーします。send2jsm では、このキーを使用して Jira Service Management への認証を行います。アラートの処理に使用される適切な統合設定の識別にも API キーが使用されます。

はい

/home/jsm/jec/conf/config.json

ベース URL

Jira Service Management を別のドメイン (例: EU、サンドボックス) から使用している場合はこの設定を更新する必要があります。Jira Service Management の Zabbix 統合、詳細設定ページ。

任意

/home/jsm/jec/conf/config.json

responders

responders フィールドは、Zabbix アラートの通知先を指定するために使用されます。このフィールドは、既定の対応者フィールド値を設定するために使用されます。Jira Service ManagementZabbix 統合の [詳細設定] ページで、異なるユーザーとチームに異なるアラートをルーティングするように受信者を変更できます。受信者は、Jira Service Management から通知されるユーザー、グループ、エスカレーション、またはスケジュールに設定できます。統合で対応者を設定していない場合、このフィールドは必須です。統合で受信者を設定していない場合、このフィールドは必須です。

任意

/home/jsm/jec/conf/jsm-integration.conf

tags

tags フィールドは、Jira Service Management で作成されたアラートのタグを指定するために使用されます。

任意

/home/jsm/jec/conf/jsm-integration.conf

logPath

ログ ファイルの完全なパスを指定します (既定値は /var/log/jsm/send2jsm.log)。

任意

/home/jsm/jec/conf/jsm-integration.conf

zabbix2jsm.http.proxy.enabled

zabbix2jsm.http.proxy.enabled フィールドは外部プロキシの設定を有効または無効にするためのものです。既定値は false です。

任意

/home/jsm/jec/conf/jsm-integration.conf

zabbix2jsm.http.proxy.host

これは、プロキシのホストです。

任意

/home/jsm/jec/conf/jsm-integration.conf

zabbix2jsm.http.proxy.port

プロキシのポートです。

任意

/home/jsm/jec/conf/jsm-integration.conf

zabbix2jsm.http.proxy.scheme

これは、プロキシ接続プロトコルです。プロキシ サーバーによって、http または https になる場合があります。既定値は http です。

任意

/home/jsm/jec/conf/jsm-integration.conf

zabbix2jsm.http.proxy.username

プロキシ認証ユーザー名です。

任意

/home/jsm/jec/conf/jsm-integration.conf

zabbix2jsm.http.proxy.password

これは、プロキシ認証パスワードです。

任意

/home/jsm/jec/conf/jsm-integration.conf

特殊文字 (triggerUrl、ipAddress、date、time の各フィールドを除く) は、Jira Service Management でデータが処理される前に Zabbix の受信ペイロードから削除されます。

追加のカスタム引数を送信する場合は、customArgName1 customArgValue1 customArgName2 customArgValue2 のようにフラグの後に追加します。入力フィールドの必要な場所に {{_payload.customArgName}} を追加することで、カスタム引数を解析できます。

動的プロパティに関する詳細はこちらをご確認ください。

省略可: Zabbix 統合を設定する

Zabbix バージョン 4.0 以上を使用している場合は、actionExecutorForZabbix4.py スクリプトを使用してください。アクションによってこのスクリプトもトリガーされるように設定ファイルを更新してください。

JEC と Zabbix スクリプトを使用して、Zabbix でアラートを更新します。これによって、独自のスクリプトや機能をデプロイして提供された機能を変更し、カスタマイズしたアクションを Zabbix 上で実行できます。Zabbix でアクションを実行できるようにするために、JEC では設定ファイルから設定パラメーターを取得します。設定ファイルは /home/jsm/jec/conf/config.json にあります。

設定パラメーター

 

場所

command_url

Zabbix アラートを承認する Zabbix API エンドポイント。

/home/jsm/jec/conf/config.json

ユーザー

JEC で Zabbix への認証に使用するユーザー名。

/home/jsm/jec/conf/config.json

パスワード

JEC で Zabbix への認証に使用するパスワード。

/home/jsm/jec/conf/config.json

ダウンロードしたパッケージには、/usr/local/bin にある JEC ユーティリティと、/home/jsm/jec/scripts にある JEC によって実行する必要があるスクリプトも含まれています。設定したら JEC を実行してください。JEC の実行方法についてはこちらをご確認ください。

Zabbix 統合パッケージは SSL v1.0 に対応していません。Zabbix サーバーで SSL v1.0 を使用している場合は SSL サーバーをアップグレードしてください。


よくある質問とトラブルシューティング

統合が機能しない場合は、このセクションを確認して、規定のガイドラインに従ってください。

1. Jira Service Management で Zabbix アラートが作成されない

シェルから次のテスト コマンドを実行します。Jira Service Management でテスト アラートが作成されているかどうかを確認してください。

テキスト

1 /home/jsm/jec/jsm-zabbix/send2jsm -triggerName='zabbix test alert' -triggerStatus='PROBLEM'
  • "Trace/breakpoint trap (トレース/ブレークポイント トラップ)" エラーが発生した場合: sendjsm プラグインにサーバー ディストリビューションとの互換性がないことを意味します。以下の「send2jsm のソースと再コンパイル」セクションに従い、特定のサーバー環境に従って send2jsm.go を再構築します。

  • Jira Service Management でアラートが作成されている場合: 統合は正しくインストールされています。Zabbix でコマンドを実行していないことが問題である可能性があります。

  • そうでない場合: /var/log/jsm/send2jsm.log のログを確認してください。ログ ファイルから次のエラーを探します。

    • "RestException[Could not authenticate.]" エラーがログに表示されている場合、Jira Service ManagementAPI キーを識別できませんでした。この記事の「Zabbix における Jira Service Management プラグインの設定」にある説明に従って、API キーが正しく設定されているかどうかを確認してください。

    • 問題がはっきりしない場合は、プラグインのログ レベルをデバッグに設定してもう一度お試しいただき、お問い合わせフォームからログを送信してください。

  • /var/log/jsm/send2jsm.log ファイルがない場合、またはこのファイルにログがない場合は以下を確認してください。

    • まず、Zabbix ユーザーが /var/log/jsm ディレクトリへの書き込み権限を持っていることを確認します。これは、インストール パッケージによって自動で実行されます。問題が発生した場合は chown -R zabbix:jsm /var/log/jsm. を実行します。

    • 次に、/var/log/zabbix/zabbix_server.logZabbix サーバーのログを確認します。send2jsm に関するエラー ログがあるかを確認して、それらを添えてお問い合わせください。

send2jsm プラグインのログレベルを DEBUG に設定する

行 zabbix2jsm.logger=warning を zabbix2jsm.logger=debug に変更します (/home/jsm/jec/conf/jsm-integration.conf ファイル内)。

2. Jira Service Management でアラートを承認しても Zabbix アラームが承認されない

アラート ログを確認します。

  • 「Posted [Acknowledge] action to Zabbix..」がログに含まれていない場合、Jira Service Management が承認アクションを Zabbix に送信しなかったことを意味します。統合設定を確認してください。アラート アクションと一致していない可能性があります。

  • 「Posted [Acknowledge] action to Zabbix..」のみがログに記録されており、それ以降関連ログがない場合、JEC に接続の問題が発生している可能性があります。ログを確認してください。

3. Zabbix RPM パッケージを開けません

Zabbix の rpm パッケージのインストール中に次のエラーが表示される場合:

テキスト

1 2 3 zabbix is obsoleted by (installed) zabbix-server-pgsql-4.0.13-1.el7.x86_64 zabbix is obsoleted by (installed) zabbix-agent-4.0.13-1.el7.x86_64 zabbix is obsoleted by (installed) zabbix-java-gateway-4.0.13-1.el7.x86_64

代わりに "rpm -i jsm-zabbix-1.0.4-rpm-x86-64.rpm --nodeps" を使用します。"is already installed (インストール済み)" エラーが表示された場合は、代わりに "rpm -i jsm-zabbix-1.0.4-rpm-x86-64.rpm --force" を使用してください。

send2jsm のソースと再コンパイル

実行可能ファイル send2jsm と send2jsm.go のソースは /home/jsm/jec/jsm-zabbix の下にあり、Jira Service Managment 統合用の GitHub リポジトリにもあります。実行可能ファイルの動作を変更するには、send2jsm.go を編集し、以下を使用してビルドします。

go build send2jsm.go

go のインストール方法についてはこちらをご確認ください。プラグインの実行可能ファイルは linux/386 システム用に構築されていることに注意してください。

 

その他のヘルプ