特許第6862988号(P6862988)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電気株式会社の特許一覧
特許6862988サーバシステム、スイッチモジュール及びログ取得方法
<>
  • 特許6862988-サーバシステム、スイッチモジュール及びログ取得方法 図000002
  • 特許6862988-サーバシステム、スイッチモジュール及びログ取得方法 図000003
  • 特許6862988-サーバシステム、スイッチモジュール及びログ取得方法 図000004
  • 特許6862988-サーバシステム、スイッチモジュール及びログ取得方法 図000005
  • 特許6862988-サーバシステム、スイッチモジュール及びログ取得方法 図000006
  • 特許6862988-サーバシステム、スイッチモジュール及びログ取得方法 図000007
  • 特許6862988-サーバシステム、スイッチモジュール及びログ取得方法 図000008
  • 特許6862988-サーバシステム、スイッチモジュール及びログ取得方法 図000009
  • 特許6862988-サーバシステム、スイッチモジュール及びログ取得方法 図000010
  • 特許6862988-サーバシステム、スイッチモジュール及びログ取得方法 図000011
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6862988
(24)【登録日】2021年4月5日
(45)【発行日】2021年4月21日
(54)【発明の名称】サーバシステム、スイッチモジュール及びログ取得方法
(51)【国際特許分類】
   G06F 11/07 20060101AFI20210412BHJP
   G06F 13/00 20060101ALI20210412BHJP
【FI】
   G06F11/07 184
   G06F11/07 140A
   G06F11/07 140T
   G06F13/00 351M
【請求項の数】10
【全頁数】19
(21)【出願番号】特願2017-60976(P2017-60976)
(22)【出願日】2017年3月27日
(65)【公開番号】特開2018-163557(P2018-163557A)
(43)【公開日】2018年10月18日
【審査請求日】2020年2月17日
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100109313
【弁理士】
【氏名又は名称】机 昌彦
(74)【代理人】
【識別番号】100124154
【弁理士】
【氏名又は名称】下坂 直樹
(72)【発明者】
【氏名】佐藤 正崇
【審査官】 多賀 実
(56)【参考文献】
【文献】 特開2007−122698(JP,A)
【文献】 特開2014−241092(JP,A)
【文献】 特開平5−204818(JP,A)
【文献】 特開2015−032249(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/07
G06F 11/30−11/34
G06F 13/00
(57)【特許請求の範囲】
【請求項1】
サーバに設けられた複数の通信手段と、
前記複数の通信手段と、第1の通信路を介してそれぞれ接続されたスイッチモジュールと、
前記複数の通信手段と前記スイッチモジュールとをそれぞれ接続し、前記第1の通信路とそれぞれ関連付けられた第2の通信路とを備え、
前記スイッチモジュールは、
前記第1の通信路のいずれかに関して障害が検出されると、前記障害が検出された前記第1の通信路を介した前記スイッチモジュールの接続相手である前記通信手段が生成した、前記第1の通信路に関する前記障害のログを、前記障害が検出された前記第1の通信路と関連付けられた前記第2の通信路を介して取得する取得手段を備える
サーバシステム。
【請求項2】
前記取得手段は、
前記取得した前記ログを、前記スイッチモジュールが生成した、前記第1の通信路に関する前記障害のログと関連付けて、自スイッチモジュールが備える不揮発性記憶手段に書き込む書き込み手段を備える
請求項1に記載のサーバシステム。
【請求項3】
前記取得手段は、
前記通信手段が生成し、前記第2の通信路を介して送信する、前記第1の通信路に関する前記障害のログを記憶する記憶手段を備え、
前記書き込み手段は、前記記憶手段に記憶された前記第1の通信路に関する前記障害のログを読み取り、前記読み取ったログを前記不揮発性記憶手段に書き込む
請求項2に記載のサーバシステム。
【請求項4】
前記書き込み手段は、
前記通信手段が生成し、該通信手段に記憶されている、前記第1の通信路に関する前記障害のログを、前記第2の通信路を介して取得し、前記取得した、前記第1の通信路に関する前記障害のログを前記不揮発性記憶手段に書き込む
請求項2に記載のサーバシステム。
【請求項5】
前記取得手段が取得した、前記第1の通信路に関する前記障害のログは、前記通信手段を識別する情報を含む
請求項1乃至4のいずれか1項に記載のサーバシステム。
【請求項6】
前記サーバに設けられた前記複数の通信手段と、前記第1の通信路及び前記第2の通信路を介してそれぞれ接続され、前記複数の通信手段に自スイッチモジュールの識別情報を通知する複数の前記スイッチモジュールを備える
請求項1乃至5のいずれか1項に記載のサーバシステム。
【請求項7】
前記第2の通信路を、電気信号により有効または無効に設定する管理モジュールをさらに備える
請求項1乃至6のいずれか1項に記載のサーバシステム。
【請求項8】
サーバに設けられた複数の通信手段と、第1の通信路を介してそれぞれ接続されたスイッチモジュールであって、
前記複数の通信手段と、前記第1の通信路とそれぞれ関連付けられた第2の通信路を介してそれぞれ接続され、
前記第1の通信路のいずれかに関して障害が検出されると、前記障害が検出された前記第1の通信路を介した前記スイッチモジュールの接続相手である前記通信手段が生成した、前記第1の通信路に関する前記障害のログを、前記障害が検出された前記第1の通信路と関連付けられた前記第2の通信路を介して取得する取得手段を備える
スイッチモジュール。
【請求項9】
前記取得手段は、前記取得した前記ログを、前記スイッチモジュールが生成した、前記第1の通信路に関する前記障害のログと関連付けて、自スイッチモジュールが備える不揮発性記憶手段に書き込む書き込み手段を備える
請求項8に記載のスイッチモジュール。
【請求項10】
サーバに設けられた複数の通信手段とスイッチモジュールとをそれぞれ接続する第1の通信路のいずれかに関して障害が検出されると、
前記障害が検出された前記第1の通信路を介した前記スイッチモジュールの接続相手である前記通信手段が生成した、前記第1の通信路に関する前記障害のログを、記複数の通信手段と前記スイッチモジュールとをそれぞれ接続し、前記障害が検出された前記第1の通信路と関連付けられた第2の通信路を介して取得する
ログ取得方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバシステムのログを取得する技術に関する。
【背景技術】
【0002】
ブレードサーバは、一般に、筐体内に複数のサーバと複数のスイッチモジュールを搭載し、各サーバは、スイッチモジュールを介して、他のサーバや外部と通信を行っている。このようなブレードサーバにおいて、例えば、サーバとスイッチモジュールとの間の通信において障害(通信障害)が発生した場合、ブレードサーバに搭載されている各コンポーネントがそれぞれ生成し記憶している通信障害に関連するログを採取して解析することによって、通信障害の原因を解析することが行われている。
【0003】
例えば、サーバが生成して記憶しているログを用いて、通信障害の原因を解析することが行われている。サーバが記憶しているログファイルには、通信障害に関するログ以外にも、サーバ動作に関連したログが多数含まれている。よって、通信障害の原因を解析する際には、管理者等により、通信障害に直接関連するログを、ログファイルから抽出することが行われている。
【0004】
また、サーバには、拡張PCIe(Peripheral Component Interconnect Express)スロットが設けられており、NIC(Network Interface Card)を増設することが可能である。さらに、NICは、物理ポートを論理的に複数のポートに分割して使用することができる機能を有する場合がある。そのため、サーバの構成によっては、多数のLAN(Local Area Network)ポートが存在するので、管理者等は、通信障害の発生したLANポートに関連するログを、ログファイルから抽出する必要がある。
【0005】
スイッチモジュールが生成して記憶しているログを用いて、通信障害の原因を解析することも行われている。スイッチモジュールが記憶しているログを通信障害の原因の解析に用いる場合、スイッチモジュールと接続しているNICを特定する情報が必要になる。そこで、管理者等は、例えば、スイッチモジュールとサーバとの間でリンクダウンまたはリンクアップが検出された際にスイッチモジュールで生成されたログメッセージを確認し、スイッチモジュールと接続しているNICを特定することがある。しかしながら、上記ログメッセージには、スイッチモジュールと接続しているNICを特定する情報(MACアドレスなど)が出力されていない場合が多い。そのため、管理者等は、スイッチモジュールが記憶している他のログを確認し、スイッチモジュールと接続しているNICを特定している。
【0006】
ブレードサーバ全体を管理するモジュール(以下、管理モジュールとも称する)が記憶しているログを用いて通信障害の原因を解析することも行われている。管理モジュールは、ブレードサーバの筐体内に格納された各コンポーネントが生成して記憶しているログを集約して、保持している。管理者等は、管理モジュールに集約されているログを解析することによって、通信障害の原因を解析している。
【0007】
一方、障害に関連するログを取得する技術は、広く知られている。
【0008】
例えば、特許文献1には、ログ情報が所定期間以上取得されない場合、ログ情報の格納先を、少なくとも2面のバッファのいずれかの間で切り替えることにより、障害発生前後のコンソールログを保存する技術が開示されている。
【0009】
また、特許文献2には、プロセッサに障害が発生した場合、主記憶装置に保存されたプロセッサの動作ログを、DMA(Direct Memory Access)機構を用いて、高速に取得する技術が開示されている。また、特許文献2には、主記憶装置のアドレス空間にマッピングされたPCIeカードのレジスタダンプを、DMA機構を用いて取得する技術も開示されている。
【0010】
また、特許文献3には、被監視装置が有する各レジスタから定期的に取得したレジスタダンプと、障害発生後に取得したレジスタダンプを異なる領域に格納する技術が開示されている。特許文献3では、CPU(Central Processing Unit)のコアは、低速伝送路を介してレジスタダンプを取得し、取得したレジスタダンプをRAM(Random Access Memory)の所定の領域に格納している。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】国際公開第2013/008281号
【特許文献2】特開2014−182676号公報
【特許文献3】特開2014−026567号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
上述したように、ブレードサーバにおけるサーバとスイッチモジュールとの間に発生した通信障害の原因を解析する際に、サーバが記憶しているログを用いる場合、管理者等は、ログファイルに多数含まれているログから、通信障害に関連するログを抽出して確認する作業を行う必要がある。
【0013】
また、スイッチモジュールが記憶しているログを用いる場合、上述したように、管理者等は、スイッチモジュールが記憶している他のログを確認し、スイッチモジュールと接続しているNICを特定することが多い。このとき、スイッチモジュールが記憶しているログに含まれるMACアドレステーブルが、スイッチモジュールの接続相手の特定に用いられる場合がある。しかしながら、MACアドレステーブルには、一定時間を過ぎるとMACアドレスが消去される場合や、通信が行われていない際にはMACアドレスが登録されていない場合がある。よって、管理者等は、スイッチモジュール以外のコンポーネントが記憶しているログを確認する必要がある。
【0014】
また、管理モジュールは、各コンポーネントが生成したログを集約し保持する機能を有しているが、それらを相互に関連付ける機能は有していない場合が多い。そのため、ログを解析する前に、管理者等は、集約されたログの中から通信障害の原因を解析するために必要な情報を抜き出し、さらに、ログの内容を突き合わせ、比較検討する必要がある。
【0015】
このように、サーバとスイッチモジュールとの間の通信障害が発生した際に、その原因を解析するためには、管理者等が通信障害に直接関係のないログを確認しなくてはならないので、通信障害の原因解析に手間がかかるという課題がある。
【0016】
上記特許文献1乃至3には、上記課題を解決する技術は開示されていない。
【0017】
本願発明は、このような課題に鑑みてなされたものであり、サーバとスイッチモジュールとの間に発生した障害の原因の解析を、効率的に行うことができるサーバシステム等を提供することを主要な目的とする。
【課題を解決するための手段】
【0018】
本発明の一態様にかかるサーバシステムは、サーバに設けられた複数の通信手段と、前記複数の通信手段と、第1の通信路を介してそれぞれ接続されたスイッチモジュールと、前記複数の通信手段と前記スイッチモジュールとをそれぞれ接続し、前記第1の通信路とそれぞれ関連付けられた第2の通信路とを備え、前記スイッチモジュールは、前記第1の通信路のいずれかに関して障害が検出されると、前記障害が検出された前記第1の通信路を介した前記スイッチモジュールの接続相手である前記通信手段が生成した、前記第1の通信路に関する前記障害のログを、前記障害が検出された前記第1の通信路と関連付けられた前記第2の通信路を介して取得する取得手段を備える。
【0019】
本発明の一態様にかかるスイッチモジュールは、サーバに設けられた複数の通信手段と、第1の通信路を介してそれぞれ接続されたスイッチモジュールであって、前記複数の通信手段と、前記第1の通信路とそれぞれ関連付けられた第2の通信路を介してそれぞれ接続され、前記第1の通信路のいずれかに関して障害が検出されると、前記障害が検出された前記第1の通信路を介した前記スイッチモジュールの接続相手である前記通信手段が生成した、前記第1の通信路に関する前記障害のログを、前記障害が検出された前記第1の通信路と関連付けられた前記第2の通信路を介して取得する取得手段を備える。
【0020】
本発明の一態様にかかるログ取得方法は、サーバに設けられた複数の通信手段とスイッチモジュールとをそれぞれ接続する第1の通信路のいずれかに関して障害が検出されると、前記障害が検出された前記第1の通信路を介した前記スイッチモジュールの接続相手である前記通信手段が生成した、前記第1の通信路に関する前記障害のログを、記複数の通信手段と前記スイッチモジュールとをそれぞれ接続し、前記障害が検出された前記第1の通信路と関連付けられた第2の通信路を介して取得する。
【発明の効果】
【0021】
本発明によれば、サーバとスイッチモジュールとの間に発生した障害の原因の解析を、効率的に行うことができるという効果を奏する。
【図面の簡単な説明】
【0022】
図1】本発明の第1の実施形態に係るブレードサーバに搭載される要素の構成を概略的に示す図である。
図2】本発明の第1の実施形態に係るブレードサーバに搭載されるNICとスイッチモジュールの各構成と、相互の接続関係を示す図である。
図3】本発明の第1の実施形態に係るブレードサーバに搭載されるNICとスイッチモジュールとの間の通信接続時の動作を説明する図である。
図4】本発明の第1の実施形態に係るブレードサーバに搭載されるNICとスイッチモジュールとの間の通信に障害が発生した際の、NICとスイッチモジュールの動作を説明する図である。
図5】本発明の第2の実施形態に係るブレードサーバに搭載されるNICとスイッチモジュールの各構成と、相互の接続関係を示す図である。
図6】本発明の第2の実施形態に係るブレードサーバに搭載されるNICとスイッチモジュールとの間の通信接続時の動作を説明する図である。
図7】本発明の第2の実施形態に係るブレードサーバに搭載されるNICとスイッチモジュールとの間の通信に障害が発生した際の、NICとスイッチモジュールの動作を説明する図である。
図8】本発明の第3の実施形態に係るブレードサーバに搭載されるNICとスイッチモジュールの各構成と、相互の接続関係を示す図である。
図9】本発明の第4の実施形態に係るブレードサーバに搭載されるNICとスイッチモジュールの各構成と、相互の接続関係を示す図である。
図10】本発明の第5の実施形態に係るブレードサーバの構成を示す図である。
【発明を実施するための形態】
【0023】
以下、本発明の実施形態について図面を参照して説明する。
【0024】
第1の実施形態
図1は、本発明の第1の実施形態に係るブレードサーバ100に搭載される要素(コンポーネント)の構成を概略的に示す図である。図1に示すように、ブレードサーバ100は、筐体101、ミッドプレーン102、サーバ103、スイッチモジュール104、電源ユニット105、管理モジュール106a、106bおよび管理モジュール制御回路107を備える。サーバ103には、NIC108a、108bが搭載されている。
【0025】
ブレードサーバ100には、NICを搭載するサーバ、スイッチモジュールおよび電源ユニットが、複数搭載されてもよい。図1では、ブレードサーバ100に搭載される1または複数のサーバ、スイッチモジュール、電源ユニットのうち、いずれか1のサーバ、スイッチモジュール、電源ユニットを、それぞれサーバ103、スイッチモジュール104、電源ユニット105と表記する。また、ブレードサーバ100において、管理モジュールは、図1に管理モジュール106a、106bで示すように、二重化されている。
【0026】
ブレードサーバ100における各構成要素は、概略以下の機能を有する。すなわち、サーバ103を含む1または複数のサーバは、それぞれ、例えば、外部装置や他のサーバから入力された情報を使用して所定の処理を行ったり、その処理の結果を外部装置や他のサーバに出力したりする。スイッチモジュール104を含む1または複数のスイッチモジュールは、それぞれ、1または複数のサーバの通信を制御する。電源ユニット105を含む1または複数の電源ユニットは、それぞれ、ブレードサーバ100に搭載される各コンポーネントに電源を供給する。
【0027】
管理モジュール106a、106bは、それぞれ、I2C(Inter Integrated Circuit)などの管理インタフェースによって各コンポーネントと接続されており、各コンポーネントの電源管理、接続管理、ログ収集など、ブレードサーバ全体の管理を行う。管理モジュール制御回路107は、管理モジュール106a、106bの監視、故障検知、故障時の切り替えの制御等を行う。管理モジュール106a、106bは、上述したように二重化されており、管理モジュール制御回路107および自身が搭載するファームウエアにより、故障時等に、切り替えなどの制御が行われる。
【0028】
NIC108a、108bは、サーバ103に設けられた、例えばPCIeスロットに挿入されており、サーバ103を、外部装置または他のサーバと通信可能に接続する機能を有する。本実施形態では、スイッチモジュール104が複数のNICの通信を制御する例を示す。すなわち、本実施形態では、サーバ103がNIC108a、108bを搭載し、スイッチモジュール104がNIC108a、108bの通信を制御する構成について説明する。ただし、サーバ103には、NIC108a、108bの他にもNICが搭載されてもよい。また、スイッチモジュール104は、サーバ103と他のサーバにそれぞれ1以上搭載されたNICの通信を制御してもよい。
【0029】
ミッドプレーン102は、ブレードサーバ100に搭載される各コンポーネントを相互に接続する。上述した各コンポーネントは、筐体101に格納される。
【0030】
図2は、ブレードサーバ100に搭載されるNIC108a、108bとスイッチモジュール104の各構成と、相互の接続関係を示す図である。図2を用いて、本第1の実施形態に係るブレードサーバ100におけるNIC108a、108b及びスイッチモジュール104の構成を、より詳細に説明する。
【0031】
図2に示すように、NIC108aとスイッチモジュール104は、イーサネット(商標登録)規格に基づく信号の伝送路となるイーサネット伝送路(以降、単に「イーサネット」とも称する)201aによって、相互に通信可能に接続されている。図2に示す構成では、NIC108aとスイッチモジュール104は、LANポート181aとLANポート142aとを介して、イーサネット201aにより接続されている。
【0032】
NIC108aとスイッチモジュール104は、また、シリアル通信の伝送路となるシリアル伝送路109aにより相互に通信可能に接続されている。図2に示す構成では、NIC108aとスイッチモジュール104は、シリアルポート184aとシリアルポート12とを介して、シリアル伝送路109aにより接続されている。
【0033】
NIC108aは、ドライバ182a及びレジスタ183aを有する。ドライバ182aは、NIC108aの制御を行う。レジスタ183aは、NIC108aの内部の動作状態や、設定情報等を保持する。
【0034】
図2では、NIC108aは、イーサネット201aと接続するLANポートを1つ備えていることを示すが、NIC108aは、イーサネットと接続する複数のLANポートを備えていてもよい。また、NIC108aは、その他にもサーバ103の通信に必要な機能を備えるが、本実施形態では、それらの説明を省略する。
【0035】
NIC108bは、NIC108aと同様の構成を有する。すなわち、NIC108bとスイッチモジュール104は、イーサネット規格に基づく信号の伝送路となるイーサネット伝送路201b(以降、単に「イーサネット201b」とも称する)によって、相互に通信可能に接続されている。図2に示す構成では、NIC108bとスイッチモジュール104は、LANポート181bとLANポート142bとを介して、イーサネット201bにより接続されている。
【0036】
NIC108bとスイッチモジュール104は、また、シリアル通信の伝送路となるシリアル伝送路109bによって、相互に通信可能に接続されている。図2に示す構成では、NIC108bとスイッチモジュール104は、シリアルポート184bとシリアルポート13とを介して、シリアル伝送路109bにより接続されている。
【0037】
NIC108bは、ドライバ182b及びレジスタ183bを有する。ドライバ182b及びレジスタ183bは、それぞれドライバ182a及びレジスタ183aと同様の機能を有する。図2では、NIC108bは、LANポートを1つ備えていることを示すが、NIC108bは、複数のLANポートを備えていてもよい。また、NIC108bは、その他にもサーバ103の通信に必要な機能を備えるが、本実施形態では、それらの説明を省略する。
【0038】
スイッチモジュール104は、スイッチ回路141、バススイッチ143、メモリ(記憶手段)144、MPU(書き込み手段)145及びNVRAM(Non−Volatile Random Access Memory)(不揮発性記憶手段)146を有する。
【0039】
スイッチ回路141は、LANポート142a、142bを介した複数のNICとの接続を切り替える機能を有する。図2では、LANポート142aは、イーサネット201aを介してLANポート181aに接続され、LANポート142bは、イーサネット201bを介してLANポート181bに接続されることを示す。なお、図2では、スイッチ回路141は、LANポートを2つ備えていることを示すが、スイッチ回路141は、3つ以上のLANポートを備えていてもよい。
【0040】
バススイッチ143は、シリアルポート12、13を介したシリアル伝送路109a、109bによるNIC108a、108bとの接続を切り替える機能を有する。メモリ144は、シリアル伝送路109a、109bを介して、それぞれNIC108a、108bから送られたログを格納する(詳細は後述する)。
【0041】
MPU145は、スイッチモジュール104の制御や、ログの読み取りまたは書き込みの制御等を行う。NVRAM146は、スイッチモジュール104の設定やログ等を保存する不揮発性記憶手段である。
【0042】
なお、NIC108a、NIC108bは、互いに同様の機能を有するので、以降の説明では、主に、NIC108aの機能について説明する。
【0043】
本実施形態では、NIC108aと、スイッチモジュール104との間のイーサネット201aを介した通信に障害が発生した場合、その障害に関してNIC108aが生成したログを、メモリ144に書き込む処理について説明する。
【0044】
まず、NIC108aとスイッチモジュール104との間のイーサネット201aを介した通信の接続時の動作について説明する。図3は、ブレードサーバ100に搭載されるNIC108aとスイッチモジュール104との間の、イーサネット201aを介した通信接続時の動作を説明する図である。図2及び図3を参照して、NIC108aとスイッチモジュール104との通信接続時の動作について説明する。
【0045】
スイッチモジュール104のスイッチ回路141は、NIC108aとの間でリンクアップしたことを検出すると(ステップS3001)、リンクアップを検出したLANポート142aのポート番号とリンクアップの通知を、MPU145に対して行う(ステップS3002)。MPU145は、通知されたポート番号に応じてバススイッチ143を切り替える。そして、MPU145は、リンクアップが検出されたNIC108aにシリアル伝送路109aを介してアクセスし、自身の論理バス番号をNIC108aに通知する(ステップS3003)。ここで、論理バス番号は、MPU145とNIC108aとを接続しているバスの論理番号であり、ミッドプレーン102におけるスイッチモジュール104の搭載位置によって、一意に定まる番号であるとする。
【0046】
NIC108aは、ドライバ182aにより、MPU145から通知された論理バス番号をレジスタ183aに登録し(ステップS3004)、MPU145にACK(ACKnowledgement)を返す(ステップS3005)。上記処理により、NIC108aとスイッチモジュール104とを接続しているイーサネット201aとシリアル伝送路109とが、互いに関連付けられる。
【0047】
以上で、NIC108aとスイッチモジュール104との間のイーサネット201aを介した通信接続が完了する。NIC108aは、ステップS3004で示したように、MPU145の論理バス番号をレジスタ183aに登録することで、ブレードサーバ100に複数搭載されているスイッチモジュールの中から、接続相手のスイッチモジュールを特定することができる。
【0048】
次に、NIC108aとスイッチモジュール104との間のイーサネット201aを介した通信に障害が発生した際の、ログの取得処理について説明する。図4は、ブレードサーバ100に搭載されるNIC108aとスイッチモジュール104との間のイーサネット201aを介した通信に障害が発生した際の、NIC108aとスイッチモジュール104の動作を説明する図である。図2及び図4を参照して、上記通信に障害が発生した際の、ログの取得処理について説明する。
【0049】
NIC108aにおいて、ドライバ182aは、LANポート181aとスイッチモジュール104との間でリンクダウンを検出すると、レジスタ183aに登録されているMPU145の論理バス番号に対応するスイッチモジュール104に、シリアル伝送路109aを介して接続する(ステップS4001)。ドライバ182aは、ステップS4001において接続したスイッチモジュール104が備えるメモリ144に、シリアル伝送路109aを介して、入出力インタフェース14から、自身が生成した、上記リンクダウンに関するログを書き込む(ステップS4002)。このとき、ドライバ182aは、通信障害に関するログメッセージ及び通信障害が発生した日時に加えて、NIC108aのMACアドレスも合わせてメモリ144に書き込んでもよい。そして、ドライバ182aは、メモリ144にログを書き込んだことをMPU145に通知するため、割り込み通知を行う(ステップS4003)。
【0050】
一方、スイッチモジュール104では、まず、スイッチ回路141は、NIC108aとLANポート142aとの間でリンクダウンを検出したことを、MPU145に通知する(ステップS4004)。MPU145は、スイッチ回路141からの通知を受けると、上記リンクダウンに関するスイッチモジュール104側のログを、NVRAM146に書き込む(ステップS4005)。
【0051】
次に、MPU145は、ステップS4003においてNIC108aから通知された割り込みを検知すると、入出力インタフェース15からメモリ144にアクセスし、ステップS4002において書き込まれたログを読み取る(ステップS4006)。MPU145は、読み取ったログをNVRAM146に書き込む(ステップS4007)。MPU145は、NVRAM146へのログの書き込みを終了すると、メモリ144に記憶されているログを消去する(ステップS4008)。
【0052】
以上の動作により、NIC108aは、自身が生成した、通信障害に関するログを、スイッチモジュール104に書き込むことができる。これにより、ブレードサーバ100は、NIC108aが生成した通信障害に関するログを、スイッチモジュール104に収集することができる。
【0053】
なお、スイッチモジュール104は、自身が生成したリンクダウンに関するログとNIC108aが生成したリンクダウンに関するログとを関連付けてNVRAM146に保存してもよい。ログの関連付けは、それぞれのログが生成された日時等に基づいて行われてもよい。また、スイッチモジュール104は、NIC108aからの割り込み通知の直前にNVRAM146に書き込んだログと、当該割り込み通知の直後にNIC108aから取得したログとを関連付けて保存してもよい。スイッチモジュール104が生成したログとNIC108aが生成したログとの関連付けは、この他のどのような手法によって行われてもよい。
【0054】
また、管理モジュール106a、106bは、電気信号により、シリアル伝送路109aの有効または無効の設定を行うことができる。これにより、シリアル伝送路109aが有効なときのみNIC108aで生成されたログをスイッチモジュール104に収集することができるので、セキュリティを向上させることができる。
【0055】
以上のように、本実施形態によれば、ブレードサーバ100に、NIC108aとスイッチモジュール104とを接続するシリアル伝送路109aを設ける。そして、NIC108aとLANポート142aとの間のイーサネット201aを介した通信に障害が発生した場合、NIC108aは、自身が生成したその障害に関するログを、NIC108aの識別情報と共に、シリアル伝送路109aを介してスイッチモジュール104に送信する。この構成を採用することにより、本実施形態によれば、ブレードサーバ100は、サーバ103とスイッチモジュール104との間に発生した通信障害に関するログをスイッチモジュール104に収集できるので、管理者等は、各コンポーネントからログを採取する必要はない。よって、管理者等は、スイッチモジュール104に収集されたログを解析すればよいので、通信障害の原因の解析を、効率的に行うことができるという効果が得られる。
【0056】
また、上述のように、本実施形態によれば、ブレードサーバ100は、スイッチモジュール104の接続相手のNIC108aの識別情報もスイッチモジュール104に記憶するので、管理者等は、各コンポーネントからログを収集して解析する場合に必要なログの内容の突き合わせが不要であるため、ログを比較検討する時間を削減できるという効果が得られる。
【0057】
さらに、スイッチモジュール104に記憶されているサーバ103側のログは、接続相手のNIC108aに関する情報に限定されるので、通信障害に直接関係のないログを排除することができるという効果が得られる。
【0058】
また、ブレードサーバ100においてNTP(Network Time Protocol)が設定されておらず、各コンポーネントで時刻が同期されていない場合でも、管理者等は、スイッチモジュール104に記憶されたNIC108aのログを確認することにより、障害発生時の大まかな状況を理解することができる。
【0059】
また、ブレードサーバ100においてスイッチモジュール104が交換された場合でも、スイッチモジュール104に、接続相手のNIC108aのログが記録されているので、管理者等は、スイッチモジュール104に記録されたログのみで、通信障害の解析を行うことができる。また、スイッチモジュール104のログファイルに、MACアドレスなどのNICの識別情報を出力することで、NICが交換された場合にも、スイッチモジュール104にログが残っていれば、管理者等は、NICの108a交換履歴をトレースすることができる。
【0060】
さらに、PCIeスロットに搭載したNIC108a起因の障害(例えばバスエラー)により、サーバ103のCPUが停止した場合にも、本実施形態に係るブレードサーバ100では、NIC108aのレジスタダンプを取得できるという効果がある。すなわち、サーバ103のCPUが停止した状態では、管理者等がサーバ103にログインしてNIC108aからレジスタダンプなど障害に関連するログを取得することはできない。また、サーバ103の電源をオフにし、再び起動すると、レジスタの内容がクリアされるので、障害発生時のNICの状態に関する情報を得ることができない。そのため、サーバ103の再起動の前に、外部にレジスタダンプを書き出す構成を設けるか、障害発生時にレジスタダンプをメモリに書き出し、保存するようなファームウエアを作成する必要がある。
【0061】
外部にレジスタダンプを書き出す構成を設ける場合、高密度に設計されているブレードサーバでは、その構成を設けるためのスペースを確保するのが困難である。また、ファームウエアの作成には時間がかかることに加え、障害発生が再現するのを待つ必要がある。このため、NIC起因の障害の解析には時間がかかることが多い。
【0062】
これに対して、本実施形態に係るブレードサーバ100では、NIC108aとスイッチモジュール104との間のシリアル伝送路109aを介して、スイッチモジュール104が、障害の解析に必要なレジスタダンプや設定を取得し、外部ストレージなどに保存することが可能となる。これにより、本実施形態によれば、NIC108a起因の障害の解析も、効率的に行うことができるという効果がある。
【0063】
さらに、複数のサーバにおいて、NIC108aに関する同一のバス番号、同一のデバイス番号の障害など、共通性が疑われる障害が発生した場合にも、本実施形態に係るブレードサーバ100では、その解析を効率的にできるという効果がある。すなわち、上記の場合、通常は、管理者等が、ブレードサーバ100に接続されたコンソールを切り替える、あるいは、リモート接続であればIP(Internet Protocol)アドレスを変更して各サーバにログインして、解析に必要なレジスタダンプなどのログを個別に取得する必要がある。この場合、複数のサーバに同じ手順を繰り返してログを取得するので、効率が悪い。これに対して、本実施形態に係るブレードサーバ100では、管理者等は、スイッチモジュール104から、シリアル伝送路109aを介してNIC108aを直接操作することができるので、コンソールの切り替えが不要となる。また、コンソールからスイッチモジュール104に接続し、CLI(Command Line Interface)によりバススイッチを切り替えてログを取得することができるので、スクリプトなどを用いることによりログの取得が容易にできるようになる。
【0064】
第2の実施形態
図5は、本発明の第2の実施形態に係るブレードサーバ200に搭載されるNIC108a、108bとスイッチモジュール210の各構成と、相互の接続関係を示す図である。第2の実施形態に係るブレードサーバ200は、上記第1の実施形態において図1および図2を参照して説明したブレードサーバ100と同様の構成を有する。ただし、第2の実施形態に係るブレードサーバ200は、図2を参照して説明したブレードサーバ100のスイッチモジュール104に代えて、スイッチモジュール210を備える。
【0065】
スイッチモジュール210は、ブレードサーバ100のスイッチモジュール104に含まれるメモリ144を備えていない構成を有する。
【0066】
上記第1の実施形態では、NIC108aが、通信障害に関して生成したログを、シリアル伝送路109aを介してスイッチモジュール210のメモリ144に書き込み、そのログをMPU145がNVRAM146に書き込む構成について説明した。本第2の実施形態では、スイッチモジュール210は、NIC108aとMPU145との間にメモリ144を備えておらず、MPU145が、NIC108aからログを取得し、NVRAM146に書き込む構成について説明する。
【0067】
図5に示すNIC108a、108b及びスイッチモジュール210の各構成は、スイッチモジュール210がメモリ144を備えていない点以外は、図2に示したNIC108a、108b及びスイッチモジュール104の各構成と同様であるので、同一の符号を付して、その説明を省略する。
【0068】
図6は、ブレードサーバ200に搭載されるNIC108aとスイッチモジュール210との間の、イーサネット201aを介した通信接続時の動作を説明する図である。図5及び図6を参照して、NIC108aとスイッチモジュール210との通信接続時の動作について説明する。なお、図6において、ステップS3001乃至S3005は、上記第1の実施形態で説明した図3において同一符号で示す処理と同様の処理であるため、本実施形態では、S6006およびS6007について主に説明する。
【0069】
NIC108aは、S3005で示すように、MPU145にACKを返すと、シリアル伝送路109aを介して、MPU145に、ログの通知に使用するレジスタ183aのオフセットを通知する(ステップS6006)。MPU145は、通知されたレジスタ183aのオフセットを認識すると、NIC108aにACKを返す(ステップS6007)。
【0070】
以上で、NIC108aとスイッチモジュール210との間のイーサネット201aを介した通信接続が完了する。
【0071】
図7は、ブレードサーバ200に搭載されるNIC108aとスイッチモジュール210との間のイーサネット201aを介した通信に障害が発生した際の、NIC108aとスイッチモジュール210の動作を説明する図である。図5及び図7を参照して、上記通信に障害が発生した際の、ログの取得処理について説明する。
【0072】
NIC108aにおいて、ドライバ182aは、LANポート181aとスイッチモジュール210との間でリンクダウンを検出すると、そのリンクダウンに関するログをレジスタ183aに登録する(ステップS7001)。ドライバ182aは、リンクダウンを検出したLANポート181aの接続相手のスイッチモジュール210に対して、レジスタ183aにログを登録したことを通知するため、論理バス番号を指定して、シリアル伝送路109aを介して、スイッチモジュール210のMPU145に、割り込み通知を行う(ステップS7002)。
【0073】
一方、スイッチモジュール210では、まず、スイッチ回路141は、NIC108aとLANポート142aとの間でリンクダウンを検出したことを、MPU145に通知する(ステップS7003)。MPU145は、スイッチ回路141からの通知を受けると、上記リンクダウンに関するスイッチモジュール210側のログを、NVRAM146に書き込む(ステップS7004)。
【0074】
次に、MPU145は、ステップS7002においてNIC108aから通知された割り込みを検知すると、シリアル伝送路109aを介して、レジスタ183aから、上記リンクダウンに関するログを読み取る(ステップS7005)。MPU145は、読み取ったログを、NVRAM146に書き込む(ステップS7006)。書き込みが完了すると、MPU145は、NIC108aに対して、ログの書き込みが完了したことを通知する(ステップS7007)。
【0075】
以上の動作により、スイッチモジュール210は、通信障害に関してNIC108aが生成したログを、自身が備えるNVRAM146に書き込むことができる。
【0076】
以上のように、本実施形態によれば、ブレードサーバ200に、NIC108aとスイッチモジュール210とを接続するシリアル伝送路109aを設ける。そして、スイッチモジュール210は、NIC108aが生成した、NIC108aとLANポート142aとの間のイーサネット201aを介した通信の障害に関するログを、NIC108aのレジスタ183aから直接取得し、自身が備えるNVRAM146に書き込む。この構成を採用することにより、本実施形態は、第1の実施形態と同様の効果を奏するとともに、第1の実施形態に係るブレードサーバ100が備えているメモリ144を備えていない構成で上記効果を実現できるので、コストを削減することができるというさらなる効果を奏することができる。
【0077】
第3の実施形態
図8は、本発明の第3の実施形態に係るブレードサーバ300に搭載されるNIC108a、108bとスイッチモジュール104a、104bの各構成と、相互の接続関係を示す図である。第3の実施形態に係るブレードサーバ300は、第1の実施形態において図2を参照して説明したスイッチモジュール104とそれぞれ同様の構成を備えた、スイッチモジュール104a、104bを備える構成を有する。
【0078】
本第3の実施形態では、複数のスイッチモジュール104a、104bと複数のNIC108a、108bとが、互いに接続される構成について説明する。すなわち、本第3の実施形態では、NIC108aは、スイッチモジュール104a、104bと接続され、NIC108bも、スイッチモジュール104a、104bと接続される構成について説明する。
【0079】
NIC108aは、第1の実施形態において図2を参照して説明したように、イーサネット201a−1、シリアル伝送路109a−1をそれぞれ介して、スイッチモジュール104aと通信可能に接続される。
【0080】
また、NIC108aは、イーサネット201a−2、シリアル伝送路109a−2をそれぞれ介して、スイッチモジュール104bとも通信可能に接続される。
【0081】
さらに、NIC108bは、第1の実施形態において図2を参照して説明したように、イーサネット201b−1、シリアル伝送路109b−1をそれぞれ介して、スイッチモジュール104aと通信可能に接続される。
【0082】
また、NIC108bは、イーサネット201b−2、シリアル伝送路109b−2をそれぞれ介して、スイッチモジュール104bとも通信可能に接続される。
【0083】
図8に示すブレードサーバ300は、第1の実施形態において図2を参照して説明したブレードサーバ100と同様に、NIC108aとスイッチモジュール104aとが接続され、NIC108bとスイッチモジュール104aとが接続されることに加えて、NIC108bとスイッチモジュール104aとが接続され、NIC108bとスイッチモジュール104bとが接続されることを示す。ブレードサーバ300は、イーサネットを介した通信の障害が発生した際のログの取得については、ブレードサーバ100と同様の処理を行う。
【0084】
例えば、イーサネット201a−2を介した通信の障害が発生した場合、NIC108aとスイッチモジュール104bは、図4に示す動作と同様に、ログを取得する。すなわち、NIC108aのドライバ182aは、シリアル伝送路109a−2を介して、自身が生成したログをスイッチモジュール104bのメモリ144bに書き込む。スイッチモジュール104bのMPU145bは、書き込まれたログをメモリ144bから読み出し、NVRAM146bに書き込む。
【0085】
イーサネット201a−1、201b−1、201b−2を介した通信の障害が発生した場合も、NIC108aとスイッチモジュール104a、NIC108bとスイッチモジュール104a、NIC108bとスイッチモジュール104bは、それぞれ上記と同様にログを取得する。
【0086】
以上のように、本第3の実施形態によれば、複数のスイッチモジュール104a、104bと、複数のNIC108a、108bとが互いに接続される構成においても、第1の実施形態と同様の効果を奏する。
【0087】
第4の実施形態
図9は、本発明の第4の実施形態に係るブレードサーバ400に搭載されるNIC108a、108bとスイッチモジュール210a、210bの各構成と、相互の接続関係を示す図である。第4の実施形態に係るブレードサーバ400は、第2の実施形態において図5を参照して説明したスイッチモジュール210とそれぞれ同様の構成を備えた、スイッチモジュール210a、210bを備える構成を有する。
【0088】
本第4の実施形態では、スイッチモジュール210a、210bが、図8を参照して説明した接続関係と同様に、NIC108a、108bと接続されていることを示す。
【0089】
図9に示すブレードサーバ400は、イーサネットを介した通信の障害が発生した際のログの取得を、ブレードサーバ200と同様に行う。
【0090】
例えば、イーサネット201a−2を介した通信の障害が発生した場合、NIC108aとスイッチモジュール210bは、図7に示す動作と同様に、ログを取得する。すなわち、NIC108aのドライバ182aは、自身が生成したログをレジスタ183aに登録し、レジスタ183aにログを登録した旨を、シリアル伝送路109a−2を介して、スイッチモジュール210bに通知する。スイッチモジュール210bは、NIC108aからの通知を検知すると、シリアル伝送路109a−2を介して、レジスタ183aから上記ログを読み取り、読み取ったログを、自身のNVRAM146bに書き込む。
【0091】
イーサネット201a−1、201b−1、201b−2を介した通信の障害が発生した場合も、NIC108aとスイッチモジュール210a、NIC108bとスイッチモジュール210a、NIC108bとスイッチモジュール210bは、それぞれ上記と同様にログを取得する。
【0092】
以上のように、本第4の実施形態によれば、複数のスイッチモジュール210a、210bと、複数のNIC108a、108bとが互いに接続される構成においても、第1の実施形態及び第2の実施形態と同様の効果を奏する。
【0093】
なお、第3の実施形態にかかるブレードサーバ300の構成と、第4の実施形態にかかるブレードサーバ400の構成とを組み合わせてもよい。すなわち、例えば、第3の実施形態にかかるブレードサーバ300が備えるスイッチモジュール104a及び104bのいずれか1つが、第2の実施形態において図2を参照して説明したスイッチモジュール210と同様の構成を備えていてもよい。
【0094】
第5の実施形態
図10は、本発明の第5の実施形態に係るブレードサーバ800の構成を示す図である。図10に示すように、ブレードサーバ800は、サーバ801およびスイッチモジュール803を備える。サーバ801は、複数の通信部802a、802bを備える。スイッチモジュール803は、取得部804を備える。
【0095】
複数の通信部802a、802bは、第1の通信路805a、805bを介してそれぞれスイッチモジュール803と接続される。
【0096】
複数の通信部802a、802bは、第1の通信路805a、805bとそれぞれ関連付けられた第2の通信路806a、806bをそれぞれ介してスイッチモジュール803と接続される。
【0097】
スイッチモジュール803は、第1の通信路805a、805bのいずれかに関して障害が検出されると、障害が検出された第1の通信路805aを介したスイッチモジュール803の接続相手である通信部802aが生成した、第1の通信路805aに関する障害のログを、障害が検出された第1の通信路805aと関連付けられた第2の通信路806aを介して取得する取得部804を備える。
【0098】
通信部802a、802bは、例えば、上記第1の実施形態におけるNIC108a、108bにより実現される。第1の通信路805a、805bは、例えば、上記第1の実施形態におけるイーサネット201a、201bにより実現される。第2の通信路806a、806bは、例えば、上記第1の実施形態におけるシリアル伝送路109a、109bにより実現される。取得部804は、例えば、上記第1の実施形態におけるメモリ144およびMPU145の少なくともいずれかにより実現される。
【0099】
上記構成により、第5の実施形態によれば、サーバ801とスイッチモジュール803との間に発生した障害に関するログを、スイッチモジュール803に記憶することができ、管理者等は、スイッチモジュール803に記憶されたログを解析すればよいので、障害の原因の解析を、効率的に行うことができるという効果を奏する。
【0100】
以上、上述した実施形態を参照して本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、種々の上記開示要素の多様な組み合わせ乃至選択など、当業者が理解し得る様々な態様を適用することができる。
【符号の説明】
【0101】
12、13、181、184 シリアルポート
14、15 入出力インタフェース
100、200、300、400、800 ブレードサーバ
102 ミッドプレーン
103、801 サーバ
104、210、803 スイッチモジュール
105 電源ユニット
106 管理モジュール
107 管理モジュール制御回路
108 NIC
109 シリアル伝送路
141 スイッチ回路
142、181 LANポート
143 バススイッチ
144 メモリ
145 MPU
146 NVRAM
182 ドライバ
183 レジスタ
201 イーサネット伝送路
802 通信部
804 取得部
805 第1の伝送路
806 第2の伝送路
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10