(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】6583942
(24)【登録日】2019年9月13日
(45)【発行日】2019年10月2日
(54)【発明の名称】BMC、判定方法及びBMCファームウェア
(51)【国際特許分類】
G06F 9/4401 20180101AFI20190919BHJP
G06F 11/22 20060101ALI20190919BHJP
【FI】
G06F9/4401
G06F11/22 607Z
【請求項の数】6
【全頁数】9
(21)【出願番号】特願2018-184485(P2018-184485)
(22)【出願日】2018年9月28日
【審査請求日】2018年9月28日
(73)【特許権者】
【識別番号】000227205
【氏名又は名称】NECプラットフォームズ株式会社
(74)【代理人】
【識別番号】100106909
【弁理士】
【氏名又は名称】棚井 澄雄
(74)【代理人】
【識別番号】100134544
【弁理士】
【氏名又は名称】森 隆一郎
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100162868
【弁理士】
【氏名又は名称】伊藤 英輔
(72)【発明者】
【氏名】長田 巧
【審査官】
塚田 肇
(56)【参考文献】
【文献】
特開2013−156993(JP,A)
【文献】
特開2018−018177(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 9/4401
G06F 11/22
(57)【特許請求の範囲】
【請求項1】
サーバをOn状態またはOff状態にする直流電源がOff状態にある間に、前記サーバのMemory RAS Modeの設定値と、搭載Memory情報が示すMemoryの前記サーバへの搭載条件とが合致しているか否かを判定するBMCファームウェアであって、合致していると判定するまで判定を繰り返すBMCファームウェア、
を有するBMC。
【請求項2】
前記BMCファームウェアは、
前記設定値と、前記搭載条件とが合致して合致していないと判定した場合に、前記Memoryの搭載に係るログを管理PCモジュールに出力する、
請求項1に記載のBMC。
【請求項3】
前記BMCファームウェアは、
前記サーバが備えるFlash ROMに書き込まれているBIOSから前記設定値を取得する、
請求項1または請求項2に記載のBMC。
【請求項4】
前記BMCファームウェアは、
IPMI(Intelligent Platform Management Interface)を使用した通信を行って、前記サーバが備えるFlash ROMに書き込まれているBIOSから前記設定値を取得する、
請求項3に記載のBMC。
【請求項5】
BMCファームウェアを有するBMCが行う判定方法であって、
サーバをOn状態またはOff状態にする直流電源がOff状態にある間に、前記サーバのMemory RAS Modeの設定値と、搭載Memory情報が示すMemoryの前記サーバへの搭載条件とが合致しているか否かを判定することを、合致していると判定するまで判定を繰り返す、
判定方法。
【請求項6】
BMCのコンピュータに、
サーバをOn状態またはOff状態にする直流電源がOff状態にある間に、前記サーバのMemory RAS Modeの設定値と、搭載Memory情報が示すMemoryの前記サーバへの搭載条件とが合致しているか否かを判定することを、合致していると判定するまで判定を繰り返し実行させる、
BMCファームウェア。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、BMC、判定方法及びBMCファームウェアに関する。
【背景技術】
【0002】
サーバは、Memory RAS Modeの設定に合ったMemoryが搭載されていない状態で、サーバが起動した場合、OSの起動において、サーバが再起動を繰り返し、その結果、OSの起動時間が長くなってしまう可能性がある。
特許文献1には、関連する技術として、メモリの物理的な搭載状態に基づいて、そのメモリの試験を実行する情報処理装置に関する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2018−018177号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、サーバでは、直流電源の無駄な再起動をできるたけ低減させることが望まれている。
【0005】
本発明の各態様は、上記の課題を解決することのできるBMC、判定方法及びBMCファームウェアを提供することを目的としている。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明の一態様によれば、BMCは、サーバをOn状態またはOff状態にする直流電源がOff状態にある間に、前記サーバのMemory RAS Modeの設定値と、搭載Memory情報が示すMemoryの前記サーバへの搭載条件とが合致しているか否かを判定するBMCファームウェアであって、合致していると判定するまで判定を繰り返すBMCファームウェア、を有する。
【0007】
上記目的を達成するために、本発明の別の態様によれば、判定方法は、BMCファームウェアを有するBMCが行う判定方法であって、サーバをOn状態またはOff状態にする直流電源がOff状態にある間に、前記サーバのMemory RAS Modeの設定値と、搭載Memory情報が示すMemoryの前記サーバへの搭載条件とが合致しているか否かを判定することを、合致していると判定するまで判定を繰り返す。
【0008】
上記目的を達成するために、本発明の一態様によれば、BMCファームウェアは、BMCのコンピュータに、サーバをOn状態またはOff状態にする直流電源がOff状態にある間に、前記サーバのMemory RAS Modeの設定値と、搭載Memory情報が示すMemoryの前記サーバへの搭載条件とが合致しているか否かを判定することを、合致していると判定するまで判定を繰り返し実行させる。
【発明の効果】
【0009】
本発明の各態様によれば、サーバの直流電源の無駄な再起動をできるたけ低減させることができる。
【図面の簡単な説明】
【0010】
【
図1】本発明の一実施形態によるサーバの構成を示す図である。
【
図2】本発明の一実施形態によるサーバの処理フローを示す図である。
【
図3】本発明の実施形態による最小構成のBMCを示す図である。
【
図4】少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
【発明を実施するための形態】
【0011】
以下、図面を参照しながら実施形態について詳しく説明する。
<実施形態>
本発明の一実施形態によるサーバ1は、直流電源がOff状態のときにBIOS(Basic Input Output System) Setupに設定しているMemory RAS Modeの設定値と、サーバ1に搭載しているMemory15の搭載情報とをBMC(Baseboard Management Controller)ファームウェアを用いて取得し、直流電源がOn状態になる前にBMCファームウェアがサーバ1のMemory RAS(Remote Access Service) Modeの設定と、サーバ1に搭載されているMemory15が搭載条件に合っているかチェックを行うことによって、サーバ1の無駄な直流電源のOn状態とOff状態の切り替えを低減するサーバである。
BIOSは、BIOS SetupによってSave & ExitまたはSave & Power Offを行う度に、Memory RAS Modeの設定情報をBMCファームウェアへ伝える。Memory RAS Modeの設定情報をBMCファームウェアに伝える手段の1つとして、IPMI(Intelligent Platform Management Interface)を使用して、BIOSとBMCファームウェアとの間で通信を行うことが挙げられる。BIOSとBMCファームウェアとの間の通信を行う手段はほかにもある。しかしながら、BIOS SetupのSave & ExitまたはSave & Power Offのタイミングに、IPMI通信のIPMIコマンドを使用してMemory RAS Modeの設定情報をBMCファームウェアに転送することで、障害等によってサーバ1が再起動した場合であってもMemory RAS Modeの設定値が上書きされることはなく、Memory RAS Modeの設定値が保持される。そして、BMCファームウェアは、Memory RAS Modeの設定値を取得することができる。BMCファームウェアがMemory RAS Modeの設定値を取得する手段の1つとして、SPD(Serial Presence Detect)から搭載するMemory15の搭載条件を示す搭載Memory情報をダンプして取得ことが挙げられる。本発明の一実施形態では、Memory RAS Modeの設定情報をBMCファームウェアに伝える手段として、IPMI通信を使用するものとして、サーバ1を説明する。また、本発明の一実施形態では、BMCファームウェアがMemory RAS Modeの設定値を取得する手段の1つとして、SPDから搭載Memory情報をダンプして取得するものとして、サーバ1を説明する。
なお、BMCファームウェアは、BIOSから取得したMemory RAS Modeの設定値と、サーバ1から直接取得した搭載Memory情報とを、BMC内のメモリ領域(以下、「BMCメモリ領域)と記載)に保持して、サーバ1の直流電源がOff状態の間にMemory RAS Modeの設定にあったMemory搭載のチェックを実施することを可能とする。BMCメモリ領域はBMCのメインメモリである。
【0012】
サーバ1は、
図1に示すように、CPU11、PCH(Platform Controller Hub)12、BMC13、Flash ROM14、Memory15を備える。CPU11は、PCH12と、Memory15とに接続されている。PCH12は、BMC13と、Flash ROM14とに接続されている。
図1には、管理PC(Personal Computer)モジュール2、ネットワーク3が示されている。サーバ1は、BMC13を介して管理PCモジュール2から管理されているサーバである。
【0013】
Flash ROM14には、BIOS141が書き込まれている。BIOS141は、BIOS SetupによってSave & ExitまたはSave & Power Offを行う度に、Memory RAS Modeの設定情報をBMCファームウェア131へ伝える。
【0014】
BMC13は、BMCファームウェア131、ネットワークIF(InterFace)132、BMCメモリ領域133を備える。
BMCファームウェア131は、BMC13を動作させるためのプログラムである。例えば、BMCファームウェア131は、BIOS141から取得したMemory RAS Modeの設定値と、サーバ1から直接取得した搭載Memory情報とを、BMCメモリ領域133に保持して、サーバ1の直流電源がOff状態の間にMemory RAS Modeの設定にあったMemory搭載のチェックを実施することを可能とする。
【0015】
ネットワークIF132は、サーバ1がネットワーク3を介して管理PCモジュール2と通信を行うためのインターフェースである。
【0016】
BMCメモリ領域133は、Memory RAS Modeの設定値と、搭載Memory情報とを記憶する記憶領域である。
【0017】
管理PCモジュール2がネットワーク3を介してサーバ1を管理する指令を通信すると、BMCファームウェア131は、IPMIを用いてBIOS141とIPMI通信を行い、サーバ1を管理する。
具体的には、BMCファームウェア131は、IPMI通信を行いBIOS141のBIOS Setupの情報を取得する。また、BMCファームウェア131は、SPDから搭載Memory情報を取得し、取得した搭載Memory情報をBMCメモリ領域133に書き込む。そして、BMCファームウェア131は、サーバ1の直流電源がOff状態にある間に、サーバ1のMemory RAS Modeの設定値と、搭載Memory情報が示すMemory15の搭載条件とが合致しているか否かを確認する。
【0018】
次に、サーバ1が行う起動の処理について説明する。
ここでは、
図2に示すサーバ1の処理フローについて説明する。なお、
図2では、サーバ1の処理を、BIOS141による処理と、BMCファームウェア131による処理とに区別して示す。
【0019】
サーバ1のユーザ(以下、「ユーザ」と記載)は、サーバ1の直流電源をOn状態にする(ステップS101)。
サーバ1において、BIOS141が起動する(ステップS102)。サーバ1においてBIOS141が起動すると、サーバ1の画面上にBIOS Setupを起動させるKey入力が表示される。ユーザは、その表示に従ってKeyを操作し、BIOS Setupを起動させる(ステップS103)。
サーバ1のBIOS Setupは、Memory RAS Modeを任意の設定に変更できる状態にあり、ユーザは、Memory RAS Modeを所望の設定に変更し(ステップS104)、Save & ExitまたはSave & Power Offを実施する(ステップS105)。
【0020】
このとき、BIOS141は、Memory RAS Modeの設定値をBMC13に報告する。例えば、BIOS141は、Memory RAS Modeの設定値をBMCファームウェア131に報告するIPMIコマンドを発行する(ステップS106)。
【0021】
BMC13は、BMCファームウェア131に応じて、BIOS141から発行されたIPMIコマンドによりSetupのMemory RAS Modeの設定値を取得する(ステップS201)。
【0022】
ユーザは、サーバ1の直流電源をOn状態にする場合に(ステップS107)、後述するステップS108でBIOS141が起動する前に、BMC13は、BMCファームウェア131に応じて、SPDから搭載Memory情報を取得し(ステップS202)、BMCメモリ領域に取得した搭載Memory情報を保持する。BMCファームウェア131は、IPMIコマンドによってBIOS141から取得したMemory RAS Modeの設定値と、SPDから取得した搭載Memory情報が示すMemory15の搭載条件とが合致しているか否かを確認(チェック)する(ステップS203)。BMC13は、BMCファームウェア131に応じて、サーバ1が搭載しているMemory15が搭載条件に合っていないと判定した場合(ステップS204においてNO)、どこのMemory15の搭載が間違っているかを示すログを管理PCモジュール2に出力し、そのログをユーザに報告する(ステップS205)。また、BMC13は、BMCファームウェア131に応じて、障害によってMemory15が搭載条件に合っていない場合も管理PCモジュール2にログを出力し、そのログをユーザに報告する(ステップS205)。ユーザは、Memory15が搭載条件に合うようにサーバ1のMemory15の載せ替え等を行い、その搭載条件が満たされるまでステップS204を繰り返し行う。
【0023】
BMC13は、BMCファームウェア131に応じて、その搭載条件が満たされたと判定した場合に、サーバ1の直流電源がOn状態となれる状態として、BIOS141が起動する(ステップS108)。このステップS108において、搭載条件が満たされたとBMC13が判定して初めてサーバ1の直流電源がOn状態となれる状態となることで、サーバ1の直流電源の無駄な再起動を繰り返すことが低減される。
【0024】
BIOS141は、Memory15を初期化するときに(ステップS109)、障害のあるMemory15が存在するか否かを確認する(ステップS110)。
BIOS141は、サーバ1に障害のあるMemory15が存在すると判定した場合、Memory15の切り離しが行われ(ステップS111)、サーバ1が直流電源をOff状態にすることによって(ステップS112)、再起動する。BIOS141は、サーバ1に障害のあるMemory15が存在しないと判定した場合、サーバ1の構成をチェックし(ステップS113)、OS(Operating System)が起動する(ステップS114)。
【0025】
以上、本発明の一実施形態によるサーバ1について説明した。
サーバ1が備えるBMC13は、サーバ1をOn状態またはOff状態にする直流電源がOff状態にある間に、サーバ1のMemory RAS Modeの設定値と、搭載Memory情報が示すMemory15のサーバ1への搭載条件とが合致しているか否かを判定するBMCファームウェアであって、合致していると判定するまで繰り返すBMCファームウェア131、を有する。
このように、BMC13は、BMCファームウェア131を有し、サーバ1のMemory RAS Modeの設定値と、搭載Memory情報が示すMemory15のサーバ1への搭載条件とが合致しているか否かを、合致していると判定するまで繰り返し、合致したと判定して、初めて、サーバ1の直流電源がOn状態となれる状態となる。そのため、BMC13は、サーバ1の直流電源の無駄な再起動をできるたけ低減させることができる。
【0026】
本発明の実施形態による最小構成のBMC13について説明する。
本発明の実施形態による最小構成のBMC13は、
図3に示すように、BMCファームウェア131を有する。
BMCファームウェア131は、サーバをOn状態またはOff状態にする直流電源がOff状態にある間に、前記サーバのMemory RAS Modeの設定値と、搭載Memory情報が示すMemory15の前記サーバへの搭載条件とが合致しているか否かを判定するファームウェアであって、合致していると判定するまでその判定を繰り返すファームウェアである。
【0027】
なお、本発明の実施形態における処理は、適切な処理が行われる範囲において、処理の順番が入れ替わってもよい。
【0028】
本発明の実施形態におけるMemory15、その他の記憶装置のそれぞれは、適切な情報の送受信が行われる範囲においてどこに備えられていてもよい。また、Memory15、その他の記憶装置のそれぞれは、適切な情報の送受信が行われる範囲において複数存在しデータを分散して記憶していてもよい。
【0029】
本発明の実施形態について説明したが、上述のBMC13、管理PCモジュール2、その他の制御装置は内部に、コンピュータシステムを有していてもよい。そして、上述した処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。コンピュータの具体例を以下に示す。
図4は、少なくとも1つの実施形態に係るコンピュータの構成を示す概略ブロック図である。
コンピュータ5は、
図4に示すように、CPU6、メインメモリ7、ストレージ8、インターフェース9を備える。
例えば、上述のBMC13、管理PCモジュール2、その他の制御装置のそれぞれは、コンピュータ5に実装される。そして、上述した各処理部の動作は、プログラムの形式でストレージ8に記憶されている。CPU6は、プログラムをストレージ8から読み出してメインメモリ7に展開し、当該プログラムに従って上記処理を実行する。また、CPU6は、プログラムに従って、上述した各記憶部に対応する記憶領域をメインメモリ7に確保する。なお、プログラムには、BIOS141、BMCファームウェア131が含まれる。
【0030】
ストレージ8の例としては、HDD(Hard Disk Drive)、SSD(Solid State Drive)、磁気ディスク、光磁気ディスク、CD−ROM(Compact Disc Read Only Memory)、DVD−ROM(Digital Versatile Disc Read Only Memory)、半導体メモリ等が挙げられる。ストレージ8は、コンピュータ5のバスに直接接続された内部メディアであってもよいし、インターフェース9または通信回線を介してコンピュータ5に接続される外部メディアであってもよい。また、このプログラムが通信回線によってコンピュータ5に配信される場合、配信を受けたコンピュータ5が当該プログラムをメインメモリ7に展開し、上記処理を実行してもよい。少なくとも1つの実施形態において、ストレージ8は、一時的でない有形の記憶媒体である。
【0031】
また、上記プログラムは、前述した機能の一部を実現してもよい。さらに、上記プログラムは、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるファイル、いわゆる差分ファイル(差分プログラム)であってもよい。
【0032】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例であり、発明の範囲を限定しない。これらの実施形態は、発明の要旨を逸脱しない範囲で、種々の追加、省略、置き換え、変更を行ってよい。
【符号の説明】
【0033】
1・・・サーバ
2・・・管理PCモジュール
3・・・ネットワーク
5・・・コンピュータ
6、11・・・CPU
7・・・メインメモリ
8・・・ストレージ
9・・・インターフェース
12・・・PCH
13・・・BMC
14・・・Flash ROM
21、132・・・ネットワークIF
131・・・BMCファームウェア
133・・・BMCメモリ領域
【要約】 (修正有)
【課題】サーバの直流電源の無駄な再起動をできるたけ低減させることのできるBMCを提供する。
【解決手段】BMC13は、サーバをOn状態またはOff状態にする直流電源がOff状態にある間に、サーバのMemory RAS Modeの設定値と、搭載Memory情報が示すMemoryのサーバへの搭載条件とが合致しているか否かを判定するBMCファームウェアであって、合致していると判定するまで繰り返すBMCファームウェア131、を有する。
【選択図】
図3