TECH PLAY

Zabbix

イベント

マガジン

該当するコンテンツが見つかりませんでした

技術ブログ

はじめに 前回の記事では、Zabbix × Zendesk × AWS DevOps Agentを連携させ、アラート発生からRCA結果のチケット反映までを自動化する仕組みを構築しました。 しかし、前回の構成ではDevOps AgentがRCA(根本原因分析)を行う際、AWS側のデータ(CloudWatch、CloudTrail等)のみを参照しており、Zabbix側の詳細な監視データには直接アクセスできないという課題がありました。例えば、Zabbixが検知したCPU高負荷アラートに対して、DevOps AgentはCloudWatchメトリクスからCPU使用率を確認できますが、Zabbixが持つ…
こんにちは!SCSKの新沼です。 今回は、ZabbixとServiceNowの連携の検証として、Zabbixの障害通知をServiceNowのインシデントとして自動起票・クローズ連携する方法をご紹介します。 1. 検証の概要 今回の検証では、以下の2点をゴールとして実装・確認を行いました。 Zabbixで障害発生時に、Webhookで、ServiceNowにインシデントが自動起票される Zabbixで障害クローズ時に、Webhookで、ServiceNowの対象インシデントのステータスを解決済みに更新する 検証環境のアーキテクチャ セキュリティ要件を考慮し、セキュアな環境をAWS上で再現しています。 Zabbixサーバ:  AWS EC2上に構築し、外部からの直接アクセスが不可なプライベートサブネットに配置 通信経路: Zabbixからのアウトバウンド通信は、NAT Gatewayを経由してServiceNowへ送信 2. Zabbix → ServiceNow連携の仕組み Zabbixの標準機能である「Webhook(メディアタイプ)」を使用します。 Zabbixがアラートを検知すると、JavaScriptで記述されたWebhookスクリプトが実行され、ServiceNowのREST APIに対してJSON形式でPOSTリクエストを送信する仕組みです。 回復時も同様に、起票時と同じインシデントIDをキーにして、ServiceNow側のステータスを自動更新(解決済みに変更)します。 3. 実装手順(Zabbix側の設定) ServiceNow側でAPI接続用のユーザーが作成されている前提で、Zabbix側の設定を進めます。 Step1: メディアタイプ(Webhook)の設定 Zabbixの [通知] > [メディアタイプ] から、ServiceNow連携用のWebhookを作成します。 ※Zabbix7.0には、ServiceNowのメディアタイプが標準で用意されているため、本検証ではそちらを利用します。 主要なパラメータ設定: snow_url :  https://<あなたのSNOWインスタンス>.service-now.com/ snow_user : API接続用ユーザー名 snow_password : API接続用パスワード   【POINT】クローズ連携(ステータス変更)を実現するには Zabbix標準のWebhookテンプレートを使用するだけでインシデントの「自動起票」は簡単に実現できます。 しかし、障害回復時にServiceNowのステータスを正しく「解決済み」へ変更・更新するためには、 ご利用のServiceNow環境(必須項目やステータス定義等)に合わせたスクリプトのカスタマイズ が必要です。 弊社では、この連携スクリプトのカスタマイズやエラー回避のノウハウを蓄積しております。「既存環境でクローズ連携がうまくいかない」「新規チケットが発行されてしまう」とお困りの方は、ぜひSCSKまでお問い合わせください。 Step2: ユーザーへのメディア割り当て 通知を実行するZabbixユーザーに対し、作成したServiceNowのメディアを割り当てます。 本検証では、「Admin」ユーザーに対して、先ほど作成したServiceNowのメディアを割り当てます。 ・[ユーザー]>[ユーザー]から、「Admin」ユーザーを選択して、[メディア]タブを選択。 ・[追加]から、タイプを先ほど作成したServiceNowを選択して、送信先にServiceNowインスタンスのURLを入力。 ・[有効]にチェックをいれて、[追加]をクリック。 ・ 最後に、[更新]を忘れずにクリック。 Step3: アクションの設定 障害発生時と回復時に、対象ユーザーに対してWebhookを発行するための「アクション」を設定します。 「実行内容(障害発生時)」と「復旧時の実行内容(障害回復時)」の両方に、ServiceNowへの通知処理を組み込むのがポイントです。 ・[通知]>[アクション]>[トリガーアクション]で、[アクションの作成]をクリック。 ・[アクション]タブで、アクション名と、実行条件を入力。 ※実行条件は、本検証では、設定しない。 ・[実行内容]タブで、[実行内容]の追加をクリック。 ・[ユーザーに送信]にAdminを選択、[送信のメディアタイプ]に、ServiceNowを選択して、[追加]をクリック。 ・[復旧時の実行内容]の追加で、「障害通知送信済みのユーザーすべてにメッセージを送信」を選択して[追加]をクリック。 ・最後に一番下の[追加]をクリック。 4. 実際の動作確認 設定が完了したので、実際に疑似障害を発生させて連携の動きを確認します。 ① Zabbixで障害検知 → ServiceNow起票 検証用ホストのサーバをダウンさせて、Zabbix側でアラートを発生させます。 この時、障害画面の右側の3つのタグの真ん中に、インシデント番号が発行されます。 Zabbixの障害画面からServiceNowに確認しにいきます。 先ほど発行されたインシデント番号を、ServiceNow側で検索してみると、、、 無事にインシデントが自動起票されました。 ② Zabbixで障害回復 → ServiceNowクローズ(解決済み) 続いて、サーバを起動させて、Zabbix側の障害を回復させます。Zabbix側ではステータスが「解決済」になります。 この回復アクションをトリガーにして再度Webhookが送信され、ServiceNow側のインシデントも連動して更新されます。 Zabbixのステータス変更に合わせて、ServiceNowのインシデントも自動でクローズされました。 ※前述の通り、このようにServiceNow側でクローズへのステータス更新を正常に行うには、環境に合わせたスクリプトのカスタマイズが必要になります。 おわりに Webhook機能を利用することで、ZabbixからServiceNowへのインシデント起票が簡単に実装できることによって、マルチなサービスを活用した監視運用が可能になります。 次回は、「Zabbix×ServiceNow検証② -MIDサーバを配置してSNOW→Zabbixへのセキュアな通信-」です。 外部通信が不可な状態の環境に対して、ServiceNowからZabbixへの通信を「MIDサーバ」を用いて実現する方法をご紹介します。                                                                 弊社ではZabbix関連サービスを展開しています。以下ページもご参照ください。 ★SCSK Plus サポート for Zabbix★ SCSK Plus サポート for Zabbix 世界で最も人気のあるオープンソース統合監視ツール「Zabbix」の導入構築から運用保守までSCSKが強力にサポートします。 www.scsk.jp ★YouTubeに、SCSK Zabbixチャンネルを開設しました!★ SCSK Zabbixチャンネル SCSK Zabbixチャンネルでは、Zabbixのトレンドや実際の導入事例を動画で解説。明日から使える実践的な操作ナレッジも提供しており、監視業務の効率化に役立つヒントが満載です。 最新のトピックについては、リンクの弊社HPもしくはXアカ... www.youtube.com ★X(旧Twitter)に、SCSK Zabbixアカウントを開設しました!★ https://x.com/SCSK_Zabbix x.com
こんにちは、SCSKの坂木です。 統合監視ツールとして広く利用されている Zabbix。近年はクラウド環境の監視にも強力に対応し、マルチクラウド環境の一元管理にも活用されています。 今回は、Zabbix公式テンプレート Azure Virtual Machine by HTTP を使用して、Azure上の特定の仮想マシン(VM)を監視する手順をステップ・バイ・ステップで解説します。   ステップ1:Azure側の設定(認証情報の作成とID取得) まずはAzure側に「Zabbix専用の窓口(サービスプリンシパル)」を作り、アクセス権限を与えます。 1. アプリの登録(Zabbix用アカウントの作成) Azure Portalで「Microsoft Entra ID」を開き、Zabbix用のアプリケーションを登録します。 「アプリの登録」>「新規登録」から、分かりやすい名前(例: Zabbix-Monitor)をつけて登録します。 登録完了後の「概要」画面で、以下の2つの情報をメモしておきましょう ・ アプリケーション (クライアント) ID ・ ディレクトリ (テナント) ID   2. クライアントシークレットの作成 次に、作成したアプリにシークレットを発行します。 左メニューの「証明書とシークレット」を開き、「新しいクライアントシークレット」を作成します。 作成直後に表示される 値の文字列 を必ずコピーしてください。   3. 監視対象VMの各種IDの確認 今回のテンプレートでは、監視したいVMを特定するための情報が必要です。 対象となる仮想マシンの「概要」画面を開きます。 この画面から、以下の2つをメモします。 サブスクリプション ID リソース ID (画面右上の「JSON ビュー」をクリックすると、最上部に /subscriptions/…/virtualMachines/vm-test… といった長い文字列の「リソース ID」が表示されるので、それをコピーします)   4. アクセス権 (IAM) の付与 最後に、作成したZabbix用アプリに「Azureの情報を読み取る権限」を与えます。 対象の「サブスクリプション」を開き、左メニューから「アクセス制御 (IAM)」を選択します。 「追加」>「ロールの割り当ての追加」から、 閲覧者ロール を選択します。 メンバーとして、先ほど作成したアプリ(Zabbix-Monitor)を選択して保存します。   ステップ2:Zabbix側の設定 Azure側の準備ができたら、Zabbix側の設定を行います。 (※Zabbixサーバーのインストールと初期設定は完了している前提で進めます) 1. テンプレートの確認 監視対象として登録したホストの設定画面を開き、テンプレートタブから「Azure Virtual Machine by HTTP」をリンクさせます。   2. マクロの設定 ここが連携の肝です。ホスト設定画面の「マクロ」タブを開き、「継承したマクロとホストマクロ」を選択して、先ほどAzure側でメモした 5つの情報 を入力します。 入力する対応表は以下の通りです。 Zabbixのマクロ名 設定する値(Azure側でメモしたもの) {$AZURE.APP.ID} アプリケーション (クライアント) ID {$AZURE.PASSWORD} クライアントシークレットの「値」 {$AZURE.RESOURCE.ID} 仮想マシンのリソースID {$AZURE.SUBSCRIPTION.ID} サブスクリプションID {$AZURE.TENANT.ID} ディレクトリ (テナント) ID これを設定して保存すれば完了です。数分待つと、ZabbixがAzure APIを叩いて対象VMのデータ取得を開始します!   ステップ3:Zabbixで取得できる値 「Azure Virtual Machine by HTTP」テンプレートを使うと、Azureの「Azure Monitor」で取得できるメトリックと同等の情報をZabbixに取り込むことができます。 主に以下のような情報を取得・監視可能です。 項目 監視内容 ステータス VMの稼働状態 メモリ 使用可能なメモリ量 CPU CPU使用率 など ネットワーク 受信/送信トラフィック量 など ディスク データディスクおよびOSディスクの読み込み/書き込み速度 など   まとめ 本ブログでは、ZabbixからAzureの仮想マシンを監視するために、Azure側でのアプリ登録や権限付与といった事前準備から、Zabbix側でのマクロ設定までの手順を解説しました。 特定の仮想マシンを監視する場合、認証情報に加えて「仮想マシンのリソースID」をマクロに設定するのがポイントです。ZabbixのAPI連携を活用して、Azureリソースを含めた効率的な一元管理環境を構築してみてください!   ▼ Zabbixに関するおすすめ記事 【Zabbix】UserParameterでスクリプト実行結果を監視する方法 ZabbixのUserParameter設定ガイド。独自の監視項目を追加する方法、引数を使ったコマンドの使い回し、system.runとの違いを具体例で紹介。監視業務を効率化したい方はぜひ。 blog.usize-tech.com 2025.11.06 【Zabbix】system.runでスクリプト実行結果を監視する方法 Zabbixのsystem.run設定方法をステップバイステップで解説。標準アイテムにないカスタム監視を実現するため、zabbix_agentd.confの修正、安全なAllowKeyの使い方、スクリプトの権限設定までを網羅。初心者でも安心のガイドです。 blog.usize-tech.com 2025.11.04   弊社ではZabbix関連サービスを展開しています。以下ページもご参照ください。 ★Zabbixの基礎をまとめたeBookを公開しております!★ Zabbix資料ダウンロード|SCSK Plus サポート for Zabbix Zabbix監視構築に必要な知識と最新機能についての資料をダウンロードできるページです。世界で最も人気のあるオープンソース統合監視ツール「Zabbix」の導入構築から運用保守までSCSKが強力にサポートします。 www.scsk.jp   ★SCSK Plus サポート for Zabbix★ SCSK Plus サポート for Zabbix 世界で最も人気のあるオープンソース統合監視ツール「Zabbix」の導入構築から運用保守までSCSKが強力にサポートします。 www.scsk.jp   ★SCSK Zabbixチャンネル★ SCSK Zabbixチャンネル SCSK Zabbixチャンネルでは、最新のZabbixトレンドや実際の導入事例を動画で解説。明日から使える実践的なノウハウを提供します。 今すぐチャンネル登録して、最新情報を受け取ろう! www.youtube.com   ★X(旧Twitter)に、SCSK Zabbixアカウントを開設しました!★ https://x.com/SCSK_Zabbix x.com  

動画

該当するコンテンツが見つかりませんでした

書籍

該当するコンテンツが見つかりませんでした