現状の課題
基幹システムなど障害時に大きな影響を受けるシステムは、トラブルに備えサーバーを冗長化構成にするケースが多い。冗長化構成では、障害発生時に機器からの障害イベントを検知しても、サービスに影響があるのか、縮退運用が可能なのか、などがすぐに判断できないことがある。判断の遅れは優先度や緊急度の決定プロセスの遅れにつながる。
大規模な障害が発生すると、複数の機器から同時に障害イベントや監視タスクの異常が検知されてしまう。障害対応のために、システム環境の構成図やサーバー一覧を元に、影響を受けるIT機器やサービスの特定を行うが、全体の把握に時間がかかってしまう。
また、仮想環境ではハードウエアと仮想マシンや提供される機器の関係性が動的に変わる。障害がどのサービスに影響を与えるのかが、さらに分かりにくくなっている。
解決策
システムを構成するアイテムごとに障害発生時の対応レベルを事前に決定しておく。例えば、サーバーを冗長化構成にしている場合、1台の故障では縮退運用となるので緊急対応は不要と判断する。該当サーバーが分析系のサービスを提供しているのであれば、夜間のバッチ稼働までに対応すればよいとする。こうしたことを事前に決めておく。
影響範囲を迅速に特定するには、システムを構成するアイテムごとに、障害発生時の影響範囲を確認できる資料を整備しておく。また、障害発生箇所を特定するためのシステム化を行うこともある。簡単なものであれば、ネーミングルールから影響範囲をある程度判別できる場合もある。
仮想環境については、変更される部分と変更されない部分を確認する。変更される部分は、構成情報の自動収集結果と管理資料を比較するなどして、常に正しい情報を管理することが必要だ。
Senju Familyでの実践方法
Senju DevOperation Conductorでは、ITリレーション機能を提供している。構成アイテムごとに、どの構成アイテムに対して上位、下位の関係があるかを設定することで、各構成アイテムの関係性を容易に把握できる。
ITリレーション機能で設定した構成アイテムには、その構成アイテムで発生した障害イベントの発生状況、各監視項目のステータス、ジョブスケジュールの進行状況などが表示され、設定に応じてこれらのステータスは上位の構成アイテムに伝搬される。例えば、サーバーとネットワークスイッチを上位と下位の関係として設定しておく。これによりネットワークスイッチに障害が発生した時、その影響をサーバーも受けることが画面から確認できる。
さらに、動的に変化する仮想環境の情報についても、モニタリングで取得している情報を基に関係性を自動構築することができる。障害時には常に最新の情報で影響範囲を確認することが可能になる。