(57)【特許請求の範囲】
【請求項１】
特定のイベントの発生を検知するイベント検知手段と、
前記イベントが検知された場合に、次のブート時に、保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートするブート制御手段と、
を備える情報処理装置と、
前記イベントを検知した前記イベント検知手段から当該イベントの種類を受信する受信手段と、当該イベントの種類に関連づけられた前記保守処理を実行可能にするブートイメージを選択する選択手段と、該選択したブートイメージを提供する提供手段と、を備えるブートイメージ提供装置と、を含み、
前記情報処理装置は、前記情報処理装置のブート先を指定する情報を格納するブート先情報記憶手段と、前記情報処理装置の第１のブート先からのブートにより起動するオペレーティングシステムの起動後に、前記ブートイメージ提供装置を前記ブート先として指定する前記情報を前記ブート先情報記憶手段に書き込み、前記オペレーティングシステムが所定の終了方法によって終了することを検知したとき、前記オペレーティングシステムの起動以降に前記イベント検知手段による前記イベントの検知がなかった場合は、前記第１のブート先を前記ブート先として指定する前記情報を前記ブート先情報記憶手段に書き込む、ブート先設定手段と、を備え、
前記ブート制御手段は、前記イベントが検知された場合に、前記情報処理装置の次のブート時に、前記提供手段により提供される前記ブートイメージを使用してブートし、
前記選択手段は、前記受信手段が受信した前記イベントの種類に関連づけられた前記ブートイメージを選択し、該選択した選択情報を記録し、
前記受信手段は、前記情報処理装置からのネットワークブートの要求を受信し、
前記提供手段は、前記受信手段が前記情報処理装置から前記要求を受信したとき、前記選択情報が示すブートイメージを提供し、前記選択情報が記録されていない場合は所定の前記ブートイメージを提供する、
情報処理システム。
【請求項２】
前記イベント検知手段は、検知した前記イベントの種類を判別し、
前記ブート制御手段は、検知された前記イベントの種類に関連づけられた前記保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートする、
請求項１に記載の情報処理システム。
【請求項３】
前記イベント検知手段は、前記情報処理装置の第１のブート先からのブートにより起動するオペレーティングシステムにより動作するソフトウェアである、請求項１または２に記載の情報処理システム。
【請求項４】
前記イベント検知手段は、前記情報処理装置のブート前に発生した前記イベントを検知するコントローラである、請求項１または２に記載の情報処理システム。
【請求項５】
前記保守処理は、前記情報処理装置の正常または異常を判断し、正常と判断した場合は前記情報処理装置の次のブート時のブート先を第１のブート先に設定して前記情報処理装置を再起動させ、異常と判断した場合は前記情報処理装置の管理者に当該異常の発生を通報し前記情報処理装置を停止させる、判断処理を含む、請求項１から４のいずれか一項に記載の情報処理システム。
【請求項６】
前記情報処理装置は、前記オペレーティングシステムの所定の終了方法による終了時に、正常終了通知を前記ブートイメージ提供装置に送信する通知手段を備え、
前記提供手段は、前記受信手段が前記情報処理装置から前記要求を受信したとき、前記イベントの最後の受信以降に前記正常終了通知を受信していない場合には所定の前記ブートイメージを提供する、
請求項１から５のいずれか一項に記載の情報処理システム。
【請求項７】
情報処理装置が
前記情報処理装置における特定のイベントの発生を検知し、
前記イベントが検知された場合に、前記情報処理装置の次のブート時に、前記情報処理装置の保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートし、
前記情報処理装置のブート先を指定する情報を、前記情報処理装置のブート先情報記憶手段に格納し、
前記情報処理装置の第１のブート先からのブートにより起動するオペレーティングシステムの起動後に、ブートイメージ提供装置を前記ブート先として指定する前記情報を、前記ブート先情報記憶手段に書き込み、前記オペレーティングシステムが所定の終了方法によって終了することを検知したとき、前記オペレーティングシステムの起動以降に前記イベントの発生を検知しなかった場合は、前記第１のブート先を前記ブート先として指定する前記情報を、前記ブート先情報記憶手段に書き込み、
前記ブートイメージ提供装置が、
前記情報処理装置において前記オペレーティングシステムの起動以降に検知された前記イベントの種類を受信し、当該イベントの種類に関連づけられた前記保守処理を実行可能にするブートイメージを選択し、
該選択したブートイメージを提供し、
受信した前記イベントの種類に関連づけられた前記ブートイメージを選択し、該選択した選択情報を記録し、
前記情報処理装置からのネットワークブートの要求を受信したとき、前記選択情報が示すブートイメージを提供し、前記選択情報が記録されていない場合は所定の前記ブートイメージを提供し、
前記イベントが検知された場合に、前記情報処理装置が、次のブート時に、前記ブートイメージ提供装置より提供される前記ブートイメージを使用してブートする、
情報処理方法。
【請求項８】
情報処理装置のコンピュータに、
前記情報処理装置における特定のイベントの発生を検知するイベント検知手段から前記イベントの検知を受信する処理と、
前記検知を受信した場合に、次の前記情報処理装置のブート時に保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートする処理と、
前記情報処理装置のブート先を指定する情報を、前記情報処理装置のブート先情報記憶手段に格納する処理と、
前記情報処理装置の第１のブート先からのブートにより起動するオペレーティングシステムの起動後に、ブートイメージ提供装置を前記ブート先として指定する前記情報を、前記ブート先情報記憶手段に書き込み、前記オペレーティングシステムが所定の終了方法によって終了することを検知したとき、前記オペレーティングシステムの起動以降に前記イベント検知手段による前記イベントの検知がなかった場合は、前記第１のブート先を前記ブート先として指定する前記情報を、前記ブート先情報記憶手段に書き込む処理と、
を実行させ、
前記ブートイメージ提供装置のコンピュータに、
検知された前記イベントの種類を受信する処理と、
当該イベントの種類に関連づけられた前記保守処理を実行可能にするブートイメージを選択する処理と、
該選択したブートイメージを提供する処理と、
を実行させ、
前記ブートする処理において、前記イベントが検知された場合に、前記情報処理装置の次のブート時に、前記提供する処理により提供される前記ブートイメージを使用してブートし、
前記選択する処理において、受信した前記イベントの種類に関連づけられた前記ブートイメージを選択し、該選択した選択情報を記録し、
前記イベントの種類を受信する処理において、前記情報処理装置からのネットワークブートの要求を受信し、
前記提供する処理において、前記情報処理装置から前記要求を受信したとき、前記選択情報が示すブートイメージを提供し、前記選択情報が記録されていない場合は所定の前記ブートイメージを提供する、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、情報処理装置のブートを制御する情報処理技術に関する。
【背景技術】
【０００２】
多くの情報処理装置は、稼働中に重大な障害が発生した場合、誤作動を回避したり動作を正常に戻したりするために、情報処理装置を強制的にシャットダウンするように設計されている。
【０００３】
自動で再起動を行う機能を備える情報処理装置の場合、障害によるシャットダウン後、ブート装置によって再び稼働のためのＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ；オペレーティングシステム）がブート（起動）され、情報処理装置の稼働が再開する。
【０００４】
特許文献１にはシャットダウン時に不具合があった場合に情報処理装置を強制的に終了させる技術が開示されている。また、ＯＳの起動後に、前回のシャットダウンが正常に完了しなかったことが検知されていた場合に、情報処理装置が管理者に異常終了であったことを表示するという記載がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−１４０６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載の技術のもとでは、障害が発生し再起動した情報処理装置に対して、管理者が、ＯＳの起動後に適切な診断ツールを実行するなどして保守作業を行う。このとき、診断ツールの実行のためには、管理者が診断プログラムの準備を行った上で、診断ツールの起動のために再び再起動を行う必要があるため、装置の保全にかかるコスト（例えば人手や時間ロスなど）が大きいという問題がある。すなわち、人による作業の工程があることによって情報処理装置の平均修復時間（ＭＴＴＲ；Ｍｅａｎ  Ｔｉｍｅ  Ｔｏ  Ｒｅｃｏｖｅｒｙ）が長くなり、装置の稼働率が低下する。
【０００７】
また、ＯＳに致命的な障害が残った状態でブートが実行されると、さらなる障害を招くおそれがある。
【０００８】
このような問題が生じる可能性を低減するために、障害が発生した情報処理装置の起動後、ＯＳのブート前のタイミングで、診断プログラムの実行などの必要な処置を人の手を介さずに行う方法が求められる。
【０００９】
本発明の目的の１つは、障害が発生した情報処理装置の再起動時に、人の手を介さずに適切なブート処理を行うことができる情報処理システム等を提供することである。
【課題を解決するための手段】
【００１０】
本発明の一態様に係る情報処理システムは、情報処理装置における特定のイベントの発生を検知するイベント検知手段と、前記イベントが検知された場合に、前記情報処理装置の次のブート時に、前記情報処理装置の保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートするブート制御手段と、を備える。
【００１１】
本発明の一態様に係る情報処理方法は、情報処理システムが、情報処理装置における特定のイベントの発生を検知し、前記イベントが検知された場合に、前記情報処理装置の次のブート時に、前記情報処理装置の保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートする。
【００１２】
本発明の一態様に係るプログラムは、コンピュータに、前記コンピュータを含む情報処理装置における特定のイベントの発生を検知するイベント検知手段から前記イベントの検知を受信する処理と、前記検知を受信した場合に、次の前記情報処理装置のブート時に保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートする処理と、を実行させる。
【発明の効果】
【００１３】
本発明によれば、障害が発生した情報処理装置の再起動時に、人の手を介さずに適切なブート処理を行うことができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態の情報処理システムの構成を表すブロック図である。
【図２】第１の実施形態の情報処理システムの動作を表すフローチャートである。
【図３】本発明の第２の実施形態の情報処理システムの構成を表すブロック図である。
【図４Ａ】第２の実施形態の情報処理システムの動作を表すフローチャートである。
【図４Ｂ】第２の実施形態の情報処理システムの動作を表すフローチャートである。
【図５】本発明の第３の実施形態の情報処理システムの構成を表すブロック図である。
【図６】第３の実施形態の情報処理システムの動作を表すフローチャートである。
【図７】第３の実施形態におけるイベント検知処理を表すフローチャートである。
【図８】第３の実施形態におけるＯＳ終了処理を表すフローチャートである。
【図９】第３の実施形態におけるネットワークブート処理を表すフローチャートである。
【図１０】第３の実施形態における優先情報２２４の書き換えの流れを表すフローチャートである。
【図１１】発生したイベントと保守処理（ブートイメージ）との関連づけおよび選択情報の例を表す表である。
【図１２】優先情報の例を表す表である。
【図１３】本発明の各実施形態に係る情報処理システムの構成要素に適用可能なコンピュータの構成を例示する図である。
【図１４】第１の実施形態の情報処理システムの各構成要素を回路で構成した場合を表すブロック図である。
【図１５】第２の実施形態の情報処理システムの各構成要素を回路で構成した場合を表すブロック図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照しながら、本発明の実施形態を詳細に説明する。
【００１６】
＜＜第１の実施形態＞＞
まず、本発明の第１の実施形態について、図１を参照して説明する。図１は、第１の実施形態の情報処理システムの構成を示すブロック図である。
【００１７】
＜構成＞
本実施形態の情報処理システム１は、情報処理装置１０１とブートイメージ提供装置２０１とを含む。情報処理装置１０１は、一般的な、サーバなどのコンピュータ装置であり、ブート制御部１１０とイベント検知部１２０を備える。
【００１８】
ブート制御部１１０は情報処理装置１０１のブートの実行を制御する。ブート制御部１１０は、ブートの実行において、ブート先を選択し、選択したブート先から取得するブートイメージを使用してブートする。ブート先とは、ブートイメージを提供する媒体またはブートイメージを取得する経路もしくは方法である。ブート制御部１１０はブート先の１つとしてネットワークブートを選択することができる。ネットワークブートは、たとえばＰＸＥ（Ｐｒｅｂｏｏｔ  ｅＸｅｃｕｔｉｏｎ  Ｅｎｖｉｒｏｎｍｅｎｔ）機能により通信ネットワークを通じて受信するブートイメージを使用して行うブート方法である。本実施形態では、ネットワークブートを行う時のブートイメージはブートイメージ提供装置２０１から提供される。
【００１９】
イベント検知部１２０は、情報処理装置１０１の動作中における、障害発生等、情報処理装置１０１の保守処理を必要とする特定のイベントを検知する。本実施形態ではイベント検知部１２０は情報処理装置１０１の内部に含まれているが、イベント検知部１２０は情報処理装置１０１に接続される形で情報処理装置１０１の外部に存在していてもよい。
【００２０】
ブートイメージ提供装置２０１は情報処理装置１０１の保守処理を実行可能にするブートイメージを提供する機能を有する。
【００２１】
＜動作＞
次に、第１の実施形態の情報処理システムの、情報処理装置１０１の運転開始から終了までにおける動作を、図２のフローチャートを参照しながら説明する。
【００２２】
情報処理装置１０１に電源が投入されると、ブート制御部１１０が動作を開始し、ブート先の選択を行う（ステップＳ２１）。この時、ブート制御部１１０は、情報処理装置１０１の前回の起動時から今までにイベント検知部１２０による特定のイベントの検知があった場合（ステップＳ２２において“有”）は、ネットワークブートを実行する（ステップＳ２４）。特定のイベントの検知がなかった場合（ステップＳ２２において“無”）は、ブート制御部１１０は、通常のブート（たとえば、情報処理装置１０１が内蔵するハードディスクからのブート）を実行する（ステップＳ２３）。
【００２３】
ブート制御部１１０がイベントの検知の有無の判断をするためは、たとえば、イベント検知部１２０が検知したイベントを不揮発性メモリ等に記録しておき、ブート制御部１１０がその記録を参照すればよい。この場合、イベント検知部１２０は、毎回ブートが完了したタイミングで、その時点までに検知したイベントの記録をリセットするよう構成されていればよい。
【００２４】
ステップＳ２４において、情報処理装置１０１はブートイメージ提供装置２０１から情報処理装置１０１の保守処理を実行可能にするブートイメージを受け取り、当該ブートイメージを使用してブートする。
【００２５】
＜効果＞
第１の実施形態の効果を述べる。
【００２６】
本実施形態によれば、情報処理装置１０１は特定のイベントの発生があった場合にネットワークブートによる保守処理を実行することができる。また、人の手を介さずに保守処理が実行されるため、人的コスト、およびヒューマンエラーによるリスクを抑えることができる。さらに、保守処理を実行可能にするブートイメージがブートイメージ提供装置２０１に備わるため、そのネットワークブートを利用できる情報処理装置は個別に保守ツールを設定したりインストールしたりする必要がなく、コストが削減できるという利点を持つ。
【００２７】
＜＜第２の実施形態＞＞
次に、本発明の第２の実施形態について、図３を参照して説明する。図３は、第２の実施形態の情報処理システムの構成を表すブロック図である。
【００２８】
＜構成＞
本実施形態の情報処理システム２は、情報処理装置１０２と、ブートイメージ提供装置２０２とを含む。情報処理装置１０２とブートイメージ提供装置２０２とは、管理装置４００が管理する通信ネットワーク３００（ＬＡＮ（Ｌｏｃａｌ Ａｒｅａ Ｎｅｔｗｏｒｋ）等）を介して通信可能に接続される。
【００２９】
情報処理装置１０２は、第１の実施形態と同じく、サーバなどのコンピュータ装置である。情報処理装置１０２は、ブート制御部１１０、イベント検知部１２０、さらにブート先情報記憶部１３０、ブートイメージ記憶部１４０、ブート先設定部１５０、通知部１６０を備える。
【００３０】
ブート制御部１１０は情報処理装置１０２のブートを実行する。ブート制御部１１０は情報処理装置１０２の起動時にブート先情報記憶部１３０が示すブート先を参照して、対象となるブート先からブートイメージを読み出し、読み出したブートイメージを使用してブートする。ブート先は、例えば情報処理装置１０２の内蔵ディスク、ＤＶＤ（Ｄｉｇｉｔａｌ Ｖｅｒｓａｔｉｌｅ Ｄｉｓｃ）ドライブ、ネットワークブートなどがある。ネットワークブートは、通信ネットワーク３００を介して接続されるブートイメージ提供装置２０２に対してネットワークブートの要求を送信し、提供されたブートイメージを使用してブートする方法である。
【００３１】
ブート先情報記憶部１３０は、複数のブート先候補のうち最も優先的に使用するブート先が何であるか（ブート先情報）を記憶する。ブート先情報記憶部１３０は、情報処理装置１０２の運転または停止に関わらず記憶を保持する手段、たとえば不揮発性メモリ等によってブート先情報を記憶する。記憶されるブート先情報は、ブート先設定部１５０によって書き換えが行われる。
【００３２】
ブートイメージ記憶部１４０は、ブート制御部１１０が選択できるブート先の１つであり、以降は第１のブート先１４０と呼ぶ。第１のブート先１４０は、情報処理装置１０２が通常の運用を実現するために起動されるブート先である。第１のブート先１４０は、図３では情報処理装置１０２の内部に表示されているが、情報処理装置１０２の外部に備わっていてもよい。第１のブート先１４０が格納するブートイメージは、情報処理装置１０２をサーバとして機能させるＯＳを起動する、通常使用されるブートイメージである。
【００３３】
イベント検知部１２０は、情報処理装置１０２の動作中における、特定のイベントを検知する。特定のイベントとは、保守処理が必要とされる、情報処理装置１０２の障害等のイベントであり、例えばＯＳのストール障害、メモリ関連障害、Ｉ／Ｏインタフェース障害、ファイルシステム障害、ＢＩＯＳ（Ｂａｓｉｃ Ｉｎｐｕｔ／Ｏｕｔｐｕｔ Ｓｙｓｔｅｍ）関連障害、等である。あるいは、特定のイベントとはファームウェアの更新要求のようなイベントでもよい。特定のイベントをイベント検知部１２０が検知すると、イベント検知部１２０は当該イベントの発生情報をブートイメージ提供装置２０２へ向けて送信する。発生情報とは、たとえば、イベントが発生したことを示す情報や、発生したイベントの内容・種類を示す情報である。
【００３４】
通知部１６０は、第１のブート先１４０からのブートによって起動するＯＳが所定の終了方法によって終了することを検知した場合に、正常に終了することを示す通知である正常終了通知をブートイメージ提供装置２０２に向けて送信する。所定の終了方法とは、情報処理装置１０２の運用が異常を伴わず完了し安全に終了する場合に実行される終了方法である。通知部１６０は、ＯＳによって実現されてもよいし、情報処理装置１０２に備わる管理コントローラによって実現されてもよい。あるいは、所定の終了方法を管理装置４００が管理する場合は、通知部１６０は管理装置４００によって実現されてもよい。
【００３５】
ブートイメージ提供装置２０２は、情報処理装置１０２がネットワークブートを実行できるブートイメージを提供する。ブートイメージ提供装置２０２は、受信部２１０、選択部２２０、提供部２３０、ブートイメージ格納部２４０を有する。
【００３６】
ブートイメージ格納部２４０には、情報処理装置１０２に関する、診断や更新等の保守処理を実行することを可能とするブートイメージ２４２が１つ以上格納されている。
【００３７】
受信部２１０は通信ネットワーク３００を介して情報処理装置１０２からネットワークブートの要求を受信する。また、イベント検知部１２０から、特定のイベントの発生情報を受信する。さらに、通知部１６０から、正常終了通知を受信する。
【００３８】
選択部２２０は、受信部２１０が受信した、情報処理装置１０２に発生したイベントの内容に応じて、適切な保守処理を実行可能にするブートイメージを、ブートイメージ格納部２４０内のブートイメージ２４２から選択する。選択においては、選択部２２０は例えばあらかじめイベントの種類とそれぞれに関連づけられるブートイメージの対応表を用意しておき、対応表にしたがって、受信されたイベントに関連づけられるブートイメージを特定すればよい。
【００３９】
図１１は、選択部２２０が保持する対応表の例である。各ブートイメージは、それぞれのブートによって実行可能になる保守ツールの種類によって、イベントの種類と関連づけられる。選択部２２０はまた、ブートイメージ２４２のうち情報処理装置１０２のネットワークブートの際に提供すべきブートイメージとして選択されたブートイメージを示す選択情報２２２を記録する。本実施形態では選択情報２２２を、図１１の最右欄に示されるように、各ブートイメージに「選択」を表す値または「非選択」を表す値を関連づけることで記録する。ただし、選択情報２２２は別の方法（たとえば、選択されたブートイメージの識別子を記録するなど）によって記録されてもよいし、適宜優先順位をつけて記録されてもよい。選択情報２２２は、選択部２２０や提供部２３０等によって読み書き可能である。何もイベントが報知されていない場合（デフォルト）では、所定のブートイメージ（本実施形態ではブートイメージ２４２Ａ）が常に選択された状態となっている。
【００４０】
提供部２３０は、受信部２１０が受信した、情報処理装置１０２からのネットワークブート要求に応じて、選択部２２０によって選択され記録されているブートイメージを特定する。提供部２３０は、特定したブートイメージ２４２をブートイメージ格納部２４０から読み出し、読み出したブートイメージ２４２を情報処理装置１０２のブート制御部１１０に向けて送信する。
【００４１】
＜動作＞
次に、第２の実施形態の情報処理システムの動作の例を、図４Ａおよび図４Ｂを参照しながら説明する。図４Ａおよび図４Ｂは、第２の実施形態の情報処理システムの動作を表すフローチャートである。
【００４２】
まず、情報処理装置１０２に電源が投入されると、ブート制御部１１０がブート先情報記憶部１３０に記憶されているブート先情報をチェックする（ステップＳ４０１）。ブート先情報が第１のブート先１４０に設定されている場合（ステップＳ４０２において“第１のブート先”）は、ブート制御部１１０が第１のブート先１４０からブートを実行する。これにより、展開されたＯＳによる情報処理装置１０２の稼働が開始する（ステップＳ４０３）。ブート先情報がネットワークブートとなっていた場合（ステップＳ４０２において“ネットワークブート”）の動作については後述する。
【００４３】
ＯＳの起動後、ブート先設定部１５０がブート先情報をネットワークブートに設定する（ステップＳ４０４）。これにより、以降、再びブート先情報が設定されるまでに強制的なシャットダウン等の異常終了が起こった場合は、ブート先情報はネットワークブートに設定されたままとなる。ステップＳ４０４はＯＳの起動後すぐに、またはＯＳの起動と同時に実行されてもよい。
【００４４】
さて、ＯＳの稼働中、特定のイベントが発生し、イベント検知部１２０が検知した場合は（ステップＳ４０５において“検知”）、イベント検知部１２０はイベントの発生情報をブートイメージ提供装置２０２へ向けて報知する（ステップＳ４０６）。ブートイメージ提供装置２０２内の受信部２１０が報知を受信すると、選択部２２０は報知されたイベントの種類に関連づけられるブートイメージ２４２を選択し、当該ブートイメージを選択したことを表す選択情報２２２を記憶する（ステップＳ４０７）。
【００４５】
イベント検知部１２０は、特定のイベントの監視を、所定の終了方法によりＯＳが終了する処理（ステップＳ４０８においてＹＥＳ）に移行するまで継続して行う。イベントの検知の度に報知（ステップＳ４０６）とブートイメージの選択（ステップＳ４０７）が行われる。ただし、同じイベントが検知された場合は上記のステップは省略されてもよい。また、イベントの検知がなかった場合（ステップＳ４０５において“未検知”）は、報知（ステップＳ４０６）は行われない。
【００４６】
所定の終了方法によりＯＳが終了する処理に移行すると（ステップＳ４０８においてＹＥＳ）、通知部１６０は、ＯＳが正常に終了することを表す正常終了通知をブートイメージ提供装置２０２に向けて送信する（ステップＳ４０９）。ブート先設定部１５０は、ＯＳが所定の終了方法によって終了することを検知したとき、ＯＳの起動以降に１度もイベントの検知がなかった場合（ステップＳ４１０においてＮＯ）にはブート先情報記憶部１３０のブート先情報を第１のブート先１４０に設定する（ステップＳ４１１）。少なくとも１度のイベントの検知があった場合（ステップＳ４１０においてＹＥＳ）にはブート先情報を変更せず、ネットワークブートのままにする。ステップＳ４０９とステップＳ４１１の順序は問わない。上記処理が終わると、所定の終了方法が進行し、ＯＳは終了し（ステップＳ４１２）、情報処理装置１０２が停止する（ステップＳ４１３）。
【００４７】
以上の動作によれば、ＯＳの起動後、特定のイベントが発生せず、平常の終了方法によりＯＳが終了し情報処理装置１０２が停止する場合にのみ、ブート先情報が第１のブート先１４０に設定される。特定のイベントが発生した場合は、ブート先情報はネットワークブートに設定された状態となる。したがって、特定のイベントの有無によって次の起動のブート先が自動で切り替わる。
【００４８】
続いて、情報処理装置１０２を再び起動した際に、ブート先情報がネットワークブートとなっていた場合（ステップＳ４０２において“ネットワークブート”）の動作を説明する。
【００４９】
まずブート制御部１１０がブートイメージ提供装置２０２にネットワークブートの要求を行い、ブートイメージ提供装置２０２の受信部２１０が要求を受信する。提供部２３０は選択部２２０が示す選択情報２２２に基づいて、提供するブートイメージ２４２をブートイメージ格納部２４０から読み出す。この時、受信部２１０がイベントを最後に受信してからこれまでの時点で正常終了通知を受信していない（ステップＳ４２１においてＮＯ）場合、または、選択情報２２２が記録されていない（すなわち、ブートイメージ２４２がイベントの検知によって選択されていない）場合（ステップＳ４２２においてＮＯ）には、提供部２３０は、所定のブートイメージ２４２Ａを読み出して提供する（ステップＳ４２３）。受信部２１０が正常終了通知を受信していた場合（ステップＳ４２１においてＹＥＳ）かつ選択情報２２２があった場合（ステップＳ４２２においてＹＥＳ）には、提供部２３０は選択情報２２２が示すブートイメージ２４２を読み出し、読み出したブートイメージ２４２を情報処理装置１０２に提供する（ステップＳ４２４）。
【００５０】
情報処理装置１０２では、ブート制御部１１０が、提供されたブートイメージ２４２を使用してブートを実行し、それによって保守処理が実行される（ステップＳ４２５）。
【００５１】
保守処理が完了したら、ブート先設定部１５０は、ブート先情報を第１のブート先１４０に設定する（ステップＳ４２６）。そして、情報処理装置１０２は再起動する（ステップＳ４２７）。
【００５２】
＜効果＞
第２の実施形態の効果を述べる。
【００５３】
本実施形態によれば、情報処理装置１０２における特定のイベントを検知し、検知した場合にネットワークブートを実行する処理を情報処理装置１０２に実行させることができる。
【００５４】
このとき、ブートイメージ提供装置２０２側では、前回発生したイベントに関連づけられた保守処理を実行可能にするブートイメージ２４２を選択しているため、情報処理装置１０２の次の起動の際に適切な保守処理を実行させることができる。
【００５５】
この構成によって、軽微な障害や人の手による保守作業が本来必要でない保守処理は人の手を介さずに適切に実行される。そのため、人の手が介する手間、およびヒューマンエラーによるリスクを抑えることができる。
【００５６】
また、保守処理はネットワークブートによって実行可能になるため、そのネットワークブートを利用できる複数の情報処理装置に対して、同様に適切なブートを実行させるように構成することが可能である。各情報処理装置は個別に保守処理を行うツールを設定したりインストールしたりする必要がなく、コストが削減できるという利点を持つ。
【００５７】
なお、正常終了通知の受信によってはじめて所定のブートイメージ２４２Ａが選択されなくなるので、情報処理装置１０２が予期しないＯＳの障害等によって異常終了した場合には必ず所定のブートイメージ２４２Ａが起動する。所定のブートイメージがＯＳ障害の診断ツールを実行可能にするブートイメージであれば、異常終了後の起動においてＯＳの障害があるにも関わらず他の保守ツール等を起動させてしまうことを防ぐことができる。
【００５８】
＜＜第３の実施形態＞＞
次に、本発明の第３の実施形態として、第２の実施形態をさらに具体化した例を示して説明する。
【００５９】
＜構成＞
図５は、第３の実施形態の情報処理システムの構成を表すブロック図である。
【００６０】
本実施形態の情報処理システム３は、第２の実施形態と同様、情報処理装置１０３と、ブートイメージ提供装置２０３とを含む。情報処理装置１０３とブートイメージ提供装置２０３とは、管理装置４００が管理する通信ネットワーク３００を介して通信可能に接続される。
【００６１】
情報処理装置１０３は、ブート制御部１１０、管理コントローラ１２２、不揮発性メモリ１３２、ブートデバイス１４２、情報処理部１５２、メモリ１７２を備える。
【００６２】
ブート制御部１１０は第２の実施形態と同様、情報処理装置１０３のブートを実行する。ブート制御部１１０は、ブート先情報であるブートエントリ１３４を参照して、ブートエントリ１３４が示すブート先からブートイメージを読み出し、情報処理部１５２のメインメモリ１５４に展開させることで、ＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）１５６による情報処理装置１０３の制御を実行可能にする。
【００６３】
ブートエントリ１３４は、どのようなブートを行うかを示す情報である。例えば、内蔵ディスクからのブート／ＤＶＤドライブからのブート／ＢＩＯＳメニューの起動／ネットワーク経由のブート等の、ブート制御部が実行しうる方法のうち、優先的に実行すべき方法を表す。ブートエントリ１３４は、不揮発性メモリ１３２に記録される。ブートエントリ１３４は、例えば図示しない書き換え部により、書き換え命令を行うソフトウェアの命令に従って書き換えられる。本実施形態では、管理コントローラ１２２および情報処理部１５２が書き換え命令を行う機能を有する。
【００６４】
平常時のブート先（第１のブート先）として、ブートデバイス１４２が用いられる。ブートデバイス１４２は、情報処理装置１０３をサーバとして機能させるＯＳを起動するブートイメージであるＯＳイメージ１４４を格納する。
【００６５】
イベント検知手段は、本実施形態では情報処理装置１０３の管理コントローラ１２２、および監視プロセス１２４である。管理コントローラ１２２は、情報処理装置１０３を管理する、ＯＳとは独立したハードウェアであり、情報処理装置１０３が通電されていれば、ＯＳの状態に関係なく動作可能である。監視プロセス１２４は、情報処理装置１０３のブートデバイス１４２からのブートにより起動するＯＳにより動作するソフトウェアである。管理コントローラ１２２および監視プロセス１２４は、特定のイベントが検知された場合に、ブートイメージ提供装置２０３にそのイベントの発生情報（内容や種類等）を報知する機能を有する。
【００６６】
情報処理部１５２は、ＯＳが所定の終了方法で終了する際に、ブートイメージ提供装置２０３に向けて正常終了通知を送信する。
【００６７】
本実施形態では、イベントフラグ１７４という変数を用いる。イベントフラグ１７４は、ＯＳの動作中に特定のイベントが発生したか否かを示す変数であり、たとえば“１”か“０”のブーリアン変数である。イベントフラグ１７４は読み書き可能なメモリ１７２に記録され、監視プロセス１２４によるイベントの検知によって値が書き換えられる。値の書き換えは、例えば情報処理部１５２によって行われる。
【００６８】
ブートイメージ提供装置２０３は、第２の実施形態と同様に、受信部２１０、選択部２２０、提供部２３０、ブートイメージ格納部２４０を有する。
【００６９】
ブートイメージ格納部２４０には、情報処理装置１０３に関する診断や更新等の保守処理を実行することを可能とするブートイメージ２４２が格納されている。各ブートイメージ（図５では２４２Ａ〜２４２Ｅ。数は５つに制限されない）は、情報処理装置１０３に保守処理を実行させる保守ツールを起動するコードを含んでいる。保守ツールはたとえば、様々な種類の診断ツール、ＯＳ復旧ツール、ファームウェア更新ツールなどのプログラムである。図５においては便宜上、各ブートイメージ２４２Ａ〜２４２Ｅを、そのブートイメージが実行させる保守ツールの名前で代表させて表示している。
【００７０】
選択部２２０は、本実施形態では優先情報２２４を保持する。優先情報２２４は、情報処理装置１０３に提供するブートイメージ２４２の優先度を記録した情報で、選択部２２０や提供部２３０によって読み書き可能である。図１２は優先情報２２４の例である。優先度は各ブートイメージ２４２に優先度を表す数値を関連づけることで記録される。本実施形態では、優先度の数値が大きいブートイメージほど優先して提供される。何もイベントが起きていない状態（デフォルト）においては、所定のブートイメージ２４２Ａには最優先の値である“９９”が割り当てられ、他のブートイメージには“０”が割り当てられる。所定のブートイメージ２４２Ａはたとえば、ＯＳのストール障害に対する保守処理を行う診断ツールＩを実行可能にするブートイメージである。
【００７１】
提供部２３０は優先情報２２４を参照し、優先度の値が最も高いブートイメージ２４２を特定し、特定したブートイメージ２４２をブートイメージ格納部２４０から読み出し、情報処理装置１０３のブート制御部１１０に向けて送信する。
【００７２】
＜動作＞
次に、第３の実施形態の情報処理システムの動作の例を、図６を参照しながら説明する。図６は、第３の実施形態の情報処理システムの動作を表すフローチャートである。
【００７３】
まず、情報処理装置１０３に電源が投入されると、後述するブート前処理（ステップＳ６０１）という段階を経て、ブート制御部１１０の動作が始まる。ブート制御部１１０は、不揮発性メモリ１３２に記憶されているブートエントリ１３４をチェックし（ステップＳ６０２）、ブートエントリ１３４が示すブート先からブートを実行する。ブートエントリ１３４の初期値としてブートデバイス１４２が指定されているとすると（ステップＳ６０３において“ブートデバイス１４２”）、ブート制御部１１０は、ブートデバイス１４２のＯＳイメージ１４４を情報処理部１５２のメインメモリ１５４に展開する。展開されたＯＳの制御によってＣＰＵ１５６が動作する（ステップＳ６０４）。ブートエントリ１３４がネットワークブートとなっていた（ステップＳ６０３において“ネットワークブート”）場合の処理（ステップＳ６２０）については後述する。
【００７４】
ＯＳの起動後、ブートエントリ１３４はネットワークブートに設定され（ステップＳ６０５）、メモリ１７２内のイベントフラグ１７４の値は“０”に設定される（ステップＳ６０６）。これら設定の指示は、起動したＯＳが行ってもよいし、ＯＳの起動を検知した他のソフトウェアまたはハードウェアが行ってもよい。また、ステップＳ６０５とステップＳ６０６の順序は問わない。
【００７５】
ＯＳの運用中は監視プロセス１２４が常に情報処理装置１０３の異常を監視する。特定のイベントが発生して、監視プロセス１２４がその発生を検知した場合（ステップＳ６０７において“検知”）、情報処理部１５２は、イベントフラグ１７４の値を“１”に変更し（ステップＳ６０８）、ブートイメージ提供装置２０３へ向けてイベントの発生情報を報知する（ステップＳ６０９）。
【００７６】
このとき、フローチャート中には図示しないが、発生情報はブートイメージ提供装置２０３内の受信部２１０により受信される。選択部２２０は報知されたイベントの種類に関連付けられるブートイメージ２４２を特定し、当該ブートイメージの優先度を書き換える。書き換え方法は後述する。
【００７７】
監視プロセス１２４は、特定のイベントの監視を、所定の終了方法によりＯＳが終了する処理（ステップＳ６１０においてＹＥＳ）に移行するまで継続して行う。イベントの検知の度に報知（ステップＳ６０９）が行われる。ただし、イベントフラグの値がすでに“１”である場合は、情報処理部１５２は値を操作する必要はない。また、同じイベントが検知された場合は上記のステップは省略されてもよい。また、イベントの検知がなかった場合（ステップＳ６１０においてＮＯ）はステップＳ６０８およびステップＳ６０９は行われない。
【００７８】
所定の終了方法によりＯＳが終了する処理に移行すると（ステップＳ６１０においてＹＥＳ）、後述するＯＳ終了処理（ステップＳ６１１）が行われた後、情報処理装置１０３が停止する（ステップＳ６１２）。
【００７９】
次に、それぞれの処理の内容について詳細に説明する。
【００８０】
（ＯＳ終了処理）
続いて、ＯＳ終了処理（ステップＳ６１１）について説明する。図７は、ＯＳ終了処理の詳細を表すフローチャートである。
【００８１】
ＯＳが所定の終了方法により正常に動作を終了する場合、情報処理部１５２は、完全に終了する前に正常終了通知をブートイメージ提供装置２０３に送信する（ステップＳ７０１）。このとき、フローチャート中には図示しないが、正常終了通知はブートイメージ提供装置２０３の受信部２１０により受信される。通知の受信を確認した選択部２２０は優先情報２２４を書き換える。書き換え方法は後述する。そして、ＯＳは、イベントフラグ１７４の値をチェックし（ステップＳ７０２）、値が“０”であれば（ステップＳ７０３において“０”）ブートエントリ１３４を初期設定のブート先であるブートデバイス１４２に設定し（ステップＳ７０４）、値が“１”であれば（ステップＳ７０３において“１”）ブートエントリ１３４をネットワークブートのまま変更せずに、動作を終了する（ステップＳ７０５）。
【００８２】
（ネットワークブート処理）
次に、ブートエントリ１３４がネットワークブートに設定されていた場合の処理であるネットワークブート処理（ステップＳ６２０）について説明する。図８は、ネットワークブート処理の詳細を表すフローチャートである。説明の便宜上、情報処理装置１０３における動作とブートイメージ提供装置２０３における動作を分けて表示している。
【００８３】
情報処理装置１０３のブートにおいてネットワークブートが選択された場合、ブート制御部１１０はブートイメージ提供装置２０３にネットワークブートの要求を送信する（ステップＳ８０１）。ブートイメージ提供装置２０３では受信部２１０が要求を受信する（ステップＳ８０２）。この要求に従って、提供部２３０が選択部２２０に記憶されているブートイメージの優先情報２２４を参照して、最優先に設定されているブートイメージ２４２をブートイメージ格納部２４０から読み出す（ステップＳ８０３）。提供部２３０は、読み出したブートイメージを情報処理装置１０３に提供する（ステップＳ８０４）。
【００８４】
例として、診断ツールＩＩを実行可能にするブートイメージ２４２Ｂが提供される場合を説明する。情報処理装置１０３は提供されたブートイメージ２４２Ｂを使用してブートを実行する（ステップＳ８０５）。ブートイメージ２４２Ｂが展開されることによって、情報処理装置１０３では診断ツールＩＩが実行可能になる（ステップＳ８０６）。ツールを実行する情報処理部１５２は、診断ツールＩＩによる診断の結果、診断対象に異常があると判断された場合（ステップＳ８０７において“有”）は管理装置４００の管理者へ異常の発生を通報し（ステップＳ８０８）、情報処理装置１０３を停止させる（ステップＳ８０９）。診断対象に異常が無いと判断された場合（ステップＳ８０７において“無”）は、情報処理部１５２は、正常終了通知を送信し（ステップＳ８１０）、ブートエントリ１３４をブートデバイス１４２に設定し（ステップＳ８１１）、診断ツールを終了して（ステップＳ８１２）、情報処理装置１０３を再起動させる（ステップＳ８１３）。
【００８５】
提供されるブートイメージ２４２により実行可能になるプログラムが、診断を伴わない保守ツールである場合は、ステップＳ８０７は省略されてもよい。すなわち、情報処理部１５２は、当該ツールによる情報処理装置１０３の保守作業が正常に終了した際に正常終了通知を送信し、ブートエントリ１３４をブートデバイス１４２に設定し、情報処理装置１０３を再起動させればよい。
【００８６】
なお、ブートイメージの優先情報２２４が２つ以上のブートイメージを指定していた場合は、提供部２３０は優先順位の高いブートイメージを提供すればよい。このとき、提供部２３０は未提供のブートイメージがあることを示す信号を情報処理装置１０３に向けて送信する。信号を受け取った情報処理装置１０３は、１つ目の保守ツールの実行終了後、ブートエントリ１３４をブートデバイス１４２に設定するステップＳ８１１を省略して情報処理装置１０３を再起動させる。あるいは情報処理装置１０３は、ブートエントリ１３４を変更せず再起動もせずに、次のネットワークブート要求を送信してもよい。
【００８７】
（ブート前処理）
次に、ブート前処理（ステップＳ６０１）について説明する。図９は、ブート前処理の詳細を表すフローチャートである。
【００８８】
情報処理装置１０３への電源投入後、ブート制御部１１０の動作が開始する前に、情報処理装置１０３はハードウェアセルフテストやＰＯＳＴ（Ｐｏｗｅｒ  Ｏｎ  Ｓｅｌｆ  Ｔｅｓｔ）などの簡易診断を行う（ステップＳ９０１）。この簡易診断の過程で情報処理装置１０３の障害が有った場合（ステップＳ９０２）は、管理コントローラ１２２が、その障害を検知する（ステップＳ９０３）。管理コントローラ１２２は、障害を検知すると、ブートエントリ１３４をネットワークブートに設定し（ステップＳ９０４）、ブートイメージ提供装置２０３へ障害の発生情報を報知する（ステップＳ９０５）。このとき、フローチャート中には図示しないが、発生情報はブートイメージ提供装置２０３内の受信部２１０により受信される。選択部２２０は報知されたイベントの種類に関連付けられるブートイメージ２４２を特定し、当該ブートイメージの優先度を書き換える。情報処理装置１０３側では、障害が検知されなくなったら簡易診断を終了する（ステップＳ９０６）。
【００８９】
（優先情報２２４の書き換え）
ブートイメージ提供装置２０３における、ブートイメージ２４２の優先情報２２４の書き換えの例を説明する。
【００９０】
図１０は優先情報２２４の書き換えの流れを示すフローチャートである。
【００９１】
選択部２２０または提供部２３０が優先情報２２４を書き換えるタイミングは、イベントの発生情報を受信した時、正常終了通知を受信した時、および、ブートイメージ２４２を情報処理装置１０３に提供した時である。
【００９２】
優先情報２２４は、初期設定として、図１２で示されるように、所定のブートイメージ２４２Ａが“９９”、他のブートイメージが“０”と設定されている。
【００９３】
一例として、ＯＳの運用中にメモリ関連障害とＩ／Ｏインタフェース障害が検知され、その後ＯＳが正常に終了し、次のネットワークブートによりブートイメージが提供された場合の、優先情報２２４の書き換えの流れを、図１０に沿って説明する。
【００９４】
情報処理装置１０３側でメモリ関連障害が検知され、ブートイメージ提供装置２０３の受信部２１０がその発生情報を受信すると（ステップＳ１００１において“受信”）、選択部２２０は報知されたイベントの種類に関連づけられるブートイメージであるブートイメージ２４２Ｂを選択する。すなわち、選択部２２０は関連づけられるブートイメージ２４２Ｂの優先度を設定する（ステップＳ１００２）。当該ブートイメージの優先度は、所定のブートイメージ２４２Ａ以外のブートイメージの中で最優先になるように設定される。この例では所定のブートイメージ２４２Ａ以外のブートイメージはすべて優先度が“０”であるため、ブートイメージ２４２Ｂの優先度は“１”に書き換えられる。次に、受信部２１０がＩ／Ｏインタフェース障害の発生情報を受信する（ステップＳ１００１において“受信”）と、選択部２２０は報知されたイベントに関連づけられるブートイメージ２４２Ｃを選択する（ステップＳ１００２）。すなわち、ブートイメージ２４２Ｃの優先度は“０”から“２”に書き換えられる。
【００９５】
その後、受信部２１０が正常終了通知を受信した場合（ステップＳ１００３において“受信”）は、受信部２１０は所定のブートイメージ２４２Ａ以外に優先度が“１”以上のブートイメージがあるか否かを確認する。優先度が“１”以上のブートイメージがあれば（ステップＳ１００４においてＹＥＳ）、受信部２１０は、所定のブートイメージ２４２Ａの優先度を“９９”から“０”に書き換える。優先度１以上のブートイメージが無ければ書き換えは行われない。情報処理装置１０３の再起動後、ブート制御部１１０はネットワークブートの要求を行い、受信部２１０がその要求を受信する（ステップＳ１００６において“受信”）。提供部２３０は優先情報２２４を参照し、優先度が“１”以上の最も高い数字を示すブートイメージを特定して提供する（ステップＳ１００７）。この例ではブートイメージ２４２Ｃの優先度を示す“２”がすべての優先度の値の中で最も高いため、ブートイメージ２４２Ｃが提供される。このとき、提供部２３０はブートイメージ２４２Ｃの優先度を“０”に書き換える。また、提供部２３０は優先度が“１”以上の（すなわち、未提供の）ブートイメージ２４２があるか否かをチェックする（ステップＳ１００８）。ブートイメージ２４２Ｂの優先度が“１”である（ステップＳ１００８においてＹＥＳ）ため、提供部２３０は未提供のブートイメージがあることを示す信号をブート制御部１１０に送信する（ステップＳ１００９）。動作が一旦終了して再び開始に戻る。情報処理装置１０３の診断結果に異常がなければ再びネットワークブートの要求が送信されるため、イベント発生情報および正常終了通知がないまま受信部２１０が再びネットワークブートの要求を受信する（ステップＳ１００６において“受信”）。提供部２３０は、優先度が最も高いブートイメージ２４２Ｂを提供し、ブートイメージ２４２Ｂの優先度を“０”にする（ステップＳ１００７）。このとき、優先度が“１”以上のブートイメージがなくなる（ステップＳ１００８においてＮＯ）ため、選択部２２０または提供部２３０は、所定のブートイメージ２４２Ａの優先度を“９９”に設定する（ステップＳ１０１０）。
【００９６】
このような動作により、必要なブートイメージの提供がすべて遂行される。また、予期しない障害（ＯＳストール障害）の発生による異常終了の場合には、常に所定のブートイメージ２４２Ａが提供される。
【００９７】
＜効果＞
第３の実施形態の情報処理システムの効果を述べる。
【００９８】
本実施形態により、情報処理装置１０３における特定のイベントを検知し、検知した場合に検知されたイベントに関連づけられる保守処理を実行可能にするブートイメージを使用してブートするネットワークブートを情報処理装置１０３が実行するという動作が実現する。
【００９９】
本実施形態は第２の実施形態と同様の効果を提供する。また、ブート前の簡易診断時の障害に対しても情報処理装置１０３は適切な保守処理を実行することができるため、より保全性の高いシステムが実現する。
【０１００】
さらに、管理者への通報および装置の停止は、診断ツールの実行により異常と判定されて初めて行われるため、人的コストを抑制することができ、ＭＴＴＲが向上する。
【０１０１】
以上、説明した本発明の各実施形態において、各装置の各構成要素は、機能単位のブロックを示している。各装置の各構成要素の一部または全部は、例えば図１３に示すようなコンピュータ１３００とプログラムとの可能な組み合わせにより実現される。コンピュータ１３００は、一例として、以下のような構成を含む。
【０１０２】
・ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１３０１
・ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１３０２
・ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３０３
・ＲＡＭ１３０３にロードされるプログラム１３０４Ａおよび各種記憶情報１３０４Ｂ
・プログラム１３０４Ａおよび各種記憶情報１３０４Ｂを格納する記憶装置１３０５
・記録媒体１３０６の読み書きを行うドライブ装置１３０７
・通信ネットワーク１３０９と接続する通信インタフェース１３０８
・データの入出力を行う入出力インタフェース１３１０
・各構成要素を接続するバス１３１１
各実施形態における各装置の各構成要素は、これらの機能を実現するプログラム１３０４ＡをＣＰＵ１３０１が取得して実行することで実現される。各装置の各構成要素の機能を実現するプログラム１３０４Ａは、例えば、予め記憶装置１３０５やＲＡＭ１３０３に格納されており、必要に応じてＣＰＵ１３０１が読み出す。なお、プログラム１３０４Ａは、通信ネットワーク１３０９を介してＣＰＵ１３０１に供給されてもよいし、予め記録媒体１３０６に格納されており、ドライブ装置１３０７が当該プログラムを読み出してＣＰＵ１３０１に供給してもよい。
【０１０３】
各装置の実現方法には、様々な変形例がある。例えば、各装置は、構成要素毎にそれぞれ別個のコンピュータ１３００とプログラムとの可能な組み合わせにより実現されてもよい。また、各装置が備える複数の構成要素が、一つのコンピュータ１３００とプログラムとの可能な組み合わせにより実現されてもよい。
【０１０４】
また、各装置の各構成要素の一部または全部は、その他の汎用または専用の回路、コンピュータ等やこれらの組み合わせによって実現される。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。
【０１０５】
各装置の各構成要素の一部または全部は、図１４および図１５のように、上述した回路等とプログラムとの組み合わせによって実現されてもよい。
【０１０６】
図１４は、第１の実施形態の情報処理システムの各構成要素を回路で構成した場合を表すブロック図である。第１の実施形態の情報処理システムにおいて、ブート制御回路１４１１はブート制御部１１０として機能する。イベント検知回路１４１２はイベント検知部１２０として機能する。
【０１０７】
図１５は、第２の実施形態の情報処理システムの各構成要素を回路で構成した場合を表すブロック図である。第２の実施形態の情報処理システムにおいて、ブート制御回路１５１１はブート制御部１１０として機能する。イベント検知回路１５１２はイベント検知部１２０として機能する。ブート先情報記憶回路１５１３はブート先情報記憶部１３０として機能する。ブートイメージ記憶回路１５１４はブートイメージ記憶部１４０として機能する。ブート先設定回路１５１５はブート先設定部１５０として機能する。通知回路１５１６は通知部１６０として機能する。受信回路１５２１は受信部２１０として機能する。選択回路１５２２は選択部２２０として機能する。提供回路１５２３は提供部２３０として機能する。ブートイメージ格納回路１５２４はブートイメージ格納部２４０として機能する。
【０１０８】
各装置の各構成要素の一部または全部が複数のコンピュータや回路等により実現される場合には、複数のコンピュータや回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、コンピュータや回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【０１０９】
本願発明は以上に説明した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【０１１０】
上記実施形態の一部または全部は以下の付記のようにも記載され得るが、以下には限られない。
【０１１１】
＜＜付記＞＞
［付記１］
特定のイベントの発生を検知するイベント検知手段と、
前記イベントが検知された場合に、次のブート時に、保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートするブート制御手段と、
を備える情報処理装置。
［付記２］
前記イベント検知手段は、検知した前記イベントの種類を判別し、
前記ブート制御手段は、検知された前記イベントの種類に関連づけられた前記保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートする、
付記１に記載の情報処理装置。
［付記３］
前記イベント検知手段は、前記情報処理装置の第１のブート先からのブートにより起動するオペレーティングシステムにより動作するソフトウェアである、付記１または２に記載の情報処理装置。
［付記４］
前記イベント検知手段は、前記情報処理装置のブート前に発生した前記イベントを検知するコントローラである、付記１または２に記載の情報処理装置。
［付記５］
前記保守処理は、前記情報処理装置の正常または異常を判断し、正常と判断した場合は前記情報処理装置の次のブート時のブート先を第１のブート先に設定して前記情報処理装置を再起動させ、異常と判断した場合は前記情報処理装置の管理者に当該異常の発生を通報し前記情報処理装置を停止させる、判断処理を含む、付記１から４のいずれか一項に記載の情報処理装置。
［付記６］
付記１から５のいずれか一項に記載の情報処理装置と、
前記イベントを検知した前記イベント検知手段から当該イベントの種類を受信する受信手段と、当該イベントの種類に関連づけられた前記保守処理を実行可能にするブートイメージを選択する選択手段と、該選択したブートイメージを提供する提供手段と、を備えるブートイメージ提供装置と、
を含み、
前記ブート制御手段は、前記イベントが検知された場合に、前記情報処理装置の次のブート時に、前記提供手段により提供される前記ブートイメージを使用してブートする、
情報処理システム。
［付記７］
前記情報処理装置のブート先を指定する情報を格納するブート先情報記憶手段と、
前記情報処理装置の第１のブート先からのブートにより起動するオペレーティングシステムの起動後に、前記ブートイメージ提供装置を前記ブート先として指定する前記情報を前記ブート先情報記憶手段に書き込み、前記オペレーティングシステムが所定の終了方法によって終了することを検知したとき、前記オペレーティングシステムの起動以降前記イベント検知手段による前記イベントの検知がなかった場合は、前記第１のブート先を前記ブート先として指定する前記情報を前記ブート先情報記憶手段に書き込む、ブート先設定手段と、
を備え、
前記選択手段は、前記受信手段が受信した前記イベントの種類に関連づけられた前記ブートイメージを選択し、該選択した選択情報を記録し、
前記受信手段は、前記情報処理装置からのネットワークブートの要求を受信し、
前記提供手段は、前記受信手段が前記情報処理装置から前記要求を受信したとき、前記選択情報が示すブートイメージを提供し、前記選択情報が記録されていない場合は所定の前記ブートイメージを提供する、
付記６に記載の情報処理システム。
［付記８］
前記情報処理装置は、
前記オペレーティングシステムの所定の終了方法による終了時に、正常終了通知を前記受信手段に送信する通知手段を備え、
前記提供手段は、前記受信手段が前記情報処理装置から前記要求を受信したとき、前記イベントの最後の受信以降前記正常終了通知を受信していない場合には所定の前記ブートイメージを提供する、
付記７に記載の情報処理システム。
［付記９］
付記１から５のいずれか一項に記載の情報処理装置からネットワークブートの要求を受信する受信手段と、
前記受信手段が前記要求を受信すると、前記情報処理装置の保守処理を実行可能にするブートイメージを前記情報処理装置に提供する提供手段と
を備えるブートイメージ提供装置。
［付記１０］
前記受信手段は、前記イベントの種類を受信し、
前記ブートイメージ提供装置は、前記受信手段が受信した前記イベントの種類に関連づけられた前記ブートイメージを選択する選択手段をさらに備え、
前記提供手段は、前記受信手段が前記要求を受信すると、前記選択手段によって選択された前記ブートイメージを前記情報処理装置に提供する、
付記９に記載のブートイメージ提供装置。
［付記１１］
情報処理装置のイベントの発生を検知し、
前記イベントが検知された場合に、前記情報処理装置の次のブート時に、前記情報処理装置の保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートする、
情報処理方法。
［付記１２］
前記イベントの種類を判別し、
検知した前記イベントの種類に関連づけられた前記保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートする、
付記１１に記載の情報処理方法。
［付記１３］
前記情報処理装置の第１のブート先からのブートにより起動するオペレーティングシステムにより動作するソフトウェアが前記イベントを検知する、付記１１または１２に記載の情報処理方法。
［付記１４］
前記情報処理装置のブート前に発生した前記イベントを検知するコントローラが前記イベントを検知する、付記１１または１２に記載の情報処理方法。
［付記１５］
前記保守処理は、前記情報処理装置の正常または異常を判断し、正常と判断した場合は前記情報処理装置の次のブート時のブート先を第１のブート先に設定して前記情報処理装置を再起動させ、異常と判断した場合は前記情報処理装置の管理者に当該異常の発生を通報し前記情報処理装置を停止させる、判断処理を含む、
付記１１から１４のいずれか一項に記載の情報処理方法。
［付記１６］
ブートイメージ提供装置が、
付記１１から１５のいずれか一項に記載の情報処理方法を実行する情報処理装置から当該イベントの種類を受信し、当該イベントの種類に関連づけられた前記保守処理を実行可能にするブートイメージを選択して提供し、
前記情報処理装置が、
前記イベントが検知された場合に、前記情報処理装置の次のブート時に、前記ブートイメージ提供装置により提供される前記ブートイメージを使用してブートする、
情報処理方法。
［付記１７］
前記ブートイメージ提供装置が、前記情報処理装置のブート先を指定する情報をブート先情報記憶手段に格納し、
前記情報処理装置が、
前記情報処理装置の第１のブート先からのブートにより起動するオペレーティングシステムの起動後に、前記ブートイメージ提供装置を前記ブート先として指定する前記情報を前記ブート先情報記憶手段に書き込み、前記オペレーティングシステムが所定の終了方法によって終了することを検知したとき、前記オペレーティングシステムの起動以降前記イベントの検知がなかった場合は、前記第１のブート先を前記ブート先として指定する前記情報を前記ブート先情報記憶手段に書き込み、
前記ブートイメージ提供装置は、
受信した前記イベントの種類に関連づけられた前記ブートイメージを選択し、該選択した選択情報を記録し、
前記情報処理装置からの検知された前記イベントの種類および前記情報処理装置からのネットワークブートの要求を受信し、
前記情報処理装置から前記要求を受信したとき、前記選択情報が示すブートイメージを提供し、前記選択情報が記録されていない場合は所定の前記ブートイメージを提供する、
付記１６に記載の情報処理方法。
［付記１８］
前記情報処理装置は、
前記オペレーティングシステムの所定の終了方法による終了時に、正常終了通知を前記ブートイメージ提供装置に送信し、
前記ブートイメージ提供装置は、
前記情報処理装置から前記要求を受信したとき、前記イベントの最後の受信以降前記正常終了通知を受信していない場合には所定の前記ブートイメージを提供する、
付記１７に記載の情報処理方法。
［付記１９］
付記１１から１５のいずれか一項に記載の情報処理方法を実行する情報処理装置からネットワークブートの要求を受信し、
前記要求を受信すると、前記情報処理装置の保守処理を実行可能にするブートイメージを前記情報処理装置に提供する
ブートイメージ提供方法。
［付記２０］
前記イベントの種類を受信し、
前記イベントの種類に関連づけられた前記ブートイメージを選択し、
前記要求を受信すると、選択した前記ブートイメージを前記情報処理装置に提供する
付記１９に記載のブートイメージ提供方法。
［付記２１］
コンピュータに、前記コンピュータを含む情報処理装置における特定のイベントの発生を検知するイベント検知手段から前記イベントの検知を受信する処理と、前記検知を受信した場合に、次の前記情報処理装置のブート時に保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートするブート制御処理と、を実行させるプログラム。
［付記２２］
前記イベント検知手段は前記イベントの種類を判別し、
前記ブート制御処理は、前記コンピュータに、前記イベント検知手段が検知した前記イベントの種類に関連づけられた前記保守処理を実行可能にするブートイメージをネットワーク経由で使用してブートする、
付記２１に記載のプログラム。
［付記２３］
前記イベント検知手段は、前記情報処理装置の第１のブート先からのブートにより起動するオペレーティングシステムにより動作するソフトウェアである、付記２１または２２に記載のプログラム。
［付記２４］
前記イベント検知手段は、前記情報処理装置のブート前に発生した前記イベントを検知するコントローラである、付記２１または２２に記載のプログラム。
［付記２５］
前記保守処理は、前記情報処理装置の正常または異常を判断し、正常と判断した場合は前記情報処理装置の次のブート時のブート先を第１のブート先に設定して前記情報処理装置を再起動させ、異常と判断した場合は前記情報処理装置の管理者に当該異常の発生を通報し前記情報処理装置を停止させる、判断処理を含む
付記２１から２４のいずれか一項に記載のプログラム。
［付記２６］
付記２１から２５のいずれか一項に記載のプログラムを実行するコンピュータを含む前記情報処理装置に、
前記情報処理装置の第１のブート先からのブートにより起動するオペレーティングシステムの起動後に、ネットワークブートを前記ブート先として指定する前記情報をブート先情報記憶手段に書き込む処理と、
前記オペレーティングシステムが所定の終了方法によって終了することを検知したとき、前記オペレーティングシステムの起動以降前記イベント検知手段による前記イベントの検知がなかった場合は、前記第１のブート先を前記ブート先として指定する前記情報を前記ブート先情報記憶手段に書き込む処理と、
を実行させるプログラム。
［付記２７］
ブートイメージ提供装置に、
付記１から５のいずれか一項に記載の情報処理装置からネットワークブートの要求を受信する受信処理と、
前記要求を受信すると、前記情報処理装置の保守処理を実行可能にするブートイメージを前記情報処理装置に提供する提供処理と、
を実行させるプログラム。
［付記２８］
前記受信処理は前記イベントの種類を受信し、
前記プログラムは、前記ブートイメージ提供装置に、受信した前記イベントの種類に関連づけられた前記ブートイメージを選択する選択処理を実行させ、
前記提供処理は、前記受信処理で前記要求を受信すると、前記選択処理で選択した前記ブートイメージを前記情報処理装置に提供する、
付記２７に記載のプログラム。
［付記２９］
前記選択処理は、前記受信処理で受信した前記イベントの種類に関連づけられた前記ブートイメージを選択し、該選択した選択情報を記録し、
前記提供処理は、前記受信処理が前記情報処理装置から前記要求を受信したとき、前記選択情報が示すブートイメージを提供し、前記選択情報が記録されていない場合は所定の前記ブートイメージを提供する、
付記２８に記載のプログラム。
［付記３０］
前記提供処理は、前記受信処理が、付記２６に記載のプログラムを実行する情報処理装置から前記要求を受信したとき、前記イベントの最後の受信以降に、前記オペレーティングシステムの所定の終了方法による終了時に正常終了通知を送信する通知手段から、当該正常終了通知を受信していない場合には、所定の前記ブートイメージを提供する、
付記２７から２９のいずれか一項に記載のプログラム。
【符号の説明】
【０１１２】
１    情報処理システム
２    情報処理システム
３    情報処理システム
１０１    情報処理装置
１０２    情報処理装置
１０３    情報処理装置
１１０    ブート制御部
１２０    イベント検知部
１２２    管理コントローラ
１２４    監視プロセス
１３０    ブート先情報記憶部
１３２    不揮発性メモリ
１３４    ブートエントリ
１４０    ブートイメージ記憶部（第１のブート先）
１４２    ブートデバイス
１４４    ＯＳイメージ
１５０    ブート先設定部
１５２    情報処理部
１５４    メインメモリ
１５６    ＣＰＵ
１６０    通知部
１７２    メモリ
１７４    イベントフラグ
２０１    ブートイメージ提供装置
２０２    ブートイメージ提供装置
２０３    ブートイメージ提供装置
２１０    受信部
２２０    選択部
２２２    選択情報
２２４    優先情報
２３０    提供部
２４０    ブートイメージ格納部
２４２    ブートイメージ
３００    通信ネットワーク
４００    管理装置
１３００    コンピュータ
１３０１    ＣＰＵ
１３０２    ＲＯＭ
１３０３    ＲＡＭ
１３０４Ａ    プログラム
１３０４Ｂ    各種記憶情報
１３０５    記憶装置
１３０６    記録媒体
１３０７    ドライブ装置
１３０８    通信インタフェース
１３０９    通信ネットワーク
１３１０    入出力インタフェース
１３１１    バス
１４１１    ブート制御回路
１４１２    イベント検知回路
１５１１    ブート制御回路
１５１２    イベント検知回路
１５１３    ブート先情報記憶回路
１５１４    ブートイメージ記憶回路
１５１５    ブート先設定回路
１５１６    通知回路
１５２１    受信回路
１５２２    選択回路
１５２３    提供回路
１５２４    ブートイメージ格納回路
【図１】
0006627366.tif 000002
【図２】
0006627366.tif 000003
【図３】
0006627366.tif 000004
【図４Ａ】
0006627366.tif 000005
【図４Ｂ】
0006627366.tif 000006
【図５】
0006627366.tif 000007
【図６】
0006627366.tif 000008
【図７】
0006627366.tif 000009
【図８】
0006627366.tif 000010
【図９】
0006627366.tif 000011
【図１０】
0006627366.tif 000012
【図１１】
0006627366.tif 000013
【図１２】
0006627366.tif 000014
【図１３】
0006627366.tif 000015
【図１４】
0006627366.tif 000016
【図１５】
0006627366.tif 000017