JP5621926B2 - 処理装置および管理ボード - Google Patents

処理装置および管理ボード Download PDF

Info

Publication number
JP5621926B2
JP5621926B2 JP2013521382A JP2013521382A JP5621926B2 JP 5621926 B2 JP5621926 B2 JP 5621926B2 JP 2013521382 A JP2013521382 A JP 2013521382A JP 2013521382 A JP2013521382 A JP 2013521382A JP 5621926 B2 JP5621926 B2 JP 5621926B2
Authority
JP
Japan
Prior art keywords
firmware
housing
flash memory
management board
board
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
JP2013521382A
Other languages
English (en)
Other versions
JPWO2012176311A1 (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2013521382A priority Critical patent/JP5621926B2/ja
Application granted granted Critical
Publication of JP5621926B2 publication Critical patent/JP5621926B2/ja
Publication of JPWO2012176311A1 publication Critical patent/JPWO2012176311A1/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs

Description

本件は、処理装置および管理ボードに関する。
ブレードシステムや、パーティショニング機能を有するシステムは、一つの筐体内に複数のサーバ領域を持ち、個々のサーバはそれぞれ独立している。また、筐体内には、各サーバや共通コンポーネントを管理する管理部がそなえられている。管理部は、一般に、マネージメントボード(MMB;管理ボード)と呼ばれる、筐体に対し挿抜可能なボードとして構成される。ボード上には、ファームウェアが動作するためのサービスプロセッサやフラッシュメモリ等が搭載され、筺体の電圧,温度,ファン回転数などの監視や、その監視結果に基づき電源,電力,ファンなどの制御等を行なう機能がそなえられている。
MMBでハードウェア故障等が発生した場合、ボード交換作業が発生する。このとき、交換のために持ち込んだ新しいボードに搭載されているファームウェアの版数(例えばVer. A1)が、旧ボード上で動作していたファームウェアの版数(例えばVer. A2)と異なる場合がある。このような場合、通常、システム管理者または保守作業者は、ボードの交換を行なった後、新しいボード上のファームウェアを、旧ボード上で動作していたファームウェアに更新する、つまり新しいボード上のファームウェアを版数Ver. A1から版数Ver. A2に更新する。これは、ボードの交換後も、これまで安定して動作していたファームウェア版数で運用を続けることで、予期しないシステムエラーが発生するリスクを軽減するためである。
そこで、従来、ボードの交換後、新たなボード上に存在する不揮発性メモリにおけるファームウェア(制御プログラム)を更新する必要があるか否かを、システム管理者あるいは保守作業者が判断する。そして、更新が必要であると判断した場合、作業者等が、更新用ファームウェアの格納されている外部メモリを持参し、外部メモリからプログラムを実行し、ファームウェアの更新を行なうといった手法が採られている。
さらに、従来、ボードの交換時に、以下のような手法も採られている。まず、ボードの外部に指示手段および記憶手段を用意しておき、ボードの交換前に、旧ボード上で動作していたファームウェアの各種設定情報を、一旦、外部の記憶手段に退避させる。つまり、作業者等は、指示手段からのオペレーションで、不揮発性メモリの内容を、一旦、外部の記憶手段に退避させる。そして、ボードの交換後に、作業者等は、指示手段からのオペレーションで、外部の記憶手段に退避された、旧ボード上の不揮発性メモリの内容を、新たなボード上の不揮発性メモリに復元する。このとき、作業者等は、ファームウェアの設定データの変更時に、設定データのバックアップを採取しておき、ボードの交換後に、バックアップされた設定データを、新たなボード上のファームウェアの設定データとしてリストアすることも行なっている。
特開2003−076564号公報 特願平06−348483号公報
しかしながら、上述した従来の手法では、ファームウェアの更新要否を作業者等が判断する必要があるとともに、一部、手動での作業が伴う。このため、ボード交換作業に時間が掛かるほか、作業ミスにより予期しないシステム停止が発生する可能性があるという課題がある。また、作業者等は、旧ボード上で動作していた版数が分からないため、更新要否の判断を行なえず、旧ボード上のファームウェアの版数と同じ版数のファームウェアを復元できないという課題もある。
また、ファームウェアの各種設定情報を交換前後のボードで引き継ぐ場合、上述した従来の手法では、作業者等が外部の指示手段および記憶手段を用いて作業を行なわなければならず手間が掛かるという課題がある。また、ボードの故障状況によっては、交換前に不揮発性メモリの内容を退避できないおそれがあり、旧ボード上の不揮発性メモリの内容を新たなボード上の不揮発性メモリに復元できない場合があるという課題もある。さらに、作業者等は、設定データの変更を行なう都度、バックアップの採取を行なわなければならないため、バックアップ採取作業に手間が掛かるという課題がある。また、作業者等が、バックアップを採取し忘れると、設定データの復元を行なえなくなり、手動で設定データの再設定を行なわなければならなくなる場合もあるという課題がある。
つまり、上述した従来の手法によれば、以下のような課題がある。
MMB(管理ボード)の交換後に、作業者等が、ファームウェアの更新要否を判断する必要があるが、更新要否を判断できない場合がある。
作業者等が手動でファームウェア更新作業を行なうため、その作業に時間が掛かるとともに、作業ミスによるシステム停止の危険性がある。
ファームウェアの設定データを復元できない場合がある。
一つの側面で、本件は、デバイスの保守交換後に、どのデバイスに格納されているデータが妥当であるかを自動判定することができるようにすることを目的とする。
なお、前記目的に限らず、後述する発明を実施するための最良の形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本件の他の目的の一つとして位置付けることができる。
本件の処理装置は、筐体と、前記筐体内にそなえられた処理部と、前記筐体に挿抜可能に実装され、前記処理部を管理する管理ボードと、を有している。また、前記筐体は、当該筐体の識別情報を格納しうる記憶部を有している。さらに、前記管理ボードは、不揮発性メモリ,可搬型記憶媒体および判定部を有している。前記不揮発性メモリは、前記管理ボードが実装された筐体の識別情報およびファームウェアが参照する設定データを格納しうる。前記可搬型記憶媒体は、前記管理ボードに挿抜可能に実装され、実装されている管理ボードが実装された筐体の識別情報およびファームウェアが参照する設定データを格納しうる。前記判定部は、前記記憶部に格納された識別情報と前記不揮発性メモリに格納された識別情報と前記管理ボードに実装された前記可搬型記憶媒体に格納された識別情報とに基づき、前記不揮発性メモリと前記可搬型記憶媒体とのうちのいずれに、前記管理ボード上で動作するファームウェアが参照すべき設定データが格納されているかを判定する。
また、本件の管理ボードは、筐体に挿抜可能に実装され、前記筐体内の処理部を管理するものであって、不揮発性メモリ,可搬型記憶媒体および判定部を有している。前記不揮発性メモリは、前記管理ボードが実装された筐体の識別情報およびファームウェアが参照する設定データを格納しうる。前記可搬型記憶媒体は、前記管理ボードに挿抜可能に実装され、実装されている管理ボードが実装された筐体の識別情報およびファームウェアが参照する設定データを格納しうる。前記判定部は、前記筐体にそなえられた記憶部に格納された当該筐体の識別情報と、前記不揮発性メモリに格納された識別情報と、前記管理ボードに実装された前記可搬型記憶媒体に格納された識別情報とに基づき、前記不揮発性メモリと前記可搬型記憶媒体とのうちのいずれに、前記管理ボード上で動作するファームウェアが参照すべき設定データが格納されているかを判定する。
開示の技術では、デバイスの保守交換後に、どのデバイスに格納されているデータが妥当であるかを自動判定することが可能になる。
一実施形態の処理装置および管理ボードのハードウェア構成および機能構成を示すブロック図である。 本実施形態の設定データ格納場所判定テーブルの一例を示す図である。 本実施形態の処理装置(管理ボード)の起動時における動作を概略的に説明するためのフローチャートである。 本実施形態の管理ボードにおける判定部および書込制御部の動作を説明するためのフローチャートである。 本実施形態のファームウェア版数更新動作を説明するためのフローチャートである。 本実施形態のファームウェア版数更新動作を説明するための図である。
以下、図面を参照して実施の形態を説明する。
〔1〕処理装置および管理ボードの構成
図1は、一実施形態の処理装置1および管理ボード30のハードウェア構成および機能構成を示すブロック図である。
図1に示す処理装置1は、筐体10を有し、当該筐体10内に、複数の処理部20と一の管理ボード30とをそなえて構成されている。処理部20は、例えばサーバである。なお、以下、処理部20を「サーバ20」といい、管理ボード(マネージメントボード)30を「MMB30」または「ボード30」という。
筐体10は、当該筐体10の識別情報としての筐体シリアル番号と、当該筐体10におけるMMB30上で動作しているファームウェアの版数情報とを格納しうる記憶部11を有している。筐体シリアル番号は、記憶部11の筐体シリアル番号格納領域(識別情報格納領域)に格納され、ファームウェアの版数情報は、記憶部11の版数情報格納領域に格納されている。少なくとも版数情報格納領域におけるファームウェアの版数情報は、後述する書込制御部33bにより上書き(書き換え)可能になっている。記憶部11としては例えばEEPROM(Electronic Erasable Programmable Read Only Memory;電気的消去書き込み可能読み出し専用メモリ)が用いられる。以下、記憶部11を「筐体ROM11」という。
複数のサーバ20は、それぞれ、例えば筐体10に対し挿抜可能なサーバブレードとして構成され、独立して動作する。
MMB30は、各サーバ20や共通コンポーネントを管理するものであり、MMB30も、筐体10に挿抜可能に実装されている。MMB30は、筺体の電圧,温度,ファン回転数などの監視や、その監視結果に基づき電源,電力,ファンなどの制御等を行なう機能を有している。
MMB30上には、ファームウェアが動作するためのサービスプロセッサ(SP)33や、RAM(Random Access Memory)ディスク34が搭載されるほか、後述する可搬型記憶媒体31やフラッシュメモリ(不揮発性メモリ)32が搭載されている。SP33およびRAMディスク34は、フラッシュメモリ32に格納されたファームウェアコード(ブートコード)を実行するために使用される。
可搬型記憶媒体31は、MMB30に挿抜可能に実装される。可搬型記憶媒体31としては例えばSD(Secure Digital)カードやUSB(Universal Serial Bus)メモリが用いられる。以下、可搬型記憶媒体31を「可搬媒体31」という。
可搬媒体31には、下記項目(11)〜(14)のデータが格納される。
(11)当該可搬媒体31を実装されたMMB30(挿入先のMMB30)上で動作するファームウェアのコードであって、フラッシュメモリ32上に展開されているファームウェアコードを圧縮した圧縮データ(ファームウェア圧縮イメージ)
(12)当該可搬媒体31を実装されたMMB30(挿入先のMMB30)上で動作するファームウェアの各種設定データ
(13)当該可搬媒体31を実装されたMMB30(挿入先のMMB30)を実装された筐体10のシリアル番号
(14)当該可搬媒体31を実装されたMMB30(挿入先のMMB30)上で動作するファームウェアの版数情報
このように、可搬媒体31には、項目(11)のファームウェアコードの圧縮データおよび項目(12)のファームウェアの動作設定データがバックアップデータとして格納される。項目(11)のファームウェアコードの圧縮イメージとしては、数世代分の圧縮イメージを保持することも可能である。また、項目(13)の筐体シリアル番号および項目(14)のファームウェアの版数情報は、処理装置1におけるデバイスである筐体ROM11,MMB30,可搬媒体31,フラッシュメモリ32が新しいものに交換されたか否かの判断を可能にする情報である。
フラッシュメモリ32には、下記項目(21)〜(24)のデータが格納される。
(21)当該フラッシュメモリ32を搭載されたMMB30上で動作するファームウェアのコードであって、当該フラッシュメモリ32上に展開されているファームウェアコード
(22)当該フラッシュメモリ32を搭載されたMMB30上で動作するファームウェアの各種設定データ
(23)当該フラッシュメモリ32を搭載されたMMB30を実装された筐体10のシリアル番号
(24)当該フラッシュメモリ32を搭載されたMMB30上で動作するファームウェアの版数情報
このように、可搬媒体31が故障した場合を考慮して、フラッシュメモリ32にも、項目(22)のファームウェアの動作設定データが保持される。項目(23)の筐体シリアル番号および項目(24)のファームウェアの版数情報は、項目(13),(14)のデータと同様、処理装置1におけるデバイスである筐体ROM11,MMB30,可搬媒体31,フラッシュメモリ32が新しいものに交換されたか否かの判断を可能にする情報である。
後述するように、ハードウェア故障等でMMB30が交換される場合、可搬媒体31が新しいボード30に引き継がれることで、旧ボード30で使用されていたファームウェアコードや設定データが新しいボード30に反映される。また、可搬媒体31が交換された場合、ボード30上のフラッシュメモリ32から設定データが読み出され可搬媒体31に書き込まれることにより、処理装置10の動作が継続される。
MMB30上のSP33は、RAMディスク34等の記憶機能によって保持されるプログラムを実行することにより、判定部33aおよび書込制御部(更新制御部)33bとして機能する。
判定部33aは、例えばデバイスの保守交換後の起動時等に、筐体ROM11,フラッシュメモリ32および可搬媒体31における筐体シリアル番号およびファームウェア版数情報に基づき、MMB30上で動作するファームウェアが参照すべき設定データが、フラッシュメモリ32と可搬媒体31とのうちのいずれに格納されているかを判定する。つまり、判定部33aは、筐体ROM11,フラッシュメモリ32および可搬媒体31の3箇所に格納されている情報を比較し、どのデバイス(ここではフラッシュメモリ32および可搬媒体31のいずれ)に格納されているデータが妥当であるかを判定する。
より具体的に、判定部33aは、例えば図2に示すような設定データ格納場所判定テーブルTを用いて、MMB30上で動作するファームウェアが参照すべき設定データが、フラッシュメモリ32と可搬媒体31とのうちのいずれに格納されているかを判定する。図2は、本実施形態の設定データ格納場所判定テーブルTの一例を示す図である。
テーブルTは、ファームウェア内部に予めそなえられ、RAMディスク34等の記憶機能によって保持されている。テーブルTには、図2に示すように、筐体ROM11,フラッシュメモリ32および可搬媒体31における筐体シリアル番号およびファームウェア版数の10種類のパターン1〜10に応じた、判定結果(OKかNG)と、ファームウェアが参照すべき設定データの格納場所/デバイス(可搬媒体,フラッシュメモリ,無)とが保持されている。なお、判定結果がNGの場合とは、MMB30上で動作するファームウェアが参照すべき設定データが、フラッシュメモリ32と可搬媒体31とのうちのいずれに格納されているか判定不能な場合である。
デバイスの保守交換後の起動時等に、判定部33aは、筐体ROM11,フラッシュメモリ32および可搬媒体31から筐体シリアル番号およびファームウェア版数を読み出す。そして、判定部33aは、テーブルTを参照し、読み出した筐体シリアル番号およびファームウェア版数が、パターン1〜10のどのパターンに対応するか判定する。これにより、判定部33aは、パターンに応じた、判定結果、および、ファームウェアが参照すべき設定データの格納場所/デバイスの情報を得ている。
なお、判定部33aが、テーブルTを参照してパターン判定を行なう際、筐体シリアル番号およびファームウェア版数情報の両方を用いてもよいし、筐体シリアル番号とファームウェア版数情報とのいずれか一方を用いてもよい。
書込制御部33bは、判定部33aによる判定結果に基づいて、筐体ROM11,フラッシュメモリ32および可搬媒体31の間におけるデータの転送・書込(更新)を制御する。この書込制御部33bのより具体的な機能については、後述する。
ここで、図2に示すテーブルTを用いた判定部33aによる判定機能と、その判定結果に応じた書込制御部33bの具体的な機能とを、下記項目〔A1〕〜〔A10〕においてパターン毎に説明する。なお、図2に示すテーブルTにおいて、S/N(A),S/N(B),S/N(C)は、それぞれ筺体シリアル番号の値を示し、Ver.1,Ver.2は、それぞれファームウェア版数の値を示し、Ver.xは、ファームウェアが起動用ファームウェアであることを示す。また、処理装置1において可搬媒体31あるいはMMB30が交換された場合、新しいデバイス(可搬媒体31やフラッシュメモリ32)上の筐体シリアル番号の初期値はNULLであり、新しいデバイス(可搬媒体31やフラッシュメモリ32)上のファームウェア版数はVer.xである。
〔A1〕パターン1
パターン1の場合、可搬媒体31上の筺体シリアル番号と筺体ROM11上の筺体シリアル番号とが等しく、且つ、フラッシュメモリ32上の筐体シリアル番号は初期値(NULL)である。また、可搬媒体31上のファームウェア版数と筺体ROM11上のファームウェア版数とが等しく、且つ、フラッシュメモリ32上のファームウェア版数は起動用ファームウェアを示すVer.xである。
このようなパターン1は、MMB30が新たなボード30に交換され、その新たなボード30に、交換前のMMB30に実装されていた可搬媒体31が実装されて引き継がれた場合に相当する。この場合、新たなボード30に搭載されたフラッシュメモリ32には、ファームウェアの設定データ等は格納されていない。このため、交換前のMMB30に実装されていた可搬媒体31に保存された、交換前のMMB30におけるファームウェアの設定データが、新たなボード30に引き継がれる。従って、ファームウェアが参照すべき設定データは、可搬媒体31上の設定データとなる。つまり、テーブルTにおいて、パターン1の場合、ファームウェアが参照すべき設定データの格納場所は、可搬媒体31である。
したがって、判定部33aは、筐体ROM11上の筐体シリアル番号とMMB30に実装された可搬媒体31上の筐体シリアル番号とが一致し且つフラッシュメモリ32上の筐体シリアル番号が初期値(NULL)である場合、MMB30が新たなMMB30に交換されたと判定する。つまり、判定部33aは、テーブルTを参照し、処理装置1がパターン1に相当する状態であると判定し、ファームウェアが参照すべき設定データが、可搬媒体31に格納されていると判定する(図4のステップS13のYESルートからステップS14参照)。
パターン1の場合、書込制御部33bは、可搬媒体31上の各種設定データを読み出し、読み出した各種設定データを新たなMMB30に実装されたフラッシュメモリ32に書き込む(図4のステップS14,S15参照)。これにより、各種設定データが、フラッシュメモリ32上に書き込まれ、可搬媒体31によってバックアップされる。
また、パターン1では、可搬媒体31上のファームウェア版数と、交換後のMMB30上のフラッシュメモリ32の版数情報格納領域における情報(Ver.x)とは不一致である。このため、書込制御部33bは、可搬媒体31上のファームウェア版数をフラッシュメモリ32の版数情報格納領域に上書き更新するとともに、可搬媒体31上の圧縮データを復元して得られたファームウェアコードを、フラッシュメモリ32に書き込み更新する(図4のステップS17参照)。なお、フラッシュメモリ32においてデータが2つのパーティション#1,#2に二重化されて格納されている場合の、ファームウェアコードの書込手順については、図5および図6を参照しながら後述する。
さらに、パターン1では、可搬媒体31上の筺体シリアル番号と筺体ROM11上の筺体シリアル番号とが等しく、フラッシュメモリ32上の筐体シリアル番号は初期値(NULL)である。このため、書込制御部33bは、筐体ROM11上の筐体シリアル番号をフラッシュメモリ32上の筐体シリアル番号格納領域に上書きする(図4のステップS19参照)。
〔A2〕パターン2
パターン2の場合、筐体ROM11上の筐体シリアル番号とフラッシュメモリ32上の筐体シリアル番号とが等しく、且つ、可搬媒体31上の筐体シリアル番号が初期値(NULL)である。また、筺体ROM11上のファームウェア版数とフラッシュメモリ32上のファームウェア版数とが等しく、且つ、可搬媒体31上のファームウェア版数は起動用ファームウェアを示すVer.xである。
このようなパターン2は、MMB30に実装されていた可搬媒体31が新たな可搬媒体31に交換された場合に相当する。この場合、新たな可搬媒体31には、ファームウェアの設定データ等は格納されておらず、MMB30上に実装されているフラッシュメモリ32に、ファームウェアの設定データ等が保存されている。従って、ファームウェアが参照すべき設定データは、フラッシュメモリ32上の設定データとなる。つまり、テーブルTにおいて、パターン2の場合、ファームウェアが参照すべき設定データの格納場所は、フラッシュメモリ32である。
したがって、判定部33aは、筐体ROM11上の筐体シリアル番号とフラッシュメモリ32上の筐体シリアル番号とが一致し且つMMB30に実装された可搬媒体31上の筐体シリアル番号が初期値(NULL)である場合、可搬媒体31が新たな可搬媒体31に交換されたと判定する。つまり、判定部33aは、テーブルTを参照し、処理装置1がパターン2に相当する状態であると判定し、ファームウェアが参照すべき設定データが、フラッシュメモリ32に格納されていると判定する(図4のステップS13,S20からステップS21参照)。
パターン2の場合、書込制御部33bは、フラッシュメモリ32上の各種設定データを読み出し、読み出した各種設定データを、交換後の新たな可搬媒体31に書き込む(図4のステップS21,S22参照)。これにより、フラッシュメモリ32上の各種設定データが、可搬媒体31によってバックアップされる。
また、パターン2では、交換後の新たな可搬媒体31の版数情報格納領域における情報(Ver.x)と、フラッシュメモリ32上のファームウェア版数とは不一致である。このため、書込制御部33bは、フラッシュメモリ32上の版数情報を可搬媒体31の版数情報格納領域に上書き更新するとともに、フラッシュメモリ32上のファームウェアコードを圧縮して得られた圧縮コードを可搬媒体31に書き込み更新する(図4のステップS23参照)。
さらに、パターン2では、筺体ROM11上の筺体シリアル番号とフラッシュメモリ32上の筺体シリアル番号とが等しく、交換後の新たな可搬媒体31上の筐体シリアル番号は初期値(NULL)である。このため、書込制御部33bは、筐体ROM11上の筐体シリアル番号を可搬媒体31上の筐体シリアル番号格納領域に上書きする(図4のステップS19参照)。
〔A3〕パターン3
パターン3の場合、フラッシュメモリ32上の筐体シリアル番号と可搬媒体31上の筐体シリアル番号とが等しく、且つ、筐体ROM11上の筐体シリアル番号がフラッシュメモリ32および可搬媒体31上の筐体シリアル番号と異なり、且つ、筐体ROM11上のファームウェア版数が初期値(NULL)である。また、可搬媒体31上のファームウェア版数とフラッシュメモリ32上のファームウェア版数とが等しい。
このようなパターン3は、筐体ROM11が新たな筐体ROM11に交換された場合に相当し、新たな筐体ROM11の筐体には、可搬媒体31やフラッシュメモリ32に格納された筐体シリアル番号とは異なる、新たな筐体シリアル番号が予め格納されている。この場合、可搬媒体31およびフラッシュメモリ32には、同じ筐体シリアル番号,同じファームウェア版数および同じ設定データ等が保存されている。従って、ファームウェアが参照すべき設定データは、可搬媒体31上の設定データであってもフラッシュメモリ32上の設定データであってもよく、本実施形態では、フラッシュメモリ32に代表させる。つまり、テーブルTにおいて、パターン3の場合、ファームウェアが参照すべき設定データの格納場所は、フラッシュメモリ32である。
したがって、判定部33aは、フラッシュメモリ32上の筐体シリアル番号とMMB30に実装された可搬媒体31上の筐体シリアル番号とが一致し且つ筐体ROM11における筐体シリアル番号がフラッシュメモリ32および可搬媒体31上の筐体シリアル番号と異なり且つ筐体ROM11に格納されたファームウェアの版数情報が初期値(NULL)である場合、筐体ROM11が新たな筐体ROM11に交換されたと判定する。つまり、判定部33aは、テーブルTを参照し、処理装置1がパターン3に相当する状態であると判定し、ファームウェアが参照すべき設定データが、フラッシュメモリ32に格納されていると判定する(図4のステップS13,S20からステップS24参照)。
パターン3の場合、交換後の新たな筐体ROM11上のファームウェア版数が初期値(NULL)である。このため、書込制御部33bは、ファームウェア版数をフラッシュメモリ32(または可搬媒体31)から読み出し、読み出したファームウェア版数を筐体ROM11の版数格納領域に書き込む(図4のステップS24,S25参照)。
また、パターン3の場合、交換後の新たな筐体ROM11には新たな筐体シリアル番号が格納されており、書込制御部33bは、筐体ROM11における新たな筐体シリアル番号を書き換えることができない。このため、書込制御部33bは、筐体ROM11上の筐体シリアル番号を読み出し、読み出した筐体シリアル番号を、フラッシュメモリ32および可搬媒体31における筐体シリアル番号格納領域に上書きする(図4のステップS19参照)。
〔A4〕パターン4
パターン4の場合、フラッシュメモリ32上の筐体シリアル番号と可搬媒体31上の筐体シリアル番号とがいずれも初期値(NULL)であり、且つ、筐体ROM11に筐体10のシリアル番号が格納されている。また、筐体ROM11,可搬媒体31およびフラッシュメモリ32上のファームウェア版数が等しい。
このようなパターン4は、処理装置1をデフォルト状態から始めて電源を投入した状態(初期起動)に相当する。この場合、可搬媒体31およびフラッシュメモリ32には、同じファームウェア版数および同じ設定データ等が保存されている。従って、ファームウェアが参照すべき設定データは、可搬媒体31上の設定データであってもフラッシュメモリ32上の設定データであってもよく、本実施形態では、フラッシュメモリ32に代表させる。つまり、テーブルTにおいて、パターン4の場合、ファームウェアが参照すべき設定データの格納場所は、フラッシュメモリ32である。
したがって、判定部33aは、フラッシュメモリ32上の筐体シリアル番号とMMB30に実装された可搬媒体31上の筐体シリアル番号とがいずれも初期値(NULL)であり且つ筐体ROM11に筐体10のシリアル番号が格納されている場合、処理装置1をデフォルト状態から始めて電源を投入した状態であると判定する。つまり、判定部33aは、テーブルTを参照し、処理装置1がパターン4に相当する状態であると判定し、ファームウェアが参照すべき設定データが、フラッシュメモリ32に格納されていると判定する(図4のステップS13,S20からステップS18参照)。
パターン4の場合、フラッシュメモリ32上の筐体シリアル番号と可搬媒体31上の筐体シリアル番号とがいずれも初期値(NULL)である。このため、書込制御部33bは、筐体ROM11上の筐体シリアル番号を読み出し、読み出した筐体シリアル番号を、フラッシュメモリ32および可搬媒体31上の筐体シリアル番号格納領域に上書きする(図4のステップS19参照)。
〔A5〕パターン5
パターン5の場合、フラッシュメモリ32上の筐体シリアル番号と可搬媒体31上の筐体シリアル番号と筐体ROM11上の筐体シリアル番号とが等しい。また、筐体ROM11,可搬媒体31およびフラッシュメモリ32上のファームウェア版数も等しい。
このようなパターン5は、処理装置1を再起動した状態、つまり筐体10のAC電源をオフ状態からオン状態に切り替えた場合に相当する。この場合、パターン3と同様、可搬媒体31およびフラッシュメモリ32には、同じ筐体シリアル番号,同じファームウェア版数および同じ設定データ等が保存されている。従って、ファームウェアが参照すべき設定データは、可搬媒体31上の設定データであってもフラッシュメモリ32上の設定データであってもよく、本実施形態では、フラッシュメモリ32に代表させる。つまり、テーブルTにおいて、パターン5の場合、ファームウェアが参照すべき設定データの格納場所は、フラッシュメモリ32である。
したがって、判定部33aは、フラッシュメモリ32上の筐体シリアル番号とMMB30に実装された可搬媒体31上の筐体シリアル番号と筐体ROM11上の筐体シリアル番号とが一致する場合、処理装置1を再起動した状態であると判定する。つまり、判定部33aは、テーブルTを参照し、処理装置1がパターン5に相当する状態であると判定し、ファームウェアが参照すべき設定データが、フラッシュメモリ32に格納されていると判定する(図4のステップS13,S20からステップS18参照)。
〔A6〕パターン6
パターン6の場合、筐体ROM11上の筐体シリアル番号と可搬媒体31上の筐体シリアル番号とが等しく、且つ、フラッシュメモリ32上の筐体シリアル番号が筐体ROM11および可搬媒体31上の筐体シリアル番号と異なっている。また、筐体ROM11上のファームウェア版数と可搬媒体31上のファームウェア版数とが等しく、且つ、フラッシュメモリ32上のファームウェア版数が筐体ROM11および可搬媒体31上のファームウェア版数と異なっている。
このようなパターン6は、MMB30を、他の筐体10で使用されていたMMB30に交換し、交換後のMMB30に、交換前のMMB30に実装されていた可搬媒体31を実装して引き継いだ場合に相当する。この場合、交換後のMMB30に搭載されたフラッシュメモリ32には、当然、交換前のMMB30上で動作するファームウェアの設定データ等は格納されていない。このため、交換前のMMB30に実装されていた可搬媒体31に保存された、交換前のMMB30におけるファームウェアの設定データが、交換後のMMB30に引き継がれる。従って、ファームウェアが参照すべき設定データは、可搬媒体31上の設定データとなる。つまり、テーブルTにおいて、パターン6の場合、ファームウェアが参照すべき設定データの格納場所は、可搬媒体31である。
したがって、判定部33aは、筐体ROM11上の筐体シリアル番号とMMB30に実装された可搬媒体31上の筐体シリアル番号とが一致し且つフラッシュメモリ32上の筐体シリアル番号が筐体ROM11および可搬媒体3上の筐体シリアル番号と異なる場合、MMB30が他の筐体10で使用されていたMMB30に交換されたと判定する。つまり、判定部33aは、テーブルTを参照し、ファームウェアが参照すべき設定データが、可搬媒体31に格納されていると判定する(図4のステップS13からステップS14参照)。
パターン6の場合、書込制御部33bは、可搬媒体31上の各種設定データを読み出し、読み出した各種設定データを、交換後のMMB30に実装されたフラッシュメモリ32に書き込む(図4のステップS14,S15参照)。これにより、各種設定データが、フラッシュメモリ32上に書き込まれ、可搬媒体31によってバックアップされる。
また、パターン6では、可搬媒体31上のファームウェア版数と、交換後のMMB30上のフラッシュメモリ32上のファームウェア版数とは不一致である。このため、書込制御部33bは、可搬媒体31上のファームウェア版数をフラッシュメモリ32の版数情報格納領域に上書き更新するとともに、可搬媒体31上の圧縮データを復元して得られたファームウェアコードをフラッシュメモリ32に書き込み更新する(図4のステップS17参照)。なお、フラッシュメモリ32においてデータが2つのパーティション#1,#2に二重化されて格納されている場合の、ファームウェアコードの書込手順については、図5および図6を参照しながら後述する。
さらに、パターン6では、可搬媒体31上の筺体シリアル番号と筺体ROM11上の筺体シリアル番号とが等しいが、フラッシュメモリ32上の筐体シリアル番号が、筐体ROM11および可搬媒体31上の筐体シリアル番号と異なっている。このため、書込制御部33bは、筐体ROM11上の筐体シリアル番号をフラッシュメモリ32上の筐体シリアル番号格納領域に上書きする(図4のステップS19参照)。
〔A7〕パターン7
パターン7の場合、筐体ROM11上の筐体シリアル番号とフラッシュメモリ32上の筐体シリアル番号とが等しく、且つ、可搬媒体31上の筐体シリアル番号が筐体ROM11およびフラッシュメモリ32上の筐体シリアル番号と異なっている。また、筐体ROM11上のファームウェア版数とフラッシュメモリ32上のファームウェア版数とが等しく、且つ、可搬媒体31上のファームウェア版数が筐体ROM11およびフラッシュメモリ32上のファームウェア版数と異なっている。
このようなパターン7は、例えば、パターン2のごとくMMB30に実装されていた可搬媒体31を新たな可搬媒体31に交換する際に、誤って他の筐体10で使用されていた可搬媒体31に交換した場合に相当し、通常、ユーザオペ―レーションミスで発生する。交換後の可搬媒体31には、他の筐体10のシリアル番号と他の筐体10におけるMMB30上で動作するファームウェアの版数とが保存されている。
この場合、判定部33aは、可搬媒体31上の情報と、筐体ROM11およびフラッシュメモリ32上の情報とのどちらが、本処理装置1にとって妥当な情報であるか判定することができない。つまり、判定部33aは、MMB30上で動作するファームウェアが参照すべき設定データが、フラッシュメモリ32と可搬媒体31とのうちのいずれに格納されているか判定不能である。従って、判定部33aは、テーブルTを参照し、筐体シリアル番号およびファームウェア版数がパターン7の場合、ファームウェア異常(NG)と判定する。
〔A8〕パターン8
パターン8の場合、筐体ROM11上の筐体シリアル番号と可搬媒体31上の筐体シリアル番号とが異なっており、且つ、フラッシュメモリ32上の筐体シリアル番号は初期値(NULL)である。また、筐体ROM11上のファームウェア版数と可搬媒体31上のファームウェア版数とが異なっており、且つ、フラッシュメモリ32上のファームウェア版数は起動用ファームウェアを示すVer.xである。
このようなパターン8は、例えば、パターン1のごとくMMB30を新たなボード30に交換し交換前のMMB30に実装されていた可搬媒体31を新たなボード30に実装する際に、誤って他の筐体10で使用されていた可搬媒体31をボード30に実装した場合に相当し、通常、ユーザオペ―レーションミスで発生する。交換後の可搬媒体31には、他の筐体10のシリアル番号と他の筐体10におけるMMB30上で動作するファームウェアの版数とが保存されている。
この場合、判定部33aは、可搬媒体31上の情報と、筐体ROM11上の情報とのどちらが、本処理装置1にとって妥当な情報であるか判定することができない。つまり、判定部33aは、可搬媒体31に、MMB30上で動作するファームウェアが参照すべき設定データが格納されているかを判定不能である。従って、判定部33aは、テーブルTを参照し、筐体シリアル番号およびファームウェア版数がパターン8の場合、ファームウェア異常(NG)と判定する。
〔A9〕パターン9
パターン9の場合、筐体ROM11上の筐体シリアル番号とフラッシュメモリ32上の筐体シリアル番号とが異なっており、且つ、可搬媒体31上の筐体シリアル番号は初期値(NULL)である。また、筐体ROM11上のファームウェア版数とフラッシュメモリ32上のファームウェア版数とが異なっており、且つ、可搬媒体31上のファームウェア版数は起動用ファームウェアを示すVer.xである。
このようなパターン9は、例えば、可搬媒体31およびMMB30を交換する際に、可搬媒体31は新たなものに交換し、MMB30を他の筐体10で使用されていたMMB30に交換した場合に相当し、通常、ユーザオペ―レーションミスで発生する。交換後のMMB30に実装されたフラッシュメモリ32には、他の筐体10のシリアル番号と他の筐体10におけるMMB30上で動作するファームウェアの版数とが保存されている。また、交換後の可搬媒体31には、筐体シリアル番号として初期値(NULL)が保存され、ファームウェア版数として起動用ファームウェアを示すVer.xが保存される。
この場合、判定部33aは、フラッシュメモリ32上の情報と、筐体ROM11上の情報とのどちらが、本処理装置1にとって妥当な情報であるか判定することができない。つまり、判定部33aは、フラッシュメモリ32に、MMB30上で動作するファームウェアが参照すべき設定データが格納されているかを判定不能である。従って、判定部33aは、テーブルTを参照し、筐体シリアル番号およびファームウェア版数がパターン9の場合、ファームウェア異常(NG)と判定する。
〔A10〕パターン10
パターン10の場合、可搬媒体31上の筐体シリアル番号とフラッシュメモリ32上の筐体シリアル番号とが等しく、且つ、筐体ROM11上の筐体シリアル番号が可搬媒体31およびフラッシュメモリ32上の筐体シリアル番号と異なっている。また、可搬媒体31上のファームウェア版数とフラッシュメモリ32上のファームウェア版数とが等しく、且つ、筐体ROM11上のファームウェア版数が可搬媒体31およびフラッシュメモリ32上のファームウェア版数と異なっている。
このようなパターン10は、例えば、可搬媒体31およびMMB30を交換する際に、他の筐体10で使用されていた可搬媒体31およびMMB30に交換した場合に相当し、通常、ユーザオペ―レーションミスで発生する。交換後のMMB30に実装されたフラッシュメモリ32には、他の筐体10のシリアル番号と他の筐体10におけるMMB30上で動作するファームウェアの版数とが保存されている。また、交換後の可搬媒体31にも、他の筐体10のシリアル番号と他の筐体10におけるMMB30上で動作するファームウェアの版数とが保存されている。
この場合、判定部33aは、可搬媒体31およびフラッシュメモリ32上の情報と筐体ROM11上の情報とのどちらが、本処理装置1にとって妥当な情報であるか判定することができない。つまり、判定部33aは、可搬媒体31およびフラッシュメモリ32に、MMB30上で動作するファームウェアが参照すべき設定データが格納されているかを判定不能である。従って、判定部33aは、テーブルTを参照し、筐体シリアル番号およびファームウェア版数が判定結果がパターン10の場合、ファームウェア異常(NG)と判定する。
上述したパターン7〜10の場合、判定部33aが、テーブルTを参照し、ファームウェア異常(判定結果NG)と判定すると、SP33は、ファームウェアを縮退状態とし、ユーザに対し保守を促す。処理装置1は、上述のようなファームウェア異常をユーザに通知すべく、例えば、LEDランプ等の点灯/点滅による表示機能(図示略)や、音声,警告音等による通知機能(図示略)などを有している。
〔2〕処理装置および管理ボードの動作
次に、上述のごとく構成された処理装置1およびMMB30の動作について、図3〜図6を参照しながらより具体的に説明する。
〔2−1〕処理装置(管理ボード)の動作
まず、図3に示すフローチャート(ステップS1〜S4)に従って、本実施形態の処理装置1(MMB30)の起動時における動作について概略的に説明する。
処理装置1において電源が投入されると(ステップS1)、MMB30上で、このMMB30上に搭載されているフラッシュメモリ32を使用して、ファームウェアが起動される(ステップS2)。その後、SP33によって、筐体ROM11,可搬媒体31およびフラッシュメモリ32から、筺体シリアル番号およびファームウェア版数が取得される。そして、SP33(判定部33aおよび書込制御部33b)により、例えば図2に示すテーブルTや図4に示す手順に従って、後述する所定の判定処理やデータ書込処理が実行される(ステップS3)。判定処理の結果、全ての判定事項に問題がなかった場合、MMB30は、システム管理、つまり複数のサーバ20を開始する(ステップS4)。
〔2−2〕管理ボードにおける判定部および書込制御部の動作
次に、図4に示すフローチャート(ステップS11〜S26)に従って、図3のステップS3の動作、即ち、本実施形態のMMB30における判定部33aおよび書込制御部33bの動作について説明する。
まず、SP33によって、筐体ROM11,可搬媒体31およびフラッシュメモリ32から、筺体シリアル番号およびファームウェア版数が取得される(ステップS11)。判定部33aは、取得された筺体シリアル番号およびファームウェア版数と図2に示すテーブルTの各パターンとを比較することにより、取得された筺体シリアル番号およびファームウェア版数がテーブルTいずれのパターンに対応するかを判定する(ステップS12,S13,S20)。
このとき、判定部33aは、テーブルTに基づき、MMB30上で動作するファームウェアが参照すべき設定データが、フラッシュメモリ32と可搬媒体31とのうちのいずれに格納されているか判定可能であるか否かを判定する(ステップS12)。つまり、判定部33aは、パターン1〜6の場合、判定可能(OK)であると判定する一方、パターン7〜10の場合、判定不能(NG)であると判定する。
判定不能(NG)と判定された場合(ステップS12のNOルート)、ファームウェア異常が発生したものと判定され、SP33は、ファームウェアを縮退状態とし、ユーザに対し保守を促すべくファームウェア異常をユーザに通知する(ステップS26)。
判定可能(OK)であると判定された場合(ステップS12のYESルート)、判定部33aは、テーブルTに基づき、ファームウェアが参照すべき設定データの格納場所がフラッシュメモリ32と可搬媒体31とのうちのいずれであるかを判定する(ステップS13)。つまり、判定部33aは、パターン1,6の場合、当該設定データが可搬媒体31に格納されていると判定する一方、パターン2〜5の場合、当該設定データがフラッシュメモリ32に格納されていると判定する。
当該設定データが可搬媒体31に格納されていると判定された場合(ステップS13のYESルート)、ステップS14〜S19の処理が実行される。つまり、書込制御部33bにより、可搬媒体31上の各種設定データが読み出され(ステップS14)、読み出された各種設定データがフラッシュメモリ32に書き込まれる(ステップS15)。これにより、各種設定データが、フラッシュメモリ32上に書き込まれ、可搬媒体31によってバックアップされる。
ついで、判定部33aにより、可搬媒体31上のファームウェア版数とフラッシュメモリ32上のファームウェア版数とが一致するか否かが判定され(ステップS16)、これらのファームウェア版数が一致する場合(ステップS16のYESルート)、ステップS18の処理へ移行する。上記ファームウェア版数が一致しない場合(ステップS16のNOルート)、書込制御部33bにより、可搬媒体31上のファームウェア版数が読み出されてフラッシュメモリ32の版数情報格納領域に上書き更新される。また、書込制御部33bにより、可搬媒体31上の圧縮データが読み出されてファームウェアコードに復元され、復元されたファームウェアコードがフラッシュメモリ32に書き込まれて更新される(ステップS17)。このステップS17で実行されるファームウェアコードの書込更新手順については、図5および図6を参照しながら後述する。
そして、判定部33aにより、筺体ROM11上の筺体シリアル番号と可搬媒体31上の筺体シリアル番号とフラッシュメモリ32上の筐体シリアル番号とが一致するか否かが判定される(ステップS18)。可搬媒体31上の筺体シリアル番号とフラッシュメモリ32上の筐体シリアル番号との少なくとも一方が、筺体ROM11上の筺体シリアル番号と異なっている場合(ステップS18のNOルート)、筐体ROM11上の筐体シリアル番号が読み出される。読み出された筐体ROM11上の筐体シリアル番号は、書込制御部33bにより、筺体ROM11上の筺体シリアル番号と異なる筐体シリアル番号を保持している、可搬媒体31および/またはフラッシュメモリ32上の筐体シリアル番号格納領域に上書きされる(ステップS19)。
ステップS19で筐体シリアル番号の上書きが実行された後、または、3つの筐体シリアル番号が一致する場合(ステップS18のYESルート)、判定部33aおよび書込制御部33bによる判定処理/データ書込処理(ファームウェア起動処理)が完了される。そして、MMB30のファームウェアは、フラッシュメモリ32上の設定データを用い、複数のサーバ20を含む処理装置1のシステム管理(サービス提供)を開始する。
一方、当該設定データがフラッシュメモリ32に格納されていると判定された場合(ステップS13のNOルート)、パターン判定が行なわれる(ステップS20)。
ステップS11で取得された筺体シリアル番号およびファームウェア版数がパターン2である場合(ステップS20の“パターン2”ルート)、ステップS21〜S23,S18およびS19の処理が実行される。つまり、書込制御部33bにより、フラッシュメモリ32上の各種設定データが読み出され(ステップS21)、読み出された各種設定データが可搬媒体31に書き込まれる(ステップS22)。これにより、フラッシュメモリ32上の各種設定データが、可搬媒体31によってバックアップされる。
ついで、書込制御部33bにより、フラッシュメモリ32上の版数情報が読み出されて可搬媒体31の版数情報格納領域に上書きされる。また、書込制御部33bにより、フラッシュメモリ32上のファームウェアコードが読み出されて圧縮データに圧縮され、得られた圧縮データが可搬媒体31に書き込まれる(ステップS23)。この後、判定部33aおよび書込制御部33bによる処理は、ステップS18,S19の処理へ移行する。
ステップS11で取得された筺体シリアル番号およびファームウェア版数がパターン3である場合(ステップS20の“パターン3”ルート)、ステップS24,S25,S18およびS19の処理が実行される。つまり、書込制御部33bにより、フラッシュメモリ32上のファームウェア版数が読み出され(ステップS24)、読み出されたファームウェア版数が筐体ROM11の版数格納領域に書き込まれる(ステップS25)。この後、判定部33aおよび書込制御部33bによる処理は、ステップS18,S19の処理へ移行する。なお、ステップS25とステップS18との間において、上述したステップS21〜S23と同様の処理が実行されてもよい。
ステップS11で取得された筺体シリアル番号およびファームウェア版数が、パターン4,5である場合(ステップS20の“パターン4,5”ルート)、判定部33aおよび書込制御部33bによる処理は、ステップS18,S19の処理へ移行する。なお、ステップS18の処理へ移行する前に、上述したステップS21〜S23と同様の処理が実行されてもよい。
次に、図5に示すフローチャート(ステップS31〜S39)に従って、図6を参照しながら、図4のステップS17で書込制御部33bによって実行されるファームウェアコードの書込更新手順(ファームウェア版数更新動作)について説明する。図5および図6においては、フラッシュメモリ32においてデータが2つのパーティション#1,#2に二重化されて格納されている場合の、ファームウェアコードの書込更新手順が示されている。ここで、図6に示すごとく、ボード交換後の初回起動時にシステムがマウントしているパーティションは#1であるとする。
まず、書込制御部33bにより、旧ボード(交換前のボード)30から引き継がれた可搬媒体31上のファームウェア版数V1が取得される(ステップS31)。また、書込制御部33bにより、交換後のボード30上で現在動作しているファームウェアの版数V2(パターン1の場合は起動用ファームウェアの版数Ver.x)が、交換後のボード30上のフラッシュメモリ32から取得される(ステップS32)。このとき、版数V2は、システムがマウントしているパーティション#1から取得される。さらに、書込制御部33bにより、フラッシュメモリ32における2つのパーティション#1,#2のそれぞれに格納されているファームウェアコードの版数が取得される(ステップS33)。この時点(ボード交換後の初回起動時)で取得されたパーティション#1の版数およびパーティション#2の版数は、いずれも、ステップS32で取得された版数V2と同じである(図6のT1参照)。そして、書込制御部33bにより、ステップS31,S32でそれぞれ取得された版数V1,V2が比較される(ステップS34)。
ボード交換後の初回起動時において、可搬媒体31上のファームウェア版数V1とフラッシュメモリ32のファームウェア版数V2とは異なっている(ステップS34のNOルート;図6のT1参照)。このため、書込制御部33bにより、現在、システムがマウントしていないパーティション#2に対し、ファームウェア版数V1が書き込まれるとともに、版数V1に対応するファームウェアコードが書き込まれる(ステップS35;図6のT2参照)。これにより、パーティション#2は版数V2から版数1に更新される。このとき、パーティション#2に書き込まれるファームウェアコードは、可搬媒体31上の圧縮コードを読み出して復元することによって取得される。この後、システムのマウントポジションをパーティション#1からパーティション#2へ切り替えてから(ステップS36;図6のマウントポジション参照)、システムが再起動(リブート)される(ステップS37)。
システムが再起動されると、初回起動時と同様、旧ボード30から引き継がれた可搬媒体31上のファームウェア版数V1が取得される(ステップS31)。また、書込制御部33bにより、交換後のボード30上で現在動作しているファームウェアの版数V1が、交換後のボード30上のフラッシュメモリ32から取得される(ステップS32)。このとき、版数V1は、システムがマウントしているパーティション#2から取得される。さらに、書込制御部33bにより、フラッシュメモリ32における2つのパーティション#1,#2のそれぞれに格納されているファームウェアコードの版数が取得される(ステップS33)。再起動時に取得されたパーティション#1の版数およびパーティション#2の版数は、それぞれV2,V1である(図6のT3参照)。そして、書込制御部33bにより、ステップS31,S32でそれぞれ取得された版数V1,V1が比較される(ステップS34)。
再起動時において、可搬媒体31上のファームウェア版数およびフラッシュメモリ32のファームウェア版数は、いずれもV1である(ステップS34のYESルート;図6のT3参照)。この場合、書込制御部33bにより、ステップS33で取得された2つのパーティション#1,#2における版数V2,V1が比較される(ステップS38)。このとき、パーティション#1における版数V2とパーティション#2における版数V1とは異なっているので(ステップS38のNOルート)、書込制御部33bにより、現在、システムがマウントしていないパーティション#1に対し、ファームウェア版数V1が書き込まれるとともに、版数V1に対応するファームウェアコードが書き込まれる(ステップS39;図6のT4参照)。これにより、パーティション#1も版数V2から版数1に更新される。このとき、パーティション#1に書き込まれるファームウェアコードは、パーティション#2から取得されるか、可搬媒体31上の圧縮コードを読み出して復元することによって取得される。
以上の処理により、フラッシュメモリ32のパーティション#1,#2におけるファームウェア版数とファームウェアコードとが、それぞれ、可搬媒体31上のファームウェア版数と圧縮コードに対応するファームウェアコードとに更新される。更新を完了することで、交換後のボード30は、旧ボード30と同じファームウェア版数で、サービスの提供(複数のサーバ20の管理)を行なうことが可能となる。
〔2−3〕判定・更新動作の具体例
以下、テーブルTのパターン1〜パターン10のそれぞれについて、図4のステップS11〜S26を参照しながら、判定・更新動作を具体的に説明する。
〔B1〕パターン1
パターン1は、ハードウェア故障でMMB30を新たなボード30に交換する場合に相当する。この場合、交換作業者は、故障したボード30を筺体10のスロットから引き抜き、さらに、そのボード30で使用されていたSDカード(可搬媒体)31を引き抜く。そして、交換作業者は、新しいボード30にSDカード31を実装して、そのボード30を筺体10のスロットに挿入する。この状態で、交換作業者は、処理装置1(MMB30)を起動する。
新しいボード30が起動されると、ファームウェアは、まず、筺体ROM11に格納されている筺体シリアル番号SN1を取得する(ステップS11)。また、ファームウェアは、ボード30上のフラッシュメモリ32に格納されている筺体シリアル番号SN3と、SDカード31に格納されている筺体シリアル番号SN2とを取得する(ステップS11)。このとき、筺体ROM11上のSN1の値が“SN012345”であるとすると、SDカード31は元々同じ筺体10で使用されていた物を引継いでいるので、SDカード上のSN2の値も同様に“SN012345”となる。また、ボード30は未使用の新たな物に交換されているため、フラッシュメモリ32上のSN3の値としては、初期値(NULL)が取得される。したがって、取得された筐体シリアル番号SN1〜SN3の組合せは、テーブルTのパターン1に相当することになり、判定部33aによる判定結果はOKとなり(ステップS12のYESルート)、参照すべきデータはSDカード31に格納されていると判定される(ステップS13のYESルート)。
ついで、ファームウェア(書込制御部33b)は、SDカード31から動作設定データを取得し(ステップS14)、取得した動作設定データをフラッシュメモリ32上の格納領域にコピーする(ステップS15)。次に、ファームウェアは、SDカード31に格納されているファームウェアコードの圧縮データの版数と、フラッシュメモリ32上に展開されているファームウェアコードの版数とを比較する(ステップS16)。版数が等しい場合(ステップS16のYESルート)、ファームウェアは次の処理(ステップS18)に進む。一方、版数が異なる場合(ステップS16のNOルート)、ファームウェアは、SDカード31上のファームウェアデータをフラッシュメモリ32上に書き込む処理を開始する(ステップS17)。フラッシュメモリ32が二重化されている場合、フラッシュメモリ32への書込み処理は、例えば図5および図6を参照しながら前述した手順で実行される。
最後に、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とが比較される(ステップS18)。パターン1の場合、フラッシュメモリ32上の筐体シリアル番号SN3の値が初期値(NULL)であって、筐体シリアル番号SN1,SN2の値“SN012345”と異なっている(ステップS18のNOルート)。このため、筺体ROM11上のSN1の値“SN012345”が、フラッシュメモリ32上の格納領域に上書きされる(ステップS19)。なお、SDカード31上のSN2の値は、筺体ROM11上のSN1の値と同じであるので、SDカード31に対するSN1の値の上書き処理は行なわない。
以上の処理が完了すると、交換された新たなボード30上のフラッシュメモリ32には、旧ボード30と同じファームウェア版数のファームウェアコードが展開されるとともに、旧ボード30と同じ動作設定データが引き継がれる。これにより、交換後のボード30は、旧ボード30と同じファームウェア版数で、且つ、旧ボード30と同じ動作設定データに基づき、サービスの提供(複数のサーバ20の管理)を行なうことが可能となる。
〔B2〕パターン2
パターン2は、ハードウェア故障でSDカード31を交換する場合に相当する。この場合、交換作業者は、一旦、MMB30を筺体10のスロットから引き抜き、そのボード30上の故障したSDカード31を引き抜く。そして、交換作業者は、新しいSDカード31をボード30に実装してから、そのボード30を筺体10のスロットに再挿入する。この状態で、交換作業者は、処理装置1(MMB30)を起動する。
新しいSDカード31を実装されたボード30が起動されると、ファームウェアは、まず、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とを取得する(ステップS11)。このとき、筺体ROM11上のSN1の値が“SN012345”であるとすると、ボード30は交換しておらず元々同じ筺体10で使用されていた物を引継いでいるので、フラッシュメモリ32上のSN3の値も同様に“SN012345”となる。また、SDカード31が新たな物に交換されているため、SDカード31上のSN2の値としては、初期値(NULL)が取得される。したがって、取得された筐体シリアル番号SN1〜SN3の組合せは、テーブルTのパターン2に相当することになり、判定部33aによる判定結果はOKとなり(ステップS12のYESルート)、参照すべきデータはフラッシュメモリ32に格納されていると判定される(ステップS13のNOルート)。そして、ファームウェアはステップS21の処理へ移行する(ステップS20の“パターン2”ルート)。
ついで、ファームウェア(書込制御部33b)は、フラッシュメモリ32から動作設定データを取得し(ステップS21)、取得した動作設定データをSDカード31上の格納領域にコピーする(ステップS22)。さらに、ファームウェアは、フラッシュメモリ32上に展開されているファームウェアコードを圧縮し、圧縮されたコード(圧縮データ)をSDカード31に格納する(ステップS23)。
最後に、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とが比較される(ステップS18)。パターン2の場合、SDカード31上の筐体シリアル番号SN2の値が初期値(NULL)であって、筐体シリアル番号SN1,SN3の値“SN012345”と異なっている(ステップS18のNOルート)。このため、筺体ROM11上のSN1の値“SN012345”が、SDカード31上の格納領域に上書きされる(ステップS19)。なお、フラッシュメモリ32上のSN3の値は、筺体ROM11上のSN1の値と同じであるので、フラッシュメモリ32に対するSN1の値の上書き処理は行なわない。
以上の処理が完了すると、ボード30上の新たなSDカード31には、交換前のSDカード(旧カード)31と同じファームウェア版数のファームウェアコードの圧縮データが復元されるとともに、旧カード31と同じ動作設定データが復元される。この後、ボード30は、新たなSDカード31によるバックアップを受けながら、サービスの提供(複数のサーバ20の管理)を行なうことが可能となる。
〔B3〕パターン3
パターン3は、筺体ROM11の故障に伴い、この筐体ROM11を交換する場合に相当する。この場合、交換作業者は、筺体10(処理装置1)の電源をオフ状態にした後、筺体ROM11を新しい物に交換する。なお、新しい筐体ROM11には、交換前の筐体ROM11に格納されていた筐体シリアル番号(例えば“SN012345”)とは異なる筐体シリアル番号(例えば“SN67890”)が予め格納されている。また、新しい筐体ROM11の版数格納領域には、ファームウェア版数として初期値(NULL)が格納されている。そして、交換作業者は、交換を完了すると、筺体10(処理装置1)の電源をオン状態にする。
筐体10の電源が投入されると、MMB30上のファームウェアが起動され、ファームウェアは、まず、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とを取得するとともに、筺体ROM11上のファームウェア版数を取得する(ステップS11)。このとき、筐体ROM11が交換されているので、SDカード31上のSN2の値およびフラッシュメモリ32上のSN3の値は、筺体ROM11上のSN1の値と異なるとともに、筐体ROM11のファームウェア版数の値としては、初期値(NULL)が格納されている。ここで、SDカード31上のSN2の値およびフラッシュメモリ32上のSN3の値は、交換前の筐体ROM11に格納されていたSN1の値“SN012345”である。したがって、取得された筐体シリアル番号SN1〜SN3の組合せは、テーブルTのパターン3に相当することになり、判定部33aによる判定結果はOKとなり(ステップS12のYESルート)、参照すべきデータはフラッシュメモリ32に格納されていると判定される(ステップS13のNOルート)。そして、ファームウェアは、ステップS24の処理へ移行する(ステップS20の“パターン3”ルート)。
ついで、ファームウェア(書込制御部33b)は、フラッシュメモリ32からファームウェア版数を取得し(ステップS24)、取得したファームウェア版数を筐体ROM11の版数格納領域にコピーする(ステップS25)。
なお、パターン3では、可搬媒体31とフラッシュメモリ32とには、同じ筐体シリアル番号,同じファームウェア版数および同じ設定データ等が保存されているので、パターン2で行なったステップS21〜S23の処理は省略されている。しかし、フラッシュメモリ32上に展開されている最新の情報をSDカード31によって確実にバックアップすべく、パターン3においても、ファームウェアは、上述したステップS21〜S23と同様の処理を実行してもよい。
最後に、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とが比較される(ステップS18)。パターン3の場合、SDカード31上のSN2の値およびフラッシュメモリ32上のSN3の値は、いずれも“SN012345”で、筺体ROM11上のSN1の値“SN67890”と異なっている(ステップS18のNOルート)。このため、筺体ROM11上のSN1の値“SN012345”が、SDカード31およびフラッシュメモリ32上の格納領域にそれぞれ上書きされる(ステップS19)。
以上の処理が完了すると、MMB30は、サービスの提供(複数のサーバ20の管理)を行なうことが可能となる。
〔B4〕パターン4
パターン4は、筺体10(処理装置1)がデフォルト状態から始めて電源を投入される場合(初期起動)に相当する。この場合、筐体10の電源が投入されると、MMB30上のファームウェアが起動され、ファームウェアは、まず、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とを取得する(ステップS11)。このとき、筺体ROM11上のSN1の値が“SN012345”であるとすると、SDカード31上のSN2の値およびフラッシュメモリ32上のSN3の値は、いずれも初期値(NULL)で、筺体ROM11上のSN1の値“SN012345”と異なる。したがって、取得された筐体シリアル番号SN1〜SN3の組合せは、テーブルTのパターン4に相当することになり、判定部33aによる判定結果はOKとなり(ステップS12のYESルート)、参照すべきデータはフラッシュメモリ32に格納されていると判定される(ステップS13のNOルート)。そして、ファームウェアはステップS18の処理へ移行する(ステップS20の“パターン4,5”ルート)。
なお、パターン4では、可搬媒体31とフラッシュメモリ32とには、同じ筐体シリアル番号,同じファームウェア版数および同じ設定データ等が保存されているので、パターン2で行なったステップS21〜S23の処理は省略されている。しかし、フラッシュメモリ32上に展開されている最新の情報をSDカード31によって確実にバックアップすべく、パターン4においても、ファームウェアは、ステップS18の処理へ移行する前に、上述したステップS21〜S23と同様の処理を実行してもよい。
最後に、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とが比較される(ステップS18)。パターン4の場合、SDカード31上のSN2の値およびフラッシュメモリ32上のSN3の値は、いずれも初期値(NULL)で、筺体ROM11上のSN1の値“SN012345”と異なっている(ステップS18のNOルート)。このため、筺体ROM11上のSN1の値“SN012345”が、SDカード31およびフラッシュメモリ32上の格納領域にそれぞれ上書きされる(ステップS19)。
以上の処理が完了すると、MMB30は、サービスの提供(複数のサーバ20の管理)を行なうことが可能となる。
〔B5〕パターン5
パターン5は、筐体10(処理装置1)の再起動が行なわれる場合、つまり筐体10のAC電源をオフ状態からオン状態に切り替えた場合に相当する。この場合、筺体10の電源がオフからオンに切り替えられた後に、電源が投入されると、MMB30上のファームウェアが起動される。そして、ファームウェアは、まず、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とを取得する(ステップS11)。このとき、筺体ROM11上のSN1の値が“SN012345”であるとすると、SDカード31上のSN2の値およびフラッシュメモリ32上のSN3も、筺体ROM11上のSN1の値“SN012345”と等しい。したがって、取得された筐体シリアル番号SN1〜SN3の組合せは、テーブルTのパターン5に相当することになり、判定部33aによる判定結果はOKとなり(ステップS12のYESルート)、参照すべきデータはフラッシュメモリ32に格納されていると判定される(ステップS13のNOルート)。そして、ファームウェアはステップS18の処理へ移行する(ステップS20の“パターン4,5”ルート)。
なお、パターン5では、可搬媒体31とフラッシュメモリ32とには、同じ筐体シリアル番号,同じファームウェア版数および同じ設定データ等が保存されているので、パターン2で行なったステップS21〜S23の処理は省略されている。しかし、フラッシュメモリ32上に展開されている最新の情報をSDカード31によって確実にバックアップすべく、パターン5においても、ファームウェアは、ステップS18の処理へ移行する前に、上述したステップS21〜S23と同様の処理を実行してもよい。
最後に、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とが比較される(ステップS18)。パターン5の場合、SDカード31上のSN2の値およびフラッシュメモリ32上のSN3の値は、いずれも“SN012345”で、筺体ROM11上のSN1の値“SN012345”と等しい(ステップS18のYESルート)。このため、ステップS19の処理はスキップされる。
以上の処理が完了すると、MMB30は、サービスの提供(複数のサーバ20の管理)を行なうことが可能となる。
〔B6〕パターン6
パターン6は、ハードウェア故障でMMB30を交換する場合であって、MMB30を他の筺体10で動作していたボード30に交換する場合に相当する。この場合、交換作業者は、故障したボード(旧ボード)30を筺体10のスロットから引き抜き、さらに、旧ボード30で使用されていたSDカード31を引き抜く。そして、交換作業者は、他の筺体10で動作していたボード(新ボード/交換後ボード)30にSDカード31を実装してから、そのボード30を筺体10のスロットに挿入する。
新ボード30が起動されると、ファームウェアは、まず、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とを取得する(ステップS11)。このとき、筺体ROM11上のSN1の値が“SN012345”であるとすると、SDカード31は元々同じ筺体10で使用されていた物を引継いでいるので、SDカード上のSN2の値も同様に“SN012345”となる。また、ボード30は他の筐体10に搭載されていた物に交換されているため、フラッシュメモリ32上のSN3の値としては、以前、ボード30が搭載されていた筐体10のシリアル番号、例えば“SN303030”が取得される。従って、取得された筐体シリアル番号SN1〜SN3の組合せは、テーブルTのパターン6に相当することになり、判定部33aによる判定結果はOKとなり(ステップS12のYESルート)、参照すべきデータはSDカード31に格納されていると判定される(ステップS13のYESルート)。
ついで、パターン1と同様、ステップS14〜S17の処理が実行される。つまり、ファームウェア(書込制御部33b)は、SDカード31から動作設定データを取得し(ステップS14)、取得した動作設定データをフラッシュメモリ32上の格納領域にコピーする(ステップS15)。次に、ファームウェアは、SDカード31に格納されているファームウェアコードの圧縮データの版数と、フラッシュメモリ32上に展開されているファームウェアコードの版数とを比較する(ステップS16)。版数が等しい場合(ステップS16のYESルート)、ファームウェアは次の処理(ステップS18)に進む。一方、版数が異なる場合(ステップS16のNOルート)、ファームウェアは、SDカード31上のファームウェアデータをフラッシュメモリ32上に書き込む処理を開始する(ステップS17)。フラッシュメモリ32が二重化されている場合、フラッシュメモリ32への書込み処理は、例えば図5および図6を参照しながら前述した手順で実行される。
最後に、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とが比較される(ステップS18)。パターン6の場合、フラッシュメモリ32上の筐体シリアル番号SN3の値が“SN303030”であって、筐体シリアル番号SN1,SN2の値“SN012345”と異なっている(ステップS18のNOルート)。このため、筺体ROM11上のSN1の値“SN012345”が、フラッシュメモリ32上の格納領域に上書きされる(ステップS19)。なお、SDカード31上のSN2の値は、筺体ROM11上のSN1の値と同じであるので、SDカード31に対するSN1の値の上書き処理は行なわない。
以上の処理が完了すると、交換されたボード30上のフラッシュメモリ32には、旧ボード30と同じファームウェア版数のファームウェアコードが展開されるとともに、旧ボード30と同じ動作設定データが引き継がれる。これにより、交換後のボード30は、旧ボード30と同じファームウェア版数で、且つ、旧ボード30と同じ動作設定データに基づき、サービスの提供(複数のサーバ20の管理)を行なうことが可能となる。
〔B7〕パターン7
パターン7は、例えば、ハードウェア故障でSDカード31を新しい物に交換する際に、誤って他の筐体10におけるMMB30で使用されていたSDカード31に交換した場合に相当する。この場合、交換作業者は、一旦、MMB30を筺体10のスロットから引き抜き、そのボード30上の故障したSDカード31を引き抜く。この後、交換作業者は、未使用の新しいSDカード31を実装すべきところ、誤って他のMMB30で動作していたSDカード31を実装して、そのボード30を筺体10のスロットに挿入する。交換作業者は、交換を完了すると、筺体10(処理装置1)の電源をオン状態にする。なお、交換後のSDカード31には、他の筐体10のシリアル番号と他の筐体10におけるMMB30上で動作するファームウェアの版数とが保存されている。
筐体10の電源が投入されると、MMB30上のファームウェアが起動され、ファームウェアは、まず、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とを取得するとともに、筺体ROM11上のファームウェア版数を取得する(ステップS11)。このとき、筺体ROM11上のSN1の値が“SN012345”であるとすると、ボード30は交換しておらず元々同じ筺体10で使用されていた物を引継いでいるので、フラッシュメモリ32上のSN3の値も同様に“SN012345”となる。また、SDカード31が、他の筐体10で使用されていた物に交換されているため、SDカード31上のSN2としては、SN1,SN3の値“SN012345”と異なる値“SN505050”が取得される。したがって、取得された筐体シリアル番号SN1〜SN3の組合せは、テーブルTのパターン7に相当することになり、判定部33aによる判定結果はNGとなる(ステップS12のNOルート)。
この場合、ファームウェアは、参照すべき設定データの格納場所を判定不能で、正しい設定データを見出せず、これ以上動作することがきないため、縮退状態へと移行する。縮退状態となった場合、ハードウェアのアラームLEDが点灯するなどして、ユーザは、ファームウェア異常が発生したことを認識することができる(ステップS26)。その後、ユーザは、ローカルコンソール(図示略)等から、限られたコマンドを実行することができ、アラームログの確認や復旧作業を行なうことができる。パターン7の場合、アラームログから、SDカード31の交換ミスが発生したことが認識され、正しいSDカード31に交換した後、再度、図4に示す処理が実行される。
〔B8〕パターン8
パターン8は、例えば、ハードウェア故障でMMB30を新しい物に交換する際に、誤ったSDカード31を実装した場合に相当する。つまり、パターン8は、MMB30を未使用のボード30に交換する際に、交換前のMMB30に実装されていたSDカード31を新たなボード30に実装すべきところ、誤って他の筐体10におけるMMB30で使用されていたSDカード31をボード30に実装した場合に相当する。この場合、交換作業者は、故障したボード30を筺体10のスロットから引き抜き、さらに、そのボード30で使用されていたSDカード30を引き抜く。そして、新たなボード30に、誤って、他のMMB30で動作していたSDカード31を実装し、そのボード30を筺体10のスロットに挿入する。交換作業者は、交換を完了すると、筺体10(処理装置1)の電源をオン状態にする。なお、交換後のSDカード31には、他の筐体10のシリアル番号と他の筐体10におけるMMB30上で動作するファームウェアの版数とが保存されている。
筐体10の電源が投入されると、MMB30上のファームウェアが起動され、ファームウェアは、まず、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とを取得するとともに、筺体ROM11上のファームウェア版数を取得する(ステップS11)。このとき、筺体ROM11上のSN1の値が“SN012345”であるとすると、SDカード31上のSN2の値は、以前搭載されていた筐体10のシリアル番号“SN707070”となる。また、ボード30は、未使用の新たな物に交換されているため、フラッシュメモリ32上のSN3の値としては、初期値(NULL)が取得される。したがって、取得された筐体シリアル番号SN1〜SN3の組合せは、テーブルTのパターン8に相当することになり、判定部33aによる判定結果はNGとなる(ステップS12のNOルート)。この後、パターン7の場合と同様、ステップS26の処理が実行され、アラームログから、SDカード31の交換ミスが発生したことが認識され、ユーザによる復旧作業が行なわれ、正しいSDカード31に交換した後、再度、図4に示す処理が実行される。
〔B9〕パターン9
パターン9は、例えば、ハードウェア故障でSDカード31を新しい物に交換する際に、他の筺体10で動作していたMMB30を新たなボード30として使用する場合に相当する。この場合、交換作業者は、一旦、交換前のMMB30を筺体10のスロットから引き抜き、そのボード30上の故障したSDカード31を引き抜く。この後、交換作業者は、未使用の新たなSDカード31を、誤って、他の筺体10で動作していたMMB30に実装し、そのボード30を筺体10のスロットに挿入する。交換作業者は、交換を完了すると、筺体10(処理装置1)の電源をオン状態にする。なお、交換後のMMB30上のフラッシュメモリ32には、他の筐体10のシリアル番号と他の筐体10におけるMMB30上で動作するファームウェアの版数とが保存されている。
筐体10の電源が投入されると、MMB30上のファームウェアが起動され、ファームウェアは、まず、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とを取得するとともに、筺体ROM11上のファームウェア版数を取得する(ステップS11)。このとき、筺体ROM11上のSN1の値が“SN012345”であるとすると、MMB30は、他の筐体10で動作していた物であるため、フラッシュメモリ32上のSN3の値は、以前搭載されていた筐体10のシリアル番号“SN909090”となる。また、SDカード31は、未使用の新たな物に交換されているため、SDカード31上のSN2の値としては、初期値(NULL)が取得される。したがって、取得された筐体シリアル番号SN1〜SN3の組合せは、テーブルTのパターン9に相当することになり、判定部33aによる判定結果はNGとなる(ステップS12のNOルート)。この後、パターン7の場合と同様、ステップS26の処理が実行され、アラームログから、MMB30の交換ミスが発生したことが認識され、ユーザによる復旧作業が行なわれ、正しいMMB30に交換した後、再度、図4に示す処理が実行される。
〔B10〕パターン10
パターン10は、例えば、ハードウェア故障でMMB30およびSDカード31を交換する際に、他の筐体10で使用されていたMMB30およびSDカード31に交換した場合に相当する。この場合、交換作業者は、一旦、交換前のMMB30を筺体10のスロットから引き抜き、そのボード30上の故障したSDカード31を引き抜く。この後、交換作業者は、交換後のMMB30およびSDカード31を筺体10のスロットに挿入する際に、誤って、他の筺体10で動作していたMMB30およびSDカード31を、筺体10のスロットに挿入する。交換作業者は、交換を完了すると、筺体10(処理装置1)の電源をオン状態にする。なお、交換後のMMB30上のフラッシュメモリ32、および、交換後のSDカード31には、他の筐体10のシリアル番号と他の筐体10におけるMMB30上で動作するファームウェアの版数とが保存されている。
筐体10の電源が投入されると、MMB30上のファームウェアが起動され、ファームウェアは、まず、筺体ROM11上の筐体シリアル番号SN1とSDカード31上の筺体シリアル番号SN2とフラッシュメモリ32上の筺体シリアル番号SN3とを取得するとともに、筺体ROM11上のファームウェア版数を取得する(ステップS11)。このとき、筺体ROM11上のSN1の値が“SN012345”であるとすると、MMB30は、他の筐体10で動作していた物であるため、フラッシュメモリ32上のSN3の値は、以前搭載されていた筐体10のシリアル番号“SN909090”となる。また、SDカード31も、他の筐体10で動作していた物であるため、SDカード31上のSN2の値は、以前搭載されていた筐体10のシリアル番号“SN909090”となる。したがって、取得された筐体シリアル番号SN1〜SN3の組合せは、テーブルTのパターン10に相当することになり、判定部33aによる判定結果はNGとなる(ステップS12のNOルート)。この後、パターン7の場合と同様、ステップS26の処理が実行され、アラームログから、MMB30およびSDカード31の交換ミスが発生したことが認識され、ユーザによる復旧作業が行なわれ、正しいMMB30およびSDカードに交換した後、再度、図4に示す処理が実行される。
〔3〕処理装置および管理ボードによる効果
上述した処理装置1およびMMB30によれば、筐体ROM11,可搬媒体31およびフラッシュメモリ32上の筐体シリアル番号に基づき、複数のデバイス(可搬媒体31およびフラッシュメモリ32)の中から、ファームウェアが参照すべき設定データが格納されているデバイスが判定される。
これにより、デバイスの保守交換後に、どのデバイスに格納されているデータが妥当であるかを自動判定することが可能になる。
また、その判定結果に基づき、筐体ROM11,可搬媒体31およびフラッシュメモリ32の間におけるデータの書込が制御される。このため、処理装置1(MMB30)は、交換前のファームウェア版数で、且つ、交換前の設定データに基づき、交換後も交換前と同様のサービスの提供、つまり複数のサーバ20の管理を行なうことができる。
したがって、ボード30や可搬媒体31などの保守交換時に、システム管理者あるいは保守作業者は、新しいボード30に対して、ファームウェア更新や設定データリストアといった作業を行なう必要が無くなり、作業工数が削減できる。また、保守作業によるシステム停止時間の削減にも繋がる。さらに、人的作業が削減できるため、作業ミスによるシステム停止等のリスクを軽減できる。
また、ファームウェアが参照すべき設定データの格納場所を判定不能であると判定された場合、LEDランプ等による表示機能や音声,警告音等による通知機能により、ユーザは、その旨をファームウェア異常として認識することができる。これにより、ユーザは、アラームログの確認や復旧作業を行なうことができる。したがって、復旧作業後、処理装置1(MMB30)は、交換前のファームウェア版数で、且つ、交換前の設定データに基づき、サービスの提供つまり複数のサーバ20の管理を行なうことができる。
〔4〕その他
以上、本発明の好ましい実施形態について詳述したが、本発明は、係る特定の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲内において、種々の変形、変更して実施することができる。
なお、上述した実施形態では、本発明をブレードシステム等のMMBに適用した場合について説明したが、本発明は、これに限定されるものではなく、図1に示すハードウェア構成を採る他のファームウェア製品へ、上述した実施形態と同様に適用され、上述した実施形態と同様の作用効果を得ることができる。例えば、本発明は、ブレードシステムにおける個々のサーバブレード上に存在するファームウェアについても、サーバブレードのハードウェア故障でボードを交換する場合に適用される。この場合も、SDカードを旧ボードから新ボードに引き継ぎ、ファームウェアに上述した実施形態と同様の処理ロジックを持たせることにより、交換後の新ボードにおいて、旧ボードと同じファームウェア版数と同じ動作設定データを復元することでき、交換後も交換前と同様のサービス提供が可能になる。
上述した判定部33aおよび書込制御部33bとしての機能の全部または一部は、コンピュータ(CPU,情報処理装置,各種端末を含む)が所定のアプリケーションプログラムを実行することによって実現される。
そのプログラムは、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RWなど),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD−RW,DVD+R,DVD+RWなど),ブルーレイディスク等のコンピュータ読取可能な記録媒体に記録された形態で提供される。この場合、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。
ここで、コンピュータとは、ハードウェアとOS(Operating System)とを含む概念であり、OSの制御の下で動作するハードウェアを意味している。また、OSが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、CPU等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取る手段とをそなえている。上記アプリケーションプログラムは、上述のようなコンピュータに、判定部33aおよび書込制御部33bとしての機能を実現させるプログラムコードを含んでいる。また、その機能の一部は、アプリケーションプログラムではなくOSによって実現されてもよい。
〔5〕付記
以上の各実施形態を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
筐体と、
前記筐体内にそなえられた処理部と、
前記筐体に挿抜可能に実装され、前記処理部を管理する管理ボードと、を有し、
前記筐体は、当該筐体の識別情報を格納しうる記憶部を有し、
前記管理ボードは、
前記管理ボードが実装された筐体の識別情報およびファームウェアが参照する設定データを格納しうる不揮発性メモリと、
前記管理ボードに挿抜可能に実装され、実装されている管理ボードが実装された筐体の識別情報およびファームウェアが参照する設定データを格納しうる可搬型記憶媒体と、
前記記憶部に格納された識別情報と、前記不揮発性メモリに格納された識別情報と、前記管理ボードに実装された前記可搬型記憶媒体に格納された識別情報とに基づき、前記不揮発性メモリと前記可搬型記憶媒体とのうちのいずれに、前記管理ボード上で動作するファームウェアが参照すべき設定データが格納されているかを判定する判定部と、
を有する、処理装置。
(付記2)
前記記憶部は、当該筐体におけるファームウェアの版数情報を格納し、
前記不揮発性メモリは、前記管理ボード上で動作するファームウェアの版数情報を格納し、
前記可搬型記憶媒体は、前記実装されている管理ボード上で動作するファームウェアの版数情報を格納し、
前記判定部は、前記記憶部における識別情報および版数情報と前記不揮発性メモリにおける識別情報および版数情報と前記管理ボードに実装された前記可搬型記憶媒体における識別情報および版数情報とに基づき、前記不揮発性メモリと前記可搬型記憶媒体とのうちのいずれに、前記管理ボード上で動作するファームウェアが参照すべき設定データが格納されているかを判定する、付記1記載の処理装置。
(付記3)
前記管理ボードは、
前記判定部による判定結果に基づき、前記の記憶部,不揮発性メモリおよび可搬型記憶媒体の間におけるデータの書込を制御する書込制御部を有する、付記1または付記2に記載の処理装置。
(付記4)
前記判定部は、前記記憶部における識別情報と前記管理ボードに実装された前記可搬型記憶媒体における識別情報とが一致し且つ前記不揮発性メモリにおける識別情報が初期値である場合、前記管理ボードが新たな管理ボードに交換されたと判定し、前記管理ボード上で動作するファームウェアが参照すべき設定データが、前記可搬型記憶媒体に格納されていると判定する、付記3記載の処理装置。
(付記5)
前記判定部が、前記管理ボードが新たな管理ボードに交換されたと判定した場合、前記書込制御部は、前記可搬型記憶媒体における設定データを前記不揮発性メモリに書き込む、付記4記載の処理装置。
(付記6)
前記可搬型記憶媒体は、交換前の管理ボード上で動作していたファームウェアのコードと当該ファームウェアの版数情報とを格納し、
前記判定部が、前記管理ボードが新たな管理ボードに交換されたと判定し、且つ、前記可搬型記憶媒体における版数情報と交換後の管理ボード上の不揮発性メモリの版数情報格納領域における情報とが不一致であると判定した場合、前記書込制御部は、前記可搬型記憶媒体における版数情報およびコードを前記不揮発性メモリに書き込む、付記4または付記5に記載の処理装置。
(付記7)
前記判定部が、前記管理ボードが新たな管理ボードに交換されたと判定した場合、前記書込制御部は、前記記憶部における識別情報を前記不揮発性メモリの識別情報格納領域に上書きする、付記4〜付記6のいずれか一項に記載の処理装置。
(付記8)
前記判定部は、前記記憶部における識別情報と前記不揮発性メモリにおける識別情報とが一致し且つ前記管理ボードに実装された前記可搬型記憶媒体における識別情報が初期値である場合、前記可搬型記憶媒体が新たな可搬型記憶媒体に交換されたと判定し、前記管理ボード上で動作するファームウェアが参照すべき設定データが、前記不揮発性メモリに格納されていると判定する、付記3記載の処理装置。
(付記9)
前記判定部が、前記可搬型記憶媒体が新たな可搬型記憶媒体に交換されたと判定した場合、前記書込制御部は、前記記憶部における識別情報を前記可搬型記憶媒体における識別情報格納領域に上書きする、付記8記載の処理装置。
(付記10)
前記判定部は、前記不揮発性メモリにおける識別情報と前記管理ボードに実装された前記可搬型記憶媒体における識別情報とが一致し且つ前記記憶部における識別情報が前記不揮発性メモリおよび前記可搬型記憶媒体における識別情報と異なり且つ前記記憶部に格納されたファームウェアの版数情報が初期値である場合、前記記憶部が新たな記憶部に交換されたと判定し、前記管理ボード上で動作するファームウェアが参照すべき設定データが、前記不揮発性メモリまたは前記可搬媒体に格納されていると判定する、付記3記載の処理装置。
(付記11)
前記判定部が、前記記憶部が新たな記憶部に交換されたと判定した場合、前記書込制御部は、前記不揮発性メモリに格納されたファームウェアの版数を前記記憶部の版数格納領域に書き込む、付記10記載の処理装置。
(付記12)
前記判定部が、前記記憶部が新たな記憶部に交換されたと判定した場合、前記書込制御部は、前記記憶部における識別情報を前記不揮発性メモリおよび前記可搬型記憶媒体における識別情報格納領域に上書きする、付記10または付記11に記載の処理装置。
(付記13)
前記判定部は、前記不揮発性メモリにおける識別情報と前記管理ボードに実装された前記可搬型記憶媒体における識別情報とがいずれも初期値であり且つ前記記憶部に前記筐体の識別情報が格納されている場合、当該処理装置をデフォルト状態から始めて電源を投入した状態であると判定し、前記管理ボード上で動作するファームウェアが参照すべき設定データが、前記不揮発性メモリまたは前記可搬媒体に格納されていると判定し、
前記判定部が、当該処理装置をデフォルト状態から始めて電源を投入した状態であると判定した場合、前記書込制御部は、前記記憶部における識別情報を前記不揮発性メモリおよび前記可搬型記憶媒体における識別情報格納領域に上書きする、付記3記載の処理装置。
(付記14)
前記判定部は、前記不揮発性メモリにおける識別情報と前記管理ボードに実装された前記可搬型記憶媒体における識別情報と前記記憶部における識別情報とが一致する場合、当該処理装置を再起動した状態であると判定し、前記管理ボード上で動作するファームウェアが参照すべき設定データが、前記不揮発性メモリまたは前記可搬媒体に格納されていると判定する、付記3記載の処理装置。
(付記15)
前記判定部は、前記記憶部における識別情報と前記管理ボードに実装された前記可搬型記憶媒体における識別情報とが一致し且つ前記不揮発性メモリにおける識別情報が前記記憶部および前記可搬型記憶媒体における識別情報と異なる場合、前記管理ボードが他の筐体で使用されていた管理ボードに交換されたと判定し、前記管理ボード上で動作するファームウェアが参照すべき設定データが、前記可搬型記憶媒体に格納されていると判定する、付記3記載の処理装置。
(付記16)
前記判定部が、前記管理ボードが他の筐体で使用されていた管理ボードに交換されたと判定した場合、前記書込制御部は、前記可搬型記憶媒体における設定データを前記不揮発性メモリに書き込む、付記15記載の処理装置。
(付記17)
前記可搬型記憶媒体は、交換前の管理ボード上で動作していたファームウェアのコードと当該ファームウェアの版数情報とを格納し、
前記判定部が、前記管理ボードが他の筐体で使用されていた管理ボードに交換されたと判定し、且つ、前記可搬型記憶媒体における版数情報と交換後の管理ボード上の不揮発性メモリの版数情報格納領域における情報とが不一致であると判定した場合、前記書込制御部は、前記可搬型記憶媒体における版数情報およびコードを前記不揮発性メモリに書き込む、付記15または付記16に記載の処理装置。
(付記18)
前記判定部が、前記管理ボードが他の筐体で使用されていた管理ボードに交換されたと判定した場合、前記書込制御部は、前記記憶部における識別情報を前記不揮発性メモリの識別情報格納領域に上書きする、付記15〜付記17のいずれか一項に記載の処理装置。
(付記19)
前記判定部は、前記管理ボード上で動作するファームウェアが参照すべき設定データが、前記不揮発性メモリと前記可搬型記憶媒体とのうちのいずれに格納されているか判定不能である場合、ファームウェア異常と判定する、付記3記載の処理装置。
(付記20)
筐体に挿抜可能に実装され、前記筐体内の処理部を管理する管理ボードであって、
前記管理ボードが実装された筐体の識別情報およびファームウェアが参照する設定データを格納しうる不揮発性メモリと、
前記管理ボードに挿抜可能に実装され、実装されている管理ボードが実装された筐体の識別情報およびファームウェアが参照する設定データを格納しうる可搬型記憶媒体と、
前記筐体にそなえられた記憶部に格納された当該筐体の識別情報と、前記不揮発性メモリに格納された識別情報と、前記管理ボードに実装された前記可搬型記憶媒体に格納された識別情報とに基づき、前記不揮発性メモリと前記可搬型記憶媒体とのうちのいずれに、前記管理ボード上で動作するファームウェアが参照すべき設定データが格納されているかを判定する判定部と、
を有する、管理ボード。
1 処理装置
10 筐体
11 筐体ROM(記憶部)
20 サーバ(処理部)
30 マネージメントボード(管理ボード;MMB)
31 可搬媒体(可搬型記憶媒体)
32 フラッシュメモリ(不揮発性メモリ)
33 サービスプロセッサ(SP)
33a 判定部
33b 書込制御部
34 RAMディスク
T 設定データ格納場所判定テーブル

Claims (6)

  1. 筐体と、
    前記筐体内にそなえられた処理部と、
    前記筐体に挿抜可能に実装され、前記処理部を管理する管理ボードと、を有し、
    前記筐体は、当該筐体の識別情報を格納しうる記憶部を有し、
    前記管理ボードは、
    前記管理ボードが実装された筐体の識別情報およびファームウェアが参照する設定データを格納しうる不揮発性メモリと、
    前記管理ボードに挿抜可能に実装され、実装されている管理ボードが実装された筐体の識別情報およびファームウェアが参照する設定データを格納しうる可搬型記憶媒体と、
    前記記憶部に格納された識別情報と、前記不揮発性メモリに格納された識別情報と、前記管理ボードに実装された前記可搬型記憶媒体に格納された識別情報とに基づき、前記不揮発性メモリと前記可搬型記憶媒体とのうちのいずれに、前記管理ボード上で動作するファームウェアが参照すべき設定データが格納されているかを判定する判定部と、
    を有する、処理装置。
  2. 前記記憶部は、当該筐体におけるファームウェアの版数情報を格納し、
    前記不揮発性メモリは、前記管理ボード上で動作するファームウェアの版数情報を格納し、
    前記可搬型記憶媒体は、前記実装されている管理ボード上で動作するファームウェアの版数情報を格納し、
    前記判定部は、前記記憶部における識別情報および版数情報と前記不揮発性メモリにおける識別情報および版数情報と前記管理ボードに実装された前記可搬型記憶媒体における識別情報および版数情報とに基づき、前記不揮発性メモリと前記可搬型記憶媒体とのうちのいずれに、前記管理ボード上で動作するファームウェアが参照すべき設定データが格納されているかを判定する、請求項1記載の処理装置。
  3. 前記管理ボードは、
    前記判定部による判定結果に基づき、前記の記憶部,不揮発性メモリおよび可搬型記憶媒体の間におけるデータの書込を制御する書込制御部を有する、請求項1または請求項2に記載の処理装置。
  4. 前記判定部は、前記記憶部における識別情報と前記管理ボードに実装された前記可搬型記憶媒体における識別情報とが一致し且つ前記不揮発性メモリにおける識別情報が初期値である場合、前記管理ボードが新たな管理ボードに交換されたと判定し、前記管理ボード上で動作するファームウェアが参照すべき設定データが、前記可搬型記憶媒体に格納されていると判定する、請求項3記載の処理装置。
  5. 前記判定部は、前記管理ボード上で動作するファームウェアが参照すべき設定データが、前記不揮発性メモリと前記可搬型記憶媒体とのうちのいずれに格納されているか判定不能である場合、ファームウェア異常と判定する、請求項3記載の処理装置。
  6. 筐体に挿抜可能に実装され、前記筐体内の処理部を管理する管理ボードであって、
    前記管理ボードが実装された筐体の識別情報およびファームウェアが参照する設定データを格納しうる不揮発性メモリと、
    前記管理ボードに挿抜可能に実装され、実装されている管理ボードが実装された筐体の識別情報およびファームウェアが参照する設定データを格納しうる可搬型記憶媒体と、
    前記筐体にそなえられた記憶部に格納された当該筐体の識別情報と、前記不揮発性メモリに格納された識別情報と、前記管理ボードに実装された前記可搬型記憶媒体に格納された識別情報とに基づき、前記不揮発性メモリと前記可搬型記憶媒体とのうちのいずれに、前記管理ボード上で動作するファームウェアが参照すべき設定データが格納されているかを判定する判定部と、
    を有する、管理ボード。
JP2013521382A 2011-06-23 2011-06-23 処理装置および管理ボード Expired - Fee Related JP5621926B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013521382A JP5621926B2 (ja) 2011-06-23 2011-06-23 処理装置および管理ボード

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013521382A JP5621926B2 (ja) 2011-06-23 2011-06-23 処理装置および管理ボード

Publications (2)

Publication Number Publication Date
JP5621926B2 true JP5621926B2 (ja) 2014-11-12
JPWO2012176311A1 JPWO2012176311A1 (ja) 2015-02-23

Family

ID=51942715

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013521382A Expired - Fee Related JP5621926B2 (ja) 2011-06-23 2011-06-23 処理装置および管理ボード

Country Status (1)

Country Link
JP (1) JP5621926B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005078529A (ja) * 2003-09-02 2005-03-24 Sony Corp ロボット制御装置および方法、記録媒体、並びにプログラム
JP2006243789A (ja) * 2005-02-28 2006-09-14 Fujitsu Ltd 情報処理装置の管理方法
JP2006260330A (ja) * 2005-03-18 2006-09-28 Fujitsu Ltd 計算機システムのファームウェアのバージョン管理方法及び情報処理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005078529A (ja) * 2003-09-02 2005-03-24 Sony Corp ロボット制御装置および方法、記録媒体、並びにプログラム
JP2006243789A (ja) * 2005-02-28 2006-09-14 Fujitsu Ltd 情報処理装置の管理方法
JP2006260330A (ja) * 2005-03-18 2006-09-28 Fujitsu Ltd 計算機システムのファームウェアのバージョン管理方法及び情報処理装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNH200600046002; 浜田王才: '基幹IAサーバ"PRIMEQUEST"の高信頼システムを実現する技術' FUJITSU Vol.56, No.3, 20050510, p.194-200, 富士通株式会社 *
JPN6014035495; 浜田王才: '基幹IAサーバ"PRIMEQUEST"の高信頼システムを実現する技術' FUJITSU Vol.56, No.3, 20050510, p.194-200, 富士通株式会社 *

Also Published As

Publication number Publication date
JPWO2012176311A1 (ja) 2015-02-23

Similar Documents

Publication Publication Date Title
US7334157B1 (en) Restore of data to a computer system having different hardware
KR100389206B1 (ko) 컴퓨터 운영 시스템 보호 방법 및 장치
US7281159B2 (en) Managing disk drive replacements on multidisk headless appliances
US7571353B2 (en) Self-repairing computing device and method of monitoring and repair
JP5077726B1 (ja) コンピュータ、その制御方法及びプログラム
US7555602B2 (en) Data processing apparatus and method for restoring a file system
WO2012176311A1 (ja) 処理装置および管理ボード
JP2008084291A (ja) 記憶装置、制御方法及び制御装置
US7818622B2 (en) Method for recovering data processing system failures
JPH08305499A (ja) ミラーディスク制御方法およびミラーディスク装置
CN113934471A (zh) 计算机系统的基板管理控制器和启动方法
CN113190256B (zh) 一种升级方法、装置及设备
JP6515462B2 (ja) 情報処理装置、情報処理装置の設定方法及び設定プログラム
JP5870696B2 (ja) 情報処理装置、情報処理装置のシステム動作設定方法及びプログラム
JPH10307726A (ja) 起動エラー時におけるファームウェアリカバリ方式
JP5621926B2 (ja) 処理装置および管理ボード
JP2007011751A (ja) 計算機および退避復元プログラム
JP5279981B2 (ja) 更新制御プログラム、更新制御方法および更新制御装置
US20190138407A1 (en) Systems and methods of deploying an operating system from a resilient virtual drive
JP2006134123A (ja) データ記録装置及びそれを備える商品処理装置
JP2007293802A (ja) ディスクアレイ装置、ディスクアレイ装置の制御方法及びディスクアレイ装置の制御プログラム。
JP2004054616A (ja) ファームウェア自動修復機能を有する情報処理装置
KR100792786B1 (ko) 백업 이미지 파일을 이용한 컴퓨터의 최적화 운영체제 복구방법
JP2005071042A (ja) ファームウェア自動ダウンロード方法及びシステム
JP6864221B2 (ja) 記憶制御装置および記憶制御方法

Legal Events

Date Code Title Description
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: 20140826

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140908

R150 Certificate of patent or registration of utility model

Ref document number: 5621926

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees