JP5486038B2 - サーバ切り替え方法、およびサーバシステム - Google Patents

サーバ切り替え方法、およびサーバシステム Download PDF

Info

Publication number
JP5486038B2
JP5486038B2 JP2012090745A JP2012090745A JP5486038B2 JP 5486038 B2 JP5486038 B2 JP 5486038B2 JP 2012090745 A JP2012090745 A JP 2012090745A JP 2012090745 A JP2012090745 A JP 2012090745A JP 5486038 B2 JP5486038 B2 JP 5486038B2
Authority
JP
Japan
Prior art keywords
server
spare
disk image
management
active
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012090745A
Other languages
English (en)
Other versions
JP2012133824A (ja
Inventor
貴志 爲重
良史 高本
恵介 畑▲崎▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2012090745A priority Critical patent/JP5486038B2/ja
Publication of JP2012133824A publication Critical patent/JP2012133824A/ja
Application granted granted Critical
Publication of JP5486038B2 publication Critical patent/JP5486038B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)

Description

本発明は、フェイルオーバーの高速切り替え技術、特にディスクイメージ配信方式フェイルオーバーの高速切り替え技術に関する。
SAN(Storage Attached Network)に接続された計算機システムでは、SANに接続されたストレージサブシステム内のLU(Logical Unit)と計算機に内蔵されるHBA(Host Bus Adaptor)のセキュリティ設定を切り替えることで、ある特定のLUへアクセス可能な計算機を交替することが可能である。これを利用して、計算機に障害が発生した際に、LUは変えず計算機を切り替えるフェイルオーバー方式が実現されている。また、セキュリティ設定は変えず、HBAが持つWWN(World Wide Name)を書き換えることで、同様の効果を得るフェイルオーバー方式も実現されている。両フェイルオーバー方式は高速なフェイルオーバーを提供可能な反面、高価なストレージ装置を前提とする。
そのため、より安価なフェイルオーバー方式に対するニーズは高い。上述のフェイルオーバー方式に対し、安価なフェイルオーバー方式として、障害が発生した計算機のディスクイメージを、予備の計算機へ配信する方式が存在する(特許文献1参照)。このディスクイメージ配信方式では、高価なストレージ装置は必要ないため、安価に高可用なシステムを構築することが可能である。しかし、障害が発生してから配信を開始するため、フェイルオーバーが完了するまでに時間がかかるという問題点があった。
特開2006−11781号公報
特許文献1には高速なフェイルオーバーを実現する方法が開示されているが、障害発生後に予備の計算機へOS(Operating System)とアプリケーションを高速にインストールする方式であり、インストールする時間が必ず発生するため、十分な高速化を図ることには限界がある。
本発明の課題は、フェイルオーバーの高速切替方法、およびそのシステムを提供することにある。
本発明では、予め予備サーバへディスクイメージを配信しておくことで、インストールする時間をなくし、また予め配信しておいたディスクイメージが障害発生サーバと異なる場合も、固有情報設定の再設定や追加インストールを実施することで、再配信するよりも高速にフェイルオーバーする方法、およびそうの装置を提供する。
即ち、本発明においては、現用サーバが提供する業務のいずれかのディスクイメージを予め予備サーバへ配信しておき、現用サーバと予備サーバを管理する管理サーバが、現用サーバの障害を受け付けたときに、障害を受け付けた現用サーバの業務を予備サーバで実行可能か判定し、実行可能であれば現用サーバの業務を予備サーバで実行させる。障害を受け付けた現用サーバの業務を予備サーバで実行可能でない場合、管理サーバは、予備サーバで現用サーバの業務を実行するためのディスクイメージを予備サーバへ送付する。
言い換えるなら、上記の課題を達成するため、本発明においては、それぞれストレージ装置と処理部を有する、業務を実行する現用サーバと、少なくとも1台の予備サーバと、管理サーバとがネットワークを介して接続されるサーバシステムのサーバ切り替え方法であって、管理サーバは、予備サーバに現用サーバのディスクイメージを予め配信し、管理サーバのストレージ装置に業務提供管理サーバ情報を保持しており、管理サーバが現用サーバの障害を受け付けたとき、管理サーバのストレージ装置に保持する前記業務提供管理サーバ情報に基づいて、障害を受け付けた前記現用サーバの業務を前記予備サーバで実行可能か判定し、実行可能であれば、前記現用サーバの業務を前記予備サーバで実行するよう制御するサーバ切り替え方法を構成する。
本発明の構成により、高速フェイルオーバーが可能なサーバ切り替え方法、ならびにサーバシステムの提供が可能となる。
本発明の実施例1のシステムの全体構成図である。 実施例1のシステムにおけるディスクイメージを説明するための図である。 実施例1におけるフェイルオーバー手順を示す図である。 実施例1における管理サーバを示す図である。 実施例1における現用サーバを示す図である。 実施例1における予備サーバを示す図である。 実施例1におけるサーバのハードウェア情報管理テーブルを示す図である。 実施例1におけるディスクイメージに格納されているソフトウェアに関するテーブルを示す図である。 実施例1におけるディスクイメージが内包するハードウェアに関する情報テーブルを示す図である。 実施例1における業務提供サーバ管理テーブル(障害発生前)を示す図である。 実施例1における業務提供サーバ管理テーブル(障害発生後、切り替え中)を示す図である。 実施例1における業務提供サーバ管理テーブル(切り替え完了)を示す図である。 実施例1における業務とネットワークに関するテーブルを示す図である。 実施例1における業務の優先順位に関するテーブルを示す図である。 実施例1における障害通知管理テーブルを示す図である。 実施例1における制御プログラムの処理フローを示す図である。 実施例1における障害通知受信プログラムの処理フローを示す。 実施例1におけるネットワーク設定変更プログラムの処理フローを示す図である。 実施例1における配信指示プログラムの処理フローを示す図である。 実施例1における配信指示プログラムの処理フローを示す図である。 実施例1における配信実行プログラムの処理フローを示す図である。 実施例1におけるテスト実行プログラムの処理フローを示す図である。 実施例2のシステムの全体構成図を示す図である。 実施例2における管理サーバを示す図である。 実施例2における管理対象サーバを示す図である。 実施例2におけるストレージサブシステムのセキュリティ設定テーブルを示す図である。 実施例2におけるストレージのセキュリティ設定を示す図である。 実施例3の内蔵ディスクとSAN接続ストレージによるシステムの全体構成図を示す図である。 実施例3のSAN接続ストレージのみのシステムの全体構成図を示す図である。 図26に示す実施例3における仮想サーバを示す図である。 図27に示す実施例3の仮想サーバを示す図である。 実施例3における差分データ管理テーブルを示す図である。 各実施例におけるライセンス管理テーブルを示す図である。
以下、本発明の最良の形態を図面を用いて説明する。なお、本明細書において、サーバとは通信機能を有する通常の計算機である。
図1Aは、本発明における実施例1のサーバシステムの全体図を示している。管理サーバ101は、NW-SW104を介して、現用サーバ102および予備サーバ103と接続されている。現用サーバ102は業務サービスを提供しており、予備サーバ103は現用サーバ102において障害が発生した際に、代わって業務サービスを提供するためのサーバである。管理サーバ101は、現用サーバ102と予備サーバ103を監視する。特に本実施例のサーバシステムは、現用サーバ102において発生する障害通知を監視し、現用サーバにおいて障害が発生したと確認した際に、予備サーバ103において業務サービスを提供することで、ビジネス継続性を高めることを主目的とする。
現用サーバ102はストレージ装置122を内蔵し、予備サーバ103はストレージ装置132を内蔵しており、夫々のストレージ装置122および132には、OSや業務サービスを提供するためのミドルウェアやアプリケーションがインストールされている。管理サーバ101はストレージ装置112を内蔵している。ストレージ装置112には、業務サービスを提供する上で必要なソフトウェアがインストールされたディスクイメージ121が格納されている。
ディスクイメージ121の内容は、後で図面を用いて説明するが、業務サービスを提供する個々の現用サーバのディスクイメージ、または個々のサーバの固有情報が抜けたディスクイメージ、または共通に利用するソフトウェアのみがインストールされているだけのディスクイメージ、などがある。
現用サーバ102において、障害が発生した際には、障害が発生した現用サーバ102が提供する業務サービスと同様のディスクイメージ121を予備サーバ103へ配信することで、業務サービスを継続することが可能になる。ディスクイメージ121を配信する際、障害が発生した現用サーバ102と全く同じディスクイメージ121を配信することで、配信作業のみを行うことで業務サービスの継続を図ることが出来る。ただし、現用サーバの台数分だけディスクイメージ121を準備する必要があり、ストレージ容量も膨大になる。
それに対し、固有情報が抜けたディスクイメージを利用することで、配信後に固有情報を設定する作業が増えるものの、ディスクイメージ121を業務サービスごとに共通化することが出来る。これにより、ディスクイメージ121を保存するために必要なストレージ容量も削減することが可能になる。更に、共通に利用するソフトウェアのみがインストールされているだけのディスクイメージ121を利用することで、システム内でディスクイメージ121を共有することが可能になる。ただし、ディスクイメージを配信した後に、必要なソフトウェアをインストールしたり、OSやソフトウェアごとの固有情報を設定する作業が増えるため、若干フェイルオーバーの高速性が低下するが、従来のようになにもインストールされていないサーバへインストール作業を実施するよりも遥かに作業量や作業時間の面で優位である。
特に、本実施例では、予め予備サーバ103へディスクイメージを配信しておくことで、フェイルオーバー完了までの時間を短縮するため、再インストールは出来るだけ回避すべきである。そのため、共通分のみがインストールされているディスクイメージ121を予備サーバへ予め配信しておくことで、再インストールを回避し、より高速にフェイルオーバーを実現することが可能である。上記のような高速フェイルオーバーを実現するためのプログラム群が制御プログラム110である。また、管理テーブル群111には、現用サーバ102や予備サーバ103に関する情報テーブルやディスクイメージ121に関する情報テーブル、また業務サービスに関する情報テーブルが格納されている。これら制御プログラム110、管理テーブル111は後に詳述される。
図1Bはディスクイメージの一例を模式的に示した図である。同図におけるディスクイメージ140には、アプリケーション・ミドルウェアであるP.P. (Program Product)142、OS143、ハードウェア(アーキテクチャ)情報144が含まれている。また、P.P.142、OS143内には、固有情報141として設定値145、146が含まれている。このディスクイメージとは、一般的にサーバに接続されたストレージ装置に格納されたデータを採取したファイルである。このディスクイメージを元のサーバへリストアすることで、ディスクイメージを採取したときの状態へサーバを復旧することが出来る。また、同じハードウェア構成のサーバへリストアすることで、OSやP.P.がインストールおよび設定された状態で複製することが出来る。
ただし、図1Bに示すOS143やP.P.142は、各ハードウェアに固有な情報(MACアドレスなど)や、ソフトウェア固有の設定値(ライセンス、ホスト名、IPアドレスなど)を保持しているため、単純にディスクイメージを複製配信しただけでは、業務を提供するシステムへ組み込めないケースが存在する。そのため、サーバ毎に適切な設定を実施する必要がある。種々の実施例で利用されるディスクイメージは、OSやP.P.を内包する場合と、しない場合があり、また、ハードウェアやソフトウェアに関する設定値について、保持している場合と、しない場合があることは上述の通りである。
図2は、本実施例のシステムの高速フェイルオーバー方法について概略を図解したものである。なお、図2他における丸内数字の表示は、本明細書中にあっては、括弧内数字で表示している点に留意されたい。まず、業務サービスの優先順位や稼動実績などから予め予備サーバ103へディスクイメージ121を配信しておく。ただし、予め配信しておくことは必須ではない。ライセンス数の上限値を超える場合など、予め配信しておくことが困難なケースも存在するためである。現用サーバ102では、業務A202が提供されている。(1)障害通知211を管理サーバ101が受け取る。(2)予備サーバ103へ配信されているディスクイメージを確認し、再配信または再設定が必要か否かを判定する。(3)-1(要の場合)予備サーバ103は配信済みのディスクイメージが業務B203などの別業務のディスクイメージだった場合には再配信が必要となるため、業務A202のディスクイメージを配信する。(3)-2(否の場合)予備サーバには既に業務A202のディスクイメージが配信されているため、すぐに電源Onをすることが可能な状態である。(4)前段階までに予備サーバ103には業務A202のディスクイメージが配信されているため、予備サーバ103を本番業務LANへ参加させ、業務サービスを継続させる。上の概略に示した通り、予め配信しておいたディスクイメージ121が目的のディスクイメージだった場合には、高速なフェイルオーバーを提供することが可能である。また、再配信とまではいかなくても、再設定のみで予備サーバの設定を完了することが出来れば、同様に高速なフェイルオーバーを提供することが可能である。本実施例では、再配信を回避し再設定にて目的のサーバを構築する方法について言及している。つまり、再設定にて当初の目的を達成できる許容範囲設定についても後述する。(2)のタイミングでは、残った予備サーバをどのような構成で保持するかを判定し、必要に応じて、予備サーバへ再配信または再設定を行う。
図3は、本実施例のシステムにおける管理サーバ101の一構成例を述示している。演算を処理する中央処理部(Central Processing Unit、CPU)301、CPU301で演算するプログラムや処理を格納する記憶領域であるメモリ302、IPネットワークを介して通信を行うためのNIC(Network Interface Card)304、プログラムやデータを格納し保存する記憶領域であるストレージ装置112から構成されている。先に述べたように、サーバの構成は通常の計算機の構成である。
メモリ302には、制御プログラム群110および管理テーブル群111が格納されている。制御プログラム110(図15参照)は、障害通知受信プログラム310(図16参照)、ネットワーク設定変更プログラム311(図17参照)、配信指示プログラム312(図18参照)、配信実行プログラム313(図19参照)、テスト実行プログラム314(図20参照)から構成される。
管理テーブル群111は、サーバのハードウェア情報管理テーブル321(図6参照)、ディスクイメージに格納されているソフトウェアに関するテーブル322(図7参照)、ディスクイメージが内包するハードウェアに関する情報テーブル(図8参照)、業務提供サーバ管理テーブル324(図9、図10、図11参照)、業務とネットワークに関するテーブル325(図12参照)、業務の優先順位に関するテーブル326(図13参照)、ストレージサブシステムのセキュリティ設定テーブル327(図24参照)、障害通知管理テーブル328(図14参照)、差分データ管理テーブル329(図30参照)、ライセンス管理テーブル330(図31参照)から構成される。これらの詳細は、後で対応する図面を用いて説明される。管理サーバ101が受信する障害通知は、管理対象である現用サーバ102や予備サーバ103が持つハードウェアおよびソフトウェアによる監視機構によって実現される。
図4は、現用サーバ102の構成を述べている。現用サーバ102は、演算を処理するCPU401、CPU401で演算するプログラムや処理を格納する記憶領域であるメモリ402、IPネットワークを介して通信を行うためのNIC403、電源制御を管理サーバ101から実行するためのBMC(Baseboard Management Controller)404から構成されている。現用サーバ102の電源OnまたはOffについてBMC404を介して実行することが可能である。現用サーバ102と管理サーバ101は、NW−SW104を介して接続されている。NIC403を介して、現用サーバ102で稼動する監視プログラム(記載しない)が管理サーバ101と通信を行い、障害を通知する。前述の監視プログラムによって、現用サーバ102の設定や負荷や障害などの状態を監視することが可能である。NIC403は、管理用に設けられることもあり、業務で利用するためのNICは別途設置されることが一般的である。また、BMC404を介しても管理サーバ101とネットワーク的に接続されており、ハードウェア的な障害を通知したり、電源Onや強制的な電源Offをハードウェア的に実施することが可能である。
図5は、予備サーバ103の構成を述べている。予備サーバ103は、演算を処理するCPU501、CPU501で演算するプログラムや処理を格納する記憶領域であるメモリ502、IPネットワークを介して通信を行うためのNIC503、電源制御を管理サーバ101から実行するためのBMC504から構成されている。予備サーバ103の電源OnまたはOffについてBMC504を介して実行することが可能である。予備サーバ103と管理サーバ101は、NW−SW104を介して接続されている。NIC503を介して、予備サーバ103で稼動する監視プログラム(記載しない)が管理サーバ101と通信を行い、障害を通知する。前述の監視プログラムによって、予備サーバ103の設定や負荷や障害などの状態を監視することが可能である。NIC503は、管理用に設けられることもあり、業務で利用するためのNICは別途設置されることが一般的である。また、BMC504を介しても管理サーバ101とネットワーク的に接続されており、ハードウェア的な障害を通知したり、電源Onや強制的な電源Offをハードウェア的に実施することが可能である。予め予備サーバ103へディスクイメージを配信しておくことで、定期的または不定期に予備サーバ103を起動して、動作確認プログラムを実行したり、パッチをあてるなどのメンテナンスを実施することが出来る。
図6は、管理サーバ101のメモリ302に記憶された管理テーブル111の一つである、サーバのハードウェア構成情報管理テーブル321を詳述している。本テーブルには、各サーバに内蔵または接続されているハードウェアに関する情報が集約されている。同図において、カラム601はサーバ識別子を格納しており、本識別子によって各サーバを一意に識別する。
カラム602にはCPUアーキテクチャ、即ち処理部としてのCPUの種別が格納されている。基本的に、CPUアーキテクチャ(種別)が異なるサーバとOSブート用のディスクイメージを共有することは困難である。そのため、ディスクイメージ配信を行う場合は、なんらかの方法でCPUアーキテクチャを判別しなければ、異なるCPUアーキテクチャ(処理部の種別)のディスクイメージを配信しかねないことになるため、これを回避するためにも重要なファクタである。
カラム603には、UUID(Universal Unique IDentifier)が格納されている。UUIDは、本来、全宇宙規模で識別子が重複しないように形式が規定されている。そのため、サーバ毎に保持した場合、確実なユニーク性を保証する識別子となりえる。そのため、カラム601に格納されているサーバ識別子の候補であり、広範囲に渡ったサーバ管理には非常に有効である。ただし、カラム601には、システム管理者がサーバを識別したい識別子を使用すれば良く、また管理する対象となるサーバ間で重複することがなければ問題ないため、UUIDを使うことが望ましいものの必須とはならない。例えば、ホスト名やIPアドレス、MACアドレス(Media Access Control アドレス)、WWN(World Wide Name)などが候補として考えられる。
カラム604〜606は、HBA(Host Bus Adaptor)に関する情報を格納している。カラム604には、HBAの枚数を格納している。これにより、サーバに内蔵しているHBA枚数を把握することが可能になり、図8で詳述するディスクイメージが内包するハードウェアと照会し、組み込むべきデバイスドライバが必要十分か検証することが可能になる。
カラム605には、HBAの持つWWNを格納している。WWNは、実施例2のSAN環境において図24に示すストレージサブシステムのセキュリティ設定において、サーバ側を識別する識別子となる。そのため、SAN環境が前提のシステムにおいては、サーバ識別子としての役割を担う場合もある。
カラム606には、HBAのデバイスドライバ種別を格納している。同時に、デバイスドライバのインストール場所も記載しておくことで、デバイスドライバ種別が異なるデバイスを内蔵する場合でも、必要なデバイスドライバをどこへインストールすれば良いかが明らかになり、自動的にデバイスドライバを組み込むことが可能になる。実施例2にて詳述するが、HBAに関するカラム群は、SAN環境において重要な役割を担う。
カラム607〜609は、NICに関する情報を格納している。カラム607は、NICの枚数を格納している。カラム604と同様に、組み込むべきデバイスドライバが必要十分か検証することが可能になる。また、業務に必要なIP情報(IPアドレス、サブネットマスク、デフォルトゲートウェイなど)を割り当てる際に、NIC枚数が十分か検証することが可能となる。足りない場合は、同一NICに複数のIP情報を割り当てることになるが、運用や性能の面で問題になる場合、回避する必要があるため、判断材料として活用することが出来る。
カラム608には、NICの持つMACアドレスを格納している。MACアドレスは、一般的に一意の識別子であるため、サーバ識別子としての役割を担う場合もある。
カラム609には、NICのデバイスドライバ種別を格納している。同時に、デバイスドライバのインストール場所も記載しておくことで、デバイスドライバ種別が異なるデバイスを内蔵する場合でも、必要なデバイスドライバをどこへインストールすれば良いかが明らかになり、自動的にデバイスドライバを組み込むことが可能になる。
カラム610からカラム612は、ストレージに関する情報を格納している。ディスクイメージ配信を行う場合、ストレージ環境の整合性が取れていることが非常に重要である。
カラム610には、サーバとストレージ装置の接続I/F(インタフェース)が格納されている。接続インターフェースが異なる場合、デバイスドライバの入れ替えが必須となるため、ディスクイメージ配信を実施する際に、配信したディスクイメージが正しく動作するために必要な作業が行われているかを検証することが可能になる。
カラム611には、ストレージ装置のストレージ容量が格納されている。もし配信するディスクイメージの容量が、カラム611に格納されている値を上回る場合、ディスクイメージが入りきらず、正しく動作することが出来ない。逆に、ディスクイメージの容量が小さい場合、動作させることは可能であることが多いため、管理ポリシーによっては問題視しない運用も有り得る。
カラム612は、OSをboot(OS起動、OSブート)するストレージ装置か、データを格納するためのストレージ装置か、を格納している。データ用ストレージ装置をSAN環境などの外付けストレージ装置へ置くことは一般的であり、フェイルオーバー時にSAN環境に存在するデータディスクを引き継ぐ必要がある場合もある。なお、SAN環境に接続するケースについては、実施例2にて詳述する。
本テーブルは、上述のようにSAN構成へも適用可能である。また、本テーブルは、記載しないがメモリ容量を追記し、業務に必要な性能を満たすサーバを検索し選択することに利用することも出来る。これにより、用途に合致した性能を持つサーバをフェイルオーバー時に選択することが可能になる。本テーブルの情報は、サーバから自動収集することも可能であるが、管理者によって入力される場合もある。ただし、カラム612については、初期設定値をbootに設定し変更しない運用も考えられるが、一般的には管理者によって手入力される。また、カラム601については、本テーブルで使用される各カラムのいずれか、または複数カラムを組み合わせたものを指定することで入力を省略することが出来る。また、昇順などで自動的に割り振っても良い。
次に、図7は、管理サーバ101中の管理テーブル111中の、ディスクイメージに格納されているソフトウェアに関するテーブル322の一構成例を示している。本テーブルには、ディスクイメージに格納(インストール)されているソフトウェアや固有設定情報、および既インストールシステムに対して追加インストールすることが許容されるP.P.およびバージョンに関する情報が集められている。
カラム701には、業務識別子が格納されている。業務Aの第1サーバ、第2サーバといった個々をサーバレベルまで特定する記述方法(751から754)、業務Aで共通化されたソフトウェアのインストールを示し、業務レベルまでを特定する記述方法(755、756)、システムで共通化されたソフトウェアのインストールを示し、共通環境レベルを特定する記述方法(757、758)などが考えられる。
カラム702には、ディスクイメージ名が格納されている。ディスクイメージ名は、各ディスクイメージを特定するための識別子である。ここでディスクイメージの内容について言及する。業務識別子701にて述べた通り、目的に応じて格納する内容や種類を変えることが望ましい。例として、以下に三通りのディスクイメージについて述べる。(1)OS+ミドルウェアやアプリケーション+固有情報、(2)OS+ミドルウェアやアプリケーション(固有情報は抜かれた状態)、(3)OS(ミドルウェアやアプリケーションは未インストール、固有情報は抜かれた状態)。(1)の長所は、配信のみで業務を開始できることである。
また、予備サーバへ配信されたディスクイメージが故障した現用サーバと(1)のレベルで全く同一であれば起動だけでフェイルオーバーを実現することが出来るため、非常に高速である。(2)の長所は、配信後、固有情報の設定のみで業務を開始できることである。(1)と比較すると、固有情報を設定する時間がかかるため、サーバ起動のみでフェイルオーバーを実現できる(1)よりも、やや時間がかかる。ただし、ソフトウェアライセンスという観点から優位な場合が多い。 現在のソフトウェアのライセンス体系を鑑みると、(1)の方法ではライセンスが必要なケースが多い。しかし、(2)のケースではバックアップしたディスクイメージ扱いとなり、ライセンス料が課せられるケースの方が稀だと考えられる。(3)の長所は、配信後に、必要なP.P.のインストールや固有情報の設定が必要になるため、(1)や(2)に比べて高速なフェイルオーバーは実現できない。ただし、なにもインストールされていないサーバへインストールするよりも遥かに高速なフェイルオーバーを実現可能である。また、(2)で言及したライセンス料の問題について、(3)は最も優位である。インストールすらしていないP.P.については、ライセンス数がオーバーすることもない。予備用のライセンスを、本番サーバ数で頭割りしている計算になり、安価に高可用システムを構築することが出来る。例えば、ライセンス管理は、後で説明するライセンス管理テーブル330(図31参照)によって実現する。ディスクイメージの管理という観点からみると、(3)は共通部分が最も多いためディスクイメージの総数が少なくて済む。それに対し、(2)は固有部分が増えるため、個別化が進みディスクイメージの総数は増える。更に、(1)は各サーバで固有のディスクイメージとなるため(2)よりもディスクイメージの総数は増える。
カラム703には、OS種別を格納している。SP(サービスパック)やパッチ情報を含めることで、追加インストールするP.P.の前提条件に合致しているかを検証することが容易になる。また、セキュリティの観点からも、サーバのメンテナンスが簡単になるというメリットがある。テーブル内には特定のOSを記載しているが、その他のOSについても同様に記述することが可能であり、また実施例の効果を得ることが出来る。
カラム704には、OSが対応するCPUアーキテクチャが格納されている。CPUアーキテクチャが異なるディスクイメージを配信しても、正常にOSは起動することは出来ず、業務も提供することは不可能である。CPUアーキテクチャなどのハードウェア構成が異なるディスクイメージをサーバへ配信することを抑止することに利用することが可能である。テーブル内に記載している特定のCPUアーキテクチャ以外についても同様に記述することが可能であり、また本実施例の効果を得ることが出来る。
カラム705には、ホスト名を格納している。アプリケーションによっては、ホスト名でサーバを識別することがあるため、一般的に管理者がホスト名を付与する。ただし、管理者が与える付与規則に従って自動付与しても構わない。
カラム706には、OSのパスワードが格納されている。
カラム707には、IP情報が格納されている。IP情報には、IPアドレス、サブネットマスク、デフォルトゲートウェイなどがある。IPアドレスについては、範囲を指定することで、その時点で使用されていないIPアドレスを利用することで、IPアドレス資源の有効活用を図ることが可能である。しかし、IPアドレスは、管理者やアプリケーションによっては、サーバを識別する識別子となる可能性がある。よって、管理者によって明示的に指定される場合がある。
カラム708には、P.P.名が格納されている。業務を提供するために必要なミドルウェアやアプリケーション、夫々のバージョン情報などが格納されている。このカラムを参照することで、各業務において必要となるP.P.について情報を得ることが出来る。
カラム709には、P.P.の固有情報が格納されている。各P.P.で使用するIPアドレス(論理IPアドレス)やポート番号などである。ポート番号は、重複するとソフトウェアが起動しなかったり、起動しても正常に動作できない場合があるため、重複を避けるためにも各P.P.で使用する値を記載しておくことで、トラブルを回避することが出来る。また、追加インストールに必要なコストを記載しておくことで、追加インストールと固有情報設定で対応するか、ディスクイメージの再配信で対応するかを判定することが可能になる。P.P.のインストール場所や環境変数を記載することで、必要な設定の確実な実施や他のP.P.が期待するインストール場所へ的確にP.P.をインストールすることが可能になる。
カラム710には、他のP.P.と共存する条件を格納している。同一サーバにおいて、共存可能なP.P.やバージョンを記載したり、JRE(Java(登録商標) Runtime Environment)といった動作環境に関する制限事項を記載する。これにより、別の業務がインストールされている予備サーバであったとしても、追記インストールと固有情報設定によって再配信なしでフェイルオーバーするか、再配信してフェイルオーバーするかを選択することが可能になる。
カラム711には、配信コストを格納している。本実施例は、高速フェイルオーバーを意図している。そのため、フェイルオーバー先を、いかに高速に準備出来るかが重要である。そのため、再配信に要する時間をディスクイメージ(業務)ごとに認識し、P.P.追加インストールにかかる時間(カラム709に格納)とを併せて鑑みることで、低コストな方法を選択する必要がある。
本テーブルは、ディスクイメージに内包されるソフトウェア情報を記載していることから、CPUアーキテクチャなどのハードウェア構成が異なるサーバへディスクイメージを配信することを抑止したり、既に配信されているディスクイメージと配信したい業務との差分を追加インストールや設定変更などで吸収したりするために利用される。
本テーブルは、カラム703、カラム704、カラム705、カラム707は、ディスクイメージを採取するサーバからエージェントプログラムやOSの情報取得コマンドなどから収集可能である。管理者が入力することも可能である。他のカラムについては、管理者が入力するか、ディスクイメージ採取やP.P.インストールのタイミングで同時収集することで入力される。カラム710については、管理者が入力することが多いと考えられるが、インターネットまたはイントラネットのサーバからP.P.ごとの情報を収集し、その情報を元に記載しても構わない。
図8は、図3のディスクイメージが内包するハードウェアに関する情報テーブル323を詳述している。ディスクイメージを採取したときのサーバのハードウェア構成であり、ディスクイメージが正常動作するために必要なハードウェア構成とも言い換えることが出来る。具体的には、図6と比較することで、ディスクイメージが適用可能なハードウェア構成と配信先サーバのハードウェア構成が合致または許容範囲内にあるか判定することが可能になる。
カラム801には、ディスクイメージ名が格納されている。カラム802には、CPUアーキテクチャが格納されている。
カラム803には、UUIDが格納されている。UUIDが異なることで、ディスクイメージ配信後にOSやソフトウェアが正常動作しないことは少ないが、中にはハードウェア識別子によって動作するプラットフォームを特定しているケースがあるため、その場合は、サーバ仮想化技術を使用するなどして、UUIDを仮想的に一致させる必要がある。
カラム804からカラム809には、図6のカラム604からカラム609と同様に、HBAやNICといったI/Oデバイスに関するハードウェア情報が格納されている。
カラム810からカラム811は、図6のカラム610からカラム611と同様に、ストレージ装置に関するハードウェア情報が格納されている。
特に、カラム811に格納されているストレージ容量には注意する必要がある。図6カラム611の値が少ない(ストレージ容量がディスクイメージ容量よりも少ない)場合には、ディスクイメージを格納出来ないため、正常にフェイルオーバーすることが出来ない。
本テーブルは、エージェントプログラムまたはOSの情報取得コマンドなどから採取可能であり、自動生成することが可能である。
図9は、図3の業務提供サーバ管理テーブル324を詳述している。特に、現用サーバに障害が発生する前の状態を示している。本テーブルには、サーバの種別(現用または予備)や提供している業務、配信されているディスクイメージ、配信に関するステータス、障害に関するステータス、業務ステータス、フェイルオーバー時に予備サーバが満たすべき条件、データディスクの有無と識別子が格納されている。これにより、サーバの状態を把握し、障害が発生した場合に対処が可能になる。
カラム901には、サーバ識別子が格納されている。カラム902には、サーバの種別(現用サーバまたは予備サーバであること)が格納されている。
カラム903には、業務の識別子が格納されている。現用サーバであれば現在提供している業務、予備サーバであれば予め配信されている業務の識別子が格納されている。障害発生時には、現用サーバの本カラム903を参照し、必要な業務を確認し、予備サーバの本カラム903を参照し、必要な業務が配信されているか否かを判定する。
カラム904には、ディスクイメージ名が格納されている。カラム905には、配信ステータスが格納されている。配信ステータスとは、ディスクイメージが配信されているか否か、また固有情報が設定されているか否かを格納している。
カラム906には、障害ステータスが格納されている。現用サーバの障害情報が格納されている。記載はしないが、スタンバイ状態の予備サーバを監視し、予備サーバの障害ステータスを格納することで、予備サーバ障害への対応が可能になる。例えば、予備サーバにて、定期または不定期にチェックプログラムを実行し、障害がないかを確認し、障害発生時には予備サーバの優先順位や稼動状態などによって、予備サーバへのディスクイメージの配信構成を再構成することが可能になり、可用性を向上することが出来る。
カラム907には、業務ステータスが格納されている。現用サーバについては業務提供中か否か(ダウン)、予備サーバについてはどのようなスタンバイ状態(ホットスタンバイ、コールドスタンバイなど)なのかやフェイルオーバー発生中などを格納する。予備サーバがホットスタンバイで待機している場合、予備サーバの配信構成を再構成する際には、シャットダウンしてから再配信または再設定することが望ましい。コールドスタンバイで待機している場合、すぐに再配信が可能であり、再設定する場合は電源をOnする必要がある。予備サーバのディスクイメージの配信構成について、再構成を可能性にする情報である。
カラム908には、フェイルオーバー時に一致している必要のある範囲を格納している。例えば、カラム951やカラム952ではP.P.やOS、アーキテクチャが一致している必要があると指定しているため、もし予備サーバに予め配信されているディスクイメージが固有情報の異なるディスクイメージであっても固有情報を再設定することで対応可能となり、再配信するよりも低コストでフェイルオーバーを実現することが可能である。カラム953のように、ディスクイメージ名を指定されている場合、予め同ディスクイメージが予備サーバへ配信されていなければ、再配信となる。本テーブルは、管理者が運用ポリシーに基づき、入力して作成する必要がある。
この一致範囲(カラム908)の自由度について、詳述する。
ディスクイメージ :同一業務を持つディスクイメージからの固有情報設定変更さえも許さないため、自由度はない。確実に動作が保証出来るディスクイメージおよび設定を使用することで、可用性は向上する。
P.P. :異なるディスクイメージではあるが、固有情報を設定変更することで対応可能なため、自由度は高い。設定変更のみでフェイルオーバー用のサーバを準備出来るため、高速フェイルオーバーのニーズにも向いている。
OS :異なるディスクイメージで、かつ異なるP.P.がインストールされていても、ディスクイメージに格納されているソフトウェアに関するテーブルの他P.P.共存条件(図7カラム710参照)で許容されるP.P.であれば、必要なP.P.を追加インストールし設定することで使用することが可能なため、更に自由度は高い。P.P.固有設定に格納されているコストを評価すると、再配信の方が高速にフェイルオーバー先を準備出来る可能性があるため、準備コストの評価が重要になる(図7参照)。
アーキテクチャ :業務を提供するためには、P.P.を含めて特定する必要があるため、アーキテクチャ単体で許容という指定は意味がない。ただし、アーキテクチャやOSが異なっていても、特定のP.P.さえインストールされていれば、提供可能な業務も存在する。つまり、アーキテクチャやOSを指定せず、P.P.のみが指定されている場合には、フェイルオーバー先の候補を広げた指定が出来るため、資源の有効活用が可能となる。
図10は、図3の業務提供サーバ管理テーブル324を詳述している。特に、現用サーバに障害が発生し、切り替えが発生している状態を示している。テーブルの構成は、図9と同じであるため、各カラムについては図9を参照されたい。具体的には、カラム9*とカラム10*が対応づいている。カラム1053に格納されているサーバ3に障害が発生したケースについて述べる。シナリオは、サーバ3で障害が発生し、予備サーバであるサーバ4へフェイルオーバーをする、というものである。太枠にて囲んだ領域1055が、変更対象である。
カラム1006に格納されている障害ステータスが、カラム1053について障害発生と変更されている。また、同カラムのカラム1054についてB−1切り替え発生と変更されており、業務B−1にて障害が発生していることを示している。
カラム1005に格納されている配信ステータスが、カラム1054について配信中に変更されている。これは、障害が発生した業務において、カラム1008の条件がディスクイメージ一致を示しているにも関らず、図9カラム903を参照すると配信されていたディスクイメージが異なる業務であったため、再配信が必要であったことに起因する。
カラム1007に格納される業務ステータスが、カラム1053についてダウンと変更されている。これは、業務が提供されていないことを示している。また、カラム1054についてフェイルオーバー中と変更されており、切り替え準備が進行していることを示している。
図11は、図3の業務提供サーバ管理テーブル324を詳述している。特に、切り替えが完了した状態を示している。テーブルの構成は、図9と同じであるため、各カラムについては図9を参照されたい。先と同様、具体的には、カラム9*とカラム11*が対応づいている。
カラム1103に格納されている業務のカラム1154については、障害が発生した現用サーバで提供していた業務を引き継いでいる。配信ステータスを格納しているカラム1105のカラム1153については、情報がリセットされている。復帰させるためには、サーバの交換と再インストール(配信)が必要である。カラム1154については、配信と固有情報設定が完了したことが記載されている。業務ステータスを格納するカラム1107のカラム1154については、業務提供中が格納されており、業務を提供していることを示している。
以上説明した図9、図10、図11については、図15以降のフローチャートを用いた説明の際にも詳述する。
図12は、図3の業務とネットワークに関するテーブル325を詳述している。本テーブルは、業務を提供しているサーバが属しているネットワークに関する設定を管理するテーブルである。
カラム1201には、業務識別子が格納されている。カラム1202には、VLAN(Virtual Local Area Network)識別子が格納されている。カラム1203には、業務を提供するサーバの持つMACアドレスが格納されている。カラム1204には、業務が使用する通信プロトコルが格納されている。
カラム1205には、NW−SWごとに一意な識別子であるブリッジ識別子が格納されている。カラム1206には、NW−SW内のポートごとに一意な識別子であるポート識別子が格納されている。カラム1207には、IP情報が格納されている。
本テーブルによって、カラム1251から1253では、業務を提供するサーバとNW−SWおよびネットワークに関する設定が管理されている。
カラム1255から1256では、各業務とNW−SWおよびネットワークに関する設定が管理されている。IP情報が格納されているカラム1206やカラム1207に関して、業務ごとに使用するポート識別子やIP情報の範囲を指定することで、ポートやIPアドレスなどが既に埋まっている場合、空いているものを使用することが可能になる。これにより、フェイルオーバー時により柔軟に設定値を変更できるだけでなく、ディスクイメージ指定で配信した場合(既に固有情報も設定済み)に設定情報が重複すると業務を継続提供することが出来ない危険性があるが、これを回避することが出来る。
カラム1257には、業務に属さない予備サーバが属するネットワークグループに関する設定が管理されている。ディスクイメージを配信したり、設定を変更する際に、業務ネットワークに接続して実施することは、セキュリティや業務ネットワークの帯域保証の都合上許されないため、このようなプール状態のサーバが属するネットワークグループを確保する必要がある。
図13は、図3の業務の優先順位に関するテーブル326を詳述している。業務に優先順位をつけることで、予備サーバへ予め配信してくディスクイメージを決定することが出来る。また、優先順位が低い業務をフェイルオーバーさせていたが、更に優先順位が高い業務に障害が発生した場合に、後から障害が発生した高優先順位の業務を救いたいことがある。このような運用ポリシーを可能にするテーブルである。
カラム1301には、業務識別子を格納している。カラム1302には、優先順位の初期値を格納している。これにより、優先順位が動的に変更された場合にも、管理者の望むタイミングで元へ戻すことが可能である。
カラム1303には、現在の優先順位が格納されている。これは、既に予備サーバへ切り替わったサーバが存在する場合、そのサーバは障害再発生確率は低いと考え、他のサーバの切り替え優先順位を上げたいというニーズに対応するためである。より障害発生リスクの高いサーバのディスクイメージを予備サーバへ配信しておくことで、高速なフェイルオーバーを高確率で実現することが可能になる。
図14は、図3の障害通知管理テーブル328を詳述している。障害通知ごとに、対応を変えたい場合や業務の優先順位と組み合わせるなど、運用形態に自由度を持たせることが可能になる。
カラム1401には、通知識別子が格納されている。カラム1402には、障害情報および障害を示す閾値や障害と見なす値の範囲が格納されている。カラム1403には、優先順位やフェイルオーバーを発生させる閾値(障害通知回数など)が格納されている。
これにより、障害通知の中にも至急フェイルオーバーにて対応すべきものと、様子を見つつ、頻発するようであれば、フェイルオーバーで対応するといった対応の自由度を高めることが可能になる。また、通知には性能障害を加えることで、性能障害が発生した場合に、より性能の高いサーバを調達し、切り替えるといった運用が可能になる。例えば、データセンタなどの様々な性能のサーバを保持し提供する環境では、性能障害が発生した場合に、スタンバイするサーバをアップグレードし、より高性能なサーバへ切り替えを実施する運用やサービスが想定される。その場合、予めデータセンタとの契約が必要になると想定されるが、オンデマンドで必要な性能を持ったサーバを調達することで出来るため、利用者はシステムコストを削減することが可能になる。
図15は、本実施例におけるディスクイメージ配信方式のフェイルオーバーを実現する管理サーバ302の制御プログラム110の処理フローを示している。
ステップ1501で、障害通知受信プログラム310が障害通知を受信し、障害通知の発生原因であるサーバを切り離すか否か判定する。切り離す場合、ステップ1502へ進む。ステップ1502で、ネットワーク設定変更プログラム311を起動し、障害が発生した現用サーバ102を業務ネットワークから切り離す。
ステップ1503で、配信指示プログラム312を起動し、再配信または再設定の要否を判定した後、必要に応じて配信実行プログラム312などを起動し、再配信および再設定を実行する。
ステップ1504で、テスト実行プログラム314を起動し、設定確認や動作確認を実施し、正しく再配信または再設定が実施されているか否かを判定する。正しいと判定した場合、次のステップへ進む。誤っていると判定した場合、ステップ1503へ戻り、再配信または再設定を実行する。本ステップは、運用上必要ないと管理者が判断する場合や、予めテスト済みのディスクイメージを配信した場合など、割愛可能な場合もある。
ステップ1505で、ネットワーク設定変更プログラム311を起動し、予備サーバを業務ネットワークへ参加させる。その後、管理テーブル群111を更新する。
図16は、図3の障害通知受信プログラム310の処理フローを示している。障害通知受信プログラムは、フェイルオーバーするか否かを判定する機構も持つ。
ステップ1601で、障害通知を受信する。この通知には、障害が発生した現用サーバ102を識別するサーバ識別子となる値が格納されている。また、障害内容と障害状態を表す値が含まれている。通知は、1度で行うことが望ましいが、ネットワーク負荷などを考慮して、複数回に分けても構わない。また、障害が発生したサーバが予備サーバ103でスタンバイ継続が困難な場合は、業務提供サーバ管理テーブル324(図9から図11参照)へ障害発生の旨を記載し、フェイルオーバー先として選択しない。
ステップ1602で、障害通知管理テーブル328を参照する。
ステップ1603で、障害発生の現用サーバをフェイルオーバーするか否かを判定する。フェイルオーバーしない場合は、ステップ1604へ進む。フェイルオーバーする場合は、ステップ1605へ進む。
ステップ1604で、障害通知管理テーブル328を更新し、障害通知を待つ最初のステップへ戻る。
ステップ1605で、業務提供サーバ管理テーブル324の中の障害ステータスを更新し、処理を完了する。
図17は、図3のネットワーク設定変更プログラム311の処理フローを示している。
ステップ1701で、現用サーバ102を業務ネットワーク構成から切り離す、または予備サーバ103を業務ネットワーク構成へ追加するかを判定する。切り離す場合はステップ1702へ、追加する場合はステップ1703へ進む。
ステップ1702で、障害が発生した現用サーバを業務ネットワーク構成から切り離す。切り離す場合、予備のネットワークグループへ追加することになる(図12カラム1257参照)。
ステップ1703で予備サーバ103を業務ネットワーク構成へ追加する。追加する場合、予備のネットワークグループから障害が発生した現用サーバ102が属していた業務ネットワークグループへ追加される(図12参照)。
図18Aは、図3の配信指示プログラム312の処理フローを示している。入力情報として、障害が発生した現用サーバが通知される。
ステップ1801で、業務提供サーバ管理テーブル324を参照する(図9参照)。まず、カラム907を参照し、スタンバイ状態の予備サーバの有無を確認し、存在しない場合は、スタンバイ状態の予備サーバがない旨を通知し、全体の処理を終了する。スタンバイ状態の予備サーバ103が存在する場合、業務(カラム903)を参照し、障害が発生した現用サーバ102と同一のディスクイメージが配信されている、または同じ業務のディスクイメージが配信されている、または同じ共通基盤のディスクイメージが配信されている予備サーバの有無を確認する。
同一ディスクイメージが配信されている場合は、ステップ1805からステップ1807へ進む。同じ業務または同じ共通基盤のディスクイメージが配信されている場合は、ステップ1803へ進み、必要な固有情報設定や必要なP.P.に関する情報を収集し、ステップ1805からステップ1806へ進む。なお、ステップ1805での判定の詳細は、後で図18Bを用いて詳述する。
その他の場合は、再配信またはP.P.の追加インストールと固有情報設定が必要なケースである。カラム908を参照し、一致条件を参照する。また、予備サーバについて、サーバ識別子(カラム901)を参照する。一致条件に従い、続くステップにて必要な情報を収集する。
ステップ1802で、ディスクイメージが内包するハードウェアに関する情報テーブル323を参照する(図8参照)。障害が発生した現用サーバ102のディスクイメージが内包するハードウェア情報(CPUアーキテクチャ(カラム802)、HBA枚数(カラム804)、NIC枚数(カラム808)、ストレージ容量(カラム811))を参照し、次に予備サーバに関してハードウェア情報を参照する。CPUアーキテクチャを問わず、特定のサービスを提供さえすれば良い場合には、CPUアーキテクチャ(カラム802)が一致しなくても良い。動作実績を重視し、同一のディスクイメージ利用またはCPUアーキテクチャ利用を運用ポリシーとする場合、目的のCPUアーキテクチャを持った予備サーバが存在しないときには、その旨を通知し全体の処理を終了する。また、HBA枚数(カラム804)やNIC枚数(カラム808)、ストレージ容量(カラム611)については、予備サーバ103が現用サーバ102と同数またはそれ以上を保持していれば問題ない。問題ないことを判定するステップは、ステップ1805だが、必要な情報としてステップ1803にて、サーバのハードウェア情報管理テーブル321(図6参照)から、予備サーバ103に関するハードウェア情報を参照する。
CPUアーキテクチャが一致しなくても、業務サービスレベルで一致すれば良い場合は、業務提供サーバ管理テーブル324(図9参照)の一致範囲(カラム908)にて、その旨を指定する。この場合、ディスクイメージに格納されているソフトウェアに関するテーブル322(図7参照)に指定されているホスト名(カラム705)やIP情報(カラム707)、P.P.固有設定(カラム709)を参照し、予備サーバ103へ再設定する。再設定はステップ1806にて実施する。
ステップ1804で、ディスクイメージに格納されているソフトウェアに関するテーブル322(図7参照)を参照し、障害が発生した現用サーバ102の保持するソフトウェア情報を参照する。予備サーバ103に配信されているディスクイメージが業務レベルで一致する場合は、ホスト名(カラム705)やOSパスワード(カラム706)、IP情報(カラム707)、P.P.固有情報(カラム709)を参照し、ステップ1806にて再設定を実施する。共通基盤レベルでディスクイメージが一致する場合は、上記に加えて必要P.P.のインストールを実施した上で、P.P.固有情報(カラム709)を設定する。予備サーバ103が、障害が発生した現用サーバ102の業務を引き継げる状態にセットアップが完了した時点で、ステップ1807へ進む。
ステップ1807で、予備サーバの電源をOnし、ステップ1808へ進む。
ステップ1808で、業務の優先順位に関するテーブル326を参照する(図13参照)。
ステップ1809で、優先順位の高い業務が予備サーバへ配信された状態を維持できているか否かを判定し、出来ている場合はステップ1813へ進み、出来ていない場合はステップ1810へ進む。
ステップ1810で、配信実行プログラム313を起動し、必要な再配信または再設定を実施し予備サーバ103を再構成する。
ステップ1811で、再構成した予備サーバ103の電源をOnする。
ステップ1812で、テスト実行プログラム314を起動し、設定内容の確認や動作確認を実施し、正しく配信または設定が実行されたか否かを判定する。正しく実行された場合は、ステップ1813へ進み、誤っている場合はステップ1810へ戻り、誤り具合によって再配信または再設定する。
ステップ1813にて、業務の優先順位に関するテーブル326を更新し、処理を終了する。
予め配信しておくディスクイメージの選定方法について詳述する。
管理者が設定した業務の優先順位に応じて、優先順位の高い業務を配信しておく。
稼動実績に応じて、障害が発生しやすい業務を配信しておく。
稼動実績に応じて、障害が発生しやすいハードウェア特徴(アーキテクチャ、パーツ、ベンダなど)を持つサーバで稼動している業務を配信しておく。
ライセンスが足りない場合、異なるディスクイメージを配信する。ライセンスが足りないソフトウェアを含むディスクイメージは優先順位を下げる。
ライセンスが足りない場合、共通的なディスクイメージを配信する。ライセンスが足りないソフトウェア以外で構成されるディスクイメージを配信する。
過去の負荷変動や障害履歴から、ハードユースされている業務を配信しておく。
障害が発生したサーバと同種のハードウェアで稼動する業務を配信しておく。
障害が発生してフェイルオーバーし、予備サーバで稼動中のサーバの障害再発生確率は、周りの現用サーバよりも低いと考え、フェイルオーバーしたサーバと同一のディスクイメージは配信する優先順位を下げる。
メモリエラーやハードディスクのエラー通知など、すぐには障害ではないものの障害予兆が検出されているサーバまたは業務のディスクイメージを優先的に配信する。
予備サーバに電力消費量が少ないサーバを用意し、電力消費量が多いサーバがもしくは閾値を超える、または超えることが予期されるサーバで稼動している業務のディスクイメージを配信しておく。
などが挙げられる。
予め配信しておくディスクイメージを更新する頻度について詳述する。
定期的な見直し
繁忙期は頻繁に見直す
などが挙げられる。
予め配信しておくディスクイメージを更新する契機について詳述する。
フェイルオーバーが発生し予備サーバが使用された場合
動作テストなどで予備サーバにハードウェアおよびソフトウェア上の不具合が発見された場合
稼働時間などの使用量閾値通知
負荷変動による閾値通知
システムが更新された場合
などが挙げられる。
続いて、先のステップ1805における、障害発生時の現用サーバをすぐ引き継げる予備サーバが存在するか否かの判定処理(判定部)について図18Bを用いて詳述する。
まず、ステップ1821で、障害が発生した現用サーバ102へ配信されているディスクイメージ名と予備サーバ103へ配信されているディスクイメージ名が一致するか否かを判定する。一致する場合は、ステップ1836へ進み、「変更不要」として処理を完了する。一致しない場合はステップ1822へ進む。
ステップ1822で、予備サーバ103へ配信及び格納されているP.P.と、障害が発生した現用サーバ102で提供していた業務が担っていたP.P.と一致するか否かを判定する。一致する場合は、ステップ1827に進む。一致しない場合は、ステップ1833へ進む。
ステップ1827で、ハードウェアやOSが許容設定の範囲内か否かを判定する。範囲内である場合は、ステップ1828へ進み、「設定値を再設定」を設定し終了する。範囲内でない場合は、ステップ1837へ進む。
ステップ1837で、ハードウェアが許容設定の範囲内であるか否かを判定する。範囲内である場合は、ステップ1824へ進む。範囲内でない場合は、ステップ1826へ進み、「処理を中止」を設定する。「処理を中止」を設定される場合は、フェイルオーバーが不可である条件であることを指している。つまり、要件を満たす予備サーバ103が準備されていないことになる。この場合、管理サーバ101はGUIへの表示やメール通知、ポケベル通知などで利用者へフェイルオーバーが出来ない旨を理由とともに知らせる機能があれば、ユーザは必要なハードウェアやソフトウェア(ライセンスを含む)を準備することが出きるため、復旧作業を迅速に実施することが出来る。
ステップ1833で、予備サーバ103へ配信されているP.P.が許容設定の範囲内であるか否かを判定する。範囲内である場合は、ステップ1834へ進む。範囲内でない場合は、ステップ1823へ進む。
ステップ1834で、予備サーバ103へ配信されているP.P.やOSに設定されている設定値が、障害が発生した現用サーバ102と一致するか否かを判定する。このとき、設定値とはホスト名やIPアドレス、ライセンスのキーなどを指す。一致する場合は、ステップ1836へ進み、「変更不要」を設定し処理を終了する。一致しない場合は、ステップ1835へ進み、「設定値を再設定」を設定し処理を終了する。
ステップ1823で、予備サーバ103へ配信されているOSが障害が発生した現用サーバ102へ配信されているOSと一致するか否かを判定する。
一致する場合は、ステップ1829へ進む。一致しない場合は、ステップ1824へ進む。
ステップ1829で、コストを評価する。コストとは、OS設定値の再設定や必要P.P.のインストールや設定に必要な時間や手間を指しており、本実施例では特に時間について詳述する。OS設定値を再設定する時間や追加インストールやP.P.設定に必要な時間については、図7のカラム709に格納されている。必要なコストを算出し、カラム711に格納されている「ディスクイメージ全体を再配信するために必要なコスト」と比較する。本発明が目的とする、高速なフェイルオーバーを実現するためには、このコストが低い方を選択することが重要である。
追加インストールの方が低コストである場合は、ステップ1830へ進み、「追加インストールと再設定」を設定し、処理を終了する。追加インストールの方が低コストでない場合は、ステップ1824へ進む。
ステップ1824で、予備サーバ103と障害が発生した現用サーバ102のハードウェア情報が一致するか否かを判定する。CPUアーキテクチャやメモリ搭載量だけでなく、I/Oデバイスの数や種類も比較する。一致する場合は、ステップ1831へ進み、「合致するディスクイメージを再配信」を設定し、処理を終了する。一致しない場合は、ステップ1825へ進む。
ステップ1825で、予備サーバ102のハードウェア構成が許容設定の範囲内であるか否かを判定する。
範囲内である場合、ステップ1832へ進み、「同一業務を提供するディスクイメージを再配信」を設定し、処理を終了する。ステップ1831で設定する値との違いは、ステップ1831で設定された値によって再配信するディスクイメージは、障害が発生した現用サーバ102で使用されているディスクイメージと同じディスクイメージである。それに対し、ステップ1832で設定される値によって再配信されるディスクイメージは、ハードウェア構成が異なっていることからCPUアーキテクチャが異なるものの同一業務を提供できるディスクイメージであったり、接続デバイスの性能が異なるものの同一業務を提供できるディスクイメージであったりする。
図19は、図3の配信実行プログラム313の処理フローを示している。
本プログラムは、配信または設定を実行するプログラムであり、実行の要否は前段プログラムによって決定されている。入力は、再配信または再設定の指定、対象となるサーバと業務またはディスクイメージの指定である。
ステップ1901で、ディスクイメージに格納されているソフトウェアに関するテーブル322を参照(図7参照)し、配信や設定時に必要な値を取得する。
ステップ1902で、再配信か否かを判断し、再配信の場合はステップ1903へ進み、再配信でない(再設定)場合はステップ1904へ進む。
ステップ1903で、指定された業務のディスクイメージを予備サーバ103へ配信し、ステップ1904へ進む。
ステップ1904で、再設定か否かを判断し、再設定の場合はステップ1905へ進み、再設定でない場合は処理を完了する。ステップ1905で、固有情報を再設定する。P.P.の追加インストールが必要な場合、インストール後に固有情報を設定する。本ステップ完了後、処理を終了する。
図20は、図3のテスト実行プログラム314の処理フローを示している。
本プログラムは、固有設定が設定すべき値になっているか検査したり、動作が正しいことを検査することを目的としている。本実施例では、設定値が正しいことを検査するプログラムについて詳述する。
ステップ2001で、サーバおよびP.P.の固有情報設定値を取得する。情報取得方法は、エージェントプログラムをサーバのOS上で稼動させて取得する方法やCIM(Common Information Model)を利用した情報取得方法などがあるが、いかなる方法でも構わない。
ステップ2002で、ディスクイメージに格納されているソフトウェアに関するテーブル322を参照(図7参照)する。
ステップ2003で、ステップ2001とステップ2002で取得または参照した値を比較した後、正誤を判定し処理を終了する。
動作を検証するテストプログラムの場合、業務に即した入力を与え、正常に処理を行った後、正しい結果を出力できるか、処理ログや出力結果を評価する、といった流れになる。
業務参加前、または配信や設定が完了した時点で、テストプログラムを用いて検証を行うことで、予備サーバへフェイルオーバーしたものの、正しく動作せず、ビジネス継続に悪影響を及ぼすことを回避することが出来る。
本実施例の利点として、コールドスタンバイだけでなく、ホットスタンバイで待機することで、従来のように障害発生時にディスクイメージ配信を開始する方式に比べて、更に高速なフェイルオーバーを実現することが可能な点が挙げられる。予め配信しておくこと、そして、予備サーバの構成を状況に応じて再構成する柔軟さによって、実現される。
なお、以上詳述した本実施例において、固有情報である設定値が格納されていないディスクイメージを使う場合は、共通化できるサーバがn台存在する場合に、ディスクイメージを保存するために必要なストレージ容量をほぼ1/nにすることが出来る。増えるデータは、設定情報である。n台分の設定情報は、非常に小さなストレージ容量しか必要としない(数バイトから数キロバイト)ため、設定情報が増えたとしても、ディスクイメージ(数ギガバイトから数十ギガバイト)を共通化する効果は大きい。具体的には、100台の同一業務提供サーバが現用サーバとして稼動していた場合、1台あたり10ギガバイトのディスクイメージを擁していたとすると、設定値を固定で持った場合には1000ギガバイト(1テラバイト)のストレージ容量が必要である。共通化した場合、10ギガバイトだけでよくなり、99%のストレージ容量削減が可能である。
また、予備サーバへ、共通化したディスクイメージを配信しておいた場合、多くの現用サーバがフェイルオーバー先として選択することが出来る。設定値を予め設定した場合は、なにも変更をしない状態では1台の現用サーバのフェイルオーバー先にしか成り得ない。しかし、固有情報である設定値を障害発生時に設定または変更することで、複数の現用サーバのフェイルオーバー先となることが可能である。例えば、優先順位の高い現用サーバの設定値を、予備サーバへ設定しておく。障害が他のサーバ(ただし、同一業務)で障害が発生した場合、再配信をすると数十分かかるところを、数十秒の設定変更でフェイルオーバーを実施することが可能になる。再配信にかかる時間を30分、再設定にかかる時間を60秒とすれば、96.7%の高速化を図ることが可能である。
さて、現用サーバが複数存在し、障害が予備サーバ台数を上回って発生する場合、優先順位に基づき、救済する現用サーバおよび業務を選択することができる。同様に、予備サーバが複数ある場合、適切な予備サーバを選択する必要がある。障害発生の現用サーバに格納されているディスクイメージと同じディスクイメージを持つ予備サーバが存在する場合は、同じディスクイメージを格納する予備サーバを選択する。
特に、上記条件を満たす予備サーバが複数台、存在する場合は、現用サーバで提供している業務が優先するパラメータを記載した優先順位テーブルに基づき、予備サーバを選択する。予備サーバの性能に関して範囲指定することで、必要以上の性能を要求することを防止することが出来る。これにより、後から高い性能を必要とする現用サーバで障害が発生したとしても、必要な性能を備えた予備サーバが余っている可能性を高めることが出来る。また、性能の高い予備サーバを譲るために必要な再配信も防ぐことが出来るため、他のサーバを停止させて再配信するような事態も防止出来る効果がある。また、予備サーバ選択の優先順位は、予備サーバ側の状況を反映しても良い。例えば、稼動実績に基づいて選択することで「連続稼動させない」という稼動ポリシーを適用することができ、また逆に「連続稼動=信頼性が高い」と考えて「稼動を集中させる」という稼動ポリシーを適用することも可能である。また、「隣り合う予備サーバは出来るだけ稼動させない=離れた予備サーバから稼動させる」稼動ポリシーによって発熱を分散させたり、電力消費の局所化を防止し電力供給量の上限までで稼動させるといった運用が可能になる。優先順位を評価した結果、評価が同一の場合は、どれを選択しても良い。例えば、シリアル番号が最若番のものを選択する方法もある。また、前記のように配置や電力、発熱などに注目した制御も可能である。
上記条件を満たす予備サーバが存在しない場合は、満たす要件を探っていく。例えば、全ての予備サーバのコストを算出したあと、最もコストの低い予備サーバを抽出する。つまり、再配信が必要か否かの判定と同じ動作をしながら、予備サーバを準備するコストが最低の予備サーバを選択する。場合によっては、フェイルオーバーを中止し、ユーザへその旨を通知またはログへ記録するなどのユーザ通知処理を実施する。
図21は、実施例2のシステムの全体図を示している。実施例1のシステムとの違いは、ストレージ装置が内蔵ハードディスク型からSANに接続されたストレージサブシステム2106に変更されている。ストレージサブシステム2106と各サーバ(2101、2102、2103)は、NW−SW2105によって接続されている。また、ストレージサブシステムを制御するストレージサブシステム管理機構2121と管理サーバ2101がNW−SW2104を介して接続されている。
管理サーバ2101は、NW−SW2104を介して、現用サーバ2102および予備サーバ2103と接続されている。現用サーバ2102は業務サービスを提供しており、予備サーバ2103は現用サーバ2102において障害が発生した際に、代わって業務サービスを提供するためのサーバである。管理サーバ2101は、現用サーバ2102と予備サーバ2103を監視する。特に本実施例においては、現用サーバ2102において発生する障害通知を監視し、現用サーバにおいて障害が発生したと確認した際に、予備サーバ2103において業務サービスを提供することで、ビジネス継続性を高めることを主目的とする。
現用サーバ2102および予備サーバ2103の起動ディスクは、ストレージサブシステム2106内のLU(Logical Unit)2122であり、LU2122にOSや業務サービスを提供するためのミドルウェアやアプリケーションがインストールされている。管理サーバ2101はストレージサブシステム2106へ接続されており、LU2132内に業務サービスを提供する上で必要なソフトウェアがインストールされたディスクイメージ2141が格納されている。特に、LU群2131には、ディスクイメージ2141が格納されたLU2132の集合とする。
ディスクイメージ2141の内容は、先の実施例同様、業務サービスを提供する個々の現用サーバのディスクイメージ、または個々のサーバの固有情報(設定値)が抜けたディスクイメージ、または共通に利用するソフトウェアのみがインストールされているだけのディスクイメージ、などである。現用サーバ2102において、障害が発生した際には、障害が発生した現用サーバ2102が提供する業務サービスと同様のディスクイメージ2141を予備サーバ2103へ配信することで、業務サービスを継続することが可能になる。ディスクイメージ2141を配信する際、障害が発生した現用サーバ2102と全く同じディスクイメージ2141を配信することで、配信作業のみを行うことで業務サービスの継続を図ることが出来る。ただし、現用サーバの台数分だけディスクイメージ2141を準備する必要があり、ストレージ容量も膨大になる。
それに対し、固有情報が抜けたディスクイメージを利用することで、配信後に固有情報を設定する作業が増えるものの、ディスクイメージ2141を業務サービスごとに共通化することが出来る。これにより、ディスクイメージ2141を保存するために必要なストレージ容量も削減することが可能になる。更に、共通に利用するソフトウェアのみがインストールされているだけのディスクイメージ2141を利用することで、システム内でディスクイメージ2141を共有することが可能になる。ただし、ディスクイメージを配信した後に、必要なソフトウェアをインストールしたり、OSやソフトウェアごとの固有情報を設定する作業が増えるため、フェイルオーバーの完全な高速化を図ることはできないが、なにもインストールされていないサーバへインストール作業を実施するよりも遥かに作業量や作業時間の面で優位である。特に、本実施例では、予め予備サーバ2103へディスクイメージを配信しておくことで、フェイルオーバー完了までの時間を短縮することを目的としているため、再インストールは出来るだけ回避すべきである。そのため、共通分のみがインストールされているディスクイメージ2141を予備サーバへ予め配信しておくことで、再インストールを回避し、より高速にフェイルオーバーを実現することが可能である。
上記のような高速フェイルオーバーを実現するためのプログラム群が制御プログラム110である。また、管理テーブル群111には、現用サーバ2102や予備サーバ2103に関する情報テーブルやディスクイメージ2141に関する情報テーブル、また業務サービスに関する情報テーブルが格納されている。ここで、ディスクイメージを配信する方法は特定しないため、IPネットワーク経由で実施しても良いし、ストレージネットワークを経由しても良いし、ストレージサブシステム2106内のLU間ディスクコピーを利用しても良い。また、管理サーバ2101が内蔵ディスクを保持し、内蔵ディスク内にディスクイメージ2141を格納する場合も、本実施例の変形例の範囲内である。よって、管理サーバ2101とストレージサブシステム2106がNW−SW2105を介して接続されていないケースも存在し、内蔵ディスクとSAN接続が混在するケースも存在する。
図22は、本実施例の管理サーバ2101の一構成例を示している。演算を処理するCPU2201、CPU2201で演算するプログラムや処理を格納する記憶領域であるメモリ2202、IPネットワークを介して通信を行うためのNIC2203、ストレージサブシステム2106と通信を行うためのHBA2204、プログラムやデータを格納し保存する記憶領域であるLU2122(ストレージサブシステム2106内に存在し、HBAを経由してNW−SW2105を介して管理サーバ2101と接続)から構成されている。メモリ2202には、図3の構成同様、制御プログラム群110および管理テーブル群111が格納されている。
制御プログラム110(図15参照)は、先の実施例同様、障害通知受信プログラム310(図16参照)、ネットワーク設定変更プログラム311(図17参照)、配信指示プログラム312(図18参照)、配信実行プログラム313(図19参照)、テスト実行プログラム314(図20参照)から構成される。
管理テーブル群111は、先の実施例同様、サーバのハードウェア情報管理テーブル321(図6参照)、ディスクイメージに格納されているソフトウェアに関するテーブル322(図7参照)、ディスクイメージが内包するハードウェアに関する情報テーブル(図8参照)、業務提供サーバ管理テーブル324(図9、図10、図11参照)、業務とネットワークに関するテーブル325(図12参照)、業務の優先順位に関するテーブル326(図13参照)、ストレージサブシステムのセキュリティ設定テーブル327(図24参照)、障害通知管理テーブル328(図14参照)などから構成される。
管理サーバ2101が受信する障害通知は、管理対象である現用サーバ2102や予備サーバ2103が持つハードウェアおよびソフトウェアによる監視機構によって実現される。管理サーバ2101が内蔵ディスクを保持し、内蔵ディスク内にディスクイメージ2141を格納する場合も、本実施例でカバーする範囲である。よって、管理サーバ2101とストレージサブシステム2106がNW−SW2105を介して接続されていないケースも存在し、内蔵ディスクとSAN接続が混在するケースも存在する。
図23は、現用サーバ2102および予備サーバ2103の構成を述べている。現用サーバ2102および予備サーバ2103は、演算を処理するCPU2301、CPU2301で演算するプログラムや処理を格納する記憶領域であるメモリ2302、IPネットワークを介して通信を行うためのNIC2303、電源制御を管理サーバ2101から実行するためのBMC2304、ストレージサブシステムと通信を行うためのHBA2305から構成されている。現用サーバ2102および予備サーバ2103の電源OnまたはOffについてBMC2304を介して実行することが可能である。
現用サーバ2102および予備サーバ2103と管理サーバ2101は、NW−SW2104を介して接続されている。NIC2303を介して、現用サーバ2102および予備サーバ2103で稼動する監視プログラム(記載しない)が管理サーバ2101と通信を行い、障害を通知する。前述の監視プログラムによって、現用サーバ2102および予備サーバ2103の設定や負荷や障害などの状態を監視することが可能である。NIC2303は、管理用に設けられることもあり、業務で利用するためのNICは別途設置されることが一般的である。また、BMC2304を介しても管理サーバ2101とネットワーク的に接続されており、ハードウェア的な障害を通知したり、電源Onや強制的な電源Offをハードウェア的に実施することが可能である。
図24は、ストレージサブシステムのセキュリティ設定テーブル327を詳述している。
カラム2401に、ホストグループ名が格納されている。カラム2402に、WWNが格納されている。カラム2403に、論理LUが格納されている。カラム2404に、カラム2403に対応する物理LUが格納されている。カラム2405には、ストレージサブシステム2105のポート番号が格納されている。
ホストグループに登録されているWWNは、同じグループに登録されているLUへのアクセスのみを許可される。つまり、特定サーバ以外は、LUへアクセスすることが禁止されている。
図25は、管理サーバ2101や現用サーバ2102および予備サーバ2103とLU2122との対応付けを行う機能を有するセキュリティ機能の動作を図示している。サーバ1(2501)はHBA1(2502)を有し、HBA1(2502)にはWWN1(2503)が記録されている。サーバ2(2511)はHBA2(2512)を有し、HBA2(2512)にはWWN2(2513)が記録されている。サーバ1(2501)とサーバ2(2511)はNW−SW(ネットワークスイッチ)2105に接続され、NW−SW2105からはストレージサブシステム2106に接続されている。
セキュリティ機能2520によりサーバ1(2501)には、物理ディスクLU10(2533)、LU11(2534)に対応した仮想ディスクLU0(2531)、LU1(2532)へアクセスすることができる。一方、サーバ2(2511)には、物理ディスクLU21(2543)、LU22(2544)に対応した仮想ディスクLU0(2541)、LU1(2542)へアクセスすることができる。サーバ1(2501)から、物理ディスクLU21(2543)やLU22(2544)にアクセスすることはできない。
図26は、実施例3のシステムの全体図を示している。実施例1との違いは、現用サーバや予備サーバが、仮想化機構2631を用いた仮想サーバ2622となっている点と、仮想化機構2631が持つI/O振分プログラム2641によって、差分をストレージサブシステム2605内のLU2652へ保存することが出来るようになっている点である。これにより、現用サーバで障害が発生した場合、予備サーバで引き継ぐ業務は最新のデータで再開することが可能になる。
管理サーバ2601は、NW−SW2604を介してストレージサブシステム2605を管理するストレージサブシステム管理機構2651と接続されており、同様にNW−SW2604を介してサーバ2603と接続されている。
サーバ2603は、演算を処理するCPU2621、CPU2621で演算するプログラムや処理を格納する記憶領域であるメモリ2622、IPネットワークを介して通信を行うためのNIC2625、ストレージサブシステムと通信を行うためのHBA2626、電源制御を管理サーバ2601から実行するためのBMC2624、プログラムやデータを格納し保存する記憶領域であるLU2652(ストレージサブシステム2605内に存在し、HBA2626を経由してNW−SW2602を介してサーバ2603と接続)から構成されている。また、記憶領域としてはストレージ装置2623が接続されている。
メモリ2622上には、サーバ2603の資源(CPU、メモリ、I/Oデバイスなど)を共有して使用するためのサーバ仮想化を実現する仮想化機構2631が稼動している。仮想化機構2631が、サーバ2603の資源を分割し、仮想サーバ2632へ資源を割り付けている。仮想化機構2631内のI/O振分プログラム2641は、仮想サーバ2632のI/O要求を振り分け、仮想サーバ2632が起動したときに使用するディスクと、起動した後の変化分を記憶する差分データディスクに書き込む。起動用のディスクは、ストレージ装置2623に格納されていても良いし、ストレージサブシステム2605内のLU2652に格納されていても良い。ただし、差分データディスクは、ストレージサブシステム2605内のLU2652に格納されている必要があり、サーバ2603以外のサーバや仮想サーバからアクセスが可能(共有可能)であることで、サーバ2603や仮想サーバ2632に障害が発生し、ディスクイメージ配信型のフェイルオーバーをする際でも、最新のデータで業務を再開することが可能になる。図26では、内蔵ディスクとSANに接続されたストレージサブシステムが混在する環境における実施例を示している。
図27は、図26におけるストレージ装置2623が存在せず、起動用ディスクがストレージサブシステム2705内のLU2753へ格納されている、実施例3の変形構成例を示している。その他の対応関係は、図26と図27の構成が、260*が270*へと対応づくことで示されている。このケースでは、起動ディスクも引き継ぐことが出来るが、OSやソフトウェア障害の場合には、ディスクイメージを配信して復旧する必要がある。
図28に、図26の仮想サーバ2632の構成を詳述している。演算を処理する仮想CPU2801、CPU2801で演算するプログラムや処理を格納する記憶領域である仮想メモリ2802、IPネットワークを介して通信を行うための仮想NIC2803、電源制御を管理サーバ2601から実行するための仮想BMC2804、仮想ストレージ装置2805から構成されている。
図29に、図27の仮想サーバ2732の構成を詳述している。図28との差は、ストレージとの接続デバイスである。仮想ストレージ装置2805に代わり、ストレージサブシステム2705と接続するための仮想HBA2905が接続されている。
演算を処理する仮想CPU2901、CPU2901で演算するプログラムや処理を格納する記憶領域である仮想メモリ2902、IPネットワークを介して通信を行うための仮想NIC2903、ストレージサブシステムと通信を行うためのHBA2905、電源制御を管理サーバ2601から実行するための仮想BMC2904から構成されている。
図30は、本実施例における差分データ管理テーブルを詳述している。
カラム3001に、サーバ識別子が格納されている。カラム3002に、仮想サーバ識別子が格納されている。
カラム3003に、オリジナルボリュームが格納されている。オリジナルボリュームは、OS起動用のディスクであることもあるし、データが格納されたディスクである場合もある。起動用ディスクかデータ用ディスクかは、カラム3005へ種別として格納されている。
カラム3004へは、差分ボリュームが格納されている。本実施例の構成にあっては、フェイルオーバー発生時には、この差分ボリュームを引き継ぐことで、最新の状態で業務を再開することが可能になる。
図31は、図3に示したライセンス管理テーブル330を詳述している。
カラム3101には、ライセンス品目が格納されている。カラム3102には、ライセンス残数が格納されている。
ライセンス残数を管理することにより、ライセンス数が0になったソフトウェアを含むディスクイメージを予備サーバへ予め配布することは出来ない可能性が高い(ライセンス契約に依存)。そのため、業務の優先順位に関するテーブル326内の優先順位(カラム1303)を更新する必要が発生する。
以上、種々の実施例に基づき詳述した本発明は、SAN接続されているストレージサブシステムの接続方法は、iSCSIであっても同様に適用することが可能である。
101…管理サーバ、
102…現用サーバ、
103…予備サーバ、
110…制御プログラム、
111…管理テーブル、
121、140…ディスクイメージ、
122、132…ストレージ装置、
202…業務A、
203…業務B、
211…障害通知、
212…再配信要否判定、
213…電源On、
214…業務ネットワークへ追加、
301…CPU、
302…メモリ、
304…NIC、
310…障害通知受信プログラム、
311…ネットワーク設定変更プログラム、
312…配信指示プログラム、
313…配信実行プログラム、
314…テスト実行プログラム。

Claims (10)

  1. それぞれストレージ装置と処理部を有する、現用サーバと、少なくとも一台の予備サーバと、管理サーバとがネットワークを介して接続されるサーバシステムのサーバ切り替え方法であって、
    前記管理サーバは、
    前記予備サーバに前記現用サーバのディスクイメージを予め配信し、
    前記管理サーバの前記ストレージ装置に、予備サーバに関する情報と、前記ディスクイメージ内のソフトウェア管理情報を保持しており、
    前記管理サーバは、前記現用サーバの障害を受け付けた場合に、障害を受け付けた前記現用サーバの業務を前記予備サーバで実行可能かを判定するときに、
    前記予備サーバに関する情報と前記ソフトウェア管理情報に基づいて、前記現用サーバと前記予備サーバのソフトウェアが持つ設定値が異なるか否かを判定し、前記設定値が異なる場合に、前記予備サーバのソフトウェアの設定値を変更することで、前記現用サーバの業務を前記予備サーバで実行するよう制御する
    サーバ切り替え方法。
  2. 請求項1記載のサーバ切り替え方法であって、
    前記管理サーバは、前記予備サーバに前記現用サーバのディスクイメージを予め配信するディスクイメージとして、共通分を事前配信するよう制御する
    サーバ切り替え方法。
  3. 請求項1記載のサーバ切り替え方法であって、
    前記管理サーバは、前記予備サーバに前記現用サーバのディスクイメージを予め配信した前記配信後に、前記予備サーバに追加インストールを行うよう制御する
    サーバ切り替え方法。
  4. 請求項1記載のサーバ切り替え方法であって、
    前記管理サーバは、障害予兆を検出したら、障害予兆が検出された前記現用サーバもしくは業務のディスクイメージを前記予備サーバに配信するよう制御する
    サーバ切り替え方法。
  5. 請求項1記載のサーバ切り替え方法であって、
    前記管理サーバは、障害を受け付けた前記現用サーバをネットワークから切り離し、前記予備サーバに再配信もしくは再設定を行い、再配信もしくは再設定が正しいかを判定し、正しい場合に、前記予備サーバをネットワークに参加させるよう制御する
    サーバ切り替え方法。
  6. サーバシステムであって、
    現用サーバと、
    少なくとも1台の予備サーバと、
    管理サーバとがネットワークを介して、前記現用サーバと前記予備サーバに接続される管理サーバとを含み、
    前記現用サーバ、前記予備サーバ、及び前記管理サーバは、それぞれ処理部とストレージ装置を備えており、
    前記管理サーバの前記処理部は、前記現用サーバのディスクイメージを前記予備サーバの前記ストレージ装置に予め配信し、前記管理サーバの前記ストレージ装置に予備サーバに関する情報と、前記ディスクイメージ内のソフトウェア管理情報を保持し、
    前記管理サーバは、前記現用サーバの障害を受け付けたときに、障害を受け付けた前記現用サーバの業務を前記予備サーバで実行可能か判定するとき、前記予備サーバに関する情報と前記ソフトウェア管理情報に基づいて、前記現用サーバと前記予備サーバのソフトウェアが持つ設定値が異なるか否かを判定し、前記設定値が異なる場合に、前記予備サーバのソフトウェアの設定値を変更することで、前記現用サーバの業務を前記予備サーバで実行するよう制御する
    サーバシステム。
  7. 請求項6記載のサーバシステムであって、
    前記管理サーバは、前記予備サーバに前記現用サーバのディスクイメージを予め配信するディスクイメージとして、共通分を事前配信するよう制御する
    サーバシステム。
  8. 請求項6記載のサーバシステムであって、
    前記管理サーバは、前記予備サーバに前記現用サーバのディスクイメージを予め配信した前記配信後に、前記予備サーバに追加インストールを行うよう制御する
    サーバシステム。
  9. 請求項6記載のサーバシステムであって、
    前記管理サーバは、障害予兆を検出したら、障害予兆が検出された前記現用サーバもしくは業務のディスクイメージを前記予備サーバに配信するよう制御する
    サーバシステム。
  10. 請求項6記載のサーバシステムであって、
    前記管理サーバは、障害を受け付けた前記現用サーバをネットワークから切り離し、前記予備サーバに再配信もしくは再設定を行い、再配信もしくは再設定が正しいかを判定し、正しい場合に、前記予備サーバをネットワークに参加させるよう制御する
    サーバシステム。
JP2012090745A 2012-04-12 2012-04-12 サーバ切り替え方法、およびサーバシステム Expired - Fee Related JP5486038B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012090745A JP5486038B2 (ja) 2012-04-12 2012-04-12 サーバ切り替え方法、およびサーバシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012090745A JP5486038B2 (ja) 2012-04-12 2012-04-12 サーバ切り替え方法、およびサーバシステム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2007302697A Division JP5011073B2 (ja) 2007-11-22 2007-11-22 サーバ切り替え方法、およびサーバシステム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2014030113A Division JP5744259B2 (ja) 2014-02-20 2014-02-20 サーバ切り替え方法、サーバシステム、及び管理計算機

Publications (2)

Publication Number Publication Date
JP2012133824A JP2012133824A (ja) 2012-07-12
JP5486038B2 true JP5486038B2 (ja) 2014-05-07

Family

ID=46649267

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012090745A Expired - Fee Related JP5486038B2 (ja) 2012-04-12 2012-04-12 サーバ切り替え方法、およびサーバシステム

Country Status (1)

Country Link
JP (1) JP5486038B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014048635A (ja) * 2012-09-04 2014-03-17 Hitachi Solutions Ltd ハードディスク暗号化プログラムおよびハードディスク暗号化システム
WO2016027381A1 (ja) * 2014-08-22 2016-02-25 株式会社日立製作所 管理サーバ、計算機システム、及び方法
CN110046081A (zh) * 2019-03-18 2019-07-23 平安普惠企业管理有限公司 性能测试方法、性能测试装置、电子设备及存储介质

Also Published As

Publication number Publication date
JP2012133824A (ja) 2012-07-12

Similar Documents

Publication Publication Date Title
JP5011073B2 (ja) サーバ切り替え方法、およびサーバシステム
US20200387431A1 (en) Providing executing programs with access to stored block data of others
JP4462024B2 (ja) ディスク引き継ぎによるフェイルオーバ方法
US9262273B2 (en) Providing executing programs with reliable access to non-local block data storage
US7653901B2 (en) Quick deployment method
US9529550B2 (en) Managing access of multiple executing programs to non-local block data storage
US7383327B1 (en) Management of virtual and physical servers using graphic control panels
US7941510B1 (en) Management of virtual and physical servers using central console
EP2426605B1 (en) Providing executing programs with reliable access to non-local block data storage
US8713127B2 (en) Techniques for distributed storage aggregation
US20060155912A1 (en) Server cluster having a virtual server
WO2011074284A1 (ja) 仮想計算機の移動方法、仮想計算機システム及びプログラムを格納した記憶媒体
CN103677967A (zh) 一种数据库的远程数据服务系统及任务调度方法
JP2010257274A (ja) 仮想化環境におけるストレージ管理システム及びストレージ管理方法
US11119872B1 (en) Log management for a multi-node data processing system
US20140173332A1 (en) Cascading Failover Of Blade Servers In A Data Center
JP5316616B2 (ja) 業務引き継ぎ方法、計算機システム、及び管理サーバ
WO2015052836A1 (ja) ストレージ装置及びフェールオーバ方法
JP5486038B2 (ja) サーバ切り替え方法、およびサーバシステム
US20220269571A1 (en) Virtual machine configuration update technique in a disaster recovery environment
JP5744259B2 (ja) サーバ切り替え方法、サーバシステム、及び管理計算機
JP5267544B2 (ja) ディスク引き継ぎによるフェイルオーバ方法
JP4877368B2 (ja) ディスク引き継ぎによるフェイルオーバ方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120412

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131227

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140220

R150 Certificate of patent or registration of utility model

Ref document number: 5486038

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees