Proceedings of the 19th Annual Meeting of Particle Accelerator Society of Japan
October 18 - 21, 2022, Online (Kyushu University)

PASJ2022 TUP011

KEK 電子陽電子入射器におけるGrafana を用いたネットワーク監視システムの導入
INTRODUCTION OF NETWORK MONITORING SYSTEM USING GRAFANA IN THE
KEK ELECTRON/POSITRON INJECTOR LINAC佐武いつか#, A), 佐藤政則 A) , B), 佐々木信哉 A), 廣瀬雅哉 C), 草野史郎 D), 工藤拓弥 D)
Itsuka Satake #, A), Masanori SatohA) , B), Shinya SasakiA), Masaya HiroseC), Shiro KusanoD), Takuya KudouD)
A)
High Energy Accelerator Organization (KEK), Accelerator LaboratoryB)
The Graduate University for Advanced Studies (SOKENDAI), Department of Accelerator ScienceC)
Kanto Information Service Co., Ltd (KIS)D)
Mitsubishi Electric System & Service Co., Ltd (MSC)

Abstract
The KEK electron/positron injector linac supplies electron and positron beams to five different downstream rings ofSuperKEKB electron/positron, positron damping ring, PF, and PF-AR. Quick detection of control device abnormality issignificantly important for the stable beam operation. We have used Cacti to monitor IT infrastructure. In recent years,Kibana has been utilized as a visualization tool for network information. Kibana can display network packets andbroadcast information of servers connected to the injector accelerator control network, as well as system information ofsome server computers. In order to improve the monitoring system, Zabbix and Grafana have been implemented as amonitoring software tool and a data visualization tool, respectively. As a result, in addition to monitoring information of
the network devices, it is possible to detect anomalies and notify alerts. This paper reports the details of the new network
equipment monitoring system, and its operational status.

1.

はじめにKEK 電子陽電子入射器では、SuperKEKB 電子/陽電子、陽電子ダンピングリング、PF、PF-AR の異なる 5 つの下流リングに対して、電子および陽電子ビームを供給している[1]。安定したビーム入射実現のため、加速器制御システムには精度の高い迅速な異常検知と運用が求められる。ネットワーク機器の障害には様々な要因が考えられ、即座に原因を特定できないケースもある。そのため、システム監視によって可能な限り速やかに障害を把握することが重要である。
KEK 入射器では、これまで IT インフラ監視のためにCacti を利用してきた。より詳細なネットワーク情報を取得・表示するため、近年ではネットワーク情報の可視化ツールとして Kibana[2]の利用を開始している。さらに効率的な監視システムを構築するため、新たに監視ソフトウェアツールである Zabbix[3]と、データ可視化ツールである Grafana[4]を導入することとした。これらを用いることで、サーバーやネットワーク機器などの監視だけではなく、異常検知およびアラート通知が可能となった。本稿では、新たに導入した監視システムおよび運用状況について詳細に報告する。

2.

監視システムの概要

2.1

動作環境とシステム構成

Zabbix と Grafana はともに、1 台の仮想マシン上で動作している。Zabbix で 使用 す るデ ータ ベー ス である___________________________________________#itsuka.satake@kek.jp

Table 1: Hardware Specification of the Server Computers
Model name
CPUMemory
Disk
OS

HP DL385 Gen10 Plus
上の仮想マシン4CPU(CORE 4)(32 CPUs x AMD EPYC 7302
16-Core Processor)
64 GB(319.74 GB)
20 GB (system)
1 TB (data)
CentOS 7.9.2009

MySQL も同じホスト上で動作している。Zabbix は v5.4.3、Grafana は v8.3.6 を使用している。両者とも、2022 年夏期メンテナンス中にアップデートをおこなう予定である。
Table 1 に、Zabbix と Grafana が動作する計算機の構成を示す。現在 Zabbix では、ホスト数 179、アイテム数は45996、トリガー数は 18637 の監視をおこなっている。
2.2 トリガーとアラート通知
トリガーとは、アイテムが収集したデータを評価し、最新のシステム状態を表示する論理条件式のことである。
この条件式を用いて、アイテムが更新されるたびに評価を行い、真となった場合に障害と判断する。またトリガーの深刻度により、トリガーの重要度が定義されている。深刻度には、以下の 5 段階がある。
• 情報• 警告- 305 -Proceedings of the 19th Annual Meeting of Particle Accelerator Society of Japan
October 18 - 21, 2022, Online (Kyushu University)

PASJ2022 TUP011• 軽度の障害• 重度の障害• 致命的な障害
それぞれの深刻度について、条件式や通知条件を設定することができる。KEK 入射器では、「警告」・「軽度の障害」と、「重度の障害」以上の深刻度の障害で異なるトリガーアクションを設定している。「警告」・「軽度の障害」に対しては、障害が 1 時間継続した場合に 1 回のみメール通知される。「重度の障害」以上の深刻度の障害に対しては、障害発生時に即時メール通知される。
軽度レベルの障害のなかに深刻度の高い障害が埋もれてしまい、アラートを見逃すことがないよう必要最低限の通知としている。Zabbix のアラート通知機能により、いち早く障害発生に気づくことが可能となった。
2.3 Zabbix
Zabbix は、Alexei Vladishev 氏によって作られた、サーバーやネットワークを集中監視するためのオープンソースの統合監視ソフトウェアである。現在は Zabbix 社によって開発が継続されている。統合監視に必要となる監視機能、障害検知、通知機能を備えている。Zabbix
サーバーは、監視対象からのデータ収集や条件判定、アラート通知のアクションなどをおこなう。Zabbix によって収集されたデータと同様に、設定情報もデータベース内に保存される。監視の設定や監視結果の確認は、Webブラウザでおこなう(Fig. 1)。収集データは、グラフ化やマップ化することができ、効率的に監視状況の把握や分析をおこなうことができる。
デ ー タ 収 集 方 法 と し て 、 SNMP (Simple Network
Management Protocol)や ping 疎通による監視も可能であるが、Zabbix エージェントを用いる方法もある。監視対象システム上に Zabbix エージェントを導入することで、システムのローカルのリソースやアプリケーションを監視することができる。収集したデータは Zabbix サーバーに送信される。

画面上にまとめて可視化するダッシュボードを作成する。
ダッシュボードを用いることで、監視システムの状況を把握しやすくなる。WEB インターフェースにより、ダッシュボードやパネルの作成を視覚的に行うことができ、様々なデータ表示形式があるため、柔軟にグラフを作成することが可能である。アクセス制御も設定可能のため、安全な運用と管理が実現できる。
2.5 Kibana
Kibana は、Elastic 社によって開発されたデータの可視化ツールである。同社で開発されたドキュメント型データベースである Elasticsearch に対応しており、Elasticsearchのデータを表示するのに適している。様々な形式の文書データを横断的に検索することに優れた索引型検索を採用しており、大量のデータに対して高速検索が可能である。KEK 入射器では、ブロードキャストパケットやビーコン情報など、ネットワーク状態を表示している(Fig. 2)。

Figure 2: Screenshot of Kibana dashboard that displays
information about Broadcast packets on Linac control
network.

3.

計算機サーバーと NAS の監視

Table 2 に、2022 年 7 月現在の計算機サーバー監視のためのデータ収集方法と台数を示す。データ収集方法としては、2 種類ある。すでに SNMP が有効になっているものは、SNMP 監視情報を取得し、Zabbix サーバーが受け取っている。一方、新しいサーバー計算機については、Zabbix エージェントを用いてデータ収集をおこなっている。ファイルシステムについても同様に、Zabbixエージェントを用いている。
Table 2: Current Status of Server Computer Monitoring
Figure 1: Screenshot of Zabbix overview dashboard that
displays information about the system status and failures.
2.4 Grafana
Grafana は、Grafana Labs によって開発されているオープンソースのログ・データ可視化ツールである。KEK 入射器では、Zabbix で収集したデータを表示している。
Zabbix 以外にも、Elasticsearch など複数のデータソースの情報を可視化することができる。様々な情報を 1 つのデータ収集方法

台数

Zabbix エージェント

3台

SNMP

60 台

Zabbix には、複数のアイテム、トリガー、グラフなどの監視設定をま とめた、「テンプレート」が ある。 Zabbix
エージェントによるサーバー計算機監視では「Template
OS Linux by Zabbix agent」、SNMP による計算機監視では「Template OS Linux SNMP」を使用している。MySQL- 306 -Proceedings of the 19th Annual Meeting of Particle Accelerator Society of Japan
October 18 - 21, 2022, Online (Kyushu University)

PASJ2022 TUP011を動作させているアーカイブサーバーなどの計算機では、「Template DB MySQL by Zabbix agent」についても使用している。
Grafana のダッシュボードでは、計算機サーバーのシステム情報として、CPU 使用率、平均負荷、メモリ、ネットワークトラフィック、ストレージを表示している(Fig. 3)。また、ファイルシステム監視については、NAS のディスク使用率と i ノード使用率を表示している(Fig. 4)。これらの表示には、データソースプラグインとして Zabbix plugin for
Grafana を用いている。

値に合わせた値に変更している。
Grafana のダッシュボードでは、CPU 使用率、メモリ、応答速度、稼働時間、ブロードキャストパケット、ネットワークトラフィック、ディスカード/エラーパケット情報を表示している(Fig. 5)。
Table 3: Current
Monitoring

StatusofNetworkequipments

ベンダー

用途

台数

Cisco

ネットワークスイッチ

49 台

Buffalo

ネットワークスイッチ

64 台

Aruba

無線アクセスポイントコ
ントローラー（入射器地上部用）

1台

ゼブラ・テクノロジー 無線アクセスポイントコ
ズ・ジャパン（旧モト ントローラー（入射器トローラ・ソリューションンネル用）
ズ）

1台

Figure 3: Screenshot of Grafana dashboard that displays
system information of Linac server computers.

Figure 5: Screenshot of Grafana dashboard that displays
network switch information.
Figure 4: Screenshot of Grafana dashboard that displays
filesystem information of Linac disks.

4.

ネットワーク機器の監視

4.1

ネットワークスイッチ

Table 3 に、2022 年 7 月現在の監視しているネットワー
クスイッチのベンダーおよび台数を示す。すべて SNMPによってデータを収集している。監視設定としては、
Cisco 製のスイッチは、「Template Net Cisco IOS SNMP」を使用している。上記のように主要なスイッチのテンプレートは、あらかじめ Zabbix で用意されている。そのため、取得したいアイテムなどの監視設定は比較的簡単な設定のみで完了した。Buffalo 製のスイッチは、SuperKEKBで作成された「Template Net Buffalo Device SNMPv2」を使用している。
トリガー設定については、ほとんどがデフォルトの設定を使用しているが、一部変更している。コアスイッチ 1 台の温度異常アラートが重度の障害として検知されていた。
運用に問題のない温度であったため、スイッチ固有の閾

4.2

無線アクセスポイントコントローラー

Table 3 に、2022 年 7 月現在の監視している無線アクセスポイントコントローラーのベンダーと台数を示す。
SNMP を有効化し、データ収集を開始した。それぞれ既存テンプレートを用いて、稼働時間やパケットロス、応答時間、応答速度を監視している。

5.

アーカイバーの監視

5.1

アーカイバーデータの表示

KEK 入射器ではアーカイバーソフトウェアとして、2 台の Archiver Appliance (AA)を運用している[5, 6]。現在のアーカイブ対象は約 13 万点である。
これらのデータを Grafana 上で表示するために、データ ソ ー ス プ ラ グ イ ン と し て Archiver Appliance
Datasource[7]を用いた。これは、平均値や最大/最小値などのデータ加工方法の指定ができ、オフセットなどの後処理が可能であるなど、多数の機能を備えている。上記プラグインをインストールし、データソースである AA のURL を設定することでデータの取得が可能である。

- 307 -

Proceedings of the 19th Annual Meeting of Particle Accelerator Society of Japan
October 18 - 21, 2022, Online (Kyushu University)

PASJ2022 TUP011

Grafana から AA サーバーに HTTP リクエストを送り、取得したデータを可視化する。Grafana のダッシュボードでは、機器の周辺温度やビーム電荷量などの情報を表示している。

CSS アラーム情報(current)とアラームログ(history)を取得している。Grafana のダッシュボードでは、現状を示す
current とログを示す history のダッシュボードを作成し、表示している(Fig. 7)。

5.2

6.2

AA サーバーの監視

前述したようにサーバー計算機のシステム監視には、Zabbix エージェントを用いてデータ収集をおこなっている。それらに加えて、HTTP エージェントにより登録 PV 数やストレージ情報、データ転送速度などの情報を取得している。HTTP エージェントは、Zabbix サーバーからhttp/https 接続を使用して値を収集している。テンプレー
トとしては、SuperKEKB で作成された「Template App
Archiver Appliance by HTTP」を使用している。この中のマクロで、データの場所やクラスタごとのポートを指定して い る 。 Figure 6 に 、 AA 監 視 情 報 を 表 示 し て い る
Grafana のダッシュボード画面を示す。

current は即座に表示されるのに対し、history はタイムアウトエラーとなり、表示に失敗していた。psql コマンドを用いて PostgreSQL へ接続し、SQL 実行時間を測定した
ところ、1 時間のデータ取得に約 5 秒かかっていた。
タイムアウトの設定を 10 秒以上に設定すると、タイムアウトエラーはほとんど発生せず、改善が見られた。対処として、データベースにおける message テーブルの type 列、datum 列に対してインデックスを作成することとした。対処後に psql コマンドにより測定したところ、1 時間のデータ取得にかかる時間は、約 10 ミリ秒となり、大幅に改善された。その結果、Grafana 上での表示も即座に更新されるようになった。

7.

Figure 6: Screenshot of Grafana dashboard that displays
Archiver Appliance information.

6.

CSS アラームの監視

6.1

CSS アラーム

CSS アラーム情報表示の不具合

まとめ

KEK 入射器では、新たに Zabbix と Grafana を導入し、ネットワーク機器監視システムを構築した。これにより、多数のネットワーク機器の監視やデータの可視化をおこなっている。さらに、異常検知およびアラート通知機能を取り入れたことで、様々な障害を迅速に把握することが可能となった。
今後は、どのような障害が多いのか、加速器運転期間および長期メンテナンス期間での障害の傾向を見ることで、それらの情報をシステムの改良に役立てたい。また、
現在 EPICS PV の情報を直接監視するためのプログラム整備を進めており、監視対象の幅を広げていく予定である。

参考文献

KEK 入射器では、Control System Studio (CSS)を利用したアラームシステムである CSS アラームを利用している。アラームの設定や履歴情報の保存には、リレーショナルデータベースである PostgreSQL を使用している。
Grafana に JSON API プラグインをインストールし、データソースを作成した。さらに、beastrest[8]という REST APIサーバーを用いた。この REST API サーバーは、Pythonと Flask を利用して作成されている。beastrest によって、[1] K. Furukawa et al., “Achievement of 200, 000 Hours ofOperation at KEK 7-GeV Electron 4-GeV Positron Injector
Linac”, in Proc. 13th Int. Particle Accelerator Conf.
(IPAC'22), Bangkok, Thailand, Jun. 2022, pp. 2465-2468.
[2] Kibana;https://www.elastic.co/jp/kibana/[3] Zabbix;
https://www.zabbix.com/jp[4] Grafana;
https://grafana.com/[5] The EPICS Archiver Appliance;
https://slacmshankar.github.io/epicsarchiver_docs/[6] I. Satake et al., “OPERATION STATUS OF ARCHIVERAPPLIANCEIN
KEK
ELECTRON/POSITRONINJECTOR LINAC”, in Proceedings of the 17th Annual
Meeting of Particle Accelerator Society of Japan, Sep. 2-4,2020, pp. 735-738.
[7] S. Sasaki et al., “DEVELOPMENT OF GRAFANAPLUGIN TO VISUALIZE ARCHIVE DATA ON
ARCHIVER APPLIANCE”, in Proceedings of the 17th
Annual Meeting of Particle Accelerator Society of Japan,
Sep. 2-4, 2020, pp. 504-508.
[8] beastrest;
https://github.com/sasaki77/beastrest

Figure 7: Screenshot of Grafana dashboard that displays
CSS alarm status.

- 308 -