JP2013239867A - 管理サーバおよび検証方法 - Google Patents

管理サーバおよび検証方法 Download PDF

Info

Publication number
JP2013239867A
JP2013239867A JP2012111113A JP2012111113A JP2013239867A JP 2013239867 A JP2013239867 A JP 2013239867A JP 2012111113 A JP2012111113 A JP 2012111113A JP 2012111113 A JP2012111113 A JP 2012111113A JP 2013239867 A JP2013239867 A JP 2013239867A
Authority
JP
Japan
Prior art keywords
tenant
node
setting information
topology
verification
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.)
Granted
Application number
JP2012111113A
Other languages
English (en)
Other versions
JP5953109B2 (ja
Inventor
Mariko Nakayama
真理子 中山
Yosuke Himura
洋輔 肥村
Yoshiko Yasuda
淑子 保田
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2012111113A priority Critical patent/JP5953109B2/ja
Publication of JP2013239867A publication Critical patent/JP2013239867A/ja
Application granted granted Critical
Publication of JP5953109B2 publication Critical patent/JP5953109B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】
機器に新規に入力する設定情報により、テナントの情報処理システムを構成する仮想リソースと仮想リソースの接続関係の変化を模擬生成するとともに、設定情報の入力により発生する障害を設定情報入力前に検証する。
【解決手段】
物理機器への設定操作と、設定操作に対応する論理トポロジへの操作との対応関係とを保持し、前記対応関係をもとに、物理機器へ設定する設定情報から、論理トポロジへの操作を特定する設定情報解析部と、テナント毎の論理トポロジ情報と、論理トポロジへの操作と、テナントを特定するテナント識別子とをもとに、物理機器に設定情報を入力することにより変更されるテナントの論理トポロジを模擬生成するトポロジ生成部を有する
ことを特徴とする。
【選択図】 図5

Description

本明細書で開示される主題は、ネットワークを構成する機器に設定する設定情報を管理する管理サーバおよび管理サーバで実施する設定情報の検証方法に関する。
近年、コンピュータネットワーキングの技術分野において、複数の仮想化技術を組み合わせて使用することで、様々な構成をとれる複雑な仮想ネットワークを構築できるようになった。
仮想化技術には、様々な技術があり、サーバ分野では、物理的なサーバを複数の仮想マシンに分割する技術を含む。ネットワーク分野では、ネットワークのレイヤごとに仮想化技術があり、L2(Layer 2)レイヤのものやL3(Layer 3)レイヤのものを含む。L2レイヤの仮想化技術は、VLAN(Virtual Local Area Network)のような仮想LAN(Local Area Network)技術、VLANインタフェースやサブインタフェースのような仮想インタフェース技術を含む。また、L3レイヤの仮想化技術は、VRF(Virtual Routing and Forwarding)やVR(Virtual Router)のような仮想ルータ技術を含む。ストレージ分野では、複数の物理ハードディスクをまとめた1つのストレージを論理的に複数のLUN(Logical Unit Number)に分割する技術を含む。このような仮想化技術によって分割されたVLANや仮想マシンなどの様々な仮想的リソースは総称して仮想リソースと呼ばれる。
仮想LAN技術や仮想インタフェース技術を用いることで、物理的な構成変更を必要とせずに、仮想ネットワークの構築と変更が可能となる。例えば、データセンタネットワークにおいては、様々なネットワーク構成を持つ顧客(以下、テナントと称す)のネットワークを仮想化して、単一の物理ネットワーク上に集約し、仮想ネットワークの構成を変更するだけで、顧客の要望に合ったネットワークを構築できる。
しかしながら、仮想ネットワークは、機器に入力する設定情報、例えばコマンド、を変更するだけで構成を容易に変更可能であるため、誤った設定情報を機器に入力することにより、あるテナントの仮想ネットワークが、異なるテナントの仮想ネットワークに接続されるといった障害が発生する可能性もある。異なるテナント間で仮想ネットワークが接続することで、例えば、あるテナントの仮想マシンから異なるテナントがファイルサーバとして使用する仮想マシンに接続可能となるといった重大な障害が発生する場合が考えられる。
データセンタを運用する事業者や管理者にとっては、このような障害の発生原因となる得る設定情報の誤りを、設定情報を機器に入力する前に検出または予防したいという要望がある。
本技術分野の背景技術として、特許文献1がある。この公報には、コマンドの入力順序を記載した入力方式設定ファイルを備え、コマンドを入力するときは、入力方式設定ファイルにコマンドが存在するか否かにも基づいて入力すると記載されている。
また、特許文献2がある。この公報には、「設計時トポロジ算出部が、通信機器に設定されるレイヤごとの設計情報および物理接続情報に基づいて、ネットワークのレイヤごとの設計時トポロジを生成し、構築後トポロジ算出部が、実際に各通信機器に設定されたレイヤごとの設定情報を収集し、収集した設定情報に基づいて、実際に構築されたネットワークのレイヤごとの構築後トポロジを生成し、トポロジ比較部が、設計時トポロジと構築後トポロジとをレイヤごとに比較すると記載されている。
特開2011−60105号公報 特開2008−182445号公報
特許文献1に記載の技術では、新規に入力するコマンドを入力可能なコマンドが記載された入力方式設定ファイルと比較する。コマンドにはテナントを示す識別子はなく、かつ、テナントとコマンドとの対応関係も保持していないため、新規入力コマンドにより、あるテナントの仮想リソースが異なるテナントの仮想リソースに接続する障害を検出することはできない。
特許文献2に記載の技術では、ネットワークの各レイヤのトポロジを用いて、ネットワークの接続性を検証する。検証する情報にテナントの情報は含まれないため、異なるテナントのネットワークには接続していないこと(テナントの独立性)を検証することはできない。また、設定情報を機器に入力し、構築後に機器から収集した設定情報を基に生成したトポロジと、設計情報から生成したトポロジを比較するため、設定情報の誤りを、機器にコマンドを入力する前に検出することはできない。
開示されるのは、機器に新規に入力しようとする設定情報により、仮想リソースと、それら仮想リソースを接続するエッジとにより構成される情報処理システムの論理的構造(以下、論理トポロジと称す)がどのように変化するかを、模擬するとともに、設定情報の入力により発生する障害を設定情報入力前に検証する論理トポロジ検証サーバおよびそれに用いる検証方法である。
本明細書では上記課題を解決する方法を複数開示しているが、その一例は、複数種類の物理機器がネットワークで接続された情報処理システム上に構築された、複数種の仮想化技術によって構成された一種類以上の複数の仮想リソースと、複数の前記仮想リソースを接続するエッジと、を含む論理トポロジ情報を、テナント毎に互いに区別して管理する管理サーバであって、
前記物理機器への操作に係る設定情報と、前記設定情報に対応する前記論理トポロジへの操作と、の対応関係を保持し、
前記対応関係に基づき、前記物理機器への前記設定情報から、いずれかの前記論理トポロジへの操作を特定する設定情報解析部と、
前記テナント毎の論理トポロジ情報と、前記論理トポロジへの操作と、各々の前記テナントを特定するテナント識別子と、に基づき、前記物理機器への前記設定情報の入力により変更された後の、前記テナントの論理トポロジを模擬生成するトポロジ生成部と、
模擬生成された前記テナントの論理トポロジに基づき、前記操作に係る設定情報の正しさを検証する検証部と、を有する管理サーバである。
開示により、新規設定情報が正しいか否かを、物理機器への設定入力前に調べることができる。
実施の形態におけるシステム構成例を示す図である。 実施の形態におけるサービスサーバ106aおよびL2スイッチ105aの構成例である。 実施の形態におけるFCスイッチ107aおよびストレージ108aの構成例である。 実施の形態における管理サーバ109の物理構成例である。 実施の形態における管理サーバ109の構成例である。 テナントトポロジDBの504の構成例である。 テナントトポロジDBの504の可視化画面例である。 ノードパターンテーブル534aの構成例である。 エッジパターンテーブル534bの構成例である。 重要度テーブル525の構成例である。 設定情報解析部512の構成例である。 新規設定情報531の構成例である。 新規設定トポロジ生成部513の処理を説明するフローチャートの例である。 ノード追加処理を説明するフローチャートの例である。 ノード削除処理を説明するフローチャートの例である。 エッジ追加処理を説明するフローチャートの例である。 エッジ削除処理を説明するフローチャートの例である。 新規設定トポロジ526の構成例である。 新規設定トポロジ526の可視化画面例である。 二重生成削除検証部516を説明するフローチャートの例である。 テナント間検証部517を説明するフローチャートの例である。 独立性検証部518を説明するフローチャートの例である。 属性検証部519を説明するフローチャートの例である。 テナント内検証部520を説明するフローチャートの例である。 IP重複検証部521および接続性検証部522を説明するフローチャートの例である。 検証結果テーブル527の構成例である。 テナントトポロジ検証画面の例である。 実施例2におけるシステム構成例を示す図である。 例外ノード管理テーブル528の構成例である。 実施例2における独立性検証部529を説明するフローチャートの例である。
以下、実施例を図面を用いて説明する。
第1の実施例を、データセンタのネットワークシステムにおいて、機器に設定された設定情報を基に生成したテナント毎の論理トポロジと、機器に新規に入力する設定情報とを用いて、設定情報入力後のテナントの論理トポロジを模擬生成し、設定情報を事前に検証する例について説明する。
論理トポロジとは、仮想ネットワークを構成する仮想リソースと、仮想リソースを接続するエッジと、の関係を示す論理的構造である。論理トポロジにおいて、仮想リソースはノードと呼ばれる。テナントの論理トポロジとは、テナント毎の情報処理システムを構築する論理トポロジ、すなわち、仮想リソース(ノード)とエッジとの接続関係を示す。
例えば、ノードには、仮想マシン、VLAN、VLANインタフェース、仮想ルータ、仮想ストレージインタフェース、Zone、LU等が含まれ、エッジには仮想マシンとVLANとの接続や、VLANと仮想ルータとの接続等が含まれる。各仮想リソースについては後で詳しく説明する。
図1は、本実施形態におけるシステム構成の例を示す図である。
データセンタ100は、ネットワーク101を介して、適宜のICTサービスを提供するためのシステムを構成する。そのシステムの構成要素になりうる機器として、ファイアウォール102、ロードバランサ103、L3スイッチ104、L2スイッチ105a、105bのようなネットワーク機器に加えて、サーバ106a、106b、106c、106dといったサーバ機器、FC(Fibre Channel)スイッチ107a、107bのようなSAN(Storage Area Network)スイッチ機器、ストレージ108a、108bなどのストレージ機器を含む。これら機器を全て用いてシステムを構成する必要はなく、適宜の種類の機器を適宜の個数だけ用いて、適宜のICTサービスを提供するためのシステムを構成すればよい。また、このシステムには、管理サーバ109が接続される。管理サーバ109はコンソール110と接続している。
ファイアウォール102、ロードバランサ103、L3スイッチ104、L2スイッチ105a、105bのようなネットワーク機器は、LAN(Local Area Network)を構築し、サーバ106a〜106dにネットワーク接続性を提供するとともに、サーバが送受信するパケットを制御する。これらネットワーク機器はサーバと接続し、また、管理サーバ109やデータセンタ100の外部のネットワークとも接続してもよい。LAN内通信をするためのプロトコルはEthernet(登録商標)を含み、LAN間通信をするためのプロトコルはIP(Internet Protocol)を含む。そして、これらネットワーク機器は、VLANのような仮想LAN技術、VLANインタフェースやサブインタフェースのような仮想インタフェース技術、VRFやVRのような仮想ルータ技術を有し、物理的なネットワークの上に仮想的なネットワークを構成する。
サーバ106a〜106dのようなサーバ機器は、適宜のICTサービスを行うためのアプリケーションを実行する。以下、サーバ106a〜106dをサービスサーバと称する。これらサーバ機器は、前述のネットワーク機器を介して相互に接続し、また、データセンタ100の外部に接続する。また、後述のように、FCスイッチ107a、107bを介して、ストレージ機器108a、108bにアクセスする。それぞれのサーバ機器は、NIC(Network Interface Card)やHBA(Host Bus Adapter)あるいはCNA(Converged Network Adapter)を搭載し、LANおよびSANにアクセスする。サーバ機器には、VMM(Virtual Machine Monitor)技術あるいはLPAR(Logical Partitioning)技術によって、複数の仮想サーバ(VM)が生成されていてもよい。この場合、VMは仮想的なインタフェースであるvNIC(Virtual Network Interface Card)、vHBA(Virtual Host Bus Adaptor)や仮想CNAを生成し、これらの仮想的なインタフェースにより、ネットワーク機器あるいはストレージ機器にアクセスする。
FCスイッチ107a、107bのようなSANスイッチ機器は、SANを構成し、サービスサーバ106a〜106dからのI/O(Input/Output)要求をストレージ108a、108bに転送し、ストレージ108から読み出したI/Oデータをサービスサーバ106a〜106dに転送する。SAN内通信およびSAN間通信をするためのプロトコルは、FC、FCIP(FC over IP)、FCoE(FC over Ethernet)やiSCSI(Internet Small Computer System Interface)を含む。また、これらSANスイッチ機器は、Zoning、NPIV(N Port_ID Virtualization)、VSAN(Virtual Storage Area Networking)のような仮想化技術を備えている。これ以外の仮想化技術を備えていてもよい。
ストレージ108a、108bのようストレージ機器は、前述のSANを介して、サービスサーバ106a〜106dに外部記憶領域を提供する。ストレージ機器108は、ストレージにアクセスする物理ポートを仮想化するためのNPIV、物理ストレージに構成された論理ヴォリュームであるLU(Logical Unit)を含む。ストレージ108は、ストレージのポートと、LUおよびサーバを対応付けるLUN(Logical Unit Number)マスキングなどの機能を備えていてもよい。
管理サーバ109は、テナント毎の論理トポロジを保持し、システム内の機器に入力する設定情報から、テナントの論理トポロジを模擬生成したり、設定情報を検証したりする。
なお、上記のシステムの構成機器(ファイアウォールやロードバランサなど)の機能は、ハードウェアによって提供されてもよく、また、ソフトウェアによって提供されてもよい。
図2に、サービスサーバ106aとL2スイッチ105aの装置構成例を示す。サービスサーバ106aは、ハードウェア201として物理CPU202、物理メモリ203、物理NIC204、物理HBA205を備える。ハードウェア201として備える各リソース(202〜205)は仮想化処理部210によって複数の仮想マシン(220、230、240)に分割される。各仮想マシン220、230、240は、1つ以上の仮想NIC221および仮想HBA222を備える。仮想NIC221は仮想スイッチ部212を介して物理NIC204に接続され、仮想HBA222は仮想ポート部213を介して物理HBA205に接続される。
仮想化処理部210は、サーバ設定情報211を保持する。サーバ設定情報211は、サービスサーバ106aに生成された仮想マシン(220、230、240)と、仮想マシンが備える仮想NIC221、仮想HBA222の情報および仮想NIC221、仮想HBA222に対応付けられる物理NIC204、物理HBA205との対応関係を管理する。また、仮想NIC221が属するVLANとの対応関係もサーバ設定情報211に含まれる。
サービスサーバ106aには、複数の仮想リソースが設定されている。仮想マシン(220、230、240)は論理トポロジにおいて仮想マシンノードN705として表わされる。
仮想NIC221および仮想NIC221が属するVLANは、LANの仮想リソースの一つであり、論理トポロジにおいては、VLANインタフェースノードN702およびVLANノードN701として表わされる。仮想HBA222は、SANの仮想リソースの一つであり、論理トポロジにおいては、仮想ストレージインタフェースノードN704として表わされる。サービスサーバ106aに生成されたこれらの仮想リソース(ノード)の情報と、仮想リソース間のエッジの情報は、サーバ設定情報211に設定情報として保持されており、サーバ設定情報211を解析することで、サービスサーバ106aに生成された論理トポロジの情報を取得することができる。
L2スイッチ105aは、ハードウェア250として物理CPU251、物理メモリ252、1つ以上の物理NIC253を備える。さらに、L2スイッチ105aは、ネットワークの各レイヤの仮想化処理を行うために、仮想化処理部260を備える。仮想化処理部260は、L2スイッチ設定情報261を保持し、VLAN処理部262とVRF処理部263を備える。
L2スイッチ設定情報261は、VLAN処理部262およびVRF処理部263の処理に必要な設定情報であり、VLANおよびVRFの定義情報、VLANとVRFとの対応関係、VLANに含まれるインタフェースの情報、VRFとVRFとの対応関係等が含まれる。その他の情報を含んでいてもよい。
VLAN処理部262は、L2スイッチ設定情報261に設定された情報を参照し、L2レイヤの仮想化技術であるVLANの処理を行う。VRF処理部263は、L2スイッチ設定情報261に設定された情報を参照し、L3レイヤの仮想化技術であるVRFの処理を行う。L2スイッチに機種により、VRF処理部は、他のL3レイヤの仮想化技術であるVR処理部であってもよい。仮想化処理部260の処理はハードウェアで行ってもソフトウェアで行ってもどちらでもよい。
論理トポロジにおいて、VLANの定義情報はVLANノードN701、VRFの定義情報はVRFノードN703、VLANに含まれるインタフェースの情報はVLANインタフェースノードN702、VLANとVRFとの対応関係やVRFとVRFとの対応関係はエッジとして表わされる。そのため、L2スイッチ設定情報261を解析することで、L2スイッチ105aに設定された論理トポロジの情報を取得することができる。
図3にFCスイッチ107aとストレージ108aの装置構成例を示す。
FCスイッチ107aはハードウェア300として物理CPU301、物理メモリ302、1つ以上の物理FCポート303を備える。さらに、FCスイッチ107aは、特定のサーバ(106aから106dからのいずれか)からのI/O要求を、サーバに対応づけられたLUを含む適切なストレージ(108aと109bのいずれか)に転送するために、物理CPU301による物理メモリ302に格納されているプログラムの実行またはハードウェアにより実現されるZoning処理部305を備える。Zoning処理部305は、ストレージアダプタのイニシエータとターゲットの対応関係を示すZone情報(物理メモリ302または図示しない記録装置に格納される)を参照する。Zone情報は、FCスイッチ設定情報304に保持されている。
論理トポロジにおいて、Zone情報はZoneノードN706として表わされる。
ストレージ108aはハードウェア310として物理CPU311、物理メモリ312、1つ以上の物理FCポート313、1つ以上の物理ディスク314を備える。物理FCポート313は、FCoEポートでもよい。物理ディスク314は、複数のLU317に論理的に分割される。
さらに、ストレージ108aは、特定の物理FCポート313から入力された特定のサーバ(106aから106dからのいずれか)からのI/O要求をサーバに対応づけられたLU317にに転送するために、物理CPU311による物理メモリ312に格納されているプログラムの実行またはハードウェアにより実現されるLUNマスキング処理部316を備える。LUNマスキング処理部316は、サーバのイニシエータと、LUの番号(LUN)とを対応づけるLUNマスキング情報を参照する。
物理ディスク314を複数のLU317に論理的に分割するためのLU定義情報や、LUNマスキング情報は、ストレージ設定情報315(物理メモリ312または図示しない記録装置に格納される)に保持されている。
論理トポロジにおいて、LU317の定義情報は、仮想ストレージインタフェースノードN704およびLUノードN707として表わされる。また、LUNマスキング情報は、仮想ストレージインタフェースノードとZoneノードとを接続するエッジとして表わされる。
図4に、管理サーバ109の装置構成の例を示す。管理サーバ109は、物理CPU401、物理メモリ402、補助記憶装置403を備える一般的な計算機を用いて実現することができる。さらに、各装置を構成するそれぞれの機能は、CPUが補助記憶装置に格納されているプログラムを実行することにより、上記計算機上に具現化される。各プログラムは、あらかじめ、上記計算機内の補助記憶装置403に格納されていてもよい。あるいは、各プログラムは、必要なときに通信インタフェース404やメディアインタフェース405を経由して上記計算機が利用可能な媒体を介し、他の装置から上記記憶装置に導入されてもよい。媒体とは、たとえば、通信媒体(すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号)、またはメディアインタフェース405に着脱可能な外部記憶媒体407を指す。なお、管理サーバ109は、入出力装置406を介して管理サーバを操作するコンソール110に接続してもよい。
図5は、管理サーバ109の機能構成例を示す図である。
管理サーバ109は、構成要素として、管理要求受付部501、視覚化部502、テナントトポロジ生成部503、テナントトポロジ検証部510を有する。
管理要求受付部501は、テナントの論理トポロジの生成、検証に関する処理要求をオペレータから受付け、各機能部に処理の実行を命令する。オペレータが要求する処理は、例えば、新たに機器に設定する設定情報(以下、新規設定情報と称す)の検証要求や、新規設定情報によって変更されるテナントの論理トポロジの可視化である。また、オペレータからの処理要求には、管理サーバ内の各処理部が使用するテーブルやDBの登録要求も含まれる。これらの処理要求により、テナントトポロジ検証部510および、視覚化部502が実行される。各処理部が必要とする新規設定情報やテナントID等の情報も管理要求受付部501を介して各処理部に通知される。
視覚化部502は、新たに機器に設定する新規設定情報の検証結果や、新規設定情報により変更されるテナントのトポロジ情報を可視化する。検証結果の可視化には、CLI表示制御部506を用いてCLI(Command Line Interface)画面に検証結果を出力する。また、トポロジ情報の可視化にはGUI表示制御部505を用いてGUI(Graphical User Interface)画面に論理トポロジを出力する。
テナントトポロジ生成部503は、データセンタ内の各機器(102〜108b)から設定情報(サーバ設定情報211、L2スイッチ設定情報261、FCスイッチ設定情報304、ストレージ設定情報315等)を収集し、収集した設定情報からテナント毎の論理トポロジを生成し、テナントトポロジDB504に格納する。なお、テナントトポロジ生成部503は必ず必要な処理部ではなく、オペレータが手動でテナントトポロジDB504のエントリを作成し、管理要求受付部501を介してテナントトポロジDB504に設定してもよい。
図6にテナントトポロジDB504の構成例を示す。テナントトポロジDB504は、テナントの情報処理システムを構築する仮想リソースと、仮想リソース間のエッジと、の接続関係、すなわち、論理トポロジをテナント毎に示すデータベースである。テナントトポロジDB504は、1つ以上の論理トポロジエントリで構成される。1つの論理トポロジエントリは、1つのテナントの論理トポロジを示す。1つの論理トポロジエントリ600aは、トポロジID601、テナントID602、ノード管理テーブル610、エッジ管理テーブル620を含む。
トポロジID601は、テナントトポロジDB504内で一意に論理トポロジを識別するための識別子である。テナントID602は、テナントを識別するための識別子である。テナントトポロジDB504内でテナントを一意に識別できる値であれば、識別子は文字列であったり、数字であったり、記号であったりしてもよい。テナントに関連づかない仮想リソースが機器に設定されている場合、論理トポロジエントリのテナントID602はNULLを用いる。
ノード管理テーブル610は、テナントの情報処理システムを構成する仮想リソース(ノード)の情報を管理するためのテーブルである。構成要素としてノード識別子611、ノードタイプ612、機器識別子613、タイプ内識別子614を含む。ノード識別子611は、仮想ネットワーク全体で一意にノードを特定するための識別子である。ノードタイプ612は、仮想リソースの種類を示す識別子である。仮想リソースには、VLANノードN701、VLANインタフェースノードN702、VRFノードN703、仮想ストレージインタフェースノードN704、仮想マシンノードN705、ZoneノードN706、LUノードN707等が含まれる。
本実施例では、ノードタイプN1はVLANノード、ノードタイプN2はVLANインタフェースノードN702、ノードタイプN3はVRFノードN703、ノードタイプN4は仮想ストレージインタフェースノードN704、ノードタイプN5は仮想マシンノードN705、ノードタイプN6はZoneノードN706、ノードタイプN7はLUノードN707に対応する。
機器識別子613は、ノードが定義されている物理機器の識別子を示す。ノードが複数の物理機器で定義されている場合は、機器識別子613に複数の物理機器の識別子が含まれる。
タイプ内識別子614は、ノードタイプ612に付随する識別子を含む。ノードタイプN1のVLANの場合、タイプ内識別子614にはVLAN IDを含む。ノードタイプN2のVLANインタフェースの場合、タイプ内識別子614にはVLANインタフェース番号と、インタフェースに付与されたIPアドレスの両方を含む。ノードタイプN3のVRFの場合、タイプ内識別子614には仮想ルータ番号を含む。ノードタイプN4の仮想ストレージインタフェースの場合、タイプ内識別子614には、仮想HBAのWWNまたはストレージの物理FCポートのWWNを含む。ノードタイプN5の仮想マシンの場合、タイプ内識別子614には仮想マシンの識別子を含む。ノードタイプN6のZoneの場合、タイプ内識別子614には、Zoneに含まれるイニシエータとターゲットのWWNを含む。ノードタイプN7のLUの場合、タイプ内識別子614にはLUNが含まれる。
行615は、機器SW1およびServer1に、VLAN番号(ノードN1のタイプ内識別子)が10のVLAN(ノードN1)が存在することを意味し、行616は、機器SW1においてVLANインタフェース番号(ノードN2のタイプ内識別子)が10、IPアドレスがx.x.x.xのVLANインタフェース(ノードN2)が存在することを意味し、行617は機器FW1において仮想ルータ番号(ノードN3のタイプ内識別子)が1の仮想ルータ(ノードN3)が存在することを意味する。
エッジ管理テーブル620は、テナントの情報処理システムを構成する仮想リソース(ノード)を接続するエッジを管理するためのテーブルである。エッジ管理テーブル620は構成要素として、エッジ識別子621、エッジタイプ622、ノード識別子623−1、623−2を含む。エッジ識別子621は、仮想ネットワーク全体で一意にエッジを特定するための識別子である。エッジタイプ622は、エッジの種類を示す識別子である。ノード識別子623−1、623−2は、エッジの両端に接続されるノードのノード識別子である。
テナントトポロジDB504をコンソール110上に可視化した論理トポロジ構成例を図7に示す。可視化は、視覚化部502のGUI表示制御部505により実現され、図7の外枠が、図27に示すテナントトポロジ検証画面の新規設定トポロジ表示エリア2701に相当する。
識別子1000で示されるテナントの情報処理システムは、2つの仮想マシンノードN705から構成され、仮想マシンノードN70は、仮想ストレージインタフェースノードN704、ZoneノードN706を介してLUノードN707に接続する。さらに、仮想マシンノードN705は、VLANインタフェースノードN702、VLANを介してVRFN703に接続し、VRFはさらに異なるVRFに接続していることを示している。本構成例では、論理トポロジをテナント毎に可視化しているが、複数のテナントの論理トポロジを同時に可視化してもよい。
図5に戻り、テナントトポロジ検証部510を説明する。
テナントトポロジ検証部510は、構成要素として、テーブル登録部511、設定情報解析部512、新規設定トポロジ生成部513、二重生成削除検証部516、テナント間検証部517、テナント内検証部520、パターンテーブル524、重要度テーブル525、新規設定トポロジ526、検証結果テーブル527を含む。
テーブル登録部511は、テナントトポロジ検証部510の各処理が使用するテーブルの登録、変更、削除を行う。オペレータがテーブルの登録、削除、変更要求を行った場合に、管理要求受付部501から、オペレータが要求した登録、変更、削除情報を受け付け、各テーブルの操作を行う。本処理で登録されるテーブルはパターンテーブル524、重要度テーブル525である。
設定情報解析部512は、テナントの情報処理システムの構築、変更、削除に関する機器毎の新規設定情報から、該当するテナントの論理トポロジに対する操作対象と操作を1つずつ特定し、新規設定トポロジ生成部513、二重生成削除検証部516、テナント間検証部517、テナント内検証部520の処理を命令する。
新規設定トポロジ生成部513は、新規設定情報を機器に入力することにより、テナントの論理トポロジがどのように変化するかを解析し、新規設定情報入力後のテナントの論理トポロジを模擬生成する。新規設定トポロジ生成部513には、ノード操作部514とエッジ操作部515があり、操作対象により、異なる処理部が実行される。生成した論理トポロジは新規設定トポロジ526に保存される。
二重生成削除検証部516は、設定操作によりテナントトポロジDB504に既に存在するノードやエッジを生成(二重生成)したり、テナントトポロジDB504に存在しないノードやエッジを削除(二重削除)したりしないかを検証する。検証結果は検証結果テーブル527に登録される。
テナント間検証部517は、新規設定情報を機器に入力することにより、操作対象のテナント以外のテナントの論理トポロジに影響が及ばないことを検証する。独立性検証部518は、1つの設定操作によって、操作対象のテナントの論理トポロジが異なるテナントの論理トポロジに接続する障害の可能性を検証する。属性検証部519は、設定操作によって、操作対象以外のテナントの論理トポロジを削除する障害の可能性を検証する。検証結果は検証結果テーブル527に登録される。
テナント内検証部520は、複数の設定操作により操作対象のテナントの論理トポロジが変化した後も、テナント内の接続性が保たれることを検証する。IP重複検証部521は、テナント内に同一のIPアドレスを含む仮想リソースが存在し、通信が不可能となる障害の可能性を検証する。接続性検証部522は、テナントの論理トポロジを構成する仮想リソースが、エッジによって接続されず、仮想リソース間の通信が不可能となる障害の可能性を検証する。到達性検証部523は、テナント内の仮想リソース間の通信においてルーティングテーブルやACL(Access Control List)やLB(Load Balancer)等を経由することにより、L3レイヤ以上の接続性が確保されず通信が不可能となる障害の可能性を検証する。検証結果は検証結果テーブル527に登録される。
図8および図9にパターンテーブル524の構成例を示す。パターンテーブル524は、設定情報解析部512が、物理機器に新たに設定する設定情報から、テナントの論理トポロジへの操作を特定するために使用するテーブルである。パターンテーブル524には、ノードパターンテーブル524a(図8)とエッジパターンテーブル524b(図9)が含まれる。
ノードパターンテーブル524aは機器に設定する設定情報から、仮想リソース(ノード)に関する操作を抽出するためのテーブルである。ノードパターンテーブル524aは、仮想リソースの操作に関する設定パターン801と、ノードタイプ802と、操作タイプ803との対応を管理する。ノードタイプ802は、設定パターン801により操作される仮想リソースの種別を示す。ノードタイプ802の種類は、テナントトポロジDB504におけるノードタイプ612と一致する。操作タイプ803は、設定パターン801による仮想リソースの操作が、追加であるか削除であるかを示す。
設定パターン801の各セルに記載されている内容について説明する。セル内の最初の行は、ある項目の設定を開始するコマンドであることを意味し、最後の行はこの項目に関する設定を終了するコマンドであることを意味する。例えば、VLANインタフェースの設定パターン812においては、“interface vlan <id>”が、あるVLANインタフェースの設定を開始するコマンドであることを意味し、最後の“exit”の行が、この設定を終了するコマンドであることを意味する。また、テナントトポロジDB504のタイプ内識別子614で説明したように、VLANインタフェースのタイプ内識別子は、VLAN IDとIPアドレスである。“interface vlan <id>”から、VLANインタフェースのタイプ内識別子であるVLALN IDは<id>、“ip address <x.x.x.x/y>”から、VLANインタフェースのタイプ内識別子であるIPアドレスは<x.x.x.x/y>と特定する。“:”で記載される場所には、設定パターン801に示されていないコマンドが存在してもよいことを示す。
エッジパターンテーブル524bは、機器に設定する設定情報から、仮想リソース(ノード)を接続するエッジに関する操作を抽出するためのテーブルである。エッジパターンテーブル524bは、エッジの操作に関する接続パターン901と、エッジタイプ902と、接続ノードタイプ903、操作タイプ904との対応を管理する。エッジタイプ902は、エッジの種別を示す。例えば、エッジE1はVLANとVLANインタフェースそれぞれの仮想リソース間の接続、エッジE2はVLANインタフェースとVRFそれぞれの仮想リソース間の接続、エッジE3はVRFの2つの仮想リソース間の接続である。
接続パターン901の各セルに記載されている内容について説明する。セル内の最初の行は、ある項目の設定を開始するコマンドであることを意味し、最後の行はこの項目に関する設定を終了するコマンドであることを意味する。例えば、接続パターン911において“interface vlan”から始まるコマンドがエッジの設定を開始するコマンドであることを意味し、“exit”がこの設定を終了するコマンドであることを意味する。”<id>”で示されるVLANの仮想リソースと、VLANインタフェースの仮想リソースを接続するエッジを追加することを示す。なお、“:”で記載される場所には、接続パターンの例に示されていないコマンドが存在してもよいことを示す。
接続パターン912においては、<id1>で示されるVLANインタフェースの仮想リソースと<id2>で示されるVRFの仮想リソースとを接続するエッジを追加することを示す。接続パターン913においては、<id1>で示されるVRFの仮想リソースと<id2>で示されるVRFの仮想リソースとが、<name>で示される文字列によって関連付けられ、2つのVRF仮想リソース間を接続するエッジが追加することを示す。
接続パターン914においては、<id>”で示されるVLANの仮想リソースと、VLANインタフェースの仮想リソースを接続するエッジを削除することを示す。
パターンテーブル524は機器毎にテーブルを保持する。そのため、パターンテーブル524には、ファイアウォール102用、ロードバランサ103用、L3スイッチ104用、L2スイッチ105用、サービスサーバ106用、FCスイッチ107用、ストレージ108用のパターンテーブルが含まれる。また、機器により、機種が異なる場合、例えば、サービスサーバ106aとサービスサーバ106bで機種が異なる場合は、サービスサーバ106a用のパターンテーブルとサービスサーバ106b用のパターンテーブルを保持する。
図10に重要度テーブル525の構成例を示す。重要度テーブル525は、二重生成削除検証部516、テナント間検証部517、テナント内検証部520において判定した検証結果の重要度を判定し、検証結果テーブル527に登録する際に用いるテーブルである。
重要度テーブル525には、検証ID1001と、検証結果1002と、重要度1003と、検証結果の説明1004との対応関係を、各検証部516〜523における検証結果と一致するように、予め設定しておく。
検証ID1001は、テナントトポロジ検証部510内の各検証部516〜523で検証した検証結果を示す識別子である。検証結果1002は、検証結果がWarningであるか、Failであるか、Passであるかを示す。重要度1003は、検証結果の重要度を示す。検証結果の説明1004は、検証結果を説明するための文字列である。検証結果の説明1004は必ず必要な構成要素ではない。
検証結果1002は、Warning、Fail、Passの3段階であるが、オペレータは、重要度1003を、検証部毎に任意の値に設定できる。そのため、検証結果1002が同じ場合でも、検証結果の重要度を変更することができる。例えば、テナント間検証部517における検証結果Failは重要度を高く設定し、テナント内検証部520における検証結果Failは重要度を低く設定することができる。テナント間検証部517によって検証される障害の方が、障害の波及範囲が広いためである。
新規設定トポロジ526および検証結果テーブル527については、後述する新規設定トポロジ生成部513、二重生成削除検証部516、テナント間検証部517、テナント内検証部520の詳細な処理フローとともに説明する。
次に、テナントトポロジDB504と、新たに機器に設定する新規設定情報531から、テナントの論理トポロジを模擬生成する処理フローとテナントの論理トポロジを検証する処理フローを詳細に説明する。
オペレータはコンソール110より、新たに機器に設定する予定の新規設定情報531と新規設定情報531に対応づけられるテナントID532を入力する。入力された新規設定情報531とテナントID532は、管理要求受付部501を介して設定情報解析部512に通知される。
図11に設定情報解析部512の処理フローを示す。
設定情報解析部512は、新規設定情報531およびテナントID532を取得する(ステップ1101)。
図12に新規設定情報531の例を示す。新規設定情報531は、1つのテナントに関連付けて機器に入力する設定コマンドの一覧である。コマンド以外の設定方法を用いる機器、例えばWEBインタフェース等は、HTML(Hypertext Markup Language)やXML(Extensible Markup Language)で書かれた設定情報の一覧であってもよい。複数の機器に設定情報を入力する場合は、機器毎に設定操作の一覧を入力する。例えば、531aは、L2スイッチの機種aaaへ入力する設定操作の一覧であり、531bは、サーバに入力する設定操作の一覧であったり、531cはFCスイッチに入力する設定操作の一覧であったりする。新規設定情報531には、対応する機器に入力可能な設定操作が記述されており、文法的な誤りは含まれないことを前提とする。設定操作の文法的な誤りは既存の方法を用いて予め検証を行う。
次に、設定情報解析部512は、新規設定情報531aに対応した機器および機種のパターンテーブル524を参照し(ステップ1102)、新規設定情報531aの中から、パターンテーブル524の設定パターン801または接続パターン901に一致する設定操作を一つ特定する(ステップ1103)。設定操作は、ノードパターン管理テーブルの設定パターン801または、エッジパターンテーブルの接続パターン901によって特定される論理トポロジの操作を1つ行う、1つ以上のコマンドのまとまりである。さらに、設定操作に対応する論理トポロジの操作におけるオブジェクト情報と操作(追加または削除)、設定する機器の機器識別子を特定する(ステップ1104)。オブジェクト情報はノードまたはエッジの情報であり、ノードの場合は、ノードタイプ、タイプ内識別子の情報が含まれる。エッジの場合は、エッジタイプ、エッジで接続される2つのノードのノードタイプとタイプ内識別子の情報が含まれる。
例えば、ノードパターンテーブル524a、エッジパターンテーブル524bを参照して、新規設定情報531aを検索すると、811行の設定パターン801が検索にヒットし、設定操作1201が1つ特定されるとともに、ノードパターンテーブル524aのノードタイプ802、操作タイプ803から、設定操作1201による操作が、ノードタイプN1(VLANノード)の追加であることが特定でき、VLANノードのタイプ内識別子であるVLAN IDは100であることが特定できる。
ステップ1104により特定したオブジェクト情報と操作、機器識別子、テナントID532を引数として新規設定トポロジ生成部513、二重生成削除検証部516、テナント間検証部517の処理を実行する(ステップ1105、1106、1107)。
すべての設定操作についてステップ1102から1107の処理を繰り返し、全設定操作の処理が終了した場合(ステップ1108でYes)は、テナント内検証部520の処理を実行する(ステップ1109)。新規設定情報531に複数の機器の設定情報が含まれる場合は、機器ごとに設定情報解析部512の処理を実行する。
図13に新規設定トポロジ生成部513の処理フローを示す。
新規設定トポロジ生成部513は、設定情報解析部512から、オブジェクト情報、操作、機器識別子、テナントID532を取得する(ステップ1301)。
ステップ1301で取得したテナントIDが設定された新規設定トポロジが存在しない場合(ステップ1302でNo)は、初期化処理(ステップ1303)を実行し、新規設定トポロジ526を初期化する。
図18に新規設定トポロジ526の構成例を示す。新規設定トポロジ526は、新規設定情報によるテナントの論理トポロジの変化を模擬するためのテーブルである。新規設定トポロジ526の構成要素は、トポロジID1801、テナントID1802、ノード管理テーブル1810、エッジ管理テーブル1820を含む。ノード管理テーブル1810の構成要素として、ノード識別子1811、ノードタイプ1812、機器識別子1813、タイプ内識別子1814、テナントID1815を含む。エッジ管理テーブル1820の構成要素として、エッジ識別子1821、エッジタイプ1822、ノード識別子1823−1、1823−2を含む。
新規設定トポロジ526の構成は、ノード管理テーブル1810の構成要素にテナントID1815が含まれる以外は、テナントトポロジDB504を構成する1つの論理トポロジエントリと同等である。
初期化処理(ステップ1303)では、新規設定トポロジ526を新規生成後、ステップ1301で取得したテナントIDを基にテナントトポロジDB504を検索する。テナントIDが一致するテナントの論理トポロジエントリが存在する場合には、該当するエントリに設定された全情報を新規設定トポロジ526にコピーし、ノード管理テーブル1810内のテナントID1815に、ステップ1301で取得したテナントIDを登録する。テナントIDが一致するテナントトポロジエントリが存在しない場合には、新規設定トポロジ526のテナントID1802に、ステップ1301で取得したテナントIDのみを登録する。
新規設定トポロジが存在する場合(ステップ1302でYes)は、初期化処理(ステップ1303)は行わない。
次に、ステップ1301で取得したオブジェクト情報がノードの場合(ステップ1304でYes)は、ノード操作部514の処理を実行する(ステップ1305)。ステップ1301で取得したオブジェクト情報がエッジの場合(ステップ1306でYes)は、エッジ操作部515の処理を実行する(ステップ1307)。オブジェクト情報がノードまたはエッジに該当しない場合には処理を終了する。
次に、ノード操作部514の処理を説明する。
ステップ1301取得した操作が追加の場合(ステップ1308でYes)は、ノード追加処理を実行する(ステップ1309)。ステップ1301で取得した操作が削除の場合(ステップ1310でYes)は、ノード削除処理を実行する(ステップ1311)。
図14にノード操作部514のノード追加処理の処理フローを示す。
ノード追加処理は、オブジェクト情報に含まれるノードタイプ、タイプ内識別子を基に、新規設定トポロジ526を検索する(ステップ1401)。新規設定トポロジ526のノード管理テーブル1810に、ノードタイプ、タイプ内識別子が一致するノードが存在する場合(ステップ1402でYes)には、検索にヒットしたノードの機器識別子1813を参照する。該当ノードの機器識別子1813に、ステップ1301で取得した機器識別子が既に登録されている場合(ステップ1403でYes)場合には、処理を終了する。機器識別子が登録されていない場合(ステップ1403でNo)の場合には、検索にヒットしたノードの機器識別子1813に、ステップ1301で取得した機器識別子を登録して処理を終了する。新規設定トポロジ526のノード管理テーブル1810に、ノードタイプ、タイプ内識別子が一致するノードが存在しない場合(ステップ1402でNo)には、新規設定トポロジ526のノード管理テーブル1810に、ノードタイプ1812、機器識別子1813、タイプ内識別子1814、テナントID1815を登録し処理を終了する。
図15にノード操作部514のノード削除処理の処理フローを示す。
ノード削除処理は、オブジェクト情報に含まれるノードタイプ、機器識別子、タイプ内識別子を基に、新規設定トポロジ526を検索する(ステップ1501)。
新規設定トポロジ526のノード管理テーブル1810に、ノードタイプ、機器識別子、タイプ内識別子が一致するノードが存在する場合(ステップ1502でYes)には、新規設定トポロジ526内の該当ノードの機器識別子1813から該当機器の機器識別子を削除する(ステップ1506)。該当ノードの機器識別子1813からすべての機器識別子が削除された場合(ステップ1507でYes)は、新規設定トポロジ526のノード管理テーブル1810から該当ノードのエントリを削除する(ステップ1508)。該当ノードの機器識別子1813に他の機器の機器識別子が登録されている場合(ステップ1507でNo)は処理を終了する。
新規設定トポロジ526のノード管理テーブル1810に、ノードタイプ、機器識別子、タイプ内識別子が一致するノードが存在しない場合(ステップ1502でNo)には、ノードタイプ、機器識別子、タイプ内識別子を基に、テナントトポロジDB504を検索する(ステップ1503)。テナントトポロジDB504内の論理トポロジエントリのノード管理テーブル610に、ノードタイプ、機器識別子、タイプ内識別子が一致するノードが存在しない場合(ステップ1504でNo)には処理を終了する。
テナントトポロジDB504内の論理トポロジエントリのノード管理テーブル610に、ノードタイプ、機器識別子、タイプ内識別子が一致するノードが存在する場合(ステップ1504でYes)は、該当ノードを含むテナントの論理トポロジエントリから、ノード管理テーブル610とエッジ管理テーブル620を新規設定トポロジ526のノード管理テーブル1810およびエッジ管理テーブル1820に取り込み、ノード管理テーブル1810のテナントID1815には、テナントトポロジDB504の論理トポロジエントリのテナントID602に登録された値を登録する(ステップ1505)。ステップ1506以降の処理は前述の通りである。
図13に戻り、エッジ操作部515の処理フローについて説明する。
エッジ操作部515は、ステップ1301取得した操作が追加の場合(ステップ1312でYes)は、エッジ追加処理を実行する(ステップ1313)。ステップ1301で取得した操作が削除の場合(ステップ1314でYes)は、エッジ削除処理を実行する(ステップ1315)。
図16にエッジ操作部515のエッジ追加処理の処理フローを示す。
エッジ追加処理は、ステップ1301で取得したオブジェクト情報に含まれる2つのノードの情報の中から1つを選択する(ステップ1601)。ステップ1601で選択したノードのノードタイプ、機器識別子、タイプ内識別子を基に、新規設定トポロジ526を検索する(ステップ1602)。新規設定トポロジ526のノード管理テーブル1810に、ノードタイプ、機器識別子、タイプ内識別子が一致するノードが存在する場合(ステップ1603でYes)は、ステップ1608を実行する。新規設定トポロジ526のノード管理テーブル1810に、ノードタイプ、機器識別子、タイプ内識別子が一致するノードが存在しない場合(ステップ1603でNo)は、ノードタイプ、タイプ内識別子を基にテナントトポロジDB504を検索する(ステップ1604)。テナントトポロジDB504内の論理トポロジエントリのノード管理テーブル610に、ノードタイプ、タイプ内識別子が一致するノードが存在しない場合(ステップ1605でNo)は、エッジを構成する一端のノードが存在しないと判定し、ステップ1608を実行する。
テナントトポロジDB504内の論理トポロジエントリのノード管理テーブル610に、ノードタイプ、タイプ内識別子が一致するノードが存在する場合(ステップ1605でYes)は、ステップ1604で検索にヒットしたノードを含む論理トポロジエントリのテナントID602と、ステップ1301で取得したテナントIDとを比較する。テナントIDが一致する場合(ステップ1606でNo)は、ステップ1608を実行する。
テナントIDが不一致の場合(ステップ1606でYes)は、ステップ1604で検索にヒットしたノードを含む論理トポロジエントリのノード管理テーブル610とエッジ管理テーブル620を新規設定トポロジ526のノード管理テーブル1810とエッジ管理テーブル1820に追加し、追加したノードのテナントID1815には、テナントトポロジDB504の論理トポロジエントリのテナントID602に登録された値を登録する(ステップ1607)。
ステップ1608では、エッジを構成する2つのノードを基に新規設定トポロジの検索が終了したかを判定する。エッジを構成する2つノードの検索が終了していない場合(ステップ1608でNo)には、ステップ1601に戻り、もう一方のノードの検索を行う。エッジを構成する2つのノードの検索が終了した場合(ステップ1608でYes)は、エッジの両端のノードが存在しているかを判定する。エッジの両端のノードが存在しない場合(ステップ1609でNo)は、処理を終了する。エッジの両端ノードが存在する場合(ステップ1609でYes)は、新規設定トポロジ526にエッジを追加する(ステップ1610)。
図17にエッジ操作部515のエッジ削除処理の処理フローを示す。
オブジェクト情報に含まれるエッジタイプ、エッジで接続される2つのノードのノードタイプ、装置識別子、タイプ内識別子を基に、新規設定トポロジ526のノード管理テーブル1810、エッジ管理テーブル1820を検索する(ステップ1701)。
エッジタイプ、エッジで接続される2つのノードのノードタイプ、装置識別子、タイプ内識別子が一致するエッジが存在する場合(ステップ1702でYes)は、該当するエッジを新規設定トポロジ526のエッジ管理テーブル1820から削除し(ステップ1707)、処理を終了する。
エッジが存在しない場合(ステップ1702でNo)は、エッジタイプ、エッジで接続される2つのノードのノードタイプ、装置識別子、タイプ内識別子を基に、テナントトポロジDB504のノード管理テーブル610、エッジ管理テーブル620を検索する(ステップ1703)。
エッジタイプ、エッジで接続される2つのノードのノードタイプ、装置識別子、タイプ内識別子が一致するエッジが存在しない場合(ステップ1704でNo)は、処理を終了する。エッジが存在する場合(ステップ1704でYes)は、該当エッジを含む論理トポロジエントリのテナントID602と、ステップ1301で取得したテナントIDとを比較する。テナントIDが一致する場合(ステップ1705でNo)の場合は処理を終了する。テナントIDが不一致の場合(ステップ1705でYes)は、ステップ1704で検索にヒットしたエッジを含む論理トポロジエントリのノード管理テーブル610とエッジ管理テーブル620を新規設定トポロジ526のノード管理テーブル1810とエッジ管理テーブル1820に追加し、ノード管理テーブル1810のテナントID1815には、テナントトポロジDB504の論理トポロジエントリのテナントID602に登録された値を登録する(ステップ1706)。ステップ1707で、該当するエッジを新規設定トポロジ526のエッジ管理テーブル1820から削除し、処理を終了する。
以上のようにして、機器に設定情報を入力することによりテナントの論理トポロジがどのように変更するかを設定操作毎に模擬することができる。
特に、ステップ1503からステップ1508の処理により、新規に機器に入力予定の設定操作により、異なるテナントのノード情報を削除した論理トポロジを生成することができる。また、ステップ1604からステップ1610の処理により、新規に機器に入力予定の設定操作により、異なるテナントのノードと接続した論理トポロジを生成することができる。さらに、ステップ1703から1707の処理により、新規に機器に入力予定の設定操作により、異なるテナントのエッジ情報を削除した論理トポロジを生成することができる。
図19に、新規設定トポロジ生成部513の処理を実行後、視覚化部502により、新規設定トポロジ526を、図27に示すテナントトポロジ検証画面のトポロジ表示エリア2701に可視化した例を示す。この例では、誤った設定操作を含む設定情報によりテナントID1000の仮想ルータの仮想リソースN1901と、テナントID2000のVLANインタフェースの仮想リソースN1902が、エッジE1903により接続されることを示している。
図20に二重生成削除検証部516の処理フローを示す。二重生成削除検証部516は、二重生成検証部516aと二重削除検証部516bの2つの処理フローを含む。
まず、二重生成検証部516aについて説明する。
二重生成検証部516aは、設定操作によって追加する仮想リソースが既に設定済みでないことを検証する。
二重生成検証部516aは、設定情報解析部512から、オブジェクト情報と、操作と、機器識別子と、テナントID532と、を取得する(ステップ2001)。
操作が追加操作以外の場合(ステップ2002でNo)は処理を終了する。操作が追加操作の場合(ステップ2002でYes)は、オブジェクト情報を基にテナントトポロジDB504を検索する(ステップ2003)。オブジェクト情報はノードまたはエッジの情報であり、ノードの場合は、ノードタイプ、タイプ内識別子の情報が含まれる。エッジの場合は、エッジタイプ、エッジで接続される2つのノードのノードタイプとタイプ内識別子の情報が含まれる。
例えば、オブジェクトがノードの場合は、ノードタイプ、タイプ内識別子、機器識別子を基にテナントトポロジDB504のノード管理テーブル610を検索する。オブジェクトの場合は、エッジタイプ、エッジで接続される2つのノードのノードタイプ、タイプ内識別子、機器識別子を基にテナントトポロジDB504のノード管理テーブル610とエッジ管理テーブル620を検索する。
オブジェクト情報が一致するオブジェクトがテナントトポロジDB504に存在するかを判定する(ステップ2004)。オブジェクトがノードの場合には、ステップ2001で取得したオブジェクト情報(ノードタイプ、タイプ内識別子)、機器識別子が一致するノードが存在するかを判定する。オブジェクトがエッジの場合には、ステップ2001で取得したオブジェクト情報(エッジタイプ、エッジで接続される2つのノードのノードタイプとタイプ内識別子)が一致するエッジが存在するかを判定する(ステップ2005)。
オブジェクトが既に存在する場合(ステップ2004でYes)には、二重生成と判定し、検証結果に対応する検証ID(例えば、v1)を取得する。検証IDは、検証処理における検証結果を一意に特定できる識別子であり、重要度テーブル525の検証ID1001に登録された値のいずれかと一致する。
オブジェクトが存在しない場合(ステップ2004でNo)には、検証Passと判定し、検証結果に対応する検証ID(例えば、v1000)を取得する(ステップ2006)。
取得した検証IDを基に重要度テーブル525を参照し、検証結果1002、重要度1003を取得し、検証結果テーブル527に設定操作1201、検証結果1002、重要度1003を登録する。設定操作1201は、既に登録されている場合は、登録しない(ステップ2007)。
図26に検証結果テーブル527の構成例を示す。検証結果テーブル527は、設定操作2601と、設定情報による操作の検証結果、重要度を管理するためのテーブルであり、テナント別に管理する。構成要素として、設定操作2601と、各検証部に対応した検証結果、重要度の登録欄(2602〜2607)を含む。本実施例における検証部は、二重生成削除検証部516、テナント間検証部517における独立性検証部518および属性検証部519、テナント内検証部520におけるIP重複検証部521、接続性検証部522、到達性検証部523であるため、各検証部に対応した検証結果の登録欄を含む。例えば、二重生成削除検証部516の検証結果および重要度は、二重生成削除検証結果の登録欄2602に登録する。本構成例では、各登録欄の上段に検証結果を登録し、下段に重要度を示す。検証結果WAはWarningを示す。重要度L1は重要度が1であること示す。
図20に戻り、二重削除検証部516bについて説明する。
二重削除検証部516bは、設定操作によって削除する仮想リソースが存在することを検証する。
二重削除検証部516bは、設定情報解析部512から、オブジェクト情報と、操作と、機器識別子と、テナントID532と、を取得する(ステップ2011)。
操作が削除操作以外の場合(ステップ2012でNo)は処理を終了する。操作が削除操作の場合(ステップ2012でYes)は、オブジェクト情報を基にテナントトポロジDB504を検索する(ステップ2013)。オブジェクトの検索方法は、二重生成検証部と同様である。
オブジェクトが存在しない場合(ステップ2014でNo)には、二重削除と判定し、検証結果に対応する検証ID(例えば、v2)を取得する。オブジェクトが存在する場合(ステップ2014でYes)には、検証Passと判定し、検証結果に対応する検証ID(例えば、v1002)を取得する。
取得した検証IDを基に重要度テーブル525を参照し、検証結果1002、重要度1003を取得し、検証結果テーブル527に設定操作1201、検証結果1002、重要度1003を登録する(ステップ2017)。設定操作は、既に登録されている場合は、登録しない。
次にテナント間検証部517の処理フローを示す。
テナント間検証部517は、新規設定情報を機器に入力することにより、操作対象のテナント以外のテナントの論理トポロジに影響が及ばないことを検証する。独立性検証部518は、1つの設定操作によって、操作対象のテナントの論理トポロジが異なるテナントの論理トポロジに接続する障害が引き起こされる可能性を検証する。属性検証部519は、設定操作によって、操作対象以外のテナントの論理トポロジが操作する障害が引き起こされる可能性を検証する。
図21にテナント間検証部517の処理フローを示す。
テナント間検証部517は、設定情報解析部512から、オブジェクト情報、操作、機器識別子、テナントID532を取得する(ステップ2101)。
操作が削除操作(ステップ2102でYes)の場合は、属性検証部519の処理を実行する(ステップ2103)。操作が追加操作(ステップ2105でYes)の場合は、ステップ2101で取得したオブジェクト情報がエッジの場合(ステップ2105でYes)に、独立性検証部518の処理を実行する(ステップ2106)。
独立性検証は、エッジを追加する場合に必要な検証項目である。属性検証は、仮想リソース、すなわちノード、および/またはエッジを削除する場合に必要な検証項目である。
図22に独立性検証部518の処理フローを示す。
独立性検証部518は、テナント間検証部517よりオブジェクト情報、操作、機器識別子、テナントIDを取得する(ステップ2201)。独立性検証部518はエッジ追加操作の場合に実行される処理のため、オブジェクト情報はエッジの情報である。エッジの情報にはエッジタイプ、エッジで接続される2つのノードのノードタイプとタイプ内識別子の情報が含まれる。
エッジで接続される2つのノード情報のうち、1つのノード情報を選択し(ステップ2202)、ノードタイプ、タイプ内識別子を基に新規設定トポロジ526を検索する(ステップ2203)。ノードタイプ、ノードのタイプ内識別子が一致するノードが存在する場合(ステップ2204でYes)は、ステップ2203で検索したノードは同一テナントに含まれるノードと判断できる。次にステップ2210を実行する。
ノードタイプ、ノードのタイプ内識別子が一致しない場合(ステップ2204でNo)は、新規設定トポロジ526内にエッジで接続しようとするノードが存在せず、他のテナントの論理トポロジに含まれるノードに接続する可能性がある。そこで、ノードタイプ、ノードのタイプ内識別子を基にテナントトポロジDB504を検索する(ステップ2205)。ノードタイプ、ノードのタイプ内識別子が一致するノードが存在しない場合(ステップ2206でNo)は、設定操作によって接続しようとするノード1つが存在しないと判定し、対応する検証IDを取得する(ステップ2207)。
ノードタイプ、ノードのタイプ内識別子が一致するノードが存在する場合(ステップ2206でYes)は、該当ノードを含むテナントの論理トポロジエントリのテナントID602を取得する。
テナントID602がステップ2201で取得したテナントIDと一致するか、NULL以外の場合(ステップ2208でNo)は、エッジを追加することにより、異なるテナントのノードと接続するため、独立性違反と判断する。対応する検証IDを取得する(ステップ2209)。
テナントID602がステップ2201で取得したテナントIDと一致するか、NULLの場合(ステップ2208でYes)は、ステップ2202で選択したノードの検証はPassと判定する。テナントID602がNULLの場合は、特定のテナントに関連づけられていない論理トポロジエントリであることを示す。例えば、テナント追加時の新規設定情報を少なくするために、VLAN等の仮想リソースを予め機器に設定しておく場合等は、テナントIDがNULLの論理トポロジエントリとなる。
ステップ2210では、エッジで接続される2つのノードの検証が終了したかを判定する。2つのノードの検証が終了していない場合(ステップ2210でNo)は、ステップ2202に戻り、もう一方のノードの検証を行う。2つのノードの検証が終了した場合(ステップ2210でYes)の場合は、検証Passと判定し、対応する検証IDを取得する(ステップ2211)。ステップ2212では、重要度テーブル525を参照し、検証IDに対応する検証結果1002と重要度1003を取得する。取得した検証結果1002と重要度1003を検証結果テーブル527に登録する(ステップ2212)。
図23に属性検証部519の処理フローを説明する。
属性検証部519は、テナント間検証部517よりオブジェクト情報、操作、機器識別子、テナントIDを取得する(ステップ2301)。属性検証部519は削除操作の場合に実行される処理である。オブジェクト情報には、ノードまたはエッジの情報が含まれる。
ステップ2301で取得したオブジェクト情報を基に、テナントトポロジDB504を検索する(ステップ2302)。例えば、オブジェクトがノードの場合は、ノードタイプ、タイプ内識別子、機器識別子を基にテナントトポロジDB504のノード管理テーブル610を検索する。オブジェクトがエッジの場合は、エッジタイプ、エッジで接続される2つのノードのノードタイプ、タイプ内識別子、機器識別子を基にテナントトポロジDB504のノード管理テーブル610とエッジ管理テーブル620を検索する。
オブジェクト情報が一致するオブジェクトがテナントトポロジDB504に存在するかを判定する(ステップ2303)。オブジェクトがノードの場合には、ステップ2301で取得したオブジェクト情報(ノードタイプ、タイプ内識別子)、機器識別子が一致するノードが存在するかを判定する。オブジェクトがエッジの場合には、ステップ2301で取得したオブジェクト情報(エッジタイプ、エッジで接続される2つのノードのノードタイプとタイプ内識別子)が一致するエッジが存在するかを判定する。
オブジェクトが存在しない場合(ステップ2303でNo)には、二重削除と判定し、検証結果に対応する検証ID(例えば、v2)を取得する(ステップ2304)。なお、二重削除は、二重生成削除検証部516で検証済みのため、属性検証部519で検証IDを付与しなくてもよい。
オブジェクトが存在する場合(ステップ2303でYes)は、ステップ2301で取得したテナントIDと、ステップ2302で検索にヒットしたノードを含む論理トポロジエントリのテナントID602が一致するかを判定する。
テナントIDが一致する場合は、検証Passと判定し、対応する検証ID(例えば、v1004)を取得する(ステップ2306)。テナントIDが一致しない場合は、対応する設定操作によって、異なるテナントの論理トポロジが変更されるため、属性違反と判定する。対応する検証ID(例えば、v5)を取得する(ステップ2307)。
ステップ2308では、重要度テーブル525を参照し、検証IDに対応する検証結果1002と重要度1003を取得する。取得した検証結果1002と重要度1003を検証結果テーブル527に登録する(ステップ2308)。
図24にテナント内検証部520の処理フローを示す。テナント内検証部520は、新規設定情報に含まれる1つ以上の設定操作によってテナントの論理トポロジが変化した後も、テナント内の接続性が保たれることを検証する。IP重複検証部521、接続性検証部522、到達性検証部523の処理を逐次実行する。
図25にIP重複検証部521と接続性検証部522の処理フローを示す。
IP重複検証部521は、操作対象のテナント内の同一のIPアドレスを含む仮想リソースが存在し、通信が不可能となる障害の可能性を検証する。
IP重複検証部521は、まず、新規設定トポロジ526を取得する(ステップ2501)。ノード管理テーブル1810を参照し、タイプ内識別子1814にIPアドレスを含むすべてのノードを取得する(ステップ2502)。
ノードのIPアドレスを比較し、IPアドレスに重複がないかを判定する(ステップ2503)。IPアドレスが重複する場合は、IP重複と判定し、対応する検証ID(例えば、v6)を取得する(ステップ2505)。IPアドレスが重複しない場合は、検証Passと判定し、対応する検証ID(例えば、v1005)を取得する(ステップ2504)。
ステップ2506では、重要度テーブル525を参照し、検証IDに対応する検証結果1002と重要度1003を取得する。取得した検証結果1002と重要度1003を、検証結果テーブル527のIP重複検証結果の欄に登録する。IPアドレスの重複検証は、複数の設定操作2601に対して行われる。検証結果から、対応する設定操作を特定する場合は、重複したIPアドレスをもとに、検証結果テーブル527の設定操作2601を検索し、重複したIPアドレスを含む設定操作に対しては、検証結果Failと重要度を登録し、重複したIPアドレスを含まない設定操作に対しては、検証結果Passを登録する。
接続性検証部522は、テナントの論理トポロジを構成する仮想リソースが、エッジによって接続されず、仮想リソース間の通信が不可能となる障害の可能性を検証する。
接続性検証部522は、まず、新規設定トポロジ526を取得する(ステップ2511)。ノード管理テーブル1810とエッジ管理テーブル1820を参照し、一般的な探索アルゴリズムを用いて、新規設定トポロジに含まれる全ノードと全エッジが接続されることを検証する。全ノードと全エッジが接続されない場合(ステップ2512でNo)は、接続性違反と判定し、対応する検証ID(例えば、v7)を取得する(ステップ2514)。全ノードと全エッジが接続される場合(ステップ2512でYes)の場合は、検証Passと判定し、対応する検証ID(例えば、v1006)を取得する。
ステップ2515では、重要度テーブル525を参照し、検証IDに対応する検証結果1002と重要度1003を取得する。取得した検証結果1002と重要度1003を、検証結果テーブル527の接続性検証結果の欄に登録する。検証結果が、特定の設定操作2601に対応づかない場合は、設定操作2601は空欄としたまま、検証結果を登録する。
到達性検証部523は、テナント内の仮想リソースがL3レイヤの接続性が確保されず通信が不可能となる障害の可能性を検証する。IPアドレスをタイプ内識別子に持つ適切なノード間で、ルーティングテーブル、ACL(Access Control List)、LB、NAT(Network Address Translation)を介して接続可能であることを、一般的な方法、例えば、"On static reachability analysis of IP networks、” IEEE INFOCOM 2005、 pp. 2170−2183、 March、 2005.を用いて検証する。
以上の検証処理により、新規設定情報を機器に入力することで発生する障害の可能性を事前に検証することができる。
図27はコンソール110に表示されるテナントトポロジ検証画面例である。
テナントトポロジ検証画面には、新規設定トポロジ表示エリア2701、テナントID登録エリア2702、新規設定情報登録エリア2703、検証結果表示エリア2706を含む。新規設定トポロジ表示エリア2701は、新規設定トポロジ526を視覚化部502のGUI表示制御部505により可視化した結果が表示される。
テナントID登録エリアは、オペレータがテナントID532を入力するための領域である。新規設定情報登録エリア2703は、オペレータが新規設定情報531を登録するための領域であり、登録ボタン2704および検証開始ボタン2705を含む。検証結果表示エリア2706は、視覚化部502におけるCLI表示制御部506により可視化した検証結果が表示される。
本実施の形態によると、データセンタのネットワークシステムにおいて、機器に設定された設定情報を基に生成したテナント毎の論理トポロジと、機器に新規に入力する設定情報とを用いて、設定情報入力後のテナントの論理トポロジを模擬生成することができる。これにより、異なるテナントに含まれる仮想リソースが接続する障害が発生する可能性を視覚的に把握することができる。また、設定情報を設定操作ごとに検証することで、障害の発生原因となる設定操作を迅速に特定することができる。
第2の実施例を、データセンタのネットワークシステムにおいて、機器に設定された設定情報を基に生成したテナント毎の論理トポロジと、機器に新規に入力する設定情報とを用いて、設定情報を事前に検証する際に、テナント間の接続を許可する例について説明する。テナント間の接続を許可する例として、例えば、テナントの情報処理システムが利用者に対してサービスを提供するネットワークはテナント毎に独立して構築するが、情報処理システムを構成する仮想リソースを管理するためのネットワークは、テナント間で共有して構築する場合である。
本実施形態におけるシステム構成の例は、第1の実施例と同様である。ただし、管理サーバ109に追加機能が必要となる。図28に例示する、本実施形態における管理サーバ109は、通常は許可しないテナント間の接続を許可する例外を認めるために、管理サーバ109は、例外ノード管理テーブル528と実施例1とは異なる独立性検証部529をテナントトポロジ検証部510に有する。
独立性検証部529は、例外ノード管理テーブル528を参照し、テナント間の独立性能検証を行う。例外ノード管理テーブル528は、オペレータによって事前に登録される。オペレータがコンソール110を介して通知したテーブルの構成要素の情報は、管理要求受付グ501、テーブル登録部511を介して例外ノード管理テーブル528に登録される。削除、変更も同様に行われる。
図29に、例外ノード管理テーブル528の構成例を示す。例外ノード管理テーブル528は、テナント間の接続を許可する例外的なノードを管理するためのテーブルである。構成要素として、ノード識別子2911、ノードタイプ2912、機器識別子2913、タイプ内識別子2914、許可テナントID2915を含む。ノード識別子2911は、仮想ネットワーク全体で一意にノードを特定するための識別子である。オペレータが例外ノードを登録する時点でノードに識別子2911が割り当てられていない場合は、空欄でもよい。ノードタイプ2912は、仮想リソースの種類を示す識別子である。仮想リソースには、VLANノードN701、VLANインタフェースノードN702、VRFノードN703、仮想ストレージインタフェースノードN704、仮想マシンノードN705、ZoneノードN706、LUノードN707等が含まれる。機器識別子2913は、テナント間の接続を例外的に認めるノードが定義されている物理機器の識別子である。VLANノードN701のように、複数の物理機器にノードが定義される場合、テナント間接続を許可する物理機器は、2913に登録された物理機器に限定される。タイプ内識別子2914は、ノードタイプ2912に付随する識別子である。許可テナントID2915は、ノードタイプ2912およびタイプ内識別子2914で特定されるノードに接続を許可するテナントのIDを示す。
行2916は、テナントID1000および1001に含まれるノードは、機器SW1で、VLAN番号(ノードN1のタイプ内識別子)が500のVLAN(ノードN1)に、接続を許可することを意味し、行2917は、あらゆるテナントIDのテナントに含まれるノードは、機器SW1で、VLAN番号(ノードN1のタイプ内識別子)が600のVLAN(ノードN1)に接続を許可することを意味する。
図30に、本実施形態におけるテナント間検証部517の独立性検証部529の処理フローを示す。ステップ2201からステップ2208までの処理は、第一の実施の形態と同様である。本実施形態では、ステップ2208において、テナントID602がステップ2201で取得したテナントIDと一致するか、NULLの場合(ステップ2208でYes)は、ステップ2210を実行する。この場合、同一テナントの仮想リソース、または、テナントに関連づけられていない仮想リソースに接続すると判断でき、独立性は確保されていると判断できる。
ステップ2208において、テナントID602がステップ2201で取得したテナントIDと一致しないか、NULLでない場合(ステップ2208でYes)は、異なるテナントの仮想リソースに接続する可能性があると判断されるため、ステップ3001を実行する。
ステップ3001では、ステップ2202で取得したノードの情報(ノードタイプ、タイプ内識別子)をもとに、例外ノード管理テーブル528を検索する。例外ノード管理テーブル528に、ノードタイプ、タイプ内識別子が一致するノードが存在する場合は、該当ノードに登録された機器識別子2913、許可テナントID2915を確認する。該当ノードに登録された機器識別子2913、許可テナントID2915に、ステップ2201で取得した機器識別子、テナントIDの両方が含まれる場合(ステップ3002でYes)の場合は、例外的にテナント間接続を許可したノードに接続すると判定し、次にステップ2210を実行する。
例外ノード管理テーブル528に、ノードタイプ、タイプ内識別子が一致するノードが存在しない場合、または、ノードタイプ、タイプ内識別子が一致するノードは存在するが、該当ノードの機器識別子2913にステップ2201で取得した機器識別子が含まれない場合(ステップ3002でNo)、または許可テナントID2915にステップ2201で取得したテナントIDが含まれない場合は、例外的にテナント間接続を許可したノード以外のノードに接続するため、独立性違反と判定し、対応する検証IDを取得する(ステップ2209)。
ステップ2210からステップ2212までの処理フローは、第一の実施の形態と同様である。また、独立性検証部529以外の処理についても、第一の実施の形態と同様である。
このようにして、第2の実施の形態では、テナントの情報処理システムを構成する仮想リソースが、オペレータが規定した特定の物理機器、仮想リソースにおいて接続することを許可する検証が可能となる。これにより、情報処理システムが利用者にたいしてサービスを提供するネットワークはテナント毎に独立性を確保しつつ、情報処理システムを構成する仮想リソースの管理のためのネットワークはテナント間で共通化する等、テナント間の独立性検証の判断をより柔軟に行うことができる。
100 データセンタ
101 ネットワーク
102 ファイアウォール
103 ロードバランサ
104 L3スイッチ
105a、105b L2スイッチ
106a、106b、106c、106d サーバ
107a、107b FCスイッチ
108a、109b ストレージ
109 管理サーバ
110 コンソール
201、260、300、310 ハードウェア
202、251、301、311、401 物理CPU
203、252、302、312、402 物理メモリ
204、253 物理NIC
205 物理HBA
210 仮想化処理部
211 サーバ設定情報
212 仮想スイッチ部
213 仮想ポート部
260 仮想処理部
261 L2スイッチ設定情報
262 VLAN処理部
263 VRF処理部
303 物理FCポート
305 Zoning処理部
314 物理ディスク
315 ストレージ設定情報
316 LUNマスキング処理部
317 LU
403 補助記憶装置
404 通信インタフェース
405 メディアインタフェース
406 入出力装置
407 外部記憶媒体
501 管理要求受付部
502 視覚化部
503 テナントトポロジ生成部
504 テナントトポロジDB
505 GUI表示制御部
506 CLI表示制御部
510 テナントトポロジ検証部510
511 テーブル登録部
512 設定情報解析部
513 新規設定トポロジ生成部
514 ノード操作部
515 エッジ操作部
516 二重生成削除検証部
517 テナント間検証部
518 独立性検証部
519 属性検証部
520 テナント内検証部
521 IP重複検証部
522 接続性検証部
523 到達性検証部
524 パターンテーブル
525 重要度テーブル
526 新規設定トポロジ
527 検証結果テーブル
528 例外ノード管理テーブル
529 実施の形態2における独立性検証部
531 新規設定情報
532 テナントID

Claims (12)

  1. 複数種類の物理機器がネットワークで接続された情報処理システム上に構築された、複数種の仮想化技術によって構成された一種類以上の複数の仮想リソースと、複数の前記仮想リソースを接続するエッジと、を含む論理トポロジ情報を、テナント毎に互いに区別して管理する管理サーバであって、
    前記物理機器への操作に係る設定情報と、前記設定情報に対応する前記論理トポロジへの操作と、の対応関係を保持し、
    前記対応関係に基づき、前記物理機器への前記設定情報から、いずれかの前記論理トポロジへの操作を特定する設定情報解析部と、
    前記テナント毎の論理トポロジ情報と、前記論理トポロジへの操作と、各々の前記テナントを特定するテナント識別子と、に基づき、前記物理機器への前記設定情報の入力により変更された後の、前記テナントの論理トポロジを模擬生成するトポロジ生成部と、
    模擬生成された前記テナントの論理トポロジに基づき、前記操作に係る設定情報の正しさを検証する検証部と、を有する
    ことを特徴とする管理サーバ。
  2. 請求項1に記載の管理サーバにおいて、
    前記検証部は、
    1つの前記操作に係る前記設定情報に対応する論理トポロジへの操作によって、
    前記模擬生成された前記テナントの論理トポロジが他のテナントと接続しない場合に、前記設定情報が正しいと判定し、
    前記模擬生成された前記テナントの前記論理トポロジが他のテナントと接続する場合に、前記設定情報が誤りであると判定する
    ことを特徴とする管理サーバ。
  3. 請求項1または2に記載の管理サーバにおいて、
    前記検証部は、
    1つの前記操作に係る前記設定情報に対応する論理トポロジへの操作によって、前記模擬生成された前記テナントと異なるテナントのトポロジ情報から、仮想リソース、および/または、エッジを削除する場合に、前記設定情報が誤りであると判定する
    ことを特徴とする管理サーバ。
  4. 請求項1から3のいずれか一に記載の管理サーバにおいて、
    予め、定められた検証結果の重要度を保持しておき、
    前記検証部による検証結果を可視化する視覚化部を有し、
    前記検証部は、判定した、前記操作に係る設定情報の正しさの検証結果と、前記検証結果に該当する重要度と、を対応づけて保存し、
    前記視覚部は、前記テナントに係る、前記操作と、前記検証結果と、前記重要度と、を対応づけて可視化する
    ことを特徴とする管理サーバ。
  5. 請求項4に記載の管理サーバにおいて、
    前記視覚部は、さらに、
    前記模擬生成したテナントの論理トポロジを併せて可視化する
    ことを特徴とする管理サーバ。
  6. 請求項1から5のいずれか一に記載の管理サーバにおいて、
    前記検証部は、さらに、
    前記模擬生成したテナントの論理トポロジを構成する仮想リソースに含まれるIPアドレスが重複しないことと、
    前記模擬生成したテナントの論理トポロジを構成する仮想リソースが、前記仮想リソースのエッジにより接続されることと、を検証する
    ことを特徴とする管理サーバ。
  7. 複数種類の物理機器がネットワークで接続された情報処理システム上に構築された、複数種の仮想化技術によって構成された一種類以上の複数の仮想リソースと、複数の前記仮想リソースを接続するエッジと、を含む論理トポロジ情報を、テナント毎に互いに区別して管理する管理サーバによる検証方法であって、
    前記物理機器への操作にかかわる設定情報と、前記設定情報に対応する前記論理トポロジへの操作と、の対応関係と、
    前記対応関係に基づき、前記物理機器への前記設定情報から、いずれかの前記論理トポロジへの操作を特定するステップと、
    前記テナント毎の論理トポロジ情報と、前記論理トポロジへの操作と、各々の前記テナントを特定するテナント識別子と、に基づき、前記物理機器への前記設定情報の入力により変更された後の、前記テナントの論理トポロジを模擬生成するステップと、 模擬生成された前記テナントの論理トポロジに基づき、前記操作に係る設定情報の正しさを検証するステップと、を有する
    ことを特徴とする検証方法。
  8. 請求項7に記載の検証方法は、さらに、
    1つの前記操作に係る前記設定情報に対応する論理トポロジへの操作によって、
    前記模擬生成された前記テナントの論理トポロジが他のテナントと接続しない場合に、前記設定情報が正しいと判定するステップと、
    前記模擬生成された前記テナントの前記論理トポロジが他のテナントと接続する場合に、前記設定情報が誤りであると判定するステップと、を有する
    ことを特徴とする検証方法。
  9. 請求項7または8に記載の検証方法は、さらに、
    1つの前記操作に係る前記設定情報に対応する論理トポロジへの操作によって、
    前記模擬生成された前記テナントと異なるテナントのトポロジ情報から、仮想リソース、および/または、エッジを削除する場合に、前記設定情報が誤りであると判定するステップを有する
    ことを特徴とする検証方法。
  10. 請求項7から9のいずれか一に記載の検証方法は、さらに、
    予め、定められた検証結果の重要度を保持しておき、
    前記判定された検証結果を可視化するステップと、
    前記判定された、前記操作に係る設定情報の正しさの検証結果と、前記検証結果に該当する重要度と、を対応づけてを保存するステップと、
    前記テナントに係る、前記操作と、前記検証結果と、前記重要度と、を対応づけて可視化するステップと、を有する
    ことを特徴とする検証方法。
  11. 請求項10に記載の検証方法は、さらに、
    前記模擬生成したテナントの論理トポロジを併せて可視化するステップを有する
    ことを特徴とする検証方法
  12. 請求項7から11のいずれか一に記載の検証方法は、さらに、
    前記模擬生成したテナントの論理トポロジを構成する仮想リソースに含まれるIPアドレスが重複しないことを検証するステップと、
    前記模擬生成したテナントの論理トポロジを構成する仮想リソースが、前記仮想リソースのエッジにより接続されることを検証するステップと、を有する
    ことを特徴とする検証方法。
JP2012111113A 2012-05-15 2012-05-15 管理サーバおよび検証方法 Expired - Fee Related JP5953109B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012111113A JP5953109B2 (ja) 2012-05-15 2012-05-15 管理サーバおよび検証方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012111113A JP5953109B2 (ja) 2012-05-15 2012-05-15 管理サーバおよび検証方法

Publications (2)

Publication Number Publication Date
JP2013239867A true JP2013239867A (ja) 2013-11-28
JP5953109B2 JP5953109B2 (ja) 2016-07-20

Family

ID=49764548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012111113A Expired - Fee Related JP5953109B2 (ja) 2012-05-15 2012-05-15 管理サーバおよび検証方法

Country Status (1)

Country Link
JP (1) JP5953109B2 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9448832B2 (en) 2014-04-22 2016-09-20 International Business Machines Corporation Apparatus and method for validating application deployment topology in cloud computing environment
JP2017524320A (ja) * 2014-07-30 2017-08-24 フォワード・ネットワークス・インコーポレテッド ネットワーク管理のためのシステムおよび方法
JP2017526306A (ja) * 2014-09-05 2017-09-07 華為技術有限公司Huawei Technologies Co.,Ltd. サービスを構成する方法及び装置
JP2019017123A (ja) * 2018-11-06 2019-01-31 ヤマハ株式会社 中継装置およびプログラム
JP2019109564A (ja) * 2017-12-15 2019-07-04 ソフトバンク株式会社 作業管理装置、作業管理方法及びプログラム
CN111008508A (zh) * 2019-12-26 2020-04-14 山东方寸微电子科技有限公司 一种接口类ip系统应用验证平台和验证方法
CN112087379A (zh) * 2019-06-12 2020-12-15 中兴通讯股份有限公司 业务链的编排方法及装置、存储介质和电子装置
US10985991B2 (en) 2014-06-02 2021-04-20 Yamaha Corporation Relay device, program, and display control method
CN114221859A (zh) * 2022-01-06 2022-03-22 烽火通信科技股份有限公司 一种租户网络物理链路连通性拓扑生成方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002185512A (ja) * 2000-12-12 2002-06-28 Hitachi Ltd ネットワーク接続性検証方法
JP2008182445A (ja) * 2007-01-24 2008-08-07 Fujitsu Ltd ネットワーク構成検証プログラム、ネットワーク構成検証方法およびネットワーク構成検証装置
US20110099255A1 (en) * 2009-10-27 2011-04-28 Shyam Sundar Srinivasan Managing command compliance in internetworking devices
JP2012032956A (ja) * 2010-07-29 2012-02-16 Nec Corp シンクライアントシステム、管理サーバ、仮想マシン作成管理方法及び仮想マシン作成管理プログラム
JP2012065015A (ja) * 2010-09-14 2012-03-29 Hitachi Ltd マルチテナント型情報処理システム、管理サーバ及び構成管理方法
JP2012253550A (ja) * 2011-06-02 2012-12-20 Hitachi Ltd マルチテナント型情報処理システム、管理サーバ及び構成管理方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002185512A (ja) * 2000-12-12 2002-06-28 Hitachi Ltd ネットワーク接続性検証方法
JP2008182445A (ja) * 2007-01-24 2008-08-07 Fujitsu Ltd ネットワーク構成検証プログラム、ネットワーク構成検証方法およびネットワーク構成検証装置
US20110099255A1 (en) * 2009-10-27 2011-04-28 Shyam Sundar Srinivasan Managing command compliance in internetworking devices
JP2012032956A (ja) * 2010-07-29 2012-02-16 Nec Corp シンクライアントシステム、管理サーバ、仮想マシン作成管理方法及び仮想マシン作成管理プログラム
JP2012065015A (ja) * 2010-09-14 2012-03-29 Hitachi Ltd マルチテナント型情報処理システム、管理サーバ及び構成管理方法
JP2012253550A (ja) * 2011-06-02 2012-12-20 Hitachi Ltd マルチテナント型情報処理システム、管理サーバ及び構成管理方法

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9996336B2 (en) 2014-04-22 2018-06-12 International Business Machines Corporation Apparatus and method for validating application deployment topology in cloud computing environment
US9448832B2 (en) 2014-04-22 2016-09-20 International Business Machines Corporation Apparatus and method for validating application deployment topology in cloud computing environment
US10324709B2 (en) 2014-04-22 2019-06-18 International Business Machines Corporation Apparatus and method for validating application deployment topology in cloud computing environment
US10985991B2 (en) 2014-06-02 2021-04-20 Yamaha Corporation Relay device, program, and display control method
JP2017524320A (ja) * 2014-07-30 2017-08-24 フォワード・ネットワークス・インコーポレテッド ネットワーク管理のためのシステムおよび方法
JP2017526306A (ja) * 2014-09-05 2017-09-07 華為技術有限公司Huawei Technologies Co.,Ltd. サービスを構成する方法及び装置
US11552841B2 (en) 2014-09-05 2023-01-10 Huawei Technologies Co., Ltd. Method and apparatus for configuring service
US10855524B2 (en) 2014-09-05 2020-12-01 Huawei Technologies Co., Ltd. Method for NaaS device configuring service
US11196620B2 (en) 2014-09-05 2021-12-07 Huawei Technologies Co., Ltd. Method and apparatus for NaaS device configuring service
JP2019109564A (ja) * 2017-12-15 2019-07-04 ソフトバンク株式会社 作業管理装置、作業管理方法及びプログラム
JP2019017123A (ja) * 2018-11-06 2019-01-31 ヤマハ株式会社 中継装置およびプログラム
CN112087379A (zh) * 2019-06-12 2020-12-15 中兴通讯股份有限公司 业务链的编排方法及装置、存储介质和电子装置
CN112087379B (zh) * 2019-06-12 2023-08-01 南京中兴新软件有限责任公司 业务链的编排方法及装置、存储介质和电子装置
CN111008508A (zh) * 2019-12-26 2020-04-14 山东方寸微电子科技有限公司 一种接口类ip系统应用验证平台和验证方法
CN111008508B (zh) * 2019-12-26 2023-05-02 山东方寸微电子科技有限公司 一种接口类ip系统应用验证平台和验证方法
CN114221859A (zh) * 2022-01-06 2022-03-22 烽火通信科技股份有限公司 一种租户网络物理链路连通性拓扑生成方法及系统

Also Published As

Publication number Publication date
JP5953109B2 (ja) 2016-07-20

Similar Documents

Publication Publication Date Title
JP5953109B2 (ja) 管理サーバおよび検証方法
JP5836042B2 (ja) 管理サーバプログラム
US11451434B2 (en) System and method for correlating fabric-level group membership with subnet-level partition membership in a high-performance computing environment
US10127065B2 (en) Method and apparatus of redundant path validation before provisioning
US9137118B2 (en) Management server and management method
JP4130615B2 (ja) ストレージ装置を有するネットワークにおける障害情報管理方法及び管理サーバ
JP4202709B2 (ja) ストレージ装置を有するネットワークにおける、ボリューム及び障害管理方法
US9088503B2 (en) Multi-tenant information processing system, management server, and configuration management method
US10257041B2 (en) Deep network validation of configuration inputs for a network-dependent system
JP4833381B2 (ja) ストレージ・エリア・ネットワーク、その構成方法、及びプログラム
JP5928197B2 (ja) ストレージシステム管理プログラム及びストレージシステム管理装置
US20180343162A1 (en) System management apparatus and system management method
US20210099343A1 (en) Multi-cluster management plane for network devices
Törhönen Designing a software-defined datacenter
WO2015097738A1 (ja) ストレージシステム及び管理計算機
US20140047083A1 (en) Administration information generation method, administration information generation program, and administration information generation device
JP4485875B2 (ja) ストレージ接続変更方法、ストレージ管理システム及びプログラム
TW201427336A (zh) 動態關聯實體與虛擬資源相依關係並自動生成多維度異質性資源網路拓樸之方法與系統
US11018947B2 (en) System and method for supporting on-demand setup of local host channel adapter port partition membership in a high-performance computing environment
US20210191833A1 (en) Component detection and awareness in a computing environment by automatically identifying physcial components housing the component within the computing environment
WO2012105035A1 (ja) コンピュータシステムの管理装置及び管理方法
Khalil Storage Design and Implementation in VSphere 6: A Technology Deep Dive
Schoeb Sr Hitachi Unified Compute Platform (UCP) Pro for VMware® vSphere™

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151209

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151222

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: 20160517

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160613

R151 Written notification of patent or utility model registration

Ref document number: 5953109

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees