Proceedings of the 2nd Annual Meeting of Particle Accelerator Society of Japanand the 30th Linear Accelerator Meeting in Japan (July 20 - 22, 2005, Tosu Japan)

High Availability Cluster System using Linux-PC
Shiro Kusano1,A), Takuya KudouA), Kazuro FurukawaB), Masanori SatohB)
A)
Mitsubishi Electric System & Service Co.,Ltd.
2-8-8 Umezono, Tsukuba, Ibaraki, 305-0045
B)High Energy Accelerator Research Organization (KEK)
1-1 Oho, Tsukuba, Ibaraki, 305-0801
Abstract
The KEK electron / positron linac provides its beams to four rings. As its operation time exceeds 7000 hours per year,recently, the stable operation is very important. The availability of the control system is essential. In order to achieve
high availability, two kinds of cluster computer systems based on the Linux-PC technology was introduced andevaluated.

Linux-PCを用いた高可用性クラスタシステム
１．はじめにKEK Linacでは、4つの異なるRingにビームを供給しており、年間の総運転時間は7000時間を越えている。2004年以降はKEKBへの入射が、連続入射となりBeam Mode Switchプログラムによるビームパラメータの切り替えは1日約300回にもなる。安定したビームを供給するためには、制御システムの高信頼性、長期安定運用は重要である。 KEK Linacでは、1993年にUnix計算機をベースとしたシステムに変更し、その後毎年変更、改善を行っている。安定運用の た め 、 耐 障害性、可用性が高いとされるRAID
デ ィ ス ク や ク ラ ス タ サ ー バ （ Compaq Tru64Cluster）の導入を行った。
これまでのクラスタシステムには、専用計算機や専用のハードウェアが必要とされ、しかも高価であった。また運用管理、保守においても専門の知識、技術が必要とされる。一方、PCは近年高性能かつ低価格になり、またLinuxの普及によりLinux-PCを用いたクラスタシステムが注目されつつある。
KEK Linacでは、2003年にWebサーバ用、2004
年にEPICS Channel Archiver用としてLinux-PCを用いたクラスタシステムの導入を行った。本稿では、Linux-PCクラスタの概要、導入、今後の改善点について報告する。

図1.KEK Linac Control System
1E-mail: skusa@post.kek.jp-454-Proceedings of the 2nd Annual Meeting of Particle Accelerator Society of Japanand the 30th Linear Accelerator Meeting in Japan (July 20 - 22, 2005, Tosu Japan)

3.2 負荷分散型クラスタ

２．KEK Linac 制御システムの構成

負荷分散型クラスタには、ロードバランス型、並KEK Linac制御システムの構成を図1に示す。KEK列分散型に分類され、主に負荷分散を目的としたLinacの制御システムは、Unix計算機（運転用3台、HAクラスタである。必要に応じて計算機へのアク開発用2台）によるサーバ部と多様なフロントエンセスを制御することにより、システム全体で可用性ド（VME：約30台、PLC：約140台、CAMAC：約10台、等）による機器制御部とコンソールシステム、 や応答性を向上させている。
タ ッ チ パ ネ ル 、 X-Terminal （ Linux-PC ： 約 3 台 、Windows-PC ： 8 台 ) に よ る オ ペ レ ー タ イ ン タ ー
フェース部の3階層の構成になっている。加速器の制御をするために、制御機器ごとにデバイスサーバが用意されており、クライアントとサーバ間はTCP
や UDP を 元 に し た 独 自 開 発 の RPC （ RemoteProcedure Call）によって接続されている。

３．クラスタシステムの概要
クラスタシステムは、複数台の計算機を相互に接続し、ユーザーや他の計算機に対して全体で１つのシステムとして運用する技術である。クラスタを方式 別 に 分 類 す る と 、 HPC （ High PerformanceComputing）クラスタとHA（High Availability）クラスタに分類される。HPCクラスタは、複数台の計算機を束ねて高速な並列計算を目的とした環境を提供するクラスタで、大規模な数値計算に向いている。
HAクラスタは、計算機を複数台使用し冗長化することにより、システムの停止時間を最小限に抑え、可用性を向上させる。さらにHAクラスタ方式は、フェイルオーバー型と負荷分散型に分けることができる。以下に、本稿の対象となるHAクラスタについて簡単に説明する。

図2．標準的なHAクラスタシステム

４．Linux-PCクラスタシステム
4.1 所外Web用クラスタシステム

世界的にネットワーク環境は発達し、日常生活においても計算機の利用は必要不可欠になっている。
フェイルオーバー型クラスタには、データミその反面、ネットワークによる犯罪も多くなってき
ラー型、共有ディスク型及び遠隔クラスタ型がある。 ている。KEKでもセキュリティ対策として、2003年
標準的な共有ディスク型クラスタの構成を図2に示に所内ネットワークにDMZ（DeMilitarized Zone）がす。障害が発生した計算機上にあるサービスを他の導入された。KEK Linacでは、Web上に加速器の状計算機に引き継ぐ（フェイルオーバー）ことにより態や運転情報を提供[1]しているが、DMZが導入され高可用性を実現する。サービスのフェイルオーバーたため外部からの運転情報などの閲覧が困難となっを実現させるためには、計算機間でデータを引き継た。その対応策として所外Webサーバ用にLinux-PCぐ必要あるが、引き継ぐデータを計算機間で共有すを用いることになった。運転情報など多くのファイるディスクに置く方式を共有ディスク型、計算機間ルを扱うことやできるだけサービスを停止しないこでデータをコピーする方式をデータミラー型という。 とを考慮して、Linux-PCを用いたクラスタの導入を共有ディスク型はデータの同期を取る必要がないた行うことになった。システムの構成を表1に示す。
め、大量のデータを取り扱うシステムに向いている。 表1．所外Webサーバクラスタシステムの構成
その反面、共有ディスクを構成するために複数のメーカー
理由
チ ャ ン ネ ル 接 続 に 対 応 し た SCSI デ ィ ス ク 、 FiberPC
DELL Precision 安価で一般的なChannelディスクを必要とし高価なハードウェア構
340(Pentium4,PCを選択成となる。一方、データミラー型は計算機間でデー2.8GHz)タのコピーを行うことでデータの整合性を保つ。一RAIDディスク
IAI
AE- 複 数 Channel を定間隔でデータの同期を行うが、そのつど計算機間
5600EX3-5400
持 つ IDE RAIDで通信が発生するため大量のデータを取り扱うシスディスク
テムには不向きである。しかし、共有ディスクを持クラスタソフト Redhat
たないため、比較的低価格なハードウェア構成で実Advanced Server現することが可能である。
2.1(kernel 2.4.9e.43)
3.1 フェイルオーバー型クラスタ-455-

Proceedings of the 2nd Annual Meeting of Particle Accelerator Society of Japanand the 30th Linear Accelerator Meeting in Japan (July 20 - 22, 2005, Tosu Japan)

所外Web用クラスタは2003年夏に導入し約2年間、 ５．今後の課題
KEK Linacの運転状況などの情報を提供している。
5.1 所外Webサーバ用クラスタ
4.2 EPICS Channel Archiver用クラスタシステム
・ フェイルオーバーの失敗
システム導入後、1年に1、2回原因不明で計算機
KEK Linacでは、機器の状態を監視するためにが停止することがあった。計算機が停止するとバッWebなどによる履歴表示ツールを提供している [3]。
クアップの計算機にサービスが移行してサービスを履歴表示ツールの1つであるEPICS Channel Archiver
継続するのがクラスタシステムの特徴であるが、は、BPM, Vacuum, Klystronなどの加速器装置の情報フェイルオーバーが正しく動作しないことがあった。
を約1秒周期で履歴を蓄積している。現在のEPICS
この問題は、クラスタシステムにKEK Linac独自のChannel Archiver用システムはLinux-PCを用い、収集スクリプトを追記しており、その記述が正しくなしたデータはローカルのディスクに保存している。
かったことが原因であった。スクリプトを改修する
データファイルは日付毎に作成され、ファイルサイことで、フェイルオーバーの問題は解決した。また、
ズ は Klystron で 50MB 、 BPM で 300MB 、 Vacuum で40MBとなっている。これまでも1年に2、3回Linux- さまざまな障害を想定した試験によってフェイルオーバーが正しく行われることを確認した。
PCが原因不明で停止することがあり、安定した運用、サービスの提供ができていないことがあった。
5.2 EPICS Channel Archiver用クラスタ
この対策として、Linux-PCを用いたクラスタの導入を検討している。システムの構成を表2に示す。
・ EPICS Channel Archiverのサービス化
表2．EPICS Channel Archiver用クラスタの構成
今回使用したクラスタソフトであるRoseHAでは、メーカー
理由
サービスの監視としてNFS, Oracle DBなどをサポーPC
DELL PowerEdge 安 価 で 一 般 的トしている。しかし、ユーザーが定義したサービス
600SC(Pentiuam4, なPCは監視していないため、EPICS Channel Archiverの2.8GHz)
サービスがバックアップの計算機にフェイルオー
RAIDディスク IAI
SNX- 複 数 の Channel バーができない。この問題に関しては、現在検討中
R740000Dを持ち、信頼である。特にファイルサーバーに使用するNFSの2300XS
性 の 高 い SCSI
フェイルオーバーと動機する機構を整えるつもりでディスクを選ある。
択ク ラ ス タ ソ フ RoseHA2
設定、管理用４．まとめト
ツールが提供
本稿では、クラスタシステムの概要とKEK Linac
されており、におけるLinux-PCクラスタの導入、今後の課題につ設定管理が容いて述べた。専用のハードウェアでなくても、安価易（図3（なPCでクラスタシステムを構成することができた。
クラスタシステムの導入により、障害時においてもサービスの継続が可能となり、システムの停止時間を抑えることができる。また、計算機の保守も容易となった。Linux-PCクラスタは、加速器制御に使用するにあたって十分信頼でき、長期安定運用も可能と思われる。

参考文献[1] S.Kusano, et al., “KEKB LinacとRingの運転ログブックシ
ス テ ム ”, Proceedings of the 28th Linear Accelerator
Meeting in Japan, Tokai, Aug, 2003, p449-451.
[2] 工藤拓弥、他、本会議で報告

図3.RoseHA管理ツール
クラスタソフトでRoseHAを選んだ理由は、評価の際運用が容易と判断。また、Redhatがヴァージョン更新の際にソフトウェアの構成も変更したため、使用が困難となっていた。
2

http://www.roseha.com-456-