このページにおける、サイト内の位置情報は以下です。


社団法人日本電気技術者協会 電気技術解説講座 文字サイズ変更ヘルプ
Presented by Electric Engineer's Association
コンピュータ・システムの信頼性 富士テクノサーベイ(株) 山崎 靖夫

コンピュータ・システムを安定に稼働させるための要素、信頼性を表す指標、信頼性向上対策について解説する。

1. コンピュータ・システムを安定に稼働させる要素

近年のコンピュータ・システムは人々の生活に深くかかわりあい、もはやコンピュータが存在しない生活は考えられなくなってきている。また、コンピュータは相互に接続されて多量の情報が伝送され、相互に複雑に関連しながら巨大なコンピュータ・ネットワークを構成している。このような中、ひとたびコンピュータ・システムが停止すると多大な影響を与え、社会問題にもなる。したがって、コンピュータ・システムをいかに安定に稼働させるかということが重要な要素である。

コンピュータ・システムを安定に稼働させる要素には次の五つがある。

  1. 信頼性:故障率が低く安定に処理を実行できる能力(Reliability)
  2. 可用性:使いたいときに使うことができる能力(Availability)
  3. 保守性:障害が発生しても速やかに復旧できる能力(Serviceability)
  4. 保全性:データなどに誤りや矛盾が生じない能力(Integrity)
  5. 機密性:不正なアクセスを防止する能力(Security)

これらの要素の頭文字をとってRASIS(レイシスまたはラシスと読む)が定義されている。コンピュータ・システムでは障害が発生する頻度やシステムに障害が発生した場合の修復に要する時間についての、いわゆる信頼性評価が重要である。このコンピュータ・システムにおける信頼性(Reliability)とは、システムがいかに安定して稼働するかを表す指標として定義されている。すなわち、コンピュータ・システムの使用目的に応じた条件の下で要求している機能を満足するかどうかを数値化して表現している。この数値化には平均故障間隔(MTBF)と平均修復時間(MTTR)の二つが用いられる。

2. 信頼性を表す指標

(1) 平均故障間隔

平均故障間隔は、コンピュータに信頼性を表す指標でMTBF(Mean Time Between Failures)といわれる。MTBFはコンピュータ・システムが何らかの原因によって故障してから次に故障が生ずるまでの時間の平均を求めたものである。すなわち、

formula01
formula01

の式で表すことができる。この式が表す値が大きいほど故障せずに稼働している時間が長いことになる。つまりMTBFの値が大きいシステムほど信頼性が高いことを表す。

(2) 平均修復時間

平均修復時間はコンピュータ・システムがなんらかの原因で故障したときに故障の修理・修復を行い、再び使用可能になるまでの修復時間の平均値(Mean Time to Repair)で定義される。すなわち、

formula02
formula02

の式で表すことができる。(2)式の表す値が小さいほど故障の修理・修復を行う時間が短く、保全性が高いことを表す。

(3) 稼働率

稼働率はコンピュータ・システムの可用性(Availability)を表す指標であり、システムが正常に稼働している割合を示す。稼働率は次式で定義されている。

formula03
formula03

この式の値が大きいほど可用性が高いこと、すなわち正常に稼働している割合が高いことを示す。

なお、(3)式はMTBFMTTRを用いれば、

formula04
formula04

と表すこともできる。第1図にMTBFMTTRの関係を示す。

第1図 MTBFとMTTR第1図 MTBFとMTTR

3. 信頼性向上対策

信頼性を向上させるためにはMTBFを長くし、MTTRを短くすることが原則である。このため、コンピュータに高信頼性の部品を用いたり、信頼性の高いネットワークを適用したりすることなどのほか、不具合の起こらないソフトウエアを適用する。しかしながら、現実的にはコンピュータを構成する部品の物理的欠陥や経年変化、ソフトウエアの潜在的不具合(バグ)を完全に除去することは不可能である。このため、コンピュータ・システムには不具合が生じることを前提として、システムを構成している要素に故障が生じてもシステム全体として障害を起こさない工夫を行っている。具体的には単独のコンピュータ・システムとして構成せず、コンピュータ・システムを二重化または多重化した冗長構成がとられる。

冗長構成の具体的な一例として通常のシステム以外に予備(バックアップ)装置を設けることが行われる。この予備装置はコンピュータ・システムの全体に及ぶこともあるし、特定の装置だけ冗長化されることもある。特定な装置だけの冗長化の例としてはディスク装置や電源装置、ネットワークに用いられる伝送線などの二重化(冗長化)などがあげられる。これらはコンピュータ・システムのコスト、信頼性の重要度などを考慮してバランスの取れた構成を適用する。

コンピュータ・システムとしては次のような方法がある。

(1) シンプレックスシステム

シンプレックスシステムは第2図に示すように最も簡単な構成であり、ほかのシステムに比べてコストが最も安い。しかしながら、いずれかの装置が故障するとシステムダウンしてしまうので、信頼性の要求されない処理システムや、復旧に時間がかかってもよいシステムに適用される。ほかのシステムに比べて信頼性は最も低い。

第2図 シンプレックスシステム第2図 シンプレックスシステム

第2図でCPUは中央処理装置(Central Processing Unit)であり、コンピュータ・システムの制御、判断、処理などを統合的に行う中核的な装置である。また、CCUは通信制御装置(Communication Control Unit)であり、通信回線とCPUとの間におけるデータ制御を行う。具体的には通信回線の伝送速度と、CPUの処理速度の調整、符号の組み立てと分解、データの集信と配信及び誤り検出などの機能がある。MS(Master Storage)は主記憶装置で、データやプログラムなどの保管をする装置である。

(2) デュプレックスシステム

デュプレックスシステムは第3図に示すように常用系と待機系の二つの処理系統を備える。通常時は常用系で処理(オンライン処理など)を行い、待機系ではバッチ処理などを行う。

第3図 デュプレックスシステム第3図 デュプレックスシステム

そして常用系がなんらかの原因で故障したときは待機系に切り替えて処理を継続させる。したがって、切り替えに要する時間だけシステムがダウンする。

(3) デュアルシステム

デュアルシステムは第4図に示すように二つの処理系を備え、それぞれの処理系で同一処理を実行させるとともに、一定時間ごとに処理結果を相互チェックする。このチェックをクロスチェックという。デュアルシステムは二つの処理系が同時にダウンする確率が低いことに基づくシステムであって、ダウンした処理系だけを切り離して、処理を継続する。

第4図 デュアルシステム第4図 デュアルシステム

このシステムは稼働率が向上する反面、コストが高くなるという欠点がある。

(4) マルチプロセッサシステム

マルチプロセッサシステムは第5図に示すように二つの処理系を有し、主記憶とファイルを共有している。複数のCPUはそれぞれの処理を分散する並行処理を実行している。そしていずれかCPUが故障したときは、そのCPUを切り離して処理を継続する。このため、処理の中断がなく処理効率と信頼性が高いシステムといえる。

第5図 マルチプロセッサシステム第5図 マルチプロセッサシステム

(5) 記憶装置の冗長化

記憶装置には重要なデータが保存されているため、なんらかの原因によって障害が発生すると重大な問題になることがある。このため、データを分割して複数の記憶装置に対して並列に保存することが行われる。この方式をRAID(Redundant Array of Inexpensive Disks)という。RAIDは複数の記憶装置を用いているので万一、いずれかの記憶装置に障害が発生したとしてもほかの装置がバックアップしているためデータの健全性が保障される。

4. コンピュータ・システムの信頼性設計

コンピュータ・システムの信頼性設計手法としては、なんらかの障害が発生しても性能を低下させることなく処理を継続できる能力をもたせるフェイルセーフと、ある程度の性能低下を許容しても処理を継続するフェイルソフトの考え方がある。

既に述べたコンピュータ・システムについては、デュプレックスシステムとデュアルシステムがフェイルセーフに相当し、マルチプロセッサシステムがフェイルソフトに相当する。