(57)【要約】【課題】一部の故障がシステム全体の再開（中断）に発展することを抑止し、システム全体としての中断時間を短縮する。【解決手段】サーバプロセス管理システムは、複数のプロセスの各々に対して、故障したプロセスとの整合性を保障するために当該故障したプロセスと同時に再起動が必要な他のプロセスを定義したプロセスグループ情報を保持する。そして、サーバＳＶ−１の管理プロセスＸ、サーバＳＶ−２の管理プロセスＹおよびサーバＳＶ−３の管理プロセスＺは、各々、いずれかのプロセスが障害で故障した際には、上記プロセスグループ情報を参照し、再開するプロセス群を特定する。【選択図】　図１
2004102492.tif 000002
【特許請求の範囲】
【請求項１】
複数のプロセスが連携して構築されている管理対象システムのプロセス再開方法において、
前記複数のプロセスの各々に対して、故障したプロセスとの整合性を保障するために当該故障したプロセスと同時に再起動が必要な他のプロセスをプロセスグループ情報として定義し、いずれかのプロセスが障害で故障した際に、前記プロセスグループ情報に基づいて、再開するプロセス群を特定することを特徴とするプロセス再開方法。
【請求項２】
前記プロセス再開方法において、
一方のプロセスグループ情報に他方のプロセスグループ情報を含むとき、他方のプロセスグループ情報に含まれるプロセスが障害で故障した場合は、他方のプロセスグループ情報内のプロセスのみを再起動し、一方のプロセスグループ情報にのみ含まれるプロセスが障害で故障した場合は、他方のプロセスグループ情報を含む一方のプロセスグループ情報に属する全てのプロセスを再起動することを特徴とする請求項１に記載のプロセス再開方法。
【請求項３】
前記複数のプロセスのうち少なくとも１つ以上が市販アプリケーションであり、かつ少なくとも１つ以上が前記市販アプリケーションとの連携を前提として開発された独自プロセスである前記複数のプロセスの各々をプロセスグループ情報として定義することを特徴とする請求項１または請求項２に記載のプロセス再開方法。
【請求項４】
複数のサーバが連携して構築されている管理対象システムのサーバ再開方法において、
前記複数のサーバの各々に対して、故障したサーバとの整合性を保障するために当該故障したサーバと同時に再起動が必要な他のサーバをサーバグループ情報として定義し、いずれかのサーバが障害で故障し、再開した際に、前記サーバグループ情報に基づいて、再開するサーバ群を特定することを特徴とするサーバ再開方法。
【請求項５】
前記サーバ再開方法において、
一方のサーバグループ情報に他方のサーバグループ情報を含むとき、他方のサーバグループ情報に含まれるサーバが障害で故障した場合は、他方のサーバグループ情報内のサーバのみを再起動し、一方のサーバグループ情報にのみ含まれるサーバが障害で故障した場合は、他方のサーバグループ情報を含む一方のサーバグループ情報に属する全てのサーバを再起動することを特徴とする請求項４に記載のサーバ再開方法。
【請求項６】
複数のサーバまたは複数のプロセス、あるいは双方が連携して構築されている管理対象システムの救済起動方法において、
同一サーバ上に起動されることが許容不可なプロセス、サーバ、プロセスグループ、サーバグループの関係を示す排他条件情報を定義し、
前記複数のサーバもしくは前記複数のプロセスのいずれかが故障して再開できなかった場合、前記排他条件情報に基づいて、他の運用継続中サーバの中から、故障したサーバにて起動されていたプロセス、もしくは故障したプロセスの救済起動が可能なサーバを特定することを特徴とする救済起動方法。
【請求項７】
救済起動が可能なサーバが複数存在する場合、該サーバのうち、起動プロセス総数の少ないサーバを救済起動先として特定することを特徴とする請求項６に記載の救済起動方法。
【請求項８】
複数のプロセスが連携して構築されている管理対象システムのプロセス再開装置において、
前記複数のプロセスの各々に対して、故障したプロセスとの整合性を保障するために当該故障したプロセスと同時に再起動が必要な他のプロセスをプロセスグループ情報として記憶するプロセスグループ情報記憶手段と、
いずれかのプロセスが障害で故障した際に、前記プロセスグループ情報記憶手段のプロセスグループ情報に基づいて、再開するプロセス群を特定する再開プロセス特定手段と
を具備することを特徴とするプロセス再開装置。
【請求項９】
前記プロセス再開装置において、
プロセスグループ情報記憶手段が記憶する一方のプロセスグループ情報に他方のプロセスグループ情報が含まれるとき、
再開プロセス特定手段は、他方のプロセスグループ情報に含まれるプロセスが障害で故障した場合には、他方のプロセスグループ情報内のプロセスのみを再起動し、一方のプロセスグループ情報にのみ含まれるプロセスが障害で故障した場合には、他方のプロセスグループ情報を含む一方のプロセスグループ情報に属する全てのプロセスを再起動する
ことを特徴とする請求項８に記載のプロセス再開装置。
【請求項１０】
前記プロセスグループ情報記憶手段は、
前記複数のプロセスのうち少なくとも１つ以上が市販アプリケーションであり、かつ少なくとも１つ以上が前記市販アプリケーションとの連携を前提として開発された独自プロセスである前記複数のプロセスの各々を含むことが定義された前記プロセスグループ情報を記憶することを特徴とする請求項８または請求項９に記載のプロセス再開装置。
【請求項１１】
複数のサーバが連携して構築されている管理対象システムのサーバ再開装置において、
前記複数のサーバの各々に対して、故障したサーバとの整合性を保障するために当該故障したサーバと同時に再起動が必要な他のサーバをサーバグループ情報として記憶するサーバグループ情報記憶手段と、
いずれかのサーバが障害で故障した際に、前記サーバグループ情報記憶手段のサーバグループ情報に基づいて、再開するサーバ群を特定する再開サーバ特定手段と
を具備することを特徴とするサーバ再開装置。
【請求項１２】
前記サーバ再開装置において、
サーバグループ情報記憶手段が記憶する一方のサーバグループ情報に他方のサーバグループ情報が含まれるとき、
再開サーバ特定手段は、他方のサーバグループ情報に含まれるサーバが障害で故障した場合は、他方のサーバグループ情報内のサーバのみを再起動し、一方のサーバグループ情報にのみ含まれるサーバが障害で故障した場合は、他方のサーバグループ情報を含む一方のサーバグループ情報に属する全てのサーバを再起動する
ことを特徴とする請求項１１に記載のサーバ再開装置。
【請求項１３】
複数のサーバまたは複数のプロセス、あるいは双方が連携して構築されている管理対象システムの救済起動装置において、
同一サーバ上に起動されることが許容不可なプロセス、サーバ、プロセスグループ、サーバグループの関係を、排他条件情報として記憶する排他条件情報記憶手段と、
前記複数のサーバもしくは前記複数のプロセスのいずれかが故障して再開できなかった場合、前記排他条件情報記憶手段の排他条件情報に基づいて、他の運用継続中サーバの中から、故障したサーバにて起動されていたプロセス、もしくは故障したプロセスの救済起動が可能なサーバを特定するサーバ特定手段と
を具備することを特徴とする救済起動装置。
【請求項１４】
管理対象システムを構築している複数のプロセスの各々に対して、故障したプロセスとの整合性を保障するために当該故障したプロセスと同時に再起動が必要な他のプロセスをプロセスグループ情報として定義するステップと、
いずれかのプロセスが障害で故障した際に、前記プロセスグループ情報に基づいて、再開するプロセス群を特定するステップと
をコンピュータに実行させることを特徴とするプロセス再開プログラム。
【請求項１５】
前記プロセス再開プログラムであって、
一方のプロセスグループ情報に他方のプロセスグループ情報を含むプロセスグループ情報を定義するステップと、
他方のプロセスグループ情報に含まれるプロセスが障害で故障した場合には、他方のプロセスグループ情報内のプロセスのみを再起動し、一方のプロセスグループ情報にのみ含まれるプロセスが障害で故障した場合には、他方のプロセスグループ情報を含む一方のプロセスグループ情報に属する全てのプロセスを再起動するステップと
をコンピュータに実行させることを特徴とする請求項１４に記載のプロセス再開プログラム。
【請求項１６】
管理対象システムを構築している複数のサーバの各々に対して、故障したサーバとの整合性を保障するために当該故障したサーバと同時に再起動が必要な他のサーバをサーバグループ情報として定義するステップと、
いずれかのサーバが障害で故障し、再開した際に、前記サーバグループ情報に基づいて、再開するサーバ群を特定するステップと
をコンピュータに実行させることを特徴とするサーバ再開プログラム。
【請求項１７】
前記サーバ再開プログラムであって、
一方のサーバグループ情報に他方のサーバグループ情報を含むサーバグループ情報を定義するステップと、
他方のサーバグループ情報に含まれるサーバが障害で故障した場合は、他方のサーバグループ情報内のサーバのみを再起動し、一方のサーバグループ情報にのみ含まれるサーバが障害で故障した場合は、他方のサーバグループ情報を含む一方のサーバグループ情報に属する全てのサーバを再起動するステップと、
をコンピュータに実行させることを特徴とする請求項１６に記載のプロセス再開プログラム。
【請求項１８】
同一サーバ上に起動されることが許容不可なプロセス、サーバ、プロセスグループ、サーバグループの関係を示す排他条件情報を定義するステップと、
前記複数のサーバもしくは前記複数のプロセスのいずれかが故障して再開できなかった場合、前記排他条件情報に基づいて、他の運用継続中サーバの中から、故障したサーバにて起動されていたプロセス、もしくは故障したプロセスの救済起動が可能なサーバを特定するステップと
をコンピュータに実行させることを特徴とする救済起動プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数サーバ上で複数のプロセスが連携して複数の業務を実行するシステムにおける、プロセスおよびサーバ故障の再開（および復旧）処理を行うプロセス再開方法、サーバ再開方法、救済起動方法、プロセス再開装置、サーバ再開装置、救済起動装置、プロセス再開プログラム、サーバ再開プログラム、救済起動プログラムに関する。
【０００２】
【従来の技術】
従来のサーバ再開機能は、単独サーバ再開の次のフェーズとしては、全サーバの再開になってしまい、その中断時間の影響からくるシステム全体への影響が懸念された。また、プロセスの実行管理についても、故障検出時に該当プロセスを再起動する、または、サーバ故障時に該当サーバ上のプロセスを他サーバで再起動するなどの手法が採られていた。これらの方式では、再起動したプロセスの初期化処理は実行されるが、関連プロセスの初期化処理が実行されず、また、他サーバヘの再起動を行うにしても、詳細な設定が行えないため、プロセス間の不整合が発生することが懸念される。その結果、システム全体の整合性が崩れ、事象を回避するためにシステム全体を再開させることになり、中断時間の増加に結びつくことが懸念される。
なお、従来技術において、直接的に本願発明を示す文献は、発見されなかったので明示することができない。
【０００３】
【発明が解決しようとする課題】
上述したように、従来のサーバ再開方法では、あるサーバの再開により他サーバの再開も余儀なくされている。その具体例を図１５に示す。ユーザが、特定のサーバＳＶ−１，ＳＶ−２を再開させたい場合、サーバＳＶ−１，ＳＶ−２に対する他のサーバＳＶ−３，ＳＶ−４，ＳＶ−５の運用上の関係を考慮すると、システム全体を再開し、サーバＳＶ−１，ＳＶ−２と他のサーバＳＶ−３，ＳＶ−４，ＳＶ−５との整合を行うしかない。
【０００４】
また、あるプロセス故障によって、システム全体の整合性が崩れ、その事象を回避するためにシステム全体の再開を余儀なくされている。その具体例を図１６ないし図１８に示す。まず、図１６において、プロセス（Ａ）とプロセス（Ｂ）とは、機能的に関連したプロセスであり、それぞれを運用するためには、互いの運用が必須条件であるとする。一方のプロセスが故障再起動してしまうと、様々な矛盾からくる障害が発生するため、他方のプロセスの再起動も必要となる。これを実現するためには、システム再開を行うしかない。
【０００５】
次に、図１７において、プロセス（Ｃ）は、他の市販アプリケーションと機能的に関連したプロセスであり、該市販アプリケーション１０の運用が、システムの運用を行う上での必須条件であるとする。市販アプリケーション１０に障害が発生すると、市販アプリケーション１０については実行管理を行うことができないので、システム再開を行うしかない。
【０００６】
次に、図１８において、プロセス（Ａ），プロセス（Ｂ），プロセス（Ｃ），プロセス（Ｄ）は、機能的に関連したプロセスであり、それぞれを運用するためには、互いの運用が必須条件であるとする。一方のサーバＳＶ−１の再開が発生した場合、プロセス（Ａ）、プロセス（Ｂ）の再開が行われるため、様々な矛盾からくる障害発生を考慮すると、サーバＳＶ−２側のプロセス（Ｃ），プロセス（Ｄ）の再起動も必要となる。これを実現するためには、サーバＳＶ−２も再開するしかない。
【０００７】
次に、サーバ故障時の起動プロセスの救済方式についてだが、詳細な排他制御設定が行えず、該当プロセスの救済起動が行えないため、これもまた、システム全体の再開を余儀なくさせている。その具体例を図１９に示す。図１９において、プロセス（Ａ），プロセス（Ｂ）は、それぞれの運用上、同一サーバでの起動が不可能な関係であるとする。サーバＳＶ−１の再開が発生した場合、同サーバＳＶ−１にて起動されていたプロセス（Ａ）について、サーバＳＶ−２への救済起動は、プロセス（Ｂ）の起動により、不可能であるが、サーバＳＶ−３への起動は、論理的には可能である。しかしながら、プロセスおよびサーバ単位での詳細な排他設定が行えないため、プロセス（Ａ）を救済起動できない。
【０００８】
従来のサーバ再開方法では、これら３つの事象は、いずれにおいても、システム運用中断時間を長引かせるという問題がある。
【０００９】
この発明は上述した事情に鑑みてなされたもので、一部の故障がシステム全体の再開（中断）に発展することを抑止することができ、システム全体としての中断時間を短縮することができるプロセス再開方法、サーバ再開方法、救済起動方法、プロセス再開装置、サーバ再開装置、救済起動装置、プロセス再開プログラム、サーバ再開プログラム、救済起動プログラムを提供することを目的とする。
【００１０】
【課題を解決するための手段】
上述した問題点を解決するために、請求項１記載の発明では、複数のプロセスが連携して構築されている管理対象システムのプロセス再開方法において、前記複数のプロセスの各々に対して、故障したプロセスとの整合性を保障するために当該故障したプロセスと同時に再起動が必要な他のプロセスをプロセスグループ情報として定義し、いずれかのプロセスが障害で故障した際に、前記プロセスグループ情報に基づいて、再開するプロセス群を特定することを特徴とする。
【００１１】
また、請求項２記載の発明では、請求項１記載のプロセス再開方法において、一方のプロセスグループ情報に他方のプロセスグループ情報を含むとき、他方のプロセスグループ情報に含まれるプロセスが障害で故障した場合は、他方のプロセスグループ情報内のプロセスのみを再起動し、一方のプロセスグループ情報にのみ含まれるプロセスが障害で故障した場合は、他方のプロセスグループ情報を含む一方のプロセスグループ情報に属する全てのプロセスを再起動することを特徴とする。
【００１２】
また、請求項３記載の発明では、請求項１または請求項２に記載のプロセス再開方法において、前記複数のプロセスのうち少なくとも１つ以上が市販アプリケーションであり、かつ少なくとも１つ以上が前記市販アプリケーションとの連携を前提として開発された独自プロセスである前記複数のプロセスの各々をプロセスグループ情報として定義することを特徴とする。
【００１３】
また、上述した問題点を解決するために、請求項４記載の発明では、複数のサーバが連携して構築されている管理対象システムのサーバ再開方法において、前記複数のサーバの各々に対して、故障したサーバとの整合性を保障するために当該故障したサーバと同時に再起動が必要な他のサーバをサーバグループ情報として定義し、いずれかのサーバが障害で故障し、再開した際に、前記サーバグループ情報に基づいて、再開するサーバ群を特定することを特徴とする。
【００１４】
また、請求項５に記載の発明では、請求項４に記載のサーバ再開方法において、一方のサーバグループ情報に他方のサーバグループ情報を含むとき、他方のサーバグループ情報に含まれるサーバが障害で故障した場合は、他方のサーバグループ情報内のサーバのみを再起動し、一方のサーバグループ情報にのみ含まれるサーバが障害で故障した場合は、他方のサーバグループ情報を含む一方のサーバグループ情報に属する全てのサーバを再起動することを特徴とする。
【００１５】
また、上述した問題点を解決するために、請求項６記載の発明では、複数のサーバまたは複数のプロセス、あるいは双方が連携して構築されている管理対象システムの救済起動方法において、同一サーバ上に起動されることが許容不可なプロセス、サーバ、プロセスグループ、サーバグループの関係を示す排他条件情報を定義し、前記複数のサーバもしくは前記複数のプロセスのいずれかが故障して再開できなかった場合、前記排他条件情報に基づいて、他の運用継続中サーバの中から、故障したサーバにて起動されていたプロセス、もしくは故障したプロセスの救済起動が可能なサーバを特定することを特徴とする。
【００１６】
また、請求項７記載の発明では、請求項６記載の救済起動方法において、救済起動が可能なサーバが複数存在する場合、該サーバのうち、起動プロセス総数の少ないサーバを救済起動先として特定することを特徴とする。
【００１７】
また、上述した問題点を解決するために、請求項８に記載の発明では、複数のプロセスが連携して構築されている管理対象システムのプロセス再開装置において、前記複数のプロセスの各々に対して、故障したプロセスとの整合性を保障するために当該故障したプロセスと同時に再起動が必要な他のプロセスをプロセスグループ情報として記憶するプロセスグループ情報記憶手段と、いずれかのプロセスが障害で故障した際に、前記プロセスグループ情報記憶手段のプロセスグループ情報に基づいて、再開するプロセス群を特定する再開プロセス特定手段とを具備することを特徴とする。
【００１８】
また、請求項９記載の発明では、請求項８記載のプロセス再開装置において、プロセスグループ情報記憶手段が記憶する一方のプロセスグループ情報に他方のプロセスグループ情報が含まれるとき、再開プロセス特定手段は、他方のプロセスグループ情報に含まれるプロセスが障害で故障した場合には、他方のプロセスグループ情報内のプロセスのみを再起動し、一方のプロセスグループ情報にのみ含まれるプロセスが障害で故障した場合には、他方のプロセスグループ情報を含む一方のプロセスグループ情報に属する全てのプロセスを再起動することを特徴とする。
【００１９】
また、請求項１０記載の発明では、請求項８または請求項９に記載のプロセス再開装置において、前記プロセスグループ情報記憶手段は、前記複数のプロセスのうち少なくとも１つ以上が市販アプリケーションであり、かつ少なくとも１つ以上が前記市販アプリケーションとの連携を前提として開発された独自プロセスである前記複数のプロセスの各々を含むことが定義された前記プロセスグループ情報を記憶することを特徴とする。
【００２０】
また、上述した問題点を解決するために、請求項１１記載の発明では、複数のサーバが連携して構築されている管理対象システムのサーバ再開装置において、前記複数のサーバの各々に対して、故障したサーバとの整合性を保障するために当該故障したサーバと同時に再起動が必要な他のサーバをサーバグループ情報として記憶するサーバグループ情報記憶手段と、いずれかのサーバが障害で故障した際に、前記サーバグループ情報記憶手段のサーバグループ情報に基づいて、再開するサーバ群を特定する再開サーバ特定手段とを具備することを特徴とする。
【００２１】
また、請求項１２記載の発明では、請求項１１に記載のサーバ再開装置において、サーバグループ情報記憶手段が記憶する一方のサーバグループ情報に他方のサーバグループ情報が含まれるとき、再開サーバ特定手段は、他方のサーバグループ情報に含まれるサーバが障害で故障した場合は、他方のサーバグループ情報内のサーバのみを再起動し、一方のサーバグループ情報にのみ含まれるサーバが障害で故障した場合は、他方のサーバグループ情報を含む一方のサーバグループ情報に属する全てのサーバを再起動することを特徴とする。
【００２２】
また、上述した問題点を解決するために、請求項１３記載の発明では、複数のサーバまたは複数のプロセス、あるいは双方が連携して構築されている管理対象システムの救済起動装置において、同一サーバ上に起動されることが許容不可なプロセス、サーバ、プロセスグループ、サーバグループの関係を、排他条件情報として記憶する排他条件情報記憶手段と、前記複数のサーバもしくは前記複数のプロセスのいずれかが故障して再開できなかった場合、前記排他条件情報記憶手段の排他条件情報に基づいて、他の運用継続中サーバの中から、故障したサーバにて起動されていたプロセス、もしくは故障したプロセスの救済起動が可能なサーバを特定するサーバ特定手段とを具備することを特徴とする。
【００２３】
また、上述した問題点を解決するために、請求項１４記載の発明では、管理対象システムを構築している複数のプロセスの各々に対して、故障したプロセスとの整合性を保障するために当該故障したプロセスと同時に再起動が必要な他のプロセスをプロセスグループ情報として定義するステップと、いずれかのプロセスが障害で故障した際に、前記プロセスグループ情報に基づいて、再開するプロセス群を特定するステップとをコンピュータに実行させることを特徴とする。
【００２４】
また、請求項１５記載の発明では、請求項１４に記載のプロセス再開プログラムであって、一方のプロセスグループ情報に他方のプロセスグループ情報を含むプロセスグループ情報を定義するステップと、他方のプロセスグループ情報に含まれるプロセスが障害で故障した場合には、他方のプロセスグループ情報内のプロセスのみを再起動し、一方のプロセスグループ情報にのみ含まれるプロセスが障害で故障した場合には、他方のプロセスグループ情報を含む一方のプロセスグループ情報に属する全てのプロセスを再起動するステップとをコンピュータに実行させることを特徴とする。
【００２５】
また、上述した問題点を解決するために、請求項１６記載の発明では、管理対象システムを構築している複数のサーバの各々に対して、故障したサーバとの整合性を保障するために当該故障したサーバと同時に再起動が必要な他のサーバをサーバグループ情報として定義するステップと、いずれかのサーバが障害で故障し、再開した際に、前記サーバグループ情報に基づいて、再開するサーバ群を特定するステップとをコンピュータに実行させることを特徴とする。
【００２６】
また、請求項１７記載の発明では、請求項１６に記載のサーバ再開プログラムであって、一方のサーバグループ情報に他方のサーバグループ情報を含むサーバグループ情報を定義するステップと、他方のサーバグループ情報に含まれるサーバが障害で故障した場合は、他方のサーバグループ情報内のサーバのみを再起動し、一方のサーバグループ情報にのみ含まれるサーバが障害で故障した場合は、他方のサーバグループ情報を含む一方のサーバグループ情報に属する全てのサーバを再起動するステップとをコンピュータに実行させることを特徴とする。
【００２７】
また、上述した問題点を解決するために、請求項１８記載の発明では、同一サーバ上に起動されることが許容不可なプロセス、サーバ、プロセスグループ、サーバグループの関係を示す排他条件情報を定義するステップと、前記複数のサーバもしくは前記複数のプロセスのいずれかが故障して再開できなかった場合、前記排他条件情報に基づいて、他の運用継続中サーバの中から、故障したサーバにて起動されていたプロセス、もしくは故障したプロセスの救済起動が可能なサーバを特定するステップとをコンピュータに実行させることを特徴とする。
【００２８】
この発明では、複数のプロセスの各々に対して、故障したプロセスとの整合性を保障するために当該故障したプロセスと同時に再起動が必要な他のプロセスをプロセスグループ情報として定義し、いずれかのプロセスが障害で故障した際に、前記プロセスグループ情報に基づいて、再開するプロセス群を特定する。したがって、必要最低限範囲でのサーバ再開を実現、またプロセス故障発生時の影響範囲を局所化させ、グループ単位での整合性を担保すること、そして、プロセス間の関係を考慮した排他制御によるプロセス救済により、一部の故障がシステム全体の再開（中断）に発展することを抑止し、システム全体としての中断時間を短縮させることが可能となる。
【００２９】
【発明の実施の形態】
以下、図面を用いて本発明の実施の形態を説明する。
Ａ．実施形態の構成
図１は、本発明の実施形態によるサーバプロセス管理システムの構成を示すブロック図である。図１において、サーバプロセス管理システムは、サーバＳＶ−１，ＳＶ−２，ＳＶ−３を具備する。サーバＳＶ−１は、プロセスＡ，プロセスＢ（市販アプリケーション）、プロセスＣ（市販アプリケーション）および管理プロセスＸを起動する。サーバＳＶ−２は、プロセスＤ，プロセスＥおよび管理プロセスＹを起動する。サーバＳＶ−３は、プロセスＦ，プロセスＧおよび管理プロセスＺを起動する。
【００３０】
また、プロセスＡおよびプロセスＢは、プロセスグループＰＧ１を構成する。また、プロセスＣ，プロセスＤ，プロセスＥおよびプロセスＦは、プロセスグループＰＧ２を構成する。なお、プロセスグループとは、起動管理を行うプロセスにおいて、運用上、関係のあるプロセス群を、１つのグループとして見立てたものである。プロセスグループの適用範囲は、１つのサーバ内に閉じたものではなく、システムを構成する全てのサーバ間で有効である。また、本発明の機能は、自作プロセスに限ったものではなく、市販アプリケーションについても有効である。
【００３１】
本実施形態によるサーバプロセス管理システムは、図２ないし図４に示す構成の条件ファイルを具備する。図２は、起動プロセス管理ファイル２０の構成を示す概念図である。図３は、システム構成管理ファイル２１の構成を示す概念図である。さらに、図４は、排他制御管理ファイル２２の構成を示す概念図である。
【００３２】
図２、図３に示す、起動プロセス管理ファイル２０およびシステム構成管理ファイル２１において、サーバ／プロセスグループ設定を行うには、各々、管理ファイルに事前に登録する。運用上管理が必要なサーバ／プロセス分、設定を行うこととし、各レコードの項目の中にグループ番号を設定する項目を設けている。管理プロセスは、これら設定内容に従って、各プロセスのグルーピング判断を行う。なお、１つのグループの設定数には上限がない。グループ番号に「０」が設定されていた場合、そのプロセスおよびサーバについては、グルーピング未設定と判断する。
【００３３】
また、図４において、プロセスの救済起動に関する排他制御の設定を行うには、排他制御管理ファイル２２に事前に登録する。設定方法については次の４パターンがある。１．サーバグループ単位での排他設定、２．サーバ単位での排他設定、３．プロセスグループ単位での排他設定、４．プロセス単位での排他設定である。いずれの設定であるかの識別子を設定し、その上に、各々、排他制御を設定する対象名、被対象名を設定する項目を設けている。管理プロセスは、これらの設定内容に従って、排他制御の有無を判断する。なお、設定数に上限はない。また、排他設定対象名／被対象名については、同一名で複数項目の設定も可能である。
【００３４】
以下により詳細に説明する。本実施形態では、管理対象サーバ（群）において起動されているプロセスに関して、任意のプロセスが故障したときに当該プロセスとの整合性を保障するために当該プロセスと同時に再起動が必要な他のプロセスを管理対象サーバ（群）の運用前に抽出し、抽出した複数のプロセスをまとめでプロセスグループと定義する。なお、プロセスグループを定義する際、包含関係をもつプロセスグループは定義してよいが、一部のプロセスのみを共有するプロセスグループは定義しない。
【００３５】
さらに、起動プロセス、当該起動プロセスが属する上記プロセスグループ、当該起動プロセスが起動しているサーバの少なくとも３つの情報を構成要素とする起動プロセス管理ファイル２０も同様に、管理対象サーバ（群）の運用前に作成する。
【００３６】
なお、包含関係をもつプロセスグループが定義されている場合、起動プロセスの属するプロセスグループが複数定義され得る。例えば、プロセスグループ間の包含関係（例えば、「プロセスグループαはプロセスグループβとプロセスグループνを包含する」）の情報と、各起動プロセスに対応するプロセスグループとして当該起動プロセスを含む起動プロセス数最小のプロセスグループ情報との２種類の情報を定義する。あるいは、各起動プロセスに対応した情報として、当該起動プロセスを含む起動プロセス数最小のプロセスグループ情報と、当該起動プロセスが含まれる前記以外の全てのプロセスグループ情報との２種類の情報を定義する。
【００３７】
管理対象サーバを管理する管理プロセスは、任意のプロセスが故障した際に、上記起動プロセス管理ファイル２０を参照することにより、再開起動プロセス数が最小となるように、上述した情報を用いて再開範囲を特定し「関連プロセスを含むグループ再開」の処理を実現する。
なお、一方のプロセスグループ情報に他方のプロセスグループ情報を含むとき、他方のプロセスグループ情報に含まれるプロセスが障害で故障した場合は、他方のプロセスグループ情報内のプロセスのみを再起動し、一方のプロセスグループ情報にのみ含まれるプロセスが障害で故障した場合は、他方のプロセスグループ情報を含む一方のプロセスグループ情報に属する全てのプロセスを再起動する。
【００３８】
また、起動プロセスのみならず、任意の管理対象サーバそのものが再開した際にも、管理プロセスは、上記起動プロセス管理ファイル２０を参照することにより、再開起動プロセス数が最小となるように、上述した情報を用いて再開範囲を特定し「関連プロセスを含むグループ再開」の処理を実現する。
【００３９】
また、本実施形態では、管理対象サーバ（群）における起動プロセス群と同様に、管理対象サーバそのものに対してもシステム運用条件に合わせて、任意の管理対象サーバが故障したときに当該管理対象サーバとの整合性を保障するために当該管越対象サーバと同時に再起動が必要な他の管理対象サーバを管理対象サーバ（群）の運用前に抽出し、抽出した複数の管理対象サーバをまとめてサーバグループと定義する。なお、サーバグループを定義する際、包含関係をもつサーバグループは特定してよいが、一部の管理対象サーバのみを共有するサーバグループは定義しない。
【００４０】
さらに、管理対象サーバ、当該管理対象サーバが属する上記サーバグループの少なくとも２つの情報を構成要素とするシステム構成管理ファイル２１も同様に、管理対象サーバ（群）の運用前に作成する。
【００４１】
なお、包含関係をもつサーバグループが定義されている場合、管理対象サーバの属するサーバグループが複数定義され得る。例えば、サーバグループ間の包含関係（例えば、「サーバグループαはサーバグループβとサーバグループを包含する」）の情報と、各管理対象サーバに対応するサーバグループとして当該管理対象サーバを含む管理対象サーバ数最小のサーバグループ情報との２種類の情報を定義する。あるいは、各管理対象サーバに対応した情報として、当該管理対象サーバを含む管理対象サーバ数最小のサーバグループ情報と、当該管理対象サーバが含まれる前記以外の全てのサーバグループ情報との２種類の情報を定義する。
【００４２】
管理対象サーバを管理する管理プロセスは、任意の管理対象サーバが故障した際に、上記システム構成管理ファイル２１を参照することにより、再開管理対象サーバ数が最小となるように、上述した情報を用いて再開範囲を特定し「サーバグループ再開」の処理を実現する。
なお、一方のサーバグループ情報に他方のサーバグループ情報を含むとき、他方のサーバグループ情報に含まれるサーバが障害で故障した場合は、他方のサーバグループ情報内のサーバのみを再起動し、一方のサーバグループ情報にのみ含まれるサーバが障害で故障した場合は、他方のサーバグループ情報を含む一方のサーバグループ情報に属する全てのサーバを再起動する。
【００４３】
また、本実施形態では、任意の管理対象サーバもしくは起動プロセスの再開が行えない場合の、起動プロセス救済起動については、サーバグループ、サーバ、プロセスグループ、プロセスの少なくとも４つのパターンに関して、任意のサーバグループに属する管理対象サーバの起動プロセスは、同一サーバ上に起動されることが許容不可なプロセス、サーバ、プロセスグループ、サーバグループの関係を示す排他条件を、管理対象サーバ（群）の運用前に抽出し、排他制御管理ファイル２２として作成する。
【００４４】
排他条件としては、全て起動することができないサーバグループを特定するためのサーバグループの排他条件、任意の管理対象サーバの起動プロセスは全て起動することができない管理対象サーバを特定するためのサーバ排他条件、任意のプロセスグループに属する起動プロセスと同一管理対象サーバ上では起動することができないプロセスグループを特定するためのプロセスグループの排他条件、任意のプロセスと同一管理対象サーバ上では起動することができないプロセスを特定するためのプロセス排他条件がある。
【００４５】
運用継統中の管理プロセスは、管理対象サーバ故障発生時に、上記排他制御管理ファイル２２を参照することで、各管理対象サーバにて救済可能な起動プロセスを特定し、起動プロセスの救済起動処理を実現する。
【００４６】
Ｂ．実施形態の動作
次に、本実施形態によるサーバプロセス管理システムの動作について説明する。まず、図５および図６は、グループ再開方法（グループプロセス再開発生時）の具体的な動作原理を説明するための概念図である。図５および図６では、プロセスＤが故障した場合の各サーバの処理概要が示されている。
【００４７】
まず、始めにサーバＳＶ−２上の動作概要を、図５を参照して説明する。サーバＳＶ−２上の管理プロセスＹは、プロセスＤの故障を検出し、起動プロセス管理ファイル２０の参照を行う（Ｓａ１）。プロセスＤは、プロセスグループＰＧ２に属するため、プロセスグループＰＧ２に定義されているプロセスが起動するサーバであるサーバＳＶ−１とサーバＳＶ−３とにプロセスグループＰＧ２の再起動要求を行う（Ｓａ２）。そして、他サーバヘの再起動要求と同時に自サーバ内のプロセスグループＰＧ２に定義されているプロセスＥの再起動を行う（Ｓａ３）。
【００４８】
次に、サーバＳＶ−１の動作概要を、図６を参照して説明する。サーバＳＶ−１上の管理プロセスＸは、サーバＳＶ−２からのプロセスグループＰＧ２の再起動要求を受信すると、自サーバ上で動作するプロセスグループＰＧ２のプロセスを起動プロセス管理ファイル２０から抽出し（Ｓｂ１）、プロセスグループＰＧ２に属するプロセスＣの再起動を行う（Ｓｂ２）。同様に、サーバＳＶ−３においても、プロセスグループＰＧ２に該当するプロセスの再起動を行う。
【００４９】
次に、サーバＳＶ−１の再開時のサーバＳＶ−２における処理概要を説明する。ここで、図７および図８は、グループ再開方法（サーバ再開発生時）の具体的な動作原理を説明するための概念図である。
【００５０】
まず、サーバＳＶ−１の動作概要を、図７を参照して説明する。プロセスの故障等によりサーバＳＶ−１の再開を実施した場合、各サーバへサーバＳＶ−１の再開通知を行った後、自サーバの再開を行う。再起動時、起動プロセス管理ファイル２０の参照を行い（Ｓｃ１）、自サーバに起動するプロセスＡ、プロセスＢ、プロセスＣを起動する（Ｓｃ２）。
【００５１】
次に、サーバＳＶ−２の処理概要を、図８を参照して説明する。サーバＳＶ−１からサーバの再開通知を受信後、起動プロセス管理ファイル２０の参照を行い（Ｓｄ１）、サーバＳＶ−１上で動作しているプロセスグループＰＧ１、プロセスグループＰＧ２が自サーバ上で動作しているかチェックを行う。そこでグループＰＧ２が対象となるため、プロセスグループＰＧ２内のプロセスＤ、プロセスＥの再開を行う（Ｓｄ２）。同様に、サーバＳＶ−３においても、プロセスグループＰＧ１、プロセスグループＰＧ２に該当するプロセスの再起動を行う。
【００５２】
次に、図９は、サーバ種別（ＡＰＬサーバ、ＷＷＷサーバ、ＤＢサーバ等）とサーバグループとの構成例を示すブロック図である。図において、サーバグループとは、システムを構成する各サーバについて、運用上、関係のあるサーバ群を、１つのグループに見立てたものである。サーバグループＳＧ１は、ＡＰＬサーバＳＶ−１およびＷＷＷサーバＳＶ−２から構成されている。サーバグループＳＧ２は、ＡＰＬサーバＳＶ−３、ＡＰＬサーバＳＶ−４、ネーミングサーバＳＶ−５から構成されている。なお、種類（種別）の異なるサーバは、同一のグループへ設定することも有効である。
【００５３】
次に、図１０および図１１は、本実施形態によるサーバグループ再開方法の具体的な動作原理を説明するための概念図である。まず、保守者などからサーバグループＳＧ１の再開要求を受信したサーバＳＶ−１の処理概要を、図１０を参照して説明する。サーバＳＶ−１の管理プロセスは、サーバグループＳＧ１の再開要求を受信後、システム構成管理ファイル２１の参照を行う（Ｓｅ１）。サーバＳＶ−１は、他サーバＳＶ−２ヘのサーバグループＳＧ１の再開通知も行うとともに（Ｓｅ２）、自身もサーバグループＳＧ１であるので再開を実施する（Ｓｅ３）。
【００５４】
次に、サーバＳＶ−２のサーバグループ再開の処理概要を、図１１を参照して説明する。サーバＳＶ−１との処理の違いは、要求元が保守者か他サーバかの違いのみであり、サーバグループＳＧ１の再開要求を受信後、システム構成管理ファイルの参照を行い（Ｓｆ１）、サーバグループＳＧ１に属するサーバＳＶ−２も再開する（Ｓｆ２）。
【００５５】
次に、図１２は、プロセス排他制御導入時の救済起動方法において、排他制御管理ファイルに基づくサーバグループ・サーバ・プロセスグループ・プロセスの排他制御対象と排他制御被対象の関係を示すブロック図である。また、図１３および図１４は、サーバＳＶ−１が故障した場合の排他制御概要を説明するための概念図である。なお、排他制御対象／被対象とは、システムを構成する上で、様々な制約事項から、同一サーバ上に起動されることを、許容できないプロセスを起動制御するために、サーバ、サーバグループ、プロセスの範囲にて制御対象を設けたものである。
【００５６】
サーバＳＶ−３の管理プロセスでは、サーバＳＶ−１の故障を検出すると、自サーバ内でプロセスを救済可能かチェックするため、排他制御管理ファイル２２およびシステム構成管理ファイル２１の参照を行い、サーバグループ、サーバ、プロセスグループ、プロセスの排他情報を取得する。サーバグループＳＧ１（ＳＲＶｇｒｐ−１）については、システム構成管理ファイル２１からサーバグループを構成するサーバの情報を取得し、プロセスグループについては起動プロセス管理ファイル２０から取得する。そして、これらの情報に従って、自サーバが排他対象であるかを決定する（Ｓｇ１）。
【００５７】
この場合、サーバグループＳＧ２（ＳＲＶｇｒｐ−２）に属しているサーバＳＶ−３は、排他制御管理ファイルにおいてサーバグループＳＧ１（ＳＲＶｇｒｐ−１）に対する排他制御が記述されているため、プロセスの救済対象とならない（Ｓｇ２）。
【００５８】
また、グループ定義されていないサーバＳＶ−５の場合、サーバグループＳＧ１（ＳＲＶｇｒｐ−１）のサーバＳＶ−１の故障に対する排他定義は無いが、プロセスグループＰＧ１（ＰＲＣｇｒｐ−１）に対する排他定義がサーバＳＶ−５上のプロセスグループＰＧ２（ＰＲＣｇｒｐ−２）にあるため、プロセスの救済対象とならない。
【００５９】
また、サーバＳＶ−６の管理プロセスでは、サーバＳＶ−１の故障を検出すると、自サーバ内でプロセスを救済可能かチェックするため、排他制御管理ファイル２２およびシステム構成管理ファイル２１の参照を行い、サーバグループ、サーバ、プロセスグループ、プロセスの排他情報を取得する。そして、サーバグループおよびサーバの観点で、サーバＳＶ−１に対して自サーバが排他設定されているか確認する（Ｓｈ１）。この場合、サーバＳＶ−６でのプロセスＡの救済起動が可能であると判断される。但し、他に救済起動可能な他サーバ、この場合、サーバＳＶ−２があるため、内部管理情報によりプロセス総数の比較を行い、最も起動総数の少ないサーバＳＶ−２を救済起動先と決定する（Ｓｈ２）。
【００６０】
【発明の効果】
以上説明したように、本発明によれば、複数のプロセスの各々に対して、故障したプロセスとの整合性を保障するために当該故障したプロセスと同時に再起動が必要な他のプロセスをプロセスグループ情報として定義し、いずれかのプロセスが障害で故障した際に、前記プロセスグループ情報に基づいて、再開するプロセス群を特定するようにしたので、必要最低限範囲でのサーバ再開を実現、またプロセス故障発生時の影響範囲を局所化させ、グループ単位での整合性を担保すること、そして、プロセス間の関係を考慮した排他制御によるプロセス救済により、一部の故障がシステム全体の再開（中断）に発展することを抑止し、システム全体としての中断時間を短縮させることができるという利点が得られる。
【図面の簡単な説明】
【図１】本発明の実施形態によるサーバプロセス管理システムの構成を示すブロック図である。
【図２】起動プロセス管理ファイルの構成を示す概念図である。
【図３】システム構成管理ファイルの構成を示す概念図である。
【図４】排他制御管理ファイルの構成を示す概念図である。
【図５】グループ再開方法（グループプロセス再開発生時）の具体的な動作原理を説明するための概念図である。
【図６】グループ再開方法（グループプロセス再開発生時）の具体的な動作原理を説明するための概念図である。
【図７】グループ再開方法（サーバ再開発生時）の具体的な動作原理を説明するための概念図である。
【図８】グループ再開方法（サーバ再開発生時）の具体的な動作原理を説明するための概念図である。
【図９】サーバ種別（ＡＰＬサーバ、ＷＷＷサーバ、ＤＢサーバ等）とサーバグループとの構成例を示すブロック図である。
【図１０】本実施形態によるサーバグループ再開方法の具体的な動作原理を説明するための概念図である。
【図１１】本実施形態によるサーバグループ再開方法の具体的な動作原理を説明するための概念図である。
【図１２】プロセス排他制御導入時の救済起動方法において、排他制御管理ファイルに基づくサーバグループ・サーバ・プロセスグループ・プロセスの排他制御対象と排他制御被対象の関係を示すブロック図である。
【図１３】サーバＳＶ−１が故障した場合の排他制御概要を説明するための概念図である。
【図１４】サーバＳＶ−１が故障した場合の排他制御概要を説明するための概念図である。
【図１５】従来技術によるプロセス再開方法の問題点を説明するための概念図である。
【図１６】従来技術によるサーバ再開方法の問題点を説明するための概念図である。
【図１７】従来技術によるサーバ再開方法の問題点を説明するための概念図である。
【図１８】従来技術によるサーバ再開方法の問題点を説明するための概念図である。
【図１９】従来技術によるプロセス救済起動方式の問題点を説明するための概念図である。
【符号の説明】
２０　起動プロセス管理ファイル（プロセスグループ情報、プロセスグループ情報記憶手段）
２１　システム構成管理ファイル（サーバグループ情報、サーバグループ情報記憶手段）
２２　排他制御管理ファイル（排他条件情報、排他条件情報記憶手段）
ＳＶ−１〜ＳＶ−６　サーバ
ＰＧ１，ＰＧ２　プロセスグループ
ＳＧ１，ＳＧ２　サーバグループ
Ａ〜Ｊ　プロセス
Ｘ，Ｙ，Ｚ　管理プロセス（再開プロセス特定手段、再開サーバ特定手段、サーバ特定手段）
【図１】
2004102492.tif 000003
【図２】
2004102492.tif 000004
【図３】
2004102492.tif 000005
【図４】
2004102492.tif 000006
【図５】
2004102492.tif 000007
【図６】
2004102492.tif 000008
【図７】
2004102492.tif 000009
【図８】
2004102492.tif 000010
【図９】
2004102492.tif 000011
【図１０】
2004102492.tif 000012
【図１１】
2004102492.tif 000013
【図１２】
2004102492.tif 000014
【図１３】
2004102492.tif 000015
【図１４】
2004102492.tif 000016
【図１５】
2004102492.tif 000017
【図１６】
2004102492.tif 000018
【図１７】
2004102492.tif 000019
【図１８】
2004102492.tif 000020
【図１９】
2004102492.tif 000021