(57)【要約】【課題】  システム構築上の知識も種々のコンポーネントの仕様情報の収集も必要とせず、ラックシステム構築上の検討事項を配慮したラックシステム構築を可能とする。【解決手段】  利用者が選択したコンポーネントをラックに搭載して目的のシステムを構築する際に必要な付加的コンポーネントを含む搭載すべき全コンポーネントの配置を最適に行なう。本システムは、ラックに搭載しうるコンポーネントに関する情報を記述したコンポーネント定義データからなるコンポーネントデータベースと、ラックに選択したコンポーネントを配置する際に複数の所定の観点から導かれる種種のルールを記述したルール定義データからなるルールデータベースと、利用者に、コンポーネントの選択を含め目的のシステムに対する希望条件を入力させる入力手段と、選択したコンポーネントの１つ１つについて選択した順に種種のルールに従いながら、選択したコンポーネントの１つ１つを配置する配置手段を備えたことを特徴とする。【選択図】図１
2005228167.tif 000002
【特許請求の範囲】
【請求項１】
利用者が選択したコンポーネントをラックに搭載して目的のシステムを構築する際に必要な付加的コンポーネントを含む搭載すべき全コンポーネントの配置を最適に行なう装置であり、
前記ラックに搭載しうるコンポーネントに関する情報を記述したコンポーネント定義デ  ータからなるコンポーネントデータベースと、
前記ラックに前記の選択したコンポーネントを配置する際に複数の所定の観点から導かれる種種のルールを記述したルール定義データからなるルールデータベースと、
前記利用者に、前記コンポーネントの選択を含め前記目的のシステムに対する希望条件を入力させる入力手段と、
前記の選択したコンポーネントの１つ１つについて選択した順に前記種種のルールに従いながら、前記の選択したコンポーネントの１つ１つを配置する配置手段を備えたことを特徴とするラック構成決定支援装置。
【請求項２】
前記コンポーネントデータベースは、前記配置を最適に行なうのに必要な情報を全て含み、前記ルールデータベースには、前記配置を最適に行なうのに必要な制限事項およびルールを網羅していることを特徴とする請求項１記載のラック構成決定支援装置。
【請求項３】
前記複数の所定の観点が、コンポーネントの追加、個数制限、整列および特定のコンポーネントに対する配置指定を含むことを特徴とする請求項２記載のラック構成決定支援装置。
【請求項４】
前記ルールデータベースが、前記目的のシステムのタイプの各々に対応したルール定義ファイルを備えることを特徴とする請求項２記載のラック構成決定支援装置。
【請求項５】
前記コンポーネント定義データには、そのコンポーネントに必須のコンポーネントの記述を含めることができることを特徴とする請求項２記載のラック構成決定支援装置。
【請求項６】
前記入力手段は、前記コンポーネントの各々に対するＵＰＳ（無中断電源装置）の接続の有無を設定することを可能とする手段を含み、装置
前記配置手段が、必要に応じて適切なＵＰＳを選択して追加する手段を含むことを特徴とする請求項２記載のラック構成決定支援装置。
装置。
【請求項７】
前記ラックに搭載されるコンポーネントの配置をコンポーネント間の結線状態も含めて表示す手段をさらに備えたことを特徴とする請求項２記載のラック構成決定支援装置。
【請求項８】
前記配置手段は、前記の選択されたコンポーネントが前記ラックに収容しきれない場合、新たなラックを追加する手段を含むことを特徴とする請求項６記載のラック構成決定支援装置。
【請求項９】
利用者が選択したコンポーネントをラックに搭載して目的のシステムを構築する際に必要な付加的コンポーネントを含む搭載すべき全コンポーネントの配置を最適に行なうべく、前記ラックに搭載しうるコンポーネントに関する情報を記述したコンポーネント定義データからなるコンポーネントデータベースと、前記ラックに前記の選択したコンポーネントを配置する際に複数の所定の観点から導かれる種種のルールを記述したルール定義データからなるルールデータベースとを備えたコンピュータにおいて、
前記利用者が前記コンポーネントの選択を含め前記目的のシステムに対する希望条件を入力する機能と、
前記の選択したコンポーネントの１つ１つについて選択した順に前記種種のルールに従いながら、前記の選択したコンポーネントの１つ１つを配置する機能とを前記コンピュータに、実現させるプログラム。
【請求項１０】
利用者が選択したコンポーネントをラックに搭載して目的のシステムを構築する際に必要な付加的コンポーネントを含む搭載すべき全コンポーネントの配置を最適に行なう方法であり、
前記ラックに搭載しうるコンポーネントに関する情報を記述したコンポーネント定義デ  ータからなるコンポーネントデータベースを用意するステップと、
前記ラックに前記の選択したコンポーネントを配置する際に複数の所定の観点から導かれる種種のルールを記述したルール定義データからなるルールデータベースを用意するステップと、
前記利用者に、前記コンポーネントの選択を含め前記目的のシステムに対する希望条件を入力させる入力ステップと、
前記の選択したコンポーネントの１つ１つについて選択した順に前記種種のルールに従いながら、前記の選択したコンポーネントの１つ１つを配置する配置ステップを備えたことを特徴とするラック構成決定支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、必要な又は希望するコンポーネントをラックに配置して目的とするシステムを構築する際に、コンポーネントの選定やラック内の各コンポーネントの配置の決定を支援する技術に関する。
【背景技術】
【０００２】
この類のシステムは、既に数社から公開され、一般の利用者も利用できる。例えば、Ｉ  ＢＭのRack ConfiguratorおよびＤＥＬＬのRack  Advisorなどは、利用者がインター  ネットを介してプログラムをダウンロードし、利用者のコンピュータ上で実行して利用  するタイプである。一方、インターネットを介してオンラインで利用できるラック構成  ツールとしては、ＨＰのRack Builderがある。
【０００３】
一般に、必要な又は希望のコンポーネントをラックに搭載して目的とするシステムを構築する場合、次のような事項（以下、ラックシステム構築上の「検討事項」と称する）を考慮する必要がある。即ち、
・搭載しようとするコンポーネントが他のコンポーネントを必要とするか？
・相互に接続される２種類のコンポーネントの間の個数の比は電気的、機械的観点から妥  当か？
相互接続されるプラグ及びコンセントの形状は一致しているか？
・２つのコンポーネントを接続ケーブルの長さは、コンポーネント間の相対位置およびメンテナンスのためにコンポーネントをラックから十分引き出せるだけの余裕を考慮して十分か？
・コンポーネントが１台のラックに収容しきれない場合、別のラックを追加し、追加したラック内のコンポーネントの配置を決定する。
・搭載されるすべてのコンポーネントの電力に十分見合う電源装置は何か？
・無中断電源装置（以下、ＵＰＳ（uninterruptible power supply）と称する）からの給電を必要とするコンポーネントの総電力量および電源供給時間の観点から何れのＵＰＳが必要か？
先に言及したラック構成ツールは、何れも各社の製品紹介が主眼におかれ、一般の消費者向けに、見積もりを算出したり、ラック内で重量順にコンポーネントを並べたりするという機能が主体のようである。したがって、従来のラック構成ツールには、上記のような検討事項を配慮したラックシステム構築は期待できない。
【０００４】
上記の検討事項を検討するには、そもそも相当の技術的知識が必要であるばかりでなく、検討に必要なコンポーネントの仕様情報を入手する必要もある。したがって、上記の検討事項に精通していない営業担当者などが従来のラック構成ツールでラックシステムを構成すると、コンポーネントに標準添付のケーブルでは長さ不足で接続できず、ケーブルの再手配が必要となり、納期遅延に至る場合もあり得る。
【０００５】
また、コンピュータの製造・販売業者は、用途や販売対象に応じて製品を系列化またはシリーズ化している場合が多い。同じラック搭載システムでも、シリーズが違うと、それに応じて、ラックシステム構築上の検討事項も変わってくる。したがって、シリーズ毎に、そのシリーズに合った検討事項に配慮してラックシステムを構築する必要がある。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
したがって、本発明は、システム構築上の知識も種々のコンポーネントの仕様情報の収集も必要とせず、ラックシステム構築上の検討事項を配慮したラックシステム構築を可能とするラック構成決定支援システム、方法およびプログラムを提供することを目的とする。本発明が目指すのは、従来のラックシステム構成ツールのように一般消費者が簡便に使用するためだけでなく、コンピュータの製造・販売業者による業務上の使用に耐えうるラック構成決定支援システムを提供することである。
【０００７】
本発明は、製品シリーズ（またはタイプ）毎にそのシリーズに合った検討事項に配慮してラックシステムを構築することを可能とするラック構成決定支援システム、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の１つの側面によれば、利用者が選択したコンポーネントをラックに搭載して目  的のシステムを構築する際に必要な付加的コンポーネントを含む搭載すべき全コンポー  ネントの配置を最適に行なうシステムを得ることができる。本システムは、前記ラック  に搭載しうるコンポーネントに関する情報を記述したコンポーネント定義データからな  るコンポーネントデータベースと、前記ラックに選択したコンポーネントを配置する際  に複数の所定の観点から導かれる種種のルールを記述したルール定義データからなるル  ールデータベースと、前記利用者に、前記コンポーネントの選択を含め前記目的のシス  テムに対する希望条件を入力させる入力手段と、選択したコンポーネントの１つ１つに  ついて選択した順に前記種種のルールに従いながら、選択したコンポーネントの１つ１  つを配置する配置手段を備えたことを特徴とする。したがって、専門知識を必要とせず  、コンポーネントに関する情報を収集する必要もない。
【０００９】
コンポーネントデータベースは、配置を最適に行なうのに必要な情報を全て含み、ルー  ルデータベースには、配置を最適に行なうのに必要な制限事項およびルールを網羅して  いることが望ましい。
【００１０】
上記の複数の所定の観点は、コンポーネントの追加、個数制限、整列および特定のコン  ポーネントに対する配置指定を含む。これにより、最適な配置を可能とする。
ルールデータベースが、目的のシステムのタイプの各々に対応したルール定義ファイル  を備える。したがって、用途に適したラック搭載システムを構築することができる
コンポーネント定義データには、そのコンポーネントに必須のコンポーネントの記述を  含めることができることを特徴とする。
【００１１】
入力手段は、コンポーネントの各々に対するＵＰＳ（無中断電源装置）の接続の有無を  設定することを可能とする。利用者の要求に柔軟に対応することができる。
配置手段は、コンポーネントが、ＵＰＳの接続が設定されたコンポーネントを含む場合  、適切なＵＰＳを選択して追加する手段を含む。
【００１２】
ＵＰＳの容量が不足の場合、新たなＵＰＳを追加する手段をさらに含む。
配置手段は、選択されたコンポーネントがラックに収容しきれない場合、新たなラック  を追加する手段を含む。
【００１３】
本発明の１つの側面によれば、利用者が選択したコンポーネントをラックに搭載して目  的のシステムを構築する際に必要な付加的コンポーネントを含む搭載すべき全コンポー  ネントの配置を最適に行なう方法を得ることができる。本方法は、ラックに搭載しうる  コンポーネントに関する情報を記述したコンポーネント定義データからなるコンポーネ  ントデータベースを用意するステップと、ラックに選択したコンポーネントを配置する  際に複数の所定の観点から導かれる種種のルールを記述したルール定義データからなる  ルールデータベースを用意するステップと、利用者に、コンポーネントの選択を含め目  的のシステムに対する希望条件を入力させる入力ステップと、選択したコンポーネント  の１つ１つについて選択した順に前記種種のルールに従いながら、選択したコンポーネ  ントの１つ１つを配置する配置ステップを備えたことを特徴とする。
【発明の効果】
【００１４】
本発明によれば、システム構築上の知識も種々のコンポーネントの仕様情報の収集も必要とせず、ラックシステム構築上の検討事項を配慮したラックシステム構築が可能となる。一般消費者が簡便に使用するためだけでなく、コンピュータの製造・販売業者による業務上の使用に耐えうるラック構成決定支援システムが実現できる。
【００１５】
また、製品シリーズ（またはタイプ）毎にそのシリーズに合った検討事項に配慮してラックシステムを構築することが可能となる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施形態と添付図面とにより本発明を詳細に説明する。なお、複数の図面に同じ要素を示す場合には同一の参照符号を付ける。
図１は、本発明の一実施形態によるラック構成決定支援システムの構成を示す略ブロック図である。図１において、ラック構成決定支援システムは、ラック構成決定支援サーバ１、このサーバに接続され、操作者にサーバ１の操作を可能にする入出力装置２、インターネットなどのネットワーク３を介して前記サーバ１にアクセス可能なクライアント４からなる。入出力装置２は、一般には、例えばキーボード、ポインティングディバイスおよび表示装置（何れも図示せず）などからなるが、これらに限らず、人の運動および感覚を通してサーバ１との意志疎通を可能とするものであれば、何でもよい。ラック構成決定支援サーバ１は、通常のサーバと同様に、ＣＰＵ（中央処理装置）１０、ＲＯＭ（読み出し専用記憶）１１、ＲＡＭ（ランダムアクセス記憶）１２、ネットワーク３を介してクライアント４との通信を行う通信インタフェース１３、サーバ１に入出力装置２とのインタフェースを与える入出力インタフェース１４、およびラック構成決定支援サーバ１の機能実現に必要なプログラムおよびデータを格納する二次記憶装置２０からなる。本システムの利用者は、一般消費者のほか、ラック構成決定支援サーバ１を所有するコンピュータ製造・販売業者の営業担当者、カスタマエンジニア（ＣＥ）、および代理店の営業担当者などが考えられる。
【００１７】
二次記憶装置２０は、一般にハードディスク装置であるが、これに限らず、満足できるアクセス時間と十分な記憶容量を備え、穏当なコストで信頼性の高く、二次記憶装置に相応しい記憶装置であれば、何でもよい。二次記憶装置２０には、以下のデータおよびプログラムが格納される。即ち、
・コンポーネントデータベース（ＤＢ）３０：本発明のラック構成決定支援サーバ１システムで利用可能なラック搭載コンポーネント（以下、ＣＰと記す）の仕様を中心とする情報の集合
・ユーザ定義コンポーネントＤＢ５０：利用者が定義したコンポーネント仕様の集合
ルールＤＢ７０：種々の制限事項および搭載ルールからなる上述の検討事項を網羅した集合
・ラック構成データＤＢ９０：データベース３０〜７０を用いて利用者の希望するコンポーネントを用いて決定されたラック構成システムのラック構成データの集合、および
・種々のプログラム１００：データベース３０〜７０と利用者の希望するコンポーネントとを用いてラック搭載システムのコンポーネント選定およびラック内配置を自動で行うプログラムなど。
【００１８】
なお、これらのプログラム１００の多くは、クライアントからの要求に応じて呼び出され実行される。このようなプログラムの仕組みとしては、現時点では、サーブレット（Java Servlet）が好ましい。
＜本発明のラック構成決定支援システムの特徴＞
本発明のラック構成決定支援システムは、次の特徴を有する。
１．自己完結型のラック構成決定支援システムである。
【００１９】
コンポーネント定義ＤＢ３０およびルール定義ＤＢ７０にラック構成決定に必要な情報がすべて盛り込まれているので、利用者は、他のシステム、資料、またはＷｅｂページなどを参照する必要がなく、専門的知識も不要である。
【００２０】
1.1.  製品固有の注意事項
必須品登録可
セット品定義可
1.4  コンポーネントのグループ化可能
２．システムタイプごとに適したルール定義ファイルを用いることができる。異なるシステムタイプの混載可能。
３．ラック自動選択
ラック種別の指定により、搭載コンポーネントの量に応じたラックが自動選択される。
４．ラック自動追加
１つのラックに指定されたコンポーネントが収容しきれない場合、新たなラックが自動選択される。
５．使い勝手や装置特性を考慮した搭載ルールを備える。
６．搭載禁止位置指定機能
利用者は、ラックの位置または範囲を指定することにより、その位置または位置範囲にコンポーネントを配置することを禁ずることができる。
７．ＵＰＳ自動選択機能
7.1.  プラグ−コンセント間の形状整合機能
7.2.  電源ケーブル接続機能
7.3.  ケーブル線長チェック機能
８．ラック全体の配線図表示・印刷
９．固定属性機能
ルール適用中でも特定のコンポーネントに対して適用除外することができる。
１０．ラック構成の状態表示
アイコンと簡易表とを組み合わせてルールチェックの結果の表示
搭載ルール以外の規程条件のチェック結果の表示
１１．利用者独自のコンポーネント定義データの登録機能
１２．コンポーネント一覧リスト取り込み機能（ダイレクトモードにて型名直接入力可）
１３．既存属性機能：既存のラック構成データに既存属性を設定すると、以降の変更分が出力可能
１４．コンポーネント待避エリア機能（コンポーネントストック機能）：カスタムモードでラック構成を編集中、搭載済みコンポーネントを一時的に対象ラックから削除して保管でき、必要に応じてラックに戻すことができる
１５．公開のラック構成決定支援サーバ１とは別のコンポーネントデータ登録システムを備える。
【００２１】
データ登録とそのデータの正当性チェック、登録データを搭載ルールと同期を取ってサーバへ送る。
１７．受注から設置／保守に至るまでラックシステムに関わるすべての業務の支援
例えば、プレゼンテーション、見積書作成、受注、ラックおよびコンポーネントの手配、ＣＡＤとの連携によるラックの自動組み立てなど
以下において、以上の機能を可能とするコンポーネントＤＢ３０とルール定義ＤＢ７０を詳細に説明する。
＜コンポーネントＤＢ３０とルール定義ＤＢ７０＞
図２は、本発明の一実施形態によるコンポーネントＤＢ３０の構成を示す図である。図２において、コンポーネントＤＢ３０は、通常の個別のコンポーネントに関する情報からなるコンポーネント定義データ３１、複数のコンポーネントの組み合わせで１つのコンポーネントと見なされるセット品（詳細に後述する）に関するデータであるセット品定義データ３２、および特定の共通な属性を共有するコンポーネントのグループ（詳細に後述する）を定義するグループ定義データ３３から構成される。
【００２２】
図３は、本発明の一実施形態によるルールＤＢ７０の構成を示す図である。図３に示すように、本発明によれば、ルール定義ＤＢ７０は、次の表１に示すシステムタイプごとに個別のルール定義ファイルを用意している。即ち、PRIMERGYシステム（ＰＧ）、PRIMEPOWERシステム（ＰＷ）、ETERNUS3000システム（ＧＲ）、NR1000システム（ＮＲ）、GeoStreamシステム（ＭＸ）、混載システム（ＭＸ）なる６種類のタイプにそれぞれ対応するルール定義ファイル７１〜７６を備えている。これにより、各システムタイプに適合した制限条件およびラック搭載ルールに基づいて最適なラックシステム構築が可能となる。
【００２３】
表１  システムタイプの説明
--------------------------------------------------------------------------
システムタイプ       記号    説明
--------------------------------------------------------------------------
PRIMERGYシステム     ＰＧ    PCサーバ及びPCサーバ向け関連製品
PRIMEPOWERシステム   ＰＷ    UNIXサーバ及びUNIXサーバ向け関連製品
ETERNUS3000システム  ＧＲ    ディスクアレイ
NR1000システム       ＮＲ    ネットワークディスクアレイ
GeoStreamシステム    ＧＳ    IPスイッチングノード
混載システム         ＭＸ    上記各システムを同一ラックに搭載する場合
--------------------------------------------------------------------------
図４は、コンポーネント定義ＤＢ３０およびルール定義ＤＢ７０を構成する定義データファイルを指定するＸＭＬ文書のファイルの構造を示す図である。この図から分かるように、本発明で用いる各データベースは、ＸＭＬ（eXtensible Markup Language）によって記述されている。勿論、各データは、他のいかなる言語または既存のデータベースシステムを用いても作成できる。しかし、ＸＭＬによれば、高価なデータベースを要せず、必要な制限条件や搭載ルールを盛り込んだ柔軟な一種の知識ベースとも言うべきデータベースを構築することができる。図４において、属性srcは、ファイル名であり、製品定義およびグループ定義で使用される属性dadanumはコンポーネントのデータ数、およびグループデータ数をそれぞれ表す。ルール定義における属性typeは、システムタイプである。
【００２４】
なお、図４のシステム定義ファイルおよび後述の種々のデータベースファイルの例において、「製品」とはラックに搭載される「コンポーネント」のことである。したがって、データベースのＸＭＬ文書ではコンポーネントの意味で「製品」と書かれているが、説明では「ラックに搭載される種々の製品」を「コンポーネント」と称する。
【００２５】
図４の例では、コンポーネント（ＣＰ）データベース３０には、ラックの定義ファイルRack.xmlも含まれ、このファイルには、３４のラックデータが入っている。また、この特定の例では、コンポーネントもシステムタイプごとに２種類の定義データファイルがある。ただし、ETERNUS3000システム（ＧＲ）とNR1000システム（ＮＲ）は、何れもディスクアレイ・システムでほぼ同じ種類と見なすことができるので、共通の定義データファイルを用いている。セット品の定義データ３２は、特に専用のファイルは設けず、通常のコンポーネントと同じ扱いで、各ＣＰ定義ファイルに含まれる。しかし、コンポーネントのグループは、ファイルrma gr1.xmlで２８３のグループが定義されている。また、PRIMERGYシステム（ＰＧ）、PRIMEPOWERシステム（ＰＷ）、ETERNUS3000システム（ＧＲ）とNR1000システム（ＮＲ）の組、GeoStreamシステム（ＧＳ）、および混載システム（ＭＸ）のそれぞれに対し、ルール定義ファイルram rule PG.xml、ram rule PW.xml、ram rule GR.xml、ram rule GX.xml、およびram rule MX.xmlが用意されている。本発明のラック構成決定支援システムを起動すると、これらのファイルが自動的に読み込まれ、処理の準備を行なう。
【００２６】
図５は、製品定義データにおいて用いられる各項目（または属性）の意味を示す一覧表である。勿論、すべてのコンポーネントの定義データが、これらの項目をすべて含むわけではなく、コンポーネントにより、無い項目もある。図６は、型名server6なるＣＰＵユニットのコンポーネント定義データの例を示す。図７は、セット品専用に用いられるコンポーネント（Ａ）と、このコンポーネントから構成されるセット品（Ｂ）のＣＰ定義データの例を示す。以下、図５〜７を参照して、コンポーネント定義ＤＢ３０を構成するＣＰ定義データを説明する。
【００２７】
各ＣＰ定義データにおいて、項目idは、そのＣＰのシステム内における識別子であり、@displayは、コンポーネント選択時にシステムが選択可能なコンポーネントリストに表示するか否かを示す。例えば、図６の通常のコンポーネントserver6および図７（Ｂ）のセット品であるETERNUS  NR1000  ＡＣコンセントボックス（２系統１組）は、@displayがＹＥＳなのでコンポーネント選択時のコンポーネントリストに表示されるが、図７（Ａ）のコンポーネントＣＰaは、ＮＯなので、コンポーネント選択時のコンポーネントリストに表示されない（理由は後述する）。
【００２８】
項目@systemは、製品が属するシリーズに付けられた記号であり、項目@series nameは、製品リストに表示される製品シリーズ名であり、任意の文字列を指定することができる。項目carry systemは、そのコンポーネントを追加または使用できるシステムタイプを示し、使用可能なシステムタイプの記号を幾つでも「/」で区切って列挙することができる。例えば、図６のserver6は、carry system＝“ＰＧ／ＭＸ”であるから、PRIMERGYシステムと混載システムにのみ使用できる。以下、図５に示すように、コンポーネントＤＢ３０のＣＰ定義データには、ラックシステム構築に必要な種種の情報を盛り込むことができる。
【００２９】
これらの項目のうち、「入力電流」および「入力電圧」（例えば、図６の＊２）、ならびに種種の出力特性値は２種類の相互接続されるコンポーネントの個数比を計算するのに使用される。
【００３０】
「必須品/対象製品（対象コンポーネント）」の項目は、そのコンポーネントに必須の  オプション品を指定するものである。これにより、そのコンポーネントに必要な他のコ  ンポーネントを漏れなく調達することができる。このように、前出のルール定義ＤＢ７  ０の内容のみならず、コンポーネントＤＢ３０のＣＰ定義データにもラックシステム構  築に影響するデータが多数含まれる。
【００３１】
@setは、そのコンポーネントがセット品、即ち、他の複数のコンポーネントを組み合わ  せて構成されるものか否かを表す。図６のserver6と図７(Ａ)のＡＣコンセントボッ  クス（id=７７００１）は、セット品でないことがわかる。図７(Ｂ)のＡＣコンセン  トボックス（id=７７０１９）は、@set＝ＹＥＳでわるから、セット品である。項目「  構成製品/対象製品」は、そのコンポーネントがセット品である場合に限り含まれる項  目であり、セット品を構成するコンポーネントの一覧を構成する。図７（Ｂ）から分か  るようにＡＣコンセントボックス（id=７７０１９）は、２つのＡＣコンセントボック  ス（id=７７００１）からなる。
【００３２】
なお、セット品を構成しうるコンポーネントには、２種類ある。１つは、単体で通常のコンポーネントとして扱われ、型番を有し、コンポーネント選択時のコンポーネント一覧に表示されるものであり、もう１つは、単体で使用されることはなく、よって、独自の型番を持たず、コンポーネント選択時のコンポーネント一覧に表示されないものである。図７(Ａ)のコンセントボックス（id=７７００１）は、後者の例である。図７(Ａ)では、型番の項目はあるが、その内容がＮＲＲＡ１００１２［＊］であり、［＊］は、その前の型番が自分の型番ではなく、自分が構成するセット品、即ち、コンセントボックス７７０１９の型番であることを示す。セット品は、セット品専用の（型番を持たない）コンポーネントからのみ構成することも、通常の型番を有するコンポーネントからのみ構成することも、両方を組み合わせて構成することも可能である。
【００３３】
さらに、図５のＣＰ定義データを構成する項目には、コンポーネントに標準添付されるケーブルの種類を示す項目「ケーブル/@種類」、そのケーブル長を示す項目「ケーブル/@長さ」があるので、他のコンポーネントとの相対位置から判断することにより、標準添付のケーブルで間に合うかどうかの判断を行なうことができる。さらに、入力ＡＣケーブルのプラグ形状を示す項目「入力プラグ形状」およびＡＣ出力用コンセントの形状を示す項目「出力コンセント形状」があるので、プラグおよびコンセントの形状を考慮し、標準添付のケーブルが使用できないときは、使用可能なケーブルを自動的に選択することが可能となる。
【００３４】
なお、図５のＣＰ定義データを構成する項目は、図示したものに限らず、例えば新種のコンポーネントの出現などにより、そのコンポーネントの仕様を記述するのに必要な項目をいくらでも増やすことができる。
【００３５】
図８は、本発明により定義されるコンポーネント・グループの定義例を示す。図８にお  いて、このグループ定義データは、対象製品タグでくくられた１０個のコンポーネント  を、識別番号１０３３で「group RackGR24」なる名称でグループ化することを表す。こ  のようにグループ化された１０のコンポーネント同じＩＤと名称で同等に扱われること  になる。
【００３６】
以上、ラック構成決定支援サーバ１の製造業者または同サーバ１の導入企業が用意する  コンポーネントＤＢ３０を説明したが、サーバ１の利用者がコンポーネントＤＢ３０に  登録されていないコンポーネントに関するＣＰ定義データをユーザ定義コンポーネント  ＤＢ５０に登録することができる。ユーザ定義コンポーネントＤＢ５０のＣＰ定義デー  タの構成は、コンポーネントＤＢ３０の定義データと同じである。
【００３７】
図９は、本発明によるルールＤＢ７０におけるルール定義要素のフォーマットを示す図  である。図９（Ａ）は、コンポーネントの種類を問わず適用されるルールのフォーマッ  トであり、（Ｂ）は、特定のコンポーネント、セット品、またはＣＰグループに適用さ  れるルールのフォーマットを示す。また、本発明のラック構成決定支援サーバ１で用い  られる種種の搭載ルールのＸＭＬによる記述例を以下の表２に示す。まず、図９におい  て、属性procの値である「カテゴリ」は、ルールの大分類を示す。属性kindの値である  「分類番号」上記のカテゴリにおける小分類を表し、本実施形態では３桁のである。本  実施例では、カテゴリとして、コンポーネントの「追加」、「個数制限」、「整列」お  よび「配列指定」の４種類がある。
【００３８】
図９（Ａ）のルールは、指定されたカテゴリの分類番号で示される内容のルールがすべ  てのコンポーネント、セット品、またはＣＰグループに適用される。このようにコンポ  ーネントの種類を問わず適用されるルールは、例えば、表２のカテゴリ「追加」の分類  番号１０１、２０１、２０２および３０１などである。
【００３９】
その他のルールは、図９(Ｂ)に示すように、ＩＤにより指定した対象コンポーネント  のみに適用される。同図において、markの値"Ａ"は、他のコンポーネントと区別する  ための識別記号であり、numの値"Ｎ"は、コンポーネント数であり、posの値"Ｕ"  は、配置位置を示すユニット番号である。本実施形態のラックには、下から順にユニッ  トと称する単位長さごとにユニット番号を付けて位置を表している。strは、ルールチ  ェック時に注意事項として表示する文である。
表２  ルール一覧
--------------------------------------------------------------------------------
proc      kind  内容
--------------------------------------------------------------------------------
追加      101   必要要素の追加
<対象製品>id</対象製品>
idがラック内に存在しない場合、idをラック内に追加
102   必要要素の追加
<対象製品 mark="A">id1</対象製品>
<対象製品>id2</対象製品>
<対象製品>id3</対象製品>
id1,id2,id3の全てがラック内に存在しない場合、mark="A" が付加され
ている対象製品をラック内に追加
103   マークなしの製品がラック内に揃っている場合マーク付きの製品を追加
<対象製品 mark="A">id1</対象製品>
<対象製品>id2</対象製品>
<対象製品>id3</対象製品>
id2,id3の両方がラック内にそろっている場合、id1をラック内に追加
201   製品に指定されている<必須品>をチェックしラック内にないものは追加
202   製品に指定されている<必須品>をチェックし、無条件に追加
301   必要なUPSを選択し、追加または更新
--------------------------------------------------------------------------------
個数制限  101   1ラック内に、idをn個までに制限する。
【００４０】
<対象製品 num="n" >id</対象製品>
201   複数ラックを使用する場合、構成内に、idをn個までに制限する。
【００４１】
<対象製品 num="n" >id</対象製品>
301   パターンによる個数制限
マークなしの製品がラック内に揃っている場合、 マークつき製品は指                定数ラック内になければならない。
【００４２】
<対象製品 num="n1">id1</対象製品>
<対象製品 num="n2" mark="A">id2</対象製品>
id1がラック内にn1個存在するとき、id2はn2個でなければならない。
【００４３】
(id2はn2よりも多くても少なくてもいけない。)
302   パターンによる個数制限（ルールチェックのみ）
個数制限301と同様のルール
しかし、パターンに当てはまらない場合でも、配置をすることができ
る。
【００４４】
（ルールチェックなどの注意事項にのみ表示される。）
--------------------------------------------------------------------------------
整列      101   <対象製品>id1</対象製品>
<対象製品>id2</対象製品>
<対象製品>id3</対象製品>
<対象製品 mark="A">id4</対象製品>
ラック内に、下からid4,id3,id2,id1の順に整列して格納する。
【００４５】
(指定するidはカテゴリ,グループが可能)
同じカテゴリ/グループ内で違うコンポーネントが存在した場合、重量
の重い物を下に配置する。
【００４６】
マークのついているid4については配置指定101例5を参照
--------------------------------------------------------------------------------
配置指定  101   特定パターン、指定位置への配置
ラック内に以下のような条件に合う製品が揃っている場合、指定の配置
を行う。
【００４７】
例1)
<対象製品 num="1" >id</対象製品>
<対象製品 num="2" >id</対象製品>
対象製品タグが書かれた順に、idで示された製品をnum個配置する。
【００４８】
idに0を指定すると、空きUの指定となる。
idに1を指定すると、空きUの指定となる。
(但し、一番上に配置されるときは空き領域を確保しない。）
idに2を指定すると、空きUの指定となる。
【００４９】
(但し、一番下に配置されるときは空き領域を確保しない。）
例2)
<対象製品 num="2" >id</対象製品>
<対象製品 num="1" pos="15,25" >id</対象製品>
対象製品タグが書かれた順に、idで示された製品をnum個配置する。
【００５０】
posに示された"15,25"は配置位置の第一候補が15U、第二候補が25Uであ
ることを示す。
例3)
<対象製品 num="2" >id</対象製品>
<対象製品 num="1" pos="15-25" >id</対象製品>
対象製品タグが書かれた順に、idで示された製品をnum個配置する。
【００５１】
posに示された"15-25"は15Uから25Uの間に搭載することを示す(配置優
先度は15Uの方が高い)。
例4)
<対象製品 num="1" pos="u22" >id</対象製品>
idがnum個あったらposで示された位置に配置
numが1の場合は無条件に適用となる(u22は22U以下を示す)。
例5)
<対象製品 num="1" pos="r22" >id</対象製品>
'r'をつけてpos指定された場合、整列101で設定された優先順位を無視
して搭載される。
【００５２】
但し、整列101の対象製品にマークがついている製品よりも優先順位を
高くすることはできない
例6)
<対象製品 num="1" pos="o22" >id</対象製品>
'o22'は22U以上を示す
例7)
<対象製品 num="1" pos="w22" >id</対象製品>
既に指定U以下にidがnum個 搭載されているとき、それ以外のidは指定
posよりも上に搭載される現状、numは1でなければならない。
201   特定パターン 余ったものは上にセットする。
【００５３】
特定パターンとして取り出されていない装置の中のある装置が、特定パ
ターンの配置で取り出された。
【００５４】
パターンの中に存在した場合、その装置を特定パターンに追加する。
<対象製品>id</対象製品>
配置指定201を記述する前にidの特定パターンを記述しておかなければ
ならない。
301   ラックの最下段を空ける。
【００５５】
<対象製品>id</対象製品>
idで指定された装置が一番下に配置される場合は、ラックの最下段を空
ける。
【００５６】
id=0の場合は、常に空ける。
--------------------------------------------------------------------------------
＜本発明のラック構成決定支援プログラムによる動作＞
本実施形態のルール定義ＤＢ７０において、PRIMERGYシステムに対して用意された実際のルール定義ファイル７１の内容の一部を付録に示す。以下、このルール定義ファイル７１と図面を参照しながら本発明のラック構成決定支援プログラムの制御下でＣＰＵ１０が行なう動作を説明する。図１０は、本発明の一実施形態によるラック構成決定支援プログラムの処理の流れを示すフローチャートである。図１３〜１７は、図１０の処理の過程で表示される画面の例である。図１０において、ラック構成決定支援プログラムを起動すると、ステップ１０２において、本システムの３つのモード、即ち、イージーモード、カスタムモード、およびダイレクトモードの何れかを選択する。イージーモードは、利用者が、プログラムの案内に従って希望のコンポーネントをすべて入力した後にプログラムが最適なラック構成を自動的に決定して、カスタムモード画面に結果を表示するモードである。カスタムモードは、利用者がコンポーネントを選択するたびに、プログラムがその配置を表示しながら構成を決めていくモードであり、配置済みのコンポーネントを移動したり削除したりすることもできる。ダイレクトモードは、使用する製品を、例えばＣＳＶファイルなどで一括入力し、自動的に最適な構成を決定し、結果をカスタムモード画面に表示する。
【００５７】
ここで、イージーモードを選択すると、ステップ１０４において、図１３に示す画面において、システムタイプの選択を行なう。本実施形態では、上述の６つのシステムタイプから選択する。次に、ステップ１０６において、電源に関するシステム条件を設定する。即ち、図１４に示す画面において、ＵＰＳを使用するか否か、使用する場合の給電時間、ＯＡタップを使用するか否か、使用する場合、ＵＰＳ分配するか否か、給電タイプは一系統か２系統かなどについて、選択を行なう。
【００５８】
次に、ステップ１０８において、ラックを自動選択にするか否かを決定する。自動選択しない場合、ステップ１１０において、図１６の画面において表示されるラックのリストから選択する。ステップ１０８で自動選択を選んだ場合、ステップ１１２において、図１５に示す画面においてラックのタイプまたは種類を選択する。
【００５９】
ステップ１１０または１１２の後、ステップ１１４において、図１７に示す画面に表示されるコンポーネントの中から処理装置、ストーレジ、ネットワーク関連コンポーネント、モニタ、キーボードなどを順次選択する。この場合、本発明のシステムは、搭載コンポーネントの指定において、不正な指定（例えば、選択されているシステムタイプでは扱えないコンポーネントなどの指定）が行なえないように、システムタイプに対応するコンポーネントのみを一覧に表示する。コンポーネント一覧を表示する際にコンポーネントＤＢ３０を参照するが、上述のＣＰ定義データの@carry system項目を調べることにより、選択されているシステムタイプに対して表示すべきか否かを判断することができる。また、サーバが選択されていない場合には、モニタ選択画面で「モニタを必要とする製品が選択されていません」と表示し、モニタ製品の一覧は表示しない。搭載コンポーネント指定に際して、必要に応じて、ユーザ定義コンポーネントの定義データをユーザ定義コンポーネントＤＢ５０に登録することができる。
【００６０】
このようにして、必要なコンポーネントを選択した後、ステップ１１６において、ＵＰ  Ｓ接続指定と電源構成の設定を行なう。以上の設定内容で、ステップ２００において、  詳細に後述するようにラックシステムの構成・配置の自動生成を行なう。ステップ１１  ８において、自動生成された結果を確認し、必要に応じて、コンポーネントの追加、移  動、削除などをシステムのナビゲーション機能により行なうことができる。
【００６１】
一方、最初のステップ１０２において、ダイレクトモードを選択した場合、イージーモードと異なる点は、コンポーネントをステップ１１４で１つずつ選択する代わりに、ステップ１１４１において、使用するコンポーネントの型番をＣＳＶ形式で保持するファイルを読み込み、ステップ１１４２で未確認コンポーネントの確認をし、未確認ＣＰが無くなるまで（ステップ１１４３）ステップ１１４２を繰り返す点である。それ以外は、イージーモードと同じなので、説明を省略する。
【００６２】
以降、ステップ２００の動作を詳細に説明するため、上記のステップ１０４から１１６において、次のように設定したものと仮定する。
システムタイプ：PRIMERGYシステム
電源条件      ：UPS使用する5分/OAタップ使用する(UPS分配しない)/一系統
ラックタイプ  ：19インチ(スタンタ゛ート゛/24U)ラック〔PG-R4RC1〕
選択コンポーネント：server6×1台，server3×1台，server1×2台（サーバ）
cabinet〔cabi001〕×1台（バックアップキャビネット）
フラットディスプレイ〔flato1〕
これらのコンポーネントは、左から右かつ上から下の方向に
選択したものとする。
【００６３】
UPS接続指定   ：フラットディスプレイとcabinet以外をUPS接続
ステップ１１６の後、イージーモードの最後の画面で「完了」ボタンが押されると、ステップ２００で、ラックシステムの構成・配置の自動生成を行なう。図１１は、このラックシステムの構成・配置の自動生成の手順を示すフローチャートである。図１１において、まず、ステップ２０２において、対象ラックのルールを抽出する。この例では、型番PG-R4RC1の１９インチ(スタンダード/２４Ｕ)ラックに関するルールを抽出する。ステップ２０４において、選択された製品1つ1つに対して選択された順番に、ルールＤＢに定義されている全てのルールを調べ、必要なルールを適用する。判断ステップ２０６において、選択されたコンポーネントの中に未処理のコンポーネントがあるかどうかを判断する。未処理のコンポーネントが無くなるまで、ステップ２０４、２０６を繰り返す。ステップ２０４では、本実施形態では、付録のPRIMERGYシステムに対するルール定義ファイルに従って、処理を行なう。以下、上記の選択されたコンポーネントの１つ１つについて、選択された順に付録のルールを適用する。
【００６４】
選択された最初のコンポーネントが、server6なので、まず、server6に関する処理を行なう。
ＣＰ１：server6の処理
ルールＲ１（即ち、表２のカテゴリ「追加」の分類番号２０２（以下、単に「追加２０  ２）と言う））を適用し、追加処理を実行する。
【００６５】
server6には必須品が定義（図６の＊１）されているので、定義されている PGBR1CK17(ラックマウント変換機構) を自動追加する。
続いて、ルールＲ２によりＵＰＳの追加・更新を実行する。即ち、上記の設定条件で仮定したように、server6にはＵＰＳ接続指定がついているので、server6の消費電力，入力電力等を考慮して容量を満たすＵＰＳのうち、最も容量の小さいＵＰＳである3000VAを自動追加する。このように、ＵＰＳ追加・変更があった場合は処理対象がそのＵＰＳに変更になる。したがって、一時、3000VAUPSの追加処理を行なう。
・・ＣＰ２：3000VAUPS
・・ルールＲ１により、追加処理を実行するが、ＵＰＳにはセット品も必須品もないで
・・、何もしない。
・・ルールＲ２（表２の追加３０１）により、ＵＰＳ追加・更新を実行することにな
・・るが、ＵＰＳ自身がＵＰＳに接続されないので、ここは何もしない。
・・個数チェック：3000VAUPSに関するルールＲ５〜Ｒ８があるので、１つずつ確認
・・する。ルールＲ５〜Ｒ８には次の意味がある。
・・Ｒ５：3000VAUPSはラック内に3台まで。
・・Ｒ６：ラック内に3000VAUPSが3台ある時は1400/1500VAUPSは搭載できない。
・・Ｒ７：ラック内に3000VAUPSが2台ある時は1400/1500VAUPSは1台までしか搭載でき
・・ない。
・・Ｒ８：ラック内に3000VAUPSが1台ある時は1400/1500VAUPSを5台までしか搭載でき
・・ない。
・・この段階では3000UPSは1台のみなので、いずれものルールも該当しない。
・・ルールＲ３により、配置処理を実行する。3000VAUPSは、ＵＰＳとして整列ルール
・・の最後のグループに置かれているので、ラックの一番下に搭載される。
・・特定パターンによる再配置：ルールＲ１０により、ＵＰＳの高さが24以下に制限さ
・・れているがラックの一番下に搭載されているので、問題はない。
【００６６】
図１２は、選択されたコンポーネントに対してステップ２００（実際には、ステップ２０４と２０６）の処理を進める過程でコンポーネントが配置されていくようすを示す図である。3000VAUPSの処理により、上段の左端の配置となる。
【００６７】
これで、ＵＰＳが配置されたので、server6の処理の続きを行なう。
server6の処理の続き
個数チェック：server6に関するルールは何もないので、何もしない。
【００６８】
基本整列：ルールＲ３に沿った配置処理を実行する。これにより、server6は3000VAUPSの上に搭載される。
特定パターンによる再配置：server6に関して、ルールＲ４（表２の配置指定３０１）の記述がり、定義されている製品がラック最下部に搭載される場合は、ラック最下部の１Ｕは空けると定義されている。server6はラック最下部に搭載されていないので、このルールは適用されない。
この配置により、図１２の上段の左から２番目の配列となる。
ＣＰ３：server3の処理
追加処理（ルールＲ１）を実行するが、必須品が定義されていないので、何もしない。    
【００６９】
ＵＰＳ追加・更新（ルールＲ２）を実行する。server3はＵＰＳ接続指定がついているので、ＵＰＳ追加・更新ルールの中で、3000VAUPSで容量が満たされると計算されるので、UPSの追加・変更はない。  （実際はserver6+server3の合計消費電力，入力電力等を考慮して容量を満たすUPSのうち、最も容量の小さいUPSを選択しする。）
個数チェック：server3に関するルールはなし。
【００７０】
基本整列：ルールＲ３に沿った配置処理を実行し、server3はserver6より前に記載があるので、server3はserver6の上に搭載される。
特定パターンによる再配置：server3に関しては、ルールＲ４に記述があるが、server3はラック最下部に搭載されないので、何もしない。
【００７１】
この配置により、図１２の上段の右から２番目の配列となる。
ＣＰ４：server1（１台め）の処理
追加処理（ルールＲ１）は、必須品が指定されていないので、実施しない。
【００７２】
ＵＰＳ追加・更新（ルールＲ２）：server1はＵＰＳ接続指定がついているので、ＵＰＳ追加・更新ルールを適用し、3000VAUPSで容量が満たされると計算されるので、UPSの追加・変更はしない。（実際はserver6+server3+server1の合計消費電力，入力電力等を考慮して容量を満たすUPSのうち、最も容量の小さいＵＰＳを選択する。）
個数チェック：server1に関するルールはない。
【００７３】
基本整列：ルールＲ３に沿った配置処理により、server1はserver3の上に搭載される  。
特定パターンによる再配置：server1に関するルールはなし。
【００７４】
この配置により、図１２の上段の右端の配列となる。
ＣＰ５：server1（２台目）の処理
追加処理（ルールＲ１）：必須品の指定なし。
【００７５】
ＵＰＳ追加・更新（ルールＲ２）：server1はＵＰＳ接続指定がついているので、ＵＰＳ追加・更新ルールを適用し、3000VAUPSでは容量が不足するので、を１台追加する。（実際はserver6+server3+server1+server1の合計消費電力，入力電力等を考慮して容量を満たすＵＰＳのうち、最も容量の小さいＵＰＳの組合わせを選択する。）
ＵＰＳ追加・変更があったので、処理対象が追加の1500VAUPSに移る。
・・ＣＰ６：1500VAUPSの処理
・・追加処理（ルールＲ１）：指定がないので、何もしない。
・・UPS追加・更新（ルールＲ２）：ＵＰＳ自身がＵＰＳSに接続されないので、ここは
・・何もしない。
・・個数チェック：ＵＰＳに関しルールＲ５，Ｒ９，Ｒ６〜Ｒ８があり、次の意味で
・・ある。
・・  Ｒ５：3000VAUPSはラック内に3台まで。
・・        ⇒3000VAUPSは1台しかないので問題なし。
・・  Ｒ９：ラック内に1400/1500VAUPSは5台まで。
・・        ⇒1500VAUPSは1台しかないので問題なし。
・・  Ｒ６：ラック内に3000VAUPSが3台ある時は1400/1500VAUPSは搭載できない。
・・        ⇒3000VAUPSは1台しかないので問題なし。
・・  Ｒ７：ラック内に3000VAUPSが2台ある時は1400/1500VAUPSは1台までしか搭載で
・・きない。
・・        ⇒3000VAUPSは1台しかないので問題なし。
・・  Ｒ８：ラック内に3000VAUPSが1台ある時は1400/1500VAUPSを5台までしか搭載で
・・きない。
・・        ⇒3000UPSが1台あるが、1500VAUPSも1台なので問題なし。
・・基本整列（ルールＲ３）：1500VAUPSは、ＵＰＳグループ内での3000VAUPSより軽い
・・ので、3000VAUPSの上に搭載される。
・・特定パターンによる再配置：ルールＲ１０で、ＵＰＳの高さが24以下に制限されて
・・いるが、問題ない。
・・この配置により、図１２の下段の左端の配列となる。
server1の続きの処理
個数チェック：server1に関するルールはない。
【００７６】
基本整列：ルールＲ３により、server1はserver3の上に搭載さる。既に1台搭載されているので、実際にはserver1の上になる。
特定パターンによる再配置：server1に関するルールはない。
【００７７】
この配置により、図１２の下段の左から２番目の配列となる。
ＣＰ７：cabinetの処理
追加処理（ルールＲ１）：必須品の指定がないので、何もしない。
【００７８】
ＵＰＳ追加・更新（ルールＲ２）：cabinetはＵＰＳ接続指定がついていないので、何  もしない。
個数チェック：cabinetに関するルールはない。
【００７９】
基本整列：ルールＲ３により、cabinetは一番下に搭載される。
特定パターンによる再配置：cabinetに関するルールＲ１１，Ｒ１２がある。
ルールＲ１１は、以下のとおりである。
【００８０】
<対象製品 num="0" pos="24">sysgrp-8chSwitch</対象製品>
<対象製品 num="1" pos="24">sysgrp-PGFlatDisplay</対象製品>
<対象製品 num="0">cabi001</対象製品>
これは、フラットディスプレイのルールであるが、同時に8ch切替器（本例では選択なし）とcabinetの搭載位置を併せ持ったルールにないる。フラットディスプレイは２４Ｕの位置に搭載する。但し、8ch切替器（sysgrp-8chSwitch）がある場合は8ch切替器を２４Ｕに搭載し、フラットディスプレイはその下に搭載する。更に、cabinetがある場合は、その下（フラットディスプレイの下）に搭載するというルールである。この組合わせの時、8ch切替器とcabinetの台数に制限はないので（num=0）、結局、cabinetは、ルールＲ１１に影響されない。
【００８１】
ルールＲ１２は、以下のとおりである。
<対象製品 num="1" pos="24">cabi001</対象製品>
<対象製品 num="0">cabi001</対象製品>
cabinetは２４Ｕに搭載し、その下に同じくcabinetを搭載する。下側に台数制限がついていないので、Ｓｘ１０が複数台ある場合は、２４Ｕから下側へ順次搭載されることになる。ここではフラットディスプレイがないのでcabinetは２４Ｕの位置に搭載されることになる。
【００８２】
この配置により、図１２の下段の右から２番目の配列となる。
ＣＰ８：フラットディスプレイの処理
追加処理（ルールＲ１）：必須品がないので、何もしない。
【００８３】
ＵＰＳ追加・更新（ルールＲ２）：フラットディスプレイはＵＰＳ接続指定がついていないので、何もしない。
個数チェック（ルールＲ１３）：フラットディスプレイはラック何に1台と制限されているが、1台なので問題ない。
【００８４】
基本整列（ルールＲ３）：フラットディスプレイは、整列ルールの最終行のsysgrp Monitorに属するので、一番下に搭載される。
特定パターンによる再配置：フラットディスプレイに関しルールＲ１１があり、8ch切替器がないので、フラットディスプレイは２４Ｕに搭載される。更に、フラットディスプレイの下にcabinetを搭載するというルールがあるので、搭載済みのcabinetはこれに従い、フラットディスプレイの下に配置される。この配置により、図１２の下段の右端に示す配列となる。
以上により、選択された全てのコンポーネントが処理されたので、既に述べたステップ１１８へ進む。
【００８５】
以上の例では、述べなかったが、選択されたコンポーネントが１つのラックに収まらない場合もありうる。このような場合、上記のラック構成決定支援プログラムは、自動的にラックを追加し、追加したラックと溢れたコンポーネントに対して、ステップ２００の処理を行なう。
【００８６】
コンポーネント間をケーブルで接続する場合、プラグとコンセントの間の形状の整合性をチェックし、コンポーネントに標準添付のケーブルが合わない場合は、適合するケーブルを追加する。さらに、相互接続されるコンポーネント間の距離および保守の場合に備えコンポーネントをラックから十分引き出せるだけの余裕も考慮して、必要な線の長さを算出し、コンポーネントに標準添付のケーブルが長さ不十分な場合は、適当な長さのケーブルを追加する。
【００８７】
このように、本発明のラック構成決定プログラムによれば、コンポーネントＤＢ３０およびルール定義ＤＢ７０の定義データの内容に従って、最適なラック構成がなされる。  
＜カスタムモード＞
以上のように最適構成された配置パタンが、カスタムモードとして図１８または１９のように表示される。図１８の表示では、コンポーネントの配置のみならず、結線状態も表示される。この状態で、画面を見ながら、コンポーネントの追加、移動、削除などが可能である。これらの操作を行なった場合も、ステップ２００の処理が実行されるので、最適な状態を保持することができる。  また、図１８および１９の表示の状態（即ち、カスタムモード）で、配置を変更する場合、コンポーネント毎にルール定義ＤＢ７０のルールを適用するかどうかを設定することができる。したがって、適用を除外したコンポーネントについては、ルールに拘束されずに配置を変更することも可能である。
【００８８】
図１８および１９の表示の状態で、ラック状態表示の上部に、ルールチェックとルール外チェックのアイコンを表示し、指定されたチェック内容の結果を表示することにより、コンポーネントの配置状態をより詳細に知ることが可能となる。
【００８９】
なお、ラックの特定の位置または範囲を搭載禁止に指定することができる。これが指定されたラック位置には、コンポーネントが配置されないので、特定のラック位置を将来の使用のために確保することができる。
【００９０】
さらに、カスタムモードは、ラック構成データＤＢ９０に保存されている完成されたラック搭載システムまたは未完成のラック搭載システムを読み出し、変更する場合に利用できる。このとき、読みさしたラック構成データに既存属性を設定することができる。ラック構成データに既存属性が設定されると、以降そのラック構成データに行なった変更内容を何時でも出力することができる。したがって、例えば、既存属性設定後に、コンポーネントを追加し、追加したコンポーネントのみを発注するような場合、好都合である。
【００９１】
本発明のラック構成決定支援システムは、ラック構成の編集中に、ラックに追加済みの任意のコンポーネントを一時的に（ラックから削除し）保存できるコンポーネント退避エリアを備えている。コンポーネント退避エリアに退避させたコンポーネントは、何時でもラックに戻すことができる。このようなコンポーネント退避エリアがあれば、既存のラック構成とその他のいろいろな構成を比較検討する場合などに好都合である。
＜コンポーネントＤＢ３０およびルール定義ＤＢ７０の更新＞
図２０は、本発明によるコンポーネントＤＢ３０およびルール定義ＤＢ７０の更新の方法を示す略ブロック図である。図２０において、要素番号１は、既に詳細に説明した本発明のラック構成決定支援サーバであり実際にクライアントに対しサービスを行なっているものである。これに対し、要素番号１aは、サーバ１とほぼ同じ機能を持つが、外部には公開されずサーバ１のコンポーネントＤＢ３０およびルール定義ＤＢ７０のデータの更新を行なうためのサーバである。具体的には、新たなコンポーネントが出現した場合、そのＣＰ定義データを作成して、そのままサーバ１にロードした場合、万が一、ＣＰ定義データに誤りがあったりすると混乱を招くので、新たなコンポーネントに対するＣＰ定義データは、サーバ１にロードする前に、サーバ１aにおいて十分検証することが好ましい。また、コンポーネントによっては、ルール定義データに影響を及ぼすものもある。そのようなコンポーネントに対するＣＰ定義データをサーバ１にロードする場合は、関係するルール定義データの変更や、新たなルール定義データの追加を同時にする必要がある。したがって、更新すべきＣＰ定義データおよびルール定義データをサーバaにおいて十分正当性を検証した後に、サーバ１にロードすることが好ましい。
【００９２】
以上は、本発明の説明のために実施例を掲げたに過ぎない。したがって、本発明の技術思想または原理に沿って上述の実施例に種々の変更、修正または追加を行うことは、当業者には容易である。
【００９３】
例えば、上記の実施例では、クライアントは、ネットワークを介してラック構成決定支援サーバ１にアクセスしたが、本発明は、このようなネットワークシステムのみならず、スタンドアローン型のシステムにも応用することができる。
〔付録〕
PRIMERGYシステムに対するルール定義ファイルの内容例
<ルール定義>
<ルール proc="追加" kind="202"/>  ---Ｒ１
<ルール proc="追加" kind="301"/>  ---Ｒ２
<ルール proc="個数制限" kind="101">
<対象製品 num="1">group-PGMonitor</対象製品>
</ルール>
<ルール proc="個数制限" kind="101">
<対象製品 num="1">sysgrp-InnerDspSw</対象製品>
</ルール>
<ルール proc="個数制限" kind="101">  ---Ｒ５
<対象製品 num="3">sysgrp-3000UPS</対象製品>
</ルール>
<ルール proc="個数制限" kind="101">  ---Ｒ９
<対象製品 num="5">sysgrp-1400/1500UPS</対象製品>
</ルール>
<ルール proc="個数制限" kind="301">  ---Ｒ６
<対象製品 num="3">sysgrp-3000UPS</対象製品>
<対象製品 num="0" mark="A">sysgrp-1400/1500UPS</対象製品>
</ルール>
<ルール proc="個数制限" kind="301">  ---Ｒ７
<対象製品 num="2">sysgrp-3000UPS</対象製品>
<対象製品 num="0-1" mark="A">sysgrp-1400/1500UPS</対象製品>
</ルール>
<ルール proc="個数制限" kind="301">  ---Ｒ８
<対象製品 num="1">sysgrp-3000UPS</対象製品>
<対象製品 num="0-5" mark="A">sysgrp-1400/1500UPS</対象製品>
</ルール>
<ルール proc="個数制限" kind="101">  ---Ｒ１３
<対象製品 num="1">group-PGMonitor</対象製品>
</ルール>
<ルール proc="整列" kind="101">  ---Ｒ３
<対象製品>serverN</対象製品>
<対象製品>serverN</対象製品>
<対象製品>serverN</対象製品>
<対象製品>serverN</対象製品>
<対象製品>serverN</対象製品>
<対象製品>sysgrp-serverX</対象製品>
<対象製品>serverN</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品>serverN</対象製品>
<対象製品>group-server1</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品>group-server3</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品>group-server6</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品>group-serverX</対象製品>
<対象製品 mark="A">sysgrp-aaa</対象製品>
<対象製品 mark="A">cabi001</対象製品>
<対象製品 mark="A">sysgrp-bbbb</対象製品>
<対象製品 mark="A">ccccccc</対象製品>
<対象製品 mark="A">sysgrp-Monitor</対象製品>  これには、フラットテ゛ィスフ゜レイが含まれる。
【００９４】
</ルール>
<ルール proc="配置指定" kind="101">  ---Ｒ１０
<対象製品 pos="u24">sysgrp-UPS</対象製品>
</ルール>
<ルール proc="配置指定" kind="101">  ---Ｒ１１
<適用ラック>1002</適用ラック>
<対象製品 num="0" pos="24">sysgrp-8chSwitch</対象製品>
<対象製品 num="1" pos="24">sysgrp-PGFlatDisplay</対象製品>
<対象製品 num="0">cabi001</対象製品>
</ルール>
<ルール proc="配置指定" kind="101">  ---Ｒ１２
<適用ラック>1002</適用ラック>
<対象製品 num="1" pos="24">cabi001</対象製品>
<対象製品 num="0">cabi001</対象製品>        （＊cabi001は、cabinetの型名）
</ルール>
<ルール proc="配置指定" kind="301">  ---Ｒ４
<適用ラック>group-serverY</適用ラック>
<対象製品>group-serverY</対象製品>
<対象製品>group-server3</対象製品>
<対象製品>group-serverY</対象製品>
<対象製品>group-serverY</対象製品>
<対象製品>group-server6</対象製品>
<対象製品>group-serverY</対象製品>
<対象製品>group-aaa</対象製品>
<対象製品>group-bbb</対象製品>
<対象製品>group-bbb</対象製品>
<対象製品>group-ccc</対象製品>
<対象製品>group-ddd</対象製品>
<対象製品>group-eee</対象製品>
<対象製品>group-eee</対象製品>
<対象製品>group-ggg</対象製品>
<対象製品>group-hhh</対象製品>
<対象製品>group-iii0</対象製品>
<対象製品>group-jjj</対象製品>
<対象製品>group-kkk</対象製品>
<対象製品>group-lll</対象製品>
<対象製品>group-mmm</対象製品>
<対象製品>group-nnn</対象製品>
<対象製品>group-ooo</対象製品>
</ルール>
</ルール定義>
（付記１）  利用者が選択したコンポーネントをラックに搭載して目的のシステムを構築する際に必要な付加的コンポーネントを含む搭載すべき全コンポーネントの配置を最適に行なう装置であり、
前記ラックに搭載しうるコンポーネントに関する情報を記述したコンポーネント定義デ  ータからなるコンポーネントデータベースと、
前記ラックに前記の選択したコンポーネントを配置する際に複数の所定の観点から導かれる種種のルールを記述したルール定義データからなるルールデータベースと、
前記利用者に、前記コンポーネントの選択を含め前記目的のシステムに対する希望条件を入力させる入力手段と、
前記の選択したコンポーネントの１つ１つについて選択した順に前記種種のルールに従いながら、前記の選択したコンポーネントの１つ１つを配置する配置手段を備えたことを特徴とするラック構成決定支援装置。＊１
（付記２）  前記コンポーネントデータベースは、前記配置を最適に行なうのに必要な情報を全て含み、前記ルールデータベースには、前記配置を最適に行なうのに必要な制限事項およびルールを網羅していることを特徴とする付記１記載のラック構成決定支援装置。＊２
（付記３）  前記複数の所定の観点が、コンポーネントの追加、個数制限、整列および特定のコンポーネントに対する配置指定を含むことを特徴とする付記２記載のラック構成決定支援装置。＊３
（付記４）  前記ルールデータベースが、前記目的のシステムのタイプの各々に対応したルール定義ファイルを備えることを特徴とする付記２記載のラック構成決定支援装置。＊４
（付記５）  前記コンポーネント定義データには、そのコンポーネントに必須のコンポーネントの記述を含めることができることを特徴とする付記２記載のラック構成決定支援装置。＊５
（付記６）  前記入力手段は、前記コンポーネントの各々に対するＵＰＳ（無中断電源装置）の接続の有無を設定することを可能とすることを特徴とする付記２記載のラック構成決定支援装置。＊６
（付記７）  前記配置手段が、前記コンポーネントが、前記ＵＰＳの接続が設定されたコンポーネントを含む場合、適切なＵＰＳを選択して追加する手段を含むことを特徴とする付記６記載のラック構成決定支援装置。＊７
（付記８）  前記ＵＰＳの容量が不足の場合、新たなＵＰＳを追加する手段をさらに含むことを特徴とする付記６記載のラック構成決定支援装置。＊８
（付記９）  前記配置手段は、前記の選択されたコンポーネントが前記ラックに収容しきれない場合、新たなラックを追加する手段を含むことを特徴とする付記６記載のラック構成決定支援装置。＊９
（付記１０）  前記コンポーネントベースおよび前記ルールデータベースは、汎用的なマークアップ言語で記述されていることを特徴とする付記１乃至６の何れかに記載のラック構成決定支援装置。
（付記１１）  前記コンポーネント定義データは、複数のコンポーネントからなるセット品を定義する記述を含むことを特徴とする付記１乃至１０の何れかに記載のラック構成決定支援装置。
（付記１２）  前記配置手段は、複数のコンポーネントからなるグループを定義する定義データを前記コンポーネント定義データと同じに扱うことを特徴とする付記１乃至１１の何れかに記載のラック構成決定支援装置。
（付記１３）前記入力手段は、利用者に前記ラックの位置または範囲をコンポーネント搭載禁止に指定することを可能とする手段を含み、
前記配置手段は、前記位置または範囲にコンポーネントを配置しないことを特徴とする付記２記載のラック構成決定支援装置。
（付記１４）  第１のコンポーネントの前記コンポーネント定義データは、そのコンポーネントのプラグの形状の記述を含み、
第２のコンポーネントの前記コンポーネント定義データは、そのコンポーネントのコン  セントの形状の記述を含み、
前記配置手段は、前記第１のコンポーネントと前記第２のコンポーネントとが相互接続  される場合、前記プラグの形状と前記コンセントの形状とを比較し、合わない場合、前  記第１のコンポーネントを適合するものに変更する手段を含むことを特徴とする付記２  記載のラック構成決定支援装置。
（付記１５）  前記配置手段は、第１および第２のコンポーネントを相互接続する場合、前記両コンポーネントの距離を考慮し、標準添付のケーブルが短いと判断した場合、適切な長さのケーブルを追加する追加手段を含むことを特徴とする付記２記載のラック構成決定支援装置。
（付記１６）  前記追加手段は、前記距離のみならず、保守の際に前記第１または第２のコンポーネントを前記ラックから十分引き出せる長さの余裕を考慮することを特徴とする付記２記載のラック構成決定支援装置。
（付記１７）  前記ラックに搭載されるコンポーネントの配置をコンポーネント間の結線状態も含めて表示す手段をさらに備えたことを特徴とする付記２記載のラック構成決定支援装置。
（付記１８）  利用者が選択したコンポーネントをラックに搭載して目的のシステムを構築する際に必要な付加的コンポーネントを含む搭載すべき全コンポーネントの配置を最適に行なう方法であり、
前記ラックに搭載しうるコンポーネントに関する情報を記述したコンポーネント定義デ  ータからなるコンポーネントデータベースを用意するステップと、
前記ラックに前記の選択したコンポーネントを配置する際に複数の所定の観点から導かれる種種のルールを記述したルール定義データからなるルールデータベースを用意するステップと、
前記利用者に、前記コンポーネントの選択を含め前記目的のシステムに対する希望条件を入力させる入力ステップと、
前記の選択したコンポーネントの１つ１つについて選択した順に前記種種のルールに従いながら、前記の選択したコンポーネントの１つ１つを配置する配置ステップを備えたことを特徴とするラック構成決定支援方法。＊１０
（付記１９）コンピュータに、利用者が選択したコンポーネントをラックに搭載して目的のシステムを構築する際に必要な付加的コンポーネントを含む搭載すべき全コンポーネントの配置を最適に行なわせる、データ構造であり、前記データ構造体が、
前記ラックに搭載しうるコンポーネントに関する情報を記述したコンポーネント定義デ  ータからなるコンポーネントデータベースと、
前記ラックに前記の選択したコンポーネントを配置する際に複数の所定の観点から導かれる種種のルールを記述したルール定義データからなるルールデータベースと、
前記利用者が前記コンポーネントの選択を含め前記目的のシステムに対する希望条件を入力する機能を前記コンピュータに実現させるプログラムと、
前記の選択したコンポーネントの１つ１つについて選択した順に前記種種のルールに従いながら、前記の選択したコンポーネントの１つ１つを配置する配置機能を前記コンピュータに実現させるプログラムからなることを特徴とするラック構成決定支援のためのデータ構造。
（付記２０）利用者が選択したコンポーネントをラックに搭載して目的のシステムを構築する際に必要な付加的コンポーネントを含む搭載すべき全コンポーネントの配置をコンピュータに最適に行なわせるために、
前記ラックに搭載しうるコンポーネントに関する情報を記述したコンポーネント定義デ  ータからなるコンポーネントデータベースと、
前記ラックに前記の選択したコンポーネントを配置する際に複数の所定の観点から導かれる種種のルールを記述したルール定義データからなるルールデータベースとを記録し、さらに
前記利用者が前記コンポーネントの選択を含め前記目的のシステムに対する希望条件を入力するステップと、
前記の選択したコンポーネントの１つ１つについて選択した順に前記種種のルールに従いながら、前記の選択したコンポーネントの１つ１つを配置するステップとを含むプログラム
を記録したコンピュータ読み取り可能な記録媒体。
（付記２１）利用者が選択したコンポーネントをラックに搭載して目的のシステムを構築する際に必要な付加的コンポーネントを含む搭載すべき全コンポーネントの配置を最適に行なうべく、前記ラックに搭載しうるコンポーネントに関する情報を記述したコンポーネント定義データからなるコンポーネントデータベースと、前記ラックに前記の選択したコンポーネントを配置する際に複数の所定の観点から導かれる種種のルールを記述したルール定義データからなるルールデータベースとを備えたコンピュータにおいて、
前記利用者が前記コンポーネントの選択を含め前記目的のシステムに対する希望条件を入力する機能と、
前記の選択したコンポーネントの１つ１つについて選択した順に前記種種のルールに従いながら、前記の選択したコンポーネントの１つ１つを配置する機能とを前記コンピュータに、実現させるプログラム。
【図面の簡単な説明】
【００９５】
【図１】本発明の一実施形態によるラック構成決定支援システムの構成を示す略ブロック図である。
【図２】本発明の一実施形態によるコンポーネントＤＢ３０の構成を示す図である。
【図３】本発明の一実施形態によるルールＤＢ７０の構成を示す図である。
【図４】コンポーネント定義ＤＢ３０およびルール定義ＤＢ７０を構成する定義データファイルを指定するＸＭＬ文書のファイルの構造を示す図である。
【図５】製品定義データにおいて用いられる各項目の意味を示す一覧表である。
【図６】一般的な型名server6なるＣＰＵユニットのコンポーネント定義データの例を示す。
【図７】セット品専用に用いられるコンポーネント（Ａ）と、このコンポーネントから構成されるセット品（Ｂ）のＣＰ定義データの例を示す。
【図８】本発明により定義されるコンポーネント・グループの定義例を示す図である。
【図９】本発明によるルールＤＢ７０におけるルール定義要素のフォーマットを示す図である。
【図１０】本発明の一実施形態によるラック構成決定支援プログラムの処理の流れを示すフローチャートである。
【図１１】図１０のステップ２００にて行われるラックシステムの構成・配置の自動生成の手順を示すフローチャートである。
【図１２】選択されたコンポーネントに対してステップ２００（ステップ２０４と２０６）の処理を進める過程でコンポーネントが配置されていくようすを示す図である
【図１３】図１０のステップ１０４で表示される画面の例である。
【図１４】図１０のステップ１０６で表示される画面の例である。
【図１５】図１０のステップ１１２で表示される画面の例である。
【図１６】図１０のステップ１１０で表示される画面の例である。
【図１７】図１０のステップ１１４で表示される画面の例である。
【図１８】図１０のステップ２００の終了後に、カスタムモードで表示される画面の例である。
【図１９】図１０のステップ２００の終了後に、カスタムモードで表示される画面の例である。
【図２０】本発明の別の実施形態により第２のサーバ１aを備えたラック構成決定支援システムの構成を示す略ブロック図である。
【符号の説明】
【００９６】
１  本発明のラック構成決定支援サーバ
２  入出力装置
３  ネットワーク
４  クライアント
１０  ＣＰＵ
１１  ＲＯＭ
１２  ＲＡＭ
１３  通信ＩＦ
１４  入出力インターフェース
２０  二次記憶装置
３０  コンポーネントＤＢ
３１  コンポーネント定義データ
３２  セット品定義データ
３３  グループ定義データ
５０  ユーザ定義コンポーネントＤＢ
７０  ルール定義ＤＢ
７１  PRIMERGYシステム用ルール定義ファイル
７２  PRIMEPOWERシステム用ルール定義ファイル
７３  ETERNUS3000システム用ルール定義ファイル
７４  NR1000システム用ルール定義ファイル
７５  GeoStreamシステム用ルール定義ファイル
７６  混載システム用ルール定義ファイル
９０  ラック構成データＤＢ
１００  各種プログラム
【図１】
2005228167.tif 000003
【図２】
2005228167.tif 000004
【図３】
2005228167.tif 000005
【図４】
2005228167.tif 000006
【図５】
2005228167.tif 000007
【図６】
2005228167.tif 000008
【図７】
2005228167.tif 000009
【図８】
2005228167.tif 000010
【図９】
2005228167.tif 000011
【図１０】
2005228167.tif 000012
【図１１】
2005228167.tif 000013
【図１２】
2005228167.tif 000014
【図１３】
2005228167.tif 000015
【図１４】
2005228167.tif 000016
【図１５】
2005228167.tif 000017
【図１６】
2005228167.tif 000018
【図１７】
2005228167.tif 000019
【図１８】
2005228167.tif 000020
【図１９】
2005228167.tif 000021
【図２０】
2005228167.tif 000022