HAシステム(2) – 高可用性システムを導入する際の留意点

splitbrain

>第1回から読む

高可用性システムを導入するときには、どのような点に留意すべきなのでしょうか。単一障害点(SPOF)やスプリットブレインへの対策、構築後の想定外や運用時のオペレーションミスを排除するためにすべきことについて紹介します。

>>【動画で学べる】高可用性ソリューション「LifeKeeper/DataKeeper」について

高可用性システム導入時の留意点

 高可用性システムを導入する場合、HAクラスタリングソフトウェア製品の使い方を理解していることはもちろん、高可用性システムを構成するネットワーク環境からOS、ミドルウェア、アプリケーション、データベース環境まで、さまざまな知識が必要になります。

 特に、システム全体の構成を理解して、「単一障害点(SPOF:Single Point of Failure)」を作らないことや、後述する「スプリットブレイン」対策を行っておくことも重要になります。

 また、どのようなストレージが最適であり、どのようなストレージ構成にすべきなのか、仮想化環境やクラウド環境をどのように利用するかなど、十分に検討しておくことが必要です。さらに、オペレーションミスを排除するための、業務やシステムの標準化および自動化、さらには人材育成についても検討しておかなければなりません。

単一障害点をなくすことが必要

 高可用性システムを構築するときの留意点の1つとして、SPOFを作らないことが挙げられます。SPOFとは、故障や障害により停止してしまうと、システム全体に影響を及ぼしてしまうポイントのことです。SPOFになりうるポイントとして、ネットワーク機器、ロードバランサー、サーバー、電源、データベースなどがあります。また、サーバーの内部においても、電源やネットワークアダプターなど、SPOFになる可能性があります。 高可用性システムを導入するときには、どのような点に留意すべきなのでしょうか。単一障害点(SPOF)やスプリットブレインへの対策、構築後の想定外や運用時のオペレーションミスを排除するためにすべきことについて紹介します。   ●高可用性システム導入時の留意点   高可用性システムを導入する場合、HAクラスタリングソフトウェア製品の使い方を理解していることはもちろん、高可用性システムを構成するネットワーク環境からOS、ミドルウェア、アプリケーション、データベース環境まで、さまざまな知識が必要になります。   特に、システム全体の構成を理解して、「単一障害点(SPOF:Single Point of Failure)」を作らないことや、後述する「スプリットブレイン」対策を行っておくことも重要になります。   また、どのようなストレージが最適であり、どのようなストレージ構成にすべきなのか、仮想化環境やクラウド環境をどのように利用するかなど、十分に検討しておくことが必要です。さらに、オペレーションミスを排除するための、業務やシステムの標準化および自動化、さらには人材育成についても検討しておかなければなりません。   ●単一障害点をなくすことが必要   高可用性システムを構築するときの留意点の1つとして、SPOFを作らないことが挙げられます。SPOFとは、故障や障害により停止してしまうと、システム全体に影響を及ぼしてしまうポイントのことです。SPOFになりうるポイントとして、ネットワーク機器、ロードバランサー、サーバー、電源、データベースなどがあります。また、サーバーの内部においても、電源やネットワークアダプターなど、SPOFになる可能性があります。      SPOFを作らないためには、SPOFになりうるポイントを冗長構成にすることです。例えば、ネットワーク機器ではネットワークを二重化し、ロードバランサーやサーバーについてはHAクラスタリング構成にします。また、サーバーの内部においても、電源やネットワークアダプターなどを冗長構成にすることが有効になります。   ●あらかじめスプリットブレイン対策を   スプリットブレインは、アクティブ・スタンバイ型のHAクラスタリング構成において、待機系ノードが、稼働系ノードが停止したと勘違いして処理を引き継いでしまい、2台の稼働系ノードができてしまう現象です。基本的に、ハードウェアやインターコネクトなどのネットワーク障害により発生しますが、メンテナンス作業やオペレーションにおける人的ミスでも発生します。   スプリットブレインが発生すると、2つの稼働系ノードが同じIPアドレスを利用するため、システム利用者のリクエストにより、違うノードに接続する可能性があります。このとき、共有ストレージを利用していると、データに不整合が発生したり、ファイルシステムが破壊されたりする可能性があり、システムとして致命的な状況に陥ることにつながるので注意が必要です。   そこで、HAクラスタリング構成を構築する場合、利用する機器やネットワーク環境を多重化したり、運用マニュアルの整備などで人的ミスを低減したりするなど、あらかじめスプリットブレイン対策を検討しておくことが必要になります。   ●オペレーションミスを排除するためにすべきこと   高可用性システムに限らず、システムのオペレーションにおいて人的ミスを完全に防ぐことは困難です。特に高可用システムでは、システムが複雑で、運用上の注意点も多くなるため、人的ミスが発生しやすくなります。人的ミスにより、スプリットブレインが発生してしまうこともあります。   対策のポイントとしては、業務やシステムを「標準化」し、「自動化」することです。標準化によりオペレーションにおける属人化を排除することができ、さらに手作業によるオペレーションをなるべく減らしシステムを自動化することで、人的ミスを防ぐことが期待できます。また、人的ミスが発生した場合のために、運用マニュアルを作成しておくことも有効です。   今回は、高可用性システムを導入する際の留意点について紹介しました。次回は、「第3回:高可用性システムに最適なストレージ」について紹介します。

 SPOFを作らないためには、SPOFになりうるポイントを冗長構成にすることです。例えば、ネットワーク機器ではネットワークを二重化し、ロードバランサーやサーバーについてはHAクラスタリング構成にします。また、サーバーの内部においても、電源やネットワークアダプターなどを冗長構成にすることが有効になります。

あらかじめスプリットブレイン対策を

 スプリットブレインは、アクティブ・スタンバイ型のHAクラスタリング構成において、待機系ノードが、稼働系ノードが停止したと勘違いして処理を引き継いでしまい、2台の稼働系ノードができてしまう現象です。基本的に、ハードウェアやインターコネクトなどのネットワーク障害により発生しますが、メンテナンス作業やオペレーションにおける人的ミスでも発生します。

 スプリットブレインが発生すると、2つの稼働系ノードが同じIPアドレスを利用するため、システム利用者のリクエストにより、違うノードに接続する可能性があります。このとき、共有ストレージを利用していると、データに不整合が発生したり、ファイルシステムが破壊されたりする可能性があり、システムとして致命的な状況に陥ることにつながるので注意が必要です。

 そこで、HAクラスタリング構成を構築する場合、利用する機器やネットワーク環境を多重化したり、運用マニュアルの整備などで人的ミスを低減したりするなど、あらかじめスプリットブレイン対策を検討しておくことが必要になります。

オペレーションミスを排除するためにすべきこと

 高可用性システムに限らず、システムのオペレーションにおいて人的ミスを完全に防ぐことは困難です。特に高可用システムでは、システムが複雑で、運用上の注意点も多くなるため、人的ミスが発生しやすくなります。人的ミスにより、スプリットブレインが発生してしまうこともあります。

 対策のポイントとしては、業務やシステムを「標準化」し、「自動化」することです。標準化によりオペレーションにおける属人化を排除することができ、さらに手作業によるオペレーションをなるべく減らしシステムを自動化することで、人的ミスを防ぐことが期待できます。また、人的ミスが発生した場合のために、運用マニュアルを作成しておくことも有効です。

 今回は、高可用性システムを導入する際の留意点について紹介しました。次回は、「高可用性システムに最適なストレージ」について紹介します。

>>第3回 高可用性システムに最適なストレージとは

>> サイオステクノロジーが提供するHAクラスターソフトウェア

SNSでもご購読できます。