JP6159103B2 - プロビジョニング前に冗長パスを認証する方法および装置 - Google Patents

プロビジョニング前に冗長パスを認証する方法および装置 Download PDF

Info

Publication number
JP6159103B2
JP6159103B2 JP2013042617A JP2013042617A JP6159103B2 JP 6159103 B2 JP6159103 B2 JP 6159103B2 JP 2013042617 A JP2013042617 A JP 2013042617A JP 2013042617 A JP2013042617 A JP 2013042617A JP 6159103 B2 JP6159103 B2 JP 6159103B2
Authority
JP
Japan
Prior art keywords
port
server
storage
wwn
software
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2013042617A
Other languages
English (en)
Other versions
JP2014026637A (ja
Inventor
義樹 加納
義樹 加納
リックル ダン
リックル ダン
チョン ランディー
チョン ランディー
マスード アビット
マスード アビット
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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
Publication of JP2014026637A publication Critical patent/JP2014026637A/ja
Application granted granted Critical
Publication of JP6159103B2 publication Critical patent/JP6159103B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/467Arrangements for supporting untagged frames, e.g. port-based VLANs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/356Switches specially adapted for specific applications for storage area networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/552Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2007Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication media
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0853Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0866Checking the configuration
    • H04L41/0873Checking configuration conflicts between network elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Hardware Redundancy (AREA)
  • Storage Device Security (AREA)

Description

0001 本発明はストレージシステムに関し、特に、ボリュームをプロビジョニングする前に冗長パスを認証する方法および装置に関する。
0002 データセンターにおいては、イーサネットスイッチやファイバーチャネルスイッチを使って、サーバやストレージを接続するためのケーブルが数多く設置される。そのような装置間を、冗長性を確保しつつ接続する場合、システムを構成するのが難しく、人的エラーが生じやすくなる。サーバや仮想マシンの管理者にとって、そのようなシステムを設置するのは困難である。例えば管理者、特にハイパバイザ管理者は、ボリュームをプロビジョニングする(割当てる)ことを要求される。その際、ストレージのロックリソース(例えばストレージ確保)を探すのに時間がかかる(例えば数分)。プロビジョニングされたボリュームを検出するのは難しい時もあり、管理者やストレージ管理者が、ファイバーチャネル(FC)スイッチ(FC−SW)を含むシステムの構成を理解するのに時間がかかる場合もある。
0003 特許文献1(米国特許第7,617,320号明細書)は、LUNプロビジョニング後のHA論理的接続の認証方法を開示している。この方法は、LUNの作成後、LUN用のHA論理パスに注目する方法である。この方法は、物理的なケーブル構造やストレージポートの冗長性については考慮しない。
米国特許第7,617,320号明細書
0004 本発明の具体的な実施例によると、ボリュームをプロビジョニングする前に物理的ケーブルおよび論理パスを認証する技術が提供される。この技術により、冗長物理テーブルおよび論理パスを確保することが可能となり、ボリュームプロビジョニングにFC−SWおよびストレージ管理者が関わる必要がなくなり、ボリュームに対してストレージのロック(確保済み)リソースを使うことを避けることができる。
0005 ある例において、システムは少なくとも、ストレージと、FC−SW(コアおよびエッジスイッチ)、管理サーバ、および仮想マシンサーバ(通常サーバでも適用可能)を有する。この構成において、管理サーバで実行される管理ソフトウェアは、ファイバーチャネルゾーニングである物理ケーブルおよび論理パスを認証する。管理ソフトウェアは以下の処理を実行する。まず、ソフトウェアはサーバおよびストレージの対象ポートを特定する。次にソフトウェアは、ドメインIDを使って、スイッチの検出されたWWNの情報および冗長性に関してサーバHBAポートのWWN(World Wide Name)およびストレージポートのWWNに基づいて物理ケーブルを認証する。もし認証が失敗した場合、予約済みケーブルを使ってケーブルを修復する。その後、ソフトウェアは、FC−SWのHBAポートのWWNおよびストレージポートのWWNを使って、論理パス(ゾーン)を認証する。この認証で、もしサーバポートのWWNがゾーンを有しない場合、ゾーンを有するストレージのWWNにサーバHBAポートのWWNを加えること、もしストレージポートのWWNがゾーンを有しない場合、ゾーンを有するサーバのWWNにストレージポートのWWNを加えること、ストレージポートのWWNとサーバのWWNを有する新しいゾーンを加えること、またはストレージポートのホストグループにサーバのWWNを加えることを含むことができ、また、ストレージの対象ポートにホストグループがない場合、ホストグループを加えることができる。さらに、もし物理パスおよび論理パスが正しく構成されている場合、ソフトウェアはボリュームをサーバにプロビジョニングし、ボリュームを検出することができる。別の実施例において、ソフトウェアはノードポートインタフェース仮想化(NPIV)を考慮して論理パスを認証し、NPIVのWWNのための論理パスを修復する。
0006 別の例において、システムは仮想マシン(VM)が実行されるサーバ間の冗長イーサネット(登録商標)のネットワークを認証し構成する。ストレージシステムには、集約スイッチを介してアクセススイッチが接続される。VMは仮想スイッチに接続され、仮想スイッチはNIC(ネットワークインタフェースカード)に接続される。NICはアクセススイッチに接続される。この例は、サーバとアクセススイッチ間の冗長性を認証することができる。この認証は、パスの間に集約スイッチを有しない少なくとも2つの最短パスをサーバ間に検出することにより達成される。
0007 本発明の一つの特徴によると、コンピュータは、ソフトウェアを格納するメモリと、ソフトウェアを実行するプロセッサとを有する。ソフトウェアは、サーバの冗長ポートを構成する第1サーバポートと第2サーバポート、およびストレージシステムの冗長ポートを構成する第1ストレージポートと第2ストレージポートを識別し、(i)第1サーバポートと第1ストレージポート間の物理的接続および第2サーバポートと第2ストレージポート間の物理的接続、または(ii)第1サーバポートと第1ストレージポート間の論理的接続および第2サーバポートと第2ストレージポート間の論理的接続のうちの少なくとも一つにより、冗長関係が形成されるか否かを確認する。
0008 ある実施例において、ソフトウェアは、第1ストレージポートと第2ストレージポートとを、ストレージシステムの同一の論理ボリュームをアクセスできるよう制御する。ソフトウェアは、(i)第1サーバポートと第1ストレージポート間の物理的接続および第2サーバポートと第2ストレージポート間の物理的接続、または(ii)第1サーバポートと第1ストレージポート間の論理的接続および第2サーバポートと第2ストレージポート間の論理的接続の両方により、冗長関係が形成されるか否かを確認する。
0009 ある実施例において、ソフトウェアは、冗長関係を認証した後、ストレージシステムからボリュームをプロビジョニングする。ソフトウェアは、物理的接続の冗長関係を確立するために、第1サーバポートと第1ストレージポート間の物理的接続、および第2サーバポートと第2ストレージポート間の物理的接続を認証する。もしソフトウェアが、物理的接続の冗長関係を確立するために行われる第1サーバポートと第1ストレージポート間の物理的接続および第2サーバポートと第2ストレージポート間の物理的接続の片方または両方を認証しない場合、ソフトウェアは、物理的接続の冗長関係を確立するために、メモリに格納された予約情報に含まれる予約済みポートを使って物理的接続の片方または両方を修復する。
0010 ある実施例において、ソフトウェアは、論理的接続の冗長関係を確立するために、第1サーバポートと第1ストレージポート間の論理的接続、および第2サーバポートと第2ストレージポート間の論理的接続を認証する。もしソフトウェアが、論理的接続の冗長関係を確立するために行われる第1サーバポートと第1ストレージポート間の論理的接続および第2サーバポートと第2ストレージポート間の論理的接続の片方または両方を認証しない場合、ソフトウェアは、論理的接続の冗長関係を確立するために、論理的接続の片方または両方を修復するようサーバポートWWN(World Wide Name)およびストレージポートWWNにより新しいゾーンを作成する。
0011 ある実施例において、第1サーバポートと第2サーバポートは、サーバの同一仮想マシンによって使用される。ソフトウェアは、仮想マシンのための論理的接続の冗長関係を確立するために、第1サーバポートと第1ストレージポート間の論理的接続、および第2サーバポートと第2ストレージポート間の論理的接続を認証する。もしソフトウェアが、仮想マシンのための論理的接続の冗長関係を確立するために行われる第1サーバポートと第1ストレージポート間の論理的接続および第2サーバポートと第2ストレージポート間の論理的接続の片方または両方を認証しない場合、ソフトウェアは、仮想マシンのための論理的接続の冗長関係を確立するために、論理的接続の片方または両方を修復する仮想マシンポートWWN(World Wide Name)およびストレージポートWWNによりNPIV(Node Port Interface Virtualization)用の新しいゾーンを作成する。
0012 本発明の別の特徴によると、システムは、ストレージシステムと、ソフトウェアを格納するメモリとソフトウェアを実行するプロセッサを有するコンピュータとを有する。ソフトウェアは、サーバの冗長ポートを構成する第1サーバポートと第2サーバポートおよびストレージシステムの冗長ポートを構成する第1ストレージポートと第2ストレージポートを識別し、(i)第1サーバポートと第1ストレージポート間の物理的接続および第2サーバポートと第2ストレージポート間の物理的接続、または(ii)第1サーバポートと第1ストレージポート間の論理的接続および第2サーバポートと第2ストレージポート間の論理的接続のうちの少なくとも一つにより、冗長関係が形成されるか否かを確認する。
0013 ある実施例において、サーバは、第1サーバポートと第2サーバポートを有する。第1サーバポートと第2サーバポートを有するサーバは、第1NIC(Network Interface Card)および第2NICを有する第1サーバである。システムはさらに、第3NICと第4NICを有する第2サーバを有する。第1および第2サーバの各サーバは、NICに接続される仮想スイッチに接続されている仮想マシンを含む。システムはさらに、第1および第2サーバおよび集約スイッチの間に接続されるアクセススイッチを有し、集約スイッチはストレージシステムに接続される。第1サーバポートと第1ストレージポート間の物理的接続および第2サーバポートと第2ストレージポート間の物理的接続により物理的接続の冗長関係が形成されているか否かの確認は、第1および第2サーバの各々のNICと仮想スイッチ間の接続性を認証することを含む。第1サーバポートと第1ストレージポート間の論理的接続および第2サーバポートと第2ストレージポート間の論理的接続により論理的接続の冗長関係が形成されているか否かの確認は、第1および第2サーバとアクセススイッチ間の冗長性を認証することを含み、この認証は、第1サーバの第1および第2NICおよび第2サーバの第3および第4NIC間のすべてのパスを列挙し、列挙されたパスをパステーブル内に格納すること、パステーブル内の列挙されたパスから最短パスを選択し、選択された最短パスを最短パステーブルに格納し、パステーブルから選択された最短パスを削除すること、一つ以上の集約スイッチを含むすべてのパスを最短パステーブルから削除すること、パステーブルに一つ以上のパスが残っている場合、パステーブル内にパスが残っていない状態になるまで選択および削除を繰り返すこと、および削除後に少なくとも2つの選択された最短パスが残っている場合、論理的接続の冗長関係が形成されたと認証することを含む。
0014 ある実施例によると、ソフトウェアは、物理的接続の冗長関係および論理的接続の冗長関係を認証したのち、第1および第2スイッチポートにVLAN(Virtual Local Area Network)IDを設定する。
0015 本発明の別の特徴は、冗長パスを認証するようデータプロセッサを制御するための複数の命令を格納するコンピュータ読み取り可能な記憶媒体に関する。複数の命令は、データプロセッサに対して、サーバの冗長ポートを構成する第1サーバポートと第2サーバポート、およびストレージシステムの冗長ポートを構成する第1ストレージポートと第2ストレージポートを識別させる命令と、データプロセッサに対し、(i)第1サーバポートと第1ストレージポート間の物理的接続および第2サーバポートと第2ストレージポート間の物理的接続、または(ii)第1サーバポートと第1ストレージポート間の論理的接続および第2サーバポートと第2ストレージポート間の論理的接続のうちの少なくとも一つにより、冗長関係が形成されるか否かを確認させる命令とを有する。
0016 ある実施例によると、複数の命令は、データプロセッサを、ストレージシステムの同一の論理ボリュームをアクセスするために使用される第1ストレージポートと第2ストレージポートを、提供するよう動作させる命令を含む。また、複数の命令は、データプロセッサを(i)第1サーバポートと第1ストレージポート間の物理的接続および第2サーバポートと第2ストレージポート間の物理的接続、または(ii)第1サーバポートと第1ストレージポート間の論理的接続および第2サーバポートと第2ストレージポート間の論理的接続の両方により、冗長関係が形成されるか否かを確認させるよう動作させる命令を含む。さらに、複数の命令は、データプロセッサに対し、冗長関係を認証した後、ストレージシステムからボリュームをプロビジョニングさせるよう動作させる命令を含む。
0017 ある実施例によると、第1サーバポートと第2サーバポートは、サーバの同一仮想マシンによって使用される。また、複数の命令は、データプロセッサに対し、仮想マシンのための論理的接続の冗長関係を確立するために、第1サーバポートと第1ストレージポート間の論理的接続、および第2サーバポートと第2ストレージポート間の論理的接続を認証させる命令と、データプロセッサに対し、もしソフトウェアが論理的接続の冗長関係を確立するために行われる第1サーバポートと第1ストレージポート間の論理的接続および第2サーバポートと第2ストレージポート間の論理的接続の片方または両方を認証しない場合、仮想マシンのための論理的接続の冗長関係を確立するために、サーバポートWWN(World Wide Name)およびストレージポートWWNによりNPIV(Node Port Interface Virtualization)のための新しいゾーンを作成させるよう動作させる命令とを含む。
0004 本発明の具体的な実施例によると、ボリュームをプロビジョニングする前に物理的ケーブルおよび論理パスを認証する技術が提供される。この技術により、冗長物理テーブルおよび論理パスを確保することが可能となり、ボリュームプロビジョニングにFC−SWおよびストレージ管理者が関わる必要がなくなり、ボリュームに対してストレージのロックリソースを使うことを避けることができる。
0018 上述した本発明の特徴および効果、およびその他の特徴および効果は、後に述べる本発明の実施形態の詳細な説明から、当業者にとって明らかとなろう。
0019 本発明の方法および装置を適用可能なシステムの物理構成例を示す図である。 0020 本発明の第1実施例において、ストレージ側の視点から図1のシステムの論理構成の例を示す図である。 0021 サーバ構成テーブルの例を示す図である。 0022 FC−SWのテーブルの例を示す図である。 0023 コアFC−SWのポート構成テーブルの例を示す図である。 0024 エッジFC−SWのポート構成テーブルの例を示す図である。 0025 ゾーンテーブルの例を示す図である。 0026 ストレージ構成テーブルの例を示す図である。 0027 第1実施例による、管理ソフトウェアのボリュームプロビジョニング方法を示すフロー図の例である。 0028 管理ソフトウェアの物理ケーブルを認証し修復する方法の詳細を示すフロー図の例である。 0029 物理ケーブルを確定するために予約済みケーブルを選択する方法を示すフロー図の例である。 0030 論理パス(本発明ではゾーン)を認証し、必要な場合にそれを確定する方法を示すフロー図の例である。 0031 本発明の第2実施例に基づき、ストレージ側の視点から図1のシステムの論理構成の例を示す図である。 0032 集められたVM構成テーブルの例を示す図である。 0033 第2実施例にかかる、エッジFC−SWのポート構成テーブルの例を示す図である。 0034 第2実施例にかかるゾーンリストテーブルの例を示す図である。 0035 第2実施例にかかる、NPIVを考慮に入れた認証を含むボリュームプロビジョニング処理のフロー図の例を示す図である。 0036 アレイのポートにあるホストグループのサーバWWNまたはホストグループを修復する処理にかかるフロー図の例を示す図である。 0037 ストレージ構成におけるホストグループのテーブルの例を示す図である。 0038 図20Aは第3実施例にかかる、イーサネットのネットワークの視点から見た、図1のシステムの論理構成例を示す図である。 0039 図20Bは図20Aの管理サーバの詳細を示す図である。 0040 イーサネット用のサーバテーブルの例を示す図である。 0041 イーサネットスイッチテーブルの例を示す図である。 0042 アクセススイッチテーブルのポートの例を示す図である。 0043 集約スイッチテーブルのポートの例を示す図である。 0044 トポロジーサマリーテーブルの例を示す図である。 0045 サーバ間のイーサネットのネットワークを認証し構成する処理のフロー図の例を示す図である。 0046 2つのサーバ間のネットワークの冗長性を認証する処理を示すフロー図の例である。 0047 パステーブルの例を示す図である。 0048 最短パステーブルの例を示す図である。 0049 図30Aは各スイッチポートにVLAN IDを設定する処理のフロー図例を示す図である。 0050 図30BはデバイスIDおよびポートID{(did,pid)}およびVLAN ID{vid}を入力として、図30AのポートにVLAN IDを設定するステップ39002の処理の詳細を示すフロー図の例である。 0051 セットポートテーブルの例を示す図である。 0052 図26に示すアクセスと集約スイッチ間の冗長性を認証するステップ35006の処理の詳細を示すフロー図の例である。
0053 以下の本発明についての詳細な説明では、開示の一部を成すとともに本発明を実施する例示的な実施形態として示される添付図面を参照するが、本発明は図面の内容に限定されるものではない。図面において、類似する数字は複数の図面においてほぼ同様の構成要素を示すものである。また、留意すべき点として、詳細な説明では、以下の説明および図面に示される通り様々な実施の形態を示すが、本発明は本明細書において説明されかつ示される実施形態に限定されず、当業者が知っているであろう又は知るようになり得るその他の実施形態をも含む。本明細書における「一実施形態」、「本実施形態」、又は「上述の実施形態」の文言は、ある実施形態に関連して説明される特定の特性、構造又は特徴が、本発明の少なくとも一実施形態に含まれることを意味し、本明細書の様々な箇所において上記文言が使用されていても、必ずしもすべてが同一の実施形態を言及するものではない。さらに、以下の詳細な説明において、本発明の理解を深めるために、多くの具体的かつ詳細な記載がなされている。ただし、本発明を実施するためにこれらの具体的かつ詳細な内容すべてが必要なわけではないことは、当業者にとって明らかであろう。状況によっては、曖昧な記載を避けるために、周知の構造、材料、回路、プロセス及びインタフェースの詳細については説明しておらず、かつ/又はブロック図において図示していない場合もある。
0054 さらに、以下の詳細な説明の一部は、コンピュータ内のオペレーションのアルゴリズムおよび記号表現で示されている。これらのアルゴリズム記述及び記号表現は、データ処理分野の当業者がその新しいアイディアの本質を最も効果的に他の当業者に伝えるために使用する手段である。アルゴリズムとは、望ましい最終状態又は結果へと導く一連の定義されたステップである。本発明において、実施されるステップは、具体的な結果を達成するための相応量の物理的操作を必要とする。必ずしもそうとは限らないが、通常はかかる数量は、格納、転送、組み合わせ、比較その他の操作が可能な電気もしくは磁気信号又は命令の形態を取る。主に一般的な使用のために、上記の信号をビット、値、記号、要素、文字、用語、数字、命令等として言及することが便利なことがある。但し、上記の及び類似の用語すべてが、適切な物理数量に関連付けられるものであり、かつ当該数量に適用される単に便利なラベルであることに留意すべきである。別段の記載がない限り、以下の解説から明らかなように、説明全体を通して、「処理」、「演算」、「計算」、「判断」、「表示」等の用語を用いた説明は、コンピュータシステムのレジスタ及びメモリもしくはレジスタ又はその他の情報記憶、送信もしくは表示装置の中の物理的(電気的)数量として同等にあらわされるその他のデータに操作しかつ変換する、コンピュータシステム又はその他の情報処理装置の動作またはプロセスを含み得る。
0055 本発明は、本明細書における操作を実施する装置にも関する。この装置は、必要とされる目的のために特別に構築してもよく、又は一つ以上のコンピュータプログラムによって選択的に起動又は再構築された一つ以上の汎用コンピュータを含み得る。当該コンピュータプログラムは、光ディスク、磁気ディスク、読取専用記憶措置、ランダムアクセスメモリ、ソリッドステート装置及びドライブ、又は電子情報の格納に適したその他の種類の媒体等(但し、これらに限定されない)のコンピュータ読取可能記憶媒体に格納され得る。本明細書において提示するアルゴリズム及び態様は、特定のコンピュータ又はその他の装置とは本質的に関係していない。様々な汎用システムを、本明細書の教示に従ってプログラム及びモジュールと共に使用してもよく、又は望ましい方法を実施するためにより特化した装置を構築した方がよい場合も有り得る。さらに本発明は、特定のプログラミング言語を参照して説明されてはいない。当然のことながら、本明細書に記載されている通りに本発明の教示内容を実施するために、様々なプログラミング言語を使用してもよい。プログラミング言語の命令は、一つ以上の処理装置、例えば中央処理装置(CPU)、プロセッサ、又はコントローラによって実行され得る。
0056 下記に詳細に説明する本発明の実施例は、ボリュームプロビジョニング前に冗長パスを認証する装置、方法およびコンピュータプログラムを提供する。
0058 本発明の第1実施例は、ボリュームプロビジョニング前に冗長物理ケーブルや論理パスを認証する方法に関する。これは冗長物理ケーブルや論理パスを確保し、ボリュームプロビジョニングにおけるFC−SWを削減し、ストレージ管理者の関与を軽減し、ストレージのロックリソースをボリュームに利用することを避けるという効果を有する。
0059 図1は、本発明の方法および装置が適用されるシステムの物理構成の例を示す。システムは、基本ラック1000および増設ラック1100と1200を有する。基本ラックは少なくとも、ストレージサブシステム1010(例えばストレージ)、基本ラック内の2つのコアFC−SW1020および1030、管理サーバ1040、および2つのコアイーサネットスイッチ1050および1060を有する。コアFC−SWのポートは、ファイバーチャネルプロトコルを適用可能なケーブルにより、ストレージの各ポートおよび増設ラック内の他のエッジFC−SW(1120、1130、1220および1230)に接続される。イーサネットスイッチの各ポートは、ストレージのNIC、FCの管理NIC、および他のエッジイーサネットスイッチに接続される。増設ラック1100および1200は、それぞれ、サーバ、エッジFC−SW(1120、1130、1220および1230)、およびエッジのイーサネットスイッチ(1150、1160、1250および1260)を有する。エッジのFC−SWの各ポートは、エッジFC−SWおよびコアFC−SW間の相互接続を利用して、サーバ(1140、1240)とコアスイッチのポートに接続される。
0060 ストレージ1010は、独立クラスター(1011、1012)を有するいくつかのポート、マイクロプロセッサ(MP、1013)、メモリ(MEM、1014)、ソリッドステートディスク(SSD)を含むディスク1016、NIC_I/F1015、および各部間の内部バスを有する。ストレージのMPはマイクロコードを実行してRAID技術によりユーザデータを保護し、コントローラのポートを介してRAIDにより保護されたディスクセットからなるボリュームをプロビジョニングする。ストレージは、バッテリーによるバックアップで保護されたメモリーデータを保護する冗長部として設計される。サーバは汎用サーバであり、プロセッサ、メモリ、ネットワークインタフェースカード(NIC)およびホストバスアダプタ(HBA)(図示しない)を有する。
サーバは、Hyper−V(登録商標)、VMware(登録商標)、KVM(カーネルベース仮想マシン)または他のジェネリックなハイパバイザを実行する。イーサネットスイッチ1050および1060はそれぞれ、サーバ、ストレージ、FC−SW及びNICと接続するポートを有する。ポートはIEEE802.3や関連するフレームを処理することができ、IEEE802.3フレーム用ケーブルに接続することができる。FC−SW1020および1030はそれぞれ、ポートおよび管理NICを有する。ポートはファイバーチャネルプロトコルなどのフレームを処理することができ、ファイバーチャネルプロトコル用ケーブルに接続することができる。FC−SWとイーサネットスイッチの接続の際には、冗長トポロジーを考慮すべきである。FC−SWは2つの独立したネットワークを有するよう設計される。イーサネットスイッチもまた、二つの独立したネットワークを有するよう設計される。アレイのポートの冗長性に関連して、ストレージサブシステムは独立したクラスタを有する。
0061 基本ラックと増設ラックの間に、データセンターネットワーク1300を設置することができる。ネットワークはパッチパネルを利用して、ケーブルをある位置に集め、装置間のケーブルを交換することができる。このパネルは主にネットワーク管理者またはケーブル管理者によって管理される。そのため、構成にエラーが生じる。
0062 図2は、第1実施例に基づいて、ストレージ側の視点から図1のシステムの論理構成の例を示す図である。このシステムは基本ラック1000および増設ラック1100と1200を有する。
0063 基本ラック1000は少なくとも一つのストレージ1010、2つのFC−SW1020および1030、および管理サーバ1040を有する。ストレージは、ストレージ管理者の操作または管理サーバの指示した管理ソフトウェアに基づいて、ストレージのポートから、ポートに冗長性を与える独立したハードウェアクラスタ1011および1012にボリュームを提供する。管理サーバ1040は、ボリュームプロビジョニング前に、物理テーブルおよび論理パスを認証するための管理ソフトウェア(MGMTソフトウェア、1049)を有する。ソフトウェアは、サーバ、FC−SWおよびストレージのための構成情報収集機能1041と、物理ケーブルおよび論理パスのための認証機能1042と、サーバ構成テーブル1043と、FC−SWポート構成テーブル1044と、コアFC−SWおよびエッジFC−SWのFC−SWポートのテーブル1047および1048と、ゾーンテーブル1045と、ストレージ構成テーブル1046を有する(図2の1040に図示する)。管理ソフトウェアはユーザの特定されたストレージのポート(図示しない)のためにボリュームをプロビジョニングすることができる。各FC−SW(1020、1030、1120、1130、1220および1230)は独立した複数の冗長ネットワーク、例えば1020、1120および1220のグループと1030、1130、1230の別のグループ、として構成される。FC−SWのネットワーク(ファブリックのネットワーク)の冗長性を維持するため、FC−SWの分野ではドメインの概念を利用する。ドメインは複数の接続されたFC−SWからなるファブリックについて固有のドメインIDとしての識別子を有する。本実施例において、第1グループに1を付与し、第2グループに2を付与する。冗長ファブリックネットワークがある場合、この図に示す通り、2つのドメインIDが付与される。ファブリックネットワークが独立である場合、ドメインIDは重複しない。
0064 増設ラックは少なくともサーバ1140および2つのFC−SW1120および1130を有する。各サーバは少なくとも、2ポートHBA1143と、仮想マシン(VM)を動作させるハイパバイザ(図示しない)と、VM1142を有する。VMは、Windows(登録商標)やLinux(登録商標)といったオペレーティングシステムを実行することができる。FC−SWのハードウェアの能力は基本ラックのものと同じである。FC−SWは、エッジFC−SWとコアFC−SW間のFC−SW相互接続パスを使用して、基本ラックと増設ラックを接続する。例えば、エッジFC−SW1120はコアFC−SW1020に接続され、エッジFC−SW1130はコアFC−SW1030に接続される。サーバからストレージへの接続は下記のように形成される。サーバはHBA1141を有する。HBAのポートはエッジFC−SW1120および1130に接続される。エッジFC−SWは前述のとおり、コアFC−SWに接続される。ポートの冗長性を維持するため、FC−SWは2つの異なる冗長クラスタ(1011および1012)のストレージポートに接続される。イーサネットスイッチ(1050、1060、1150、1160、1250、1260)を利用して、LANは各サーバ、FC−SWおよび管理ソフトウェア1049のためのストレージを接続する。本実施例において、イーサネットスイッチを使ったLAN構成の詳細については図示しない。サーバからストレージへの接続に関して、太線はパスの例を示す。
0065 図3は、サーバ構成テーブル1043の例を示す図である。テーブルは、サーバ名3001、UUID3002、サーバのための管理NICのIPアドレス3003、HBAのポート番号3004、ポートのWWN3005、およびポートが予約されているか否かの欄3006を有する。UUIDは、分散環境において、サーバの重複を禁止するため、サーバに与えられるユニバーサルに固有の識別子である。WWN(World Wide Name)は、IEEEによって規定されるハードウェアの8バイト識別子であり、HBAの各ポートに付与される。
0066 図4は、FC−SWのテーブル(1044)の例を示す図である。テーブルは、スイッチ名4001、スイッチのIPアドレス4002、およびファブリックネットワークの関係を示すドメインID4003の欄を有する。
0067 図5は、コアFC−SW(1020、1030)のポート構成テーブル1047の例を示す図である。テーブルの上部には、名前5001、IPアドレス5002およびドメインID5003が格納される。テーブルは、実際のFC−SWのポート#5011、各ポートのリンクアップ/ダウン5012、ポートにおいて検出されたWWN5013、およびシステム内のポートの予約情報5014の欄を有する。FC−SWはサーバHBAポートまたは各WWNのストレージポートからのファブリックログインを使ってリンクアップ/ダウンやパワーアップ/ダウンの初期接続へのログインであるので、ポートにおいて検出されたWWNは、図示されたストレージのポートのWWNである。FC−SW間の接続に関し、サーバHBAポートのWWNのリストを示す。予約情報以外の欄の情報は、LANを通じてコアFCのスイッチから集められる。予約情報は管理ソフトウェアによって規定される。
0069 図6は、エッジFC−SWのポート構成テーブル1048の例を示す図である。フォーマットはコアFC−SWのものと同じである。コアFC−SWのテーブル(図5)と異なる点は、エッジが直接サーバに接続され、ほとんどのポートがサーバHBAポートのWWNを示すことから、検出されるWWNが異なることである。FC−SW間の接続に関して、ストレージのポートWWNのリストを示す。
0069 図7はゾーンテーブル1045の例を示す図である。テーブルは、ドメインID7001、およびゾーン#7002、ゾーン名7003、およびゾーンにおけるWWN7004の欄を有する。ファイバーチャネルのゾーンはドメインIDにおいて規定されるWWN内に論理パスを作成する能力を提供する。予約情報以外の情報は、コアFCのスイッチから集められる。
0070 図8は、ストレージ構成テーブル1046の例を示す図である。テーブルは、ストレージ名8001、ストレージNICのIPアドレス8002、およびストレージポート#8003、ポート名8004、ポートのWWN8005、ポートに属するクラスタ8006、および予約情報8008の欄を有する。予約情報8008に関して、ポートは必要ならば物理ケーブルを修復するのに使用することのできる予約ポートである。
0071 図19は、ストレージ構成内のホストグループのテーブルの例である。ホストグループは、ボリュームに対するサーバポートのWWNに基づき、ホストからのファイバチャネルパケットにアクセスすることができる。テーブルは、ストレージ名8001、ストレージNICのIPアドレス8002、およびアレイポート#1903、ポート名1904、ホストグループ1905、WWN1906およびボリューム番号1907の欄を有する。ストレージがサーバポートWWNおよびボリュームとホストグループを形成すると、ホストはボリュームを見ることができる。ホストからのボリュームアクセスの際、ストレージはアレイポート内のボリュームのアドレスとして論理ユニット番号を付与する。ボリュームプロビジョニングの方法および動作を次に説明する。
0072 図9は、第1実施例に基づく管理ソフトウェア1049のボリュームプロビジョニング方法を示すフロー図の例である。入力として、ハイパバイザ管理者などの管理ソフトウェアの管理者は、サーバから接続されボリュームをプロビジョニングされるストレージのポートを選択する。ステップ901において、管理ソフトウェアは、管理者の特定したストレージポートに基づき、物理ケーブルを認証し、修復する。このステップの詳細は、図10を参照して説明する。ステップ902において、管理ソフトウェアは、ステップ901の結果に基づき、冗長性に関連してサーバとストレージのポート間で物理ケーブルが確立されているかどうかをチェックする。確立されている場合、ステップ903に進み、確立されていない場合、ソフトウェアはエラーを表示する。ステップ903において、管理ソフトウェアは論理パスを認証し、修復する。このステップの詳細は、図12を参照して説明する。ステップ904において、管理ソフトウェアは、ステップ903の結果に基づき、冗長性に関連してサーバとストレージのポート間で論理パス、つまりゾーン、が確立されているかどうかをチェックする。確立されている場合、ステップ905に進み、確立されていない場合、ソフトウェアはエラーを表示する。ステップ905において、ソフトウェアはストレージにボリュームをプロビジョニングし、サーバに検出ボリュームをプロビジョニングする(ステップ906から908を参照)。これらのステップ901から904を使って、管理者はボリュームをプロビジョニングする前に、物理テーブルおよび論理パスを認証することができる。
0073 ボリュームをプロビジョニングし検出する方法を、ステップ906から908に示す。管理ソフトウェアは、サーバWWNを有するホストグループを使用するターゲットポートに対し、ターゲットサーバのWWNを有するホストグループにボリュームをプロビジョニングする(ステップ906)。プロビジョニングの間、ストレージは他のユーザの介入を防止するために、ストレージのロックリソースを使用する(ステップ907)。ボリュームプロビジョニングの後、管理ソフトウェアはサーバのボリュームの検出を指示する(ステップ908)。ボリュームが検出された場合、処理は終了する。検出されなかった場合、管理ソフトウェアは管理者に対しエラーを表示する。
0074 図10は、管理ソフトウェア1049の物理ケーブルの認証および修復の詳細を示すフロー図の例である。ステップ9001からの一連の入力として、管理者に特定されたストレージのポートを使う。
0075 ステップ1001において、管理ソフトウェアはサーバからサーバ構成を集め、図3に示されるサーバ構成を格納する。データを集めるため、CIM、SSH、XML、WEBMまたは他の種類のI/Fを使用する。ステップ1002において、管理ソフトウェアはFC−SWの構成を集め、図4のFC−SWリストに基づき、図5および6に示されるように格納する。FC−SW構成を集めるため、SMIS、SSH、XML、WEBMまたは他の種類のI/Fを使用する。ステップ1003において、管理ソフトウェアはストレージのポート構成を集め、図6に示されるように格納する。ストレージ構成を集めるため、SMI−S、RMI、XML_APIまたは他の種類のI/Fを使用する。ステップ1004において、管理ソフトウェアは図3にリストされるサーバの中からあるサーバを選択する。ステップ1005において、管理ソフトウェアは、エッジのFC−スイッチにより検出されたサーバHBAポートのWWNおよびストレージポートのWWNをたどることにより、サーバHBAポートから選択されたストレージのポートへの接続性を認証する。例えば、管理者が4つのストレージポートを選択した場合、管理サーバは、サーバHBAポートのWWNを図3のサーバ構成テーブルから得て、また選択された4つのストレージポートWWNを図6のストレージポート構成テーブルから得て、サーバHBAポートのWWNとストレージポートWWNとを、エッジスイッチにおいて検出された予約済みでないWWNの欄(3006において、「予約済み」フラッグがないもの)を使用して、照合する。一致する場合、ステップ1006に進む。一致しない場合、ステップ1008に進む。
0076 ステップ1006において(管理ソフトウェアがステップ1005においてサーバポートのWWNとストレージポートのWWN間の接続を検出した後)、管理ソフトウェアは各サーバのHBAポートがFC−SWの独立したドメインIDに接続するか否かを、エッジFC−SWテーブルのアクティブポートにおいて検出されたWWNの欄を使用して、認証する(図6)。HBAポートに独立ドメインIDがある場合、ステップ1007に進み、ない場合、ステップ1008に進む。
0077 ステップ1007において(管理ソフトウェアがステップ1005においてサーバポートのWWNとストレージポートのWWN間の接続を検出し、各サーバHBAポートがFC−SWの独立ドメインのIDに接続することを認証した後)、管理ソフトウェアは、ストレージのクラスタ情報を使って、各サーバのHBAポートが各ストレージの独立したストレージのクラスタに接続されているかどうかを認証する。あるドメインにおいて、もしドメインのすべての検出されたWWNからなるドメインキャッシュ情報に基づき、一つのサーバHBAポートのWWNが少なくとも2つの対象ストレージアレイポートを有し、他のドメインおよび他のHBAポートのWWNに基づき少なくとも2つの対象ストレージアレイポートを有する場合、認証処理は成功である。そうでない場合、処理は失敗である。認証が成功した場合、処理はステップ1010に進む。認証が失敗した場合、処理はステップ1008に進む。
0078 ステップ1008において、管理ソフトウェアは図5および6を参照して、コアおよびエッジFC−SWのポートのうちのすべての予約済みポートを確認する。予約済みポートがある場合、ステップ1009に進む。予約済みポートがない場合、管理ソフトウェアは認証失敗としてエラーを報告する。ステップ1009において、管理ソフトウェアは他のパスを選択する。このステップの詳細は図11に示す。ステップ1010において、管理ソフトウェアはすべてのサーバに関してこのステップが実行されたか否かを確認する。このプロセスがすべてのサーバに関して実行されている場合、この処理は終了する。そうでない場合、ステップ1004に進む。
0079 図11は、物理ケーブルを確定するために予約済みケーブルを選択する処理のフロー図の例を示す。ステップ1009からのサーバおよび対象ストレージの各ポートが入力される。
0080 ステップ1101において、管理ソフトウェアは、サーバHBAポートのWWNと図6において検出されたWWN(エッジFC−SW)とを照合する。一致しなかった場合は、ステップ1102に進む。一致した場合は、ステップ1106に進む。ステップ1102において、管理ソフトウェアは、SMI−S_CIM(Common Information Model)、SSH(secure socket shell)またはサーバおよびエッジFC−SW用の他のI/Fを使用して、予約済みHBAのポートと予約済みエッジFC−SWポートをリンクアップする。ステップ1103において、管理ソフトウェアは、サーバHBAポートのWWNと図6において検出されたWWNを照合する。一致しなかった場合、管理ソフトウェアは、リンクアップ用のI/Fと同じI/Fを使用して予約済みポートをリンクダウンし、適切なケーブルがないとしてエラーを返信する。一致した場合、ステップ1104に進む。ステップ1104において、管理ソフトウェアはサーバ構成およびエッジFC−SWのポート構成から予約状態を解除し、HBAのポートとエッジFC−SWのポートを選択する。ステップ1105において、管理ソフトウェアは、選択されたHBAのポートとFC−SWのポートを除く予約済みHBAポートとエッジFC−SWポートをリンクダウンする。これで処理が終了する。
0081 ステップ1106において、管理ソフトウェアは、サーバHBAポートのWWNと図5において検出されたWWN(コアFC−SW)とを照合する。一致しなかった場合、ステップ1107に進む。一致した場合、ステップ1111に進む。ステップ1107において、管理ソフトウェアはSMI−S、CIM、SSHまたはサーバおよびコアFC−SW用の他のI/Fを使用して、予約済みHBAポートと予約済みコアFC−SWポートとをリンクアップする。ステップ1108において、管理ソフトウェアはサーバHBAポートのWWNと図5において検出されたWWNとを照合する。一致しなかった場合、管理ソフトウェアは、リンクアップ用のI/Fと同じI/Fを使用して予約済みポートをリンクダウンし、適切なケーブルがないとしてエラーを返信する。一致した場合、ステップ1109に進む。ステップ1109において、管理ソフトウェアは、サーバ構成およびコアFC−SWのポート構成から予約状態を解除し、HBAポートとコアFC―SWポートを選択する。ステップ1110において、管理ソフトウェアは予約済みHBAポートとコアFC−SWポートをリンクダウンする。これで処理が終了する。
0082 ステップ1111において、管理ソフトウェアはストレージポートWWNと図5において検出されたWWNを照合する。一致しなかった場合、ステップ1112に進む。一致した場合、ソフトウェアは未確認エラーメッセージを発行する。ステップ1112において、管理ソフトウェアは、XML_API、RMI、CIM、SSHまたはサーバおよびコアFC−SW用の他のI/Fを使用して予約済みストレージポートとコアFC−SWポートとをリンクアップする。ステップ1113において、管理ソフトウェアはストレージポートのWWNと図5において検出されたWWNを照合する。一致しなかった場合、管理ソフトウェアは予約済みポート同士をリンクダウンし、適切なケーブルがないとしてエラーを返信する。一致した場合、ステップ1114に進む。ステップ1114において、管理ソフトウェアは、ストレージポート構成およびコアFC−SWのポート構成から予約状態を解除し、HBAポートとコアFC―SWポートを選択する。ステップ1115において、管理ソフトウェアは予約済みストレージポートとコアFC−SWポートをリンクダウンする。これで処理が終了する。この処理によって、予約済みポートと予約済みケーブルを使って、ケーブルを確立することができる。
0083 図12は、論理パス(本発明におけるゾーン)を認証し、必要な時にそれを確定させるための処理のフロー図の例を示す。この処理は「ドメインID」付与済みの各エッジFCスイッチに対して実行される。この構成においては2つのドメインが存在し、管理ソフトウェアは両ドメインに対して処理を実行する。ステップ1007においてアレイの冗長ポートとして定義づけられたサーバおよび対象ストレージのポートが入力される。
0084 ステップ1201において、管理ソフトウェアは、図3のサーバ構成テーブルからサーバを選択する。ステップ1202において、管理ソフトウェアは、図7において格納されるコアFC−SWからゾーン情報をゾーン構成として集める。ステップ1203において、管理ソフトウェアはサーバHBAポートのWWNとストレージのWWNを各ファブリックネットワークの各ドメインID内のWWNを有する各ゾーンと照合する。一致しなかった場合、ステップ1204に進む。一致した場合、ステップ1205に進む。ステップ1204において、管理ソフトウェアは修復ゾーン処理を実行する(ステップ1210から1215)。ステップ1205において、管理ソフトウェアは図8にリストされたストレージ構成情報を集める。ステップ1206において、管理ソフトウェアは、対象アレイポートのホストグループの冗長性を確認する。各対象ポートが対象サーバWWNを有するホストグループを有する場合、ステップ1208に進む。そうでない場合、ステップ1207に進む。ステップ1207において、管理ソフトウェアはホストグループまたはサーバWWNを対象ポートにある対象アレイのホストグループに修復する。このステップの詳細を図18に示す。ステップ1208において、管理ソフトウェアはこの処理がすべてのサーバに対して実行されたか否かを確認する。この処理がすべてのサーバに対して実行された場合、処理を終了する。そうでない場合、ステップ1201に進む。
0085 サーバのための修復ゾーン処理をステップ1210から1215に示す。管理者によって選択されたサーバおよび対象ポートが入力される。ステップ1210において、管理ソフトウェアはサーバHBAポートのWWNとストレージポートのWWNを、WWNを有するゾーンと照合する。一致した場合、処理は終了する。一致しなかった場合、ステップ1211に進む。ステップ1211において、管理ソフトウェアはサーバHBAポートのWWNを、WWNを有するゾーンと照合する。一致した場合、ステップ1212に進む。一致しなかった場合、ステップ1213に進む。ステップ1212において、管理ソフトウェアはストレージポートのWWNを存在するゾーンに加え、処理を終了する。ステップ1213において、管理ソフトウェアはストレージポートのWWNを、WWNを有するゾーンと照合する。一致した場合、ステップ1214に進む。一致しなかった場合、ステップ1215に進む。ステップ1214において、管理ソフトウェアはサーバHBAポートのWWNを存在するゾーンに加え、処理を終了する。ステップ1215において、管理ソフトウェアはサーバHBAポートのWWNとストレージポートのWWNとで新たなゾーンを作成し、処理を終了する。
0086 図18は、アレイのポート内のホストグループまたはホストグループ用のサーバWWNを修復する処理のフロー図の例を示す。この処理は各クラスターストレージサブシステムに対して実行される。管理ソフトウェアから、アレイのポートおよびサーバのWWNが入力される。
0087 ステップ1801において、管理ソフトウェアは対象アレイのポート内のホストグループにサーバWWNが含まれるか否かを確認する。サーバWWNがホストグループに含まれる場合、処理は終了する。そうでない場合、ステップ1802に進む。ステップ1802において、管理ソフトウェアはアレイポート内にサーバのポートWWN用のホストグループがあるか否かを確認する。ある場合、ステップ1804に進む。ない場合、ステップ1803に進み、その後1804に進む。ステップ1803において、管理ソフトウェアはストレージアレイに対して、対象アレイのポートにホストグループを作成するよう要求する。ステップ1804において、管理ソフトウェアはストレージアレイに対し、ホストグループにサーバのWWNを加えるよう要求する。これで処理が終了する。
0089 本発明の第2実施例は、Nポートの仮想化に関する。本実施例の利点は、RAWデバイスのNPIVマッピングでの冗長ファブリックネットワークを考慮して、VMユーザがVMに対するストレージポートの冗長性を維持することができる点にある。第2実施例は第1実施例と共通する部分がある。よって、第1実施例との相違点についてのみ説明する。図1の物理構成がこの実施例においても適切である。
0090 図13は、実施例2に基づき、ストレージ側の視点から図1のシステムの論理構成の例を示す。図2に示す実施例1に比べ、実施例2ではNPIVに使用されるVM1145およびノードWWNおよびポートWWN1144が加わっている。その結果、VMはハイパバイザによって提供されるポートWWNを介してローボリュームに直接アクセスすることができる。ホストのVMによって加えられたVMの構成情報は、WEBM、CIMまたはその他のOS管理I/Fを使用して得ることができる。
0091 図14は、集められたVM構成のテーブルの例を示す。テーブルは、VM名、サーバUUIDに属するVM、NPIVのポート#、およびNPIVのポートWWNの欄を有する。NPIVのノードWWNもこのテーブルに含むことができる。
0092 NPIVの特徴として、各VMは仮想的な自身だけのポートWWNを有することができる。そのため、エッジFC−SWのためのポート構成はポートのWWNを含む。図15は、第2実施例にかかるエッジFC−SWのポート構成のテーブルの例を示す。ポート#1はVMを有するホストに接続される。VMのうちの一つは仮想HBAポートのWWNを有する。エッジスイッチに対してファブリックログインが実行されたため、上記WWNはエッジFC−SWにおいて検出される。その結果、図15のテーブルにおいて、ポート#1には仮想HBAポートのWWNが付与されている。
0093 図16は、実施例2に基づくゾーンリストのテーブルの例を示す。バーチャルHBAポートのWWNを使用してゾーンを作成する場合、実施例1のゾーンリスト(図7)を利用することができる。実施例2に関して考慮すべき点は、ストレージポートのWWNを有する仮想HBAポートのWWNを使って新しいゾーンを作成することである。そのため、既存のゾーンに対し、図16に示すゾーンリスト追加テーブルが加えられる。テーブルのフォーマットは図7と同じである。ここでも、相違点はNPIVのためのゾーンが追加されたことだけである。
0094 実施例2のフローおよび動作に関して、実施例1との相違点は、管理ソフトウェアがVMのために他のゾーンを論理パスとして作成しなければならないことである。処理は図9に示した実施例1の処理と類似している。
0095 図17は、第2実施例において、NPIVを考慮に入れた認証を含むボリュームプロビジョニング処理のフロー図の例を示す。図17は追加ステップ913と914、および図9のステップ906から908に代わる新規ステップ916から918を示す。ステップ913はVMのための論理パスを認証して修復するためのステップである。このステップの詳細を図12に示す。このステップにおいて、実施例1では管理サーバはサーバを使用する。実施例2では、NPIVのノードおよびポートWWNを使用してゾーンを作成するため、サーバの代わりに、管理サーバは図14のVM構成テーブルでのVMを使用する。ステップ913の結果に基づき、ステップ914ではパスがVMのためのゾーンとしての論理パスであるか否かを確認する。加えて、ステップ916と917のボリュームプロビジョニングに際し、管理ソフトウェアはVM_NPIVのWWNに対してボリュームをプロビジョニングし、VMにプロビジョニングされたボリュームを検出するよう指示する。ステップ918では、VMのボリュームの存在を確認する。
0097 サーバや仮想マシンの管理者にとって、冗長性を考慮に入れつつイーサネットのネットワークを確立することは難しい。実施例3は、仮想マシンの実行されるサーバ間のイーサネットのネットワークを認証し、冗長性を持たせるための方法を開示する。
0098 図20Aは実施例3に基づき、イーサネットのネットワークの視点から、図1のシステムの論理構成例を示す。システムは、基本ラック1000および増設ラック1100および1200を有する。基本ラック1000は2つの集約スイッチ1050、1060、および管理サーバ1040からなる。図20Bは、図20Aの管理サーバ1040の詳細を示す。管理サーバ1040は、物理テーブルおよび論理パスを認証するための管理ソフトウェア(MGMTソフトウェア、1049)を有する。ソフトウェアは、サーバおよびイーサネットスイッチの情報用の構成情報収集機能1041と、物理ケーブルおよび論理パスのための認証機能1042と、イーサネットのためのサーバテーブル30000と、イーサネットスイッチテーブル31000と、アクセススイッチポートテーブル32000と、集約スイッチポートテーブル33000と、トポロジーサマリーテーブル34000と、パステーブル37000と、最短パステーブル38000と、セットポートテーブル40000を含む。管理ソフトウェアは、イーサネットスイッチの各ポートに対してVLAN(仮想ローカルエリアネットワーク)IDを付与することができる。
0099 アクセススイッチ(1150、1160、1250および1260)が集約スイッチ(1050および1060)に接続される。VM1147が仮想スイッチに接続され(29010から29013)、仮想スイッチがNICに接続される(29040から29047)。NICはアクセススイッチ(1150、1160、1250および1260)に接続される。各増設ラックは、サーバ1140およびアクセススイッチ(1150、1160、1250および1260)からなる。各サーバは2つのNIC(29040から29047)、VMを実行するためのハイパバイザ(図示しない)、およびVM1147を有する。VMは、WindowsやLinuxといったオペレーティングシステムを実行することができる。管理サーバ1040はサーバ1140、アクセススイッチ(1150、1160、1250および1260)、および集約スイッチ(1050および1060)に、LAN2010を介して接続される。
0100 図21は、イーサネットのためのサーバテーブル30000の例を示す。テーブルはサーバ名30001、UUID30002、サーバのIPアドレス30003、サーバの仮想スイッチ30004、NIC識別子30005、NICのMACアドレス30006、およびNICまたは仮想スイッチ30004のために設定されるVLAN_ID30007の欄を有する。UUIDは分散環境においてサーバの重複を禁止するための、サーバのためのユニバーサルに固有の識別子である。
0101 図22は、イーサネットスイッチテーブル31000の例を示す。テーブルは、イーサネットスイッチ名31001、それらのIPアドレス31002、およびそれらの属性31003の欄を含む。属性31003は,「アクセス」または「集約」である。
0102 図23は、アクセススイッチテーブル32000のポートの例を示す。テーブルは、イーサネットスイッチ名31001、そのIPアドレス31002、およびそのポート識別子32001、検出されたデバイスIPアドレス32003、および検出されたポート識別子32004の欄を有する。検出されたデバイスIPアドレス32003と検出されたポート識別子32004はイーサネットスイッチ31001に接続されるデバイスおよびそのポート識別子を示す。
0103 図24は集約スイッチテーブル33000のポートの例を示す。テーブルは、イーサネットスイッチ名31001、そのIPアドレス31002、およびそのポート識別子33001と、検出されたデバイスIPアドレス33003と、検出されたポート識別子33004の欄を有する。検出されたデバイスIPアドレス33003および検出されたポート識別子33004はイーサネットスイッチ31001に接続されるデバイスおよびそのポート識別子を示す。
0104 図25は、トポロジーサマリーテーブル34000の例を示す。テーブルは、ソースデバイスID34001、ソースデバイスポート34002、接続デバイスID34003および接続デバイスポート34004の欄を有する。このテーブルは、スイッチポートからスイッチポート接続性およびNICからスイッチポート接続性を表す。このテーブルは、テーブル30000、31000、32000および33000の情報を使って作成される。
0105 図26は、サーバ間のイーサネットのネットワークを認証し構成する処理のフロー図の例を示す。この処理は、ユーザがMGMTソフトウェア1049を使ってイーサネットのネットワークを認証し構成するよう指示することにより開始される。ステップ35001において、ソフトウェアは上述の通り情報を収集し、テーブルを作成する。ステップ35002において、ソフトウェアは仮想スイッチとNIC間の接続を認証する。ステップ35003において、ソフトウェアは、認証が成功したか否かを判断する。認証が失敗した場合、ソフトウェアはエラーを表示する。認証が成功した場合、ソフトウェアはステップ35004において、サーバとアクセススイッチ間の冗長性を認証する(図27参照)。ステップ35005において、ソフトウェアは認証が成功したか否かを判断する。認証が失敗した場合、ソフトウェアはエラーを表示する。認証が成功した場合、ソフトウェアはステップ35006において、アクセスと集約スイッチ間の冗長性を認証する(図32参照)。ステップ35007において、ソフトウェアは認証が成功したか否かを判断する。認証が失敗であった場合、ソフトウェアはエラーを表示する。認証が成功であった場合、ソフトウェアはステップ35008においてVLAN_IDを各スイッチポートに設定する。このステップの詳細を図30A及び図30Bに示す。これで処理が終了する。
0106 図27は、2つのサーバ間のネットワークの冗長性を認証する処理のフロー図の例を示す。この図は、図26のステップ35004の詳細を示す。処理はサーバiとサーバjの入力から開始する。ステップ36001において、ソフトウェアはサーバiおよびjに属するNICを探す。ステップ36002において、ソフトウェアは、NICixとNICiy(NICabとは、サーバaに属するb番目のNICという意味)間のすべてのパスを列挙する。ステップ36003において、ソフトウェアは列挙されたパスをパステーブル37000に格納する(図28参照)。ステップ36004において、ソフトウェアは、パステーブル37000からサーバiとサーバj間の最短パスを選択する(パスnが選択されたパス)。ステップ36005において、ソフトウェアはパスnを最短パステーブル38000に格納し(図29参照)、選択されたパスnをパステーブル37000から削除する。ステップ36006において、ソフトウェアは、最短パステーブル38000内の集約スイッチを含むすべてのパスを削除する。ステップ36007において、ソフトウェアは、パステーブル37000内にパスが残っているか否かを判断する。残っている場合、ステップ36004に戻る。残っていない場合、ソフトウェアはステップ36008において最短パステーブル38000に含まれるパスの数を数える。ステップ36009において、ソフトウェアは、少なくとも2つのパスを数えたか否かを判断する。そうである場合、認証は成功したとして終了する。そうでなかった場合、認証は失敗に終わる。
0107 図28は、パステーブル37000の例を示す。このテーブルは、図27の処理の中で作成され、使用される。パス37001はイーサネットのネットワークの終端間パスを示す。
0108 図29は、最短パステーブル38000の例を示す。このテーブルは、図27に示す処理の間に作成され、使用される。パス38001はイーサネットのネットワークの終端間パスを表す。このテーブルを使って、2つのサーバ間のパスの数を算出することができる。
0109 図30Aは、各スイッチポートにVLAN_IDを設定する処理のフロー図の例を示す。この処理は図26のステップ35008の詳細を表す。ステップ39000において、ソフトウェアは、サーバiの仮想スイッチに設定されるVLAN_IDを探し、検出したVLAN_ID{vid}のセットを作成する。ステップ39001において、ソフトウェアは、トポロジーサマリーテーブル34000からサーバiのNICのうちの一つに接続された接続デバイスおよびそのポートを探し(図25)、検出された接続デバイスおよびそのポート{(did、pid)}のセットを作成する。デバイスIDとポートID{(did、pid)}およびVLAN_ID{vid}を入力として、ソフトウェアはステップ39002においてポートのVLAN_IDを設定する。このステップの詳細を図30Bに示す。ステップ39003において、もしソフトウェアがサーバiのすべてのNICについて「ポートのVLAN_IDを設定」を実行した場合、処理は終了し、そうでない場合、処理はステップ39001に戻る。
0110 図30Bは、図30AにおけるポートのVLAN_IDを設定するステップ39002の詳細な処理を示すフロー図の例であり、デバイスIDとポートID{(did、pid)}およびVLAN_ID{vid}を入力とする。ステップ39010において、ソフトウェアは、接続デバイス(did)がサーバであるか否かを判断する。そうである場合、処理は終了する。そうでない場合、ソフトウェアはステップ39011において、セットポートテーブル40000(図31参照)内に{(did、pid)}が存在するか否かを判断する。ある場合、処理は終了する。ない場合、ソフトウェアはステップ39012内においてpidとして表されるポートに{vid}を設定する。ステップ39012において、収集機能1041を使って、pidで識別されるポートに設定されたVLAN_IDを取得する。MGMTソフトウェア1049は、{vid}からポートへ設定されていないVLAN_IDを選択し、選択IDをポートに設定する。
0111 ステップ39013において、ソフトウェアはセットポートテーブル40000に{(did、pid)}を格納する。ステップ39014において、ソフトウェアはトポロジーサマリーテーブル34000(図25)から(did)に接続された接続デバイスおよびそのポートを探し、接続デバイスおよびそのポート{(did’、pid’)}のセットを得る。ステップ39015において、ソフトウェアは1つの{(did’、pid’)}を選択する。デバイスIDとポートID{(did、pid)}およびVLAN_ID{vid}を入力として、ソフトウェアはステップ39002においてポートのVLAN_IDを設定する。ステップ39016において、もしすべての{(did’、pid’)}に対して「ポートにVLAN_IDを設定」が実行された場合、処理は終了する。そうでない場合、処理はステップ39015に戻る。図30Bのステップ39015および39002は「ポートにVLAN_IDを設定する」再帰的処理を示す。
0112 図30Bのステップ39002は、VLANを設定する処理の再帰的特徴を示す。ネットワークにおけるすべての関係するポートを構成するために、処理は一つのスイッチから始まってそれに接続されるスイッチに対して行われ、各スイッチに対して図30Bのすべてのステップを実行する。図30Bにおけるステップ39012は、ポートに対して実際にVLANを設定するステップである。図30Bの残りのステップは、VLANが構成されるべきデバイスに他のデバイスが接続されているか否かを検出するためのものである。そのため、ステップ39014の後、ステップ39015の前に、ソフトウェアは選択可能なポートがあるか否かを確認する。ある場合はステップ39015に進み、ない場合は処理を終了する。
0113 図31は、セットポートテーブル40000の例を示す。このテーブルは図30A及び図30Bに示す処理の間に作成され、使用される。デバイスID40001はサーバおよびイーサネットスイッチのIPアドレスを表す。デバイスポート40002は、イーサネットスイッチおよびNICのポートの識別子を表す。
0115 図32は、図26に示されるアクセスと集約スイッチ間の冗長性を認証するステップ35006の詳細な説明を示すフロー図の例である。ステップ41000において、ソフトウェアは、イーサネットスイッチテーブル31000(図22)からすべてのアクセススイッチを列挙し、アクセススイッチ{as}のセットを形成する。ステップ41001において、ソフトウェアは{as}に含まれるアクセススイッチのうちの1つを選択する。ステップ41002において、ソフトウェアは、アクセススイッチテーブル32000(図23)内のポートを使って、イーサネットスイッチテーブル31000に列挙されたすべての集約スイッチに選択されたアクセススイッチが接続されているか否かを確認する。ステップ41003において、ステップ4102が{as}内のすべてのアクセススイッチに対して実行された場合、処理が終了する。そうでない場合、処理はステップ41001に戻る。
0115 当然のことながら、図1に示すシステム構造は、本発明が実施され得る情報システムの単なる例示であり、本発明は特定のハードウェア構成に限定されない。本発明を実施するコンピュータ及びストレージシステムは、上述の発明を実施するために用いられるモジュール、プログラム及びデータ構造を格納しかつ読み出すことができる公知のI/O装置(例えば、CD及びDVDドライブ、フロッピー(登録商標)ディスクドライブ、ハードドライブ等)を有し得る。これらのモジュール、プログラム及びデータ構造は、当該コンピュータ読み取り可能媒体上で符号化することができる。例えば、本発明のデータ構造は、本発明で使用されるプログラムが存在する一つ以上のコンピュータ読み取り可能媒体から独立したコンピュータ読み取り可能媒体に格納することができる。システムの構成要素は、あらゆる形態又は媒体のデジタルデータ通信、例えば通信ネットワーク、によって相互接続することができる。通信ネットワークの例としては、ローカルエリアネットワーク、ワイドエリアネットワーク、例えばインターネット、無線ネットワーク、ストレージエリアネットワーク等、を含む。
0116 本明細書では、本発明の理解を深めるために、多くの具体的かつ詳細な記載がなされている。しかし当業者にとっては、本発明を実施するためにこれら具体的な詳細のすべてが必要なわけではないことは明らかであるだろう。また、留意すべき点として、本発明は、通常はフローチャート、フロー図、構成図又はブロック図として記載されるプロセスとして説明されてもよい。フローチャートでは動作を逐次プロセスとして説明するが、動作の多くは並行して又は同時に実行することができる。さらに、動作の順番は並び替えてもよい。
0117 当技術分野では周知であるように、上述の動作は、ハードウェア、ソフトウェア、又はソフトウェアとハードウェアの組み合わせによって実行することができる。本発明の実施形態の様々な態様は、回路や論理装置(ハードウェア)を用いて実施してよく、その一方で、その他の態様は、機械読取可能媒体(ソフトウェア)上に記憶された命令を用いて実施してもよく、当該発明は、プロセッサによって実行された場合には、プロセッサに本発明の実施形態を実行させる方法を実施させるものである。さらに、本発明のいくつかの実施形態は、ハードウェアのみにおいて実施されてもよく、その他の実施形態は、ソフトウェアのみで実施されてもよい。さらに、説明された様々な機能は一つのユニットで実施することができ、又はあらゆる方法によって多くの構成要素に広めることができる。ソフトウェアによって実施された場合、本発明の方法は、コンピュータ読取可能媒体に記憶された命令に基づいて、汎用コンピュータなどのプロセッサによって実行され得る。望ましい場合には、圧縮およびまたは暗号化形式で命令を媒体に記憶することができる。
0118 上記により、本発明が、ボリュームをプロビジョニングする前に冗長パスを認証するための方法、装置およびコンピュータ読取可能な媒体に記憶されたプログラムを提供するものであることが明らかであろう。さらに、本明細書において特定の実施形態が示され説明されているが、当業者にとって明白なように、開示された特定の実施形態の代わりに、同じ目的を達成するために創出された構成を用いてもよい。本開示は、本発明のあらゆる適応例や変形例を対象とすることを意図したものであり、また以下の請求項で用いられる用語は、本発明を本明細書で開示した特定の実施形態に限定するよう解釈されるべきではない。むしろ本発明の範囲は、以下の請求項によって判断されるべきものであり、以下の請求項は、当該請求項が権利を有する同等物の範囲全体と共に、請求項の解釈について確立された原則に従って解釈されるものである。
1000:基本ラック
1100、1200:増設ラック
1010:ストレージ
1040:サーバ(管理サーバ)
1140、1240:サーバ
1050、1060、1150、1160、1250、1260:イーサネットスイッチ
1140、1240: サーバ
1300: データセンターネットワーク

Claims (13)

  1. ソフトウェアを格納するメモリと、前記ソフトウェアを実行するプロセッサとを有するコンピュータであって、
    前記ソフトウェアは
    プロビジョニングするボリュームに対応して指定されたストレージポートに基づき、
    サーバのサーバポート情報を有するサーバ構成情報を収集する処理と、
    サーバポートに接続されるFC−SW(Fibre Channel−SWitch)で検出された該サーバポートのWWN(World Wide Name)およびストレージポートに接続されるFC−SWで検出された該ストレージポートのWWNを含む当該FC−SWの各構成情報を収集する処理と、
    前記ストレージポートを含むストレージポート情報を有するストレージ構成情報を収集する処理と、
    第1サーバポートのWWNと第1ストレージポートのWWNとを、および、第2サーバポートのWWNと第2ストレージポートのWWNとを、それぞれ前記検出された各WWNから照合をして、前記第1サーバポートと前記第1ストレージポート間の第1物理的接続および前記第2サーバポートと前記第2ストレージポート間の第2物理的接続を認証することにより、前記第1物理的接続および前記第2物理的接続による冗長関係の形成を確認する処理と、
    前記冗長関係の形成の確認後に前記ボリュームをプロビジョニングする処理と
    を有することを特徴とする、コンピュータ。
  2. 前記ソフトウェアは、
    前記照合を、前記FC−SWの予約済みでないポートと前記サーバポートとの接続関係および前記FC−SWの予約済みでないポートと前記ストレージポートとの接続関係に対して実行する
    ことを特徴とする、請求項1に記載のコンピュータ。
  3. 前記第1サーバポートと前記第2サーバポートは、前記サーバの同じ仮想マシンによって使用される
    ことを特徴とする、請求項1または2に記載のコンピュータ。
  4. 前記ソフトウェアは、さらに、
    前記第1サーバポートと前記第1ストレージポート間の第1論理的接続および前記第2サーバポートおよび前記第2ストレージポート間の第2論理的接続による冗長関係の形成を確認する処理を有する
    ことを特徴とする、請求項1〜3のいずれか1項に記載のコンピュータ。
  5. サーバと、
    ストレージシステムと、
    ソフトウェアを格納するメモリと、
    前記ソフトウェアを実行するプロセッサを有するコンピュータと
    からなるシステムであって、
    前記ソフトウェアは、
    プロビジョニングする前記ストレージシステムのボリュームに対応して指定されたストレージポートに基づき、
    前記サーバのサーバポート情報を有するサーバ構成情報を収集する処理と、
    サーバポートに接続されるFC−SW(Fibre Channel−SWitch)で検出された該サーバポートのWWN(World Wide Name)およびストレージポートに接続されるFC−SWで検出された該ストレージポートのWWNを含む当該FC−SWの各構成情報を収集する処理と、
    前記ストレージポートを含むストレージポート情報を有するストレージ構成情報を収集する処理と、
    第1サーバポートのWWNと第1ストレージポートのWWNとを、および、第2サーバポートのWWNと第2ストレージポートのWWNとを、それぞれ前記検出された各WWNから照合をして、前記第1サーバポートと前記第1ストレージポート間の第1物理的接続および前記第2サーバポートと前記第2ストレージポート間の第2物理的接続を認証することにより、前記第1物理的接続および前記第2物理的接続による冗長関係の形成を確認する処理と、
    前記冗長関係の形成の確認後に前記ボリュームをプロビジョニングする処理と
    を有することを特徴とする、システム。
  6. 前記ソフトウェアは、
    前記照合を、前記FC−SWの予約済みでないポートと前記サーバポートとの接続関係および前記FC−SWの予約済みでないポートと前記ストレージポートとの接続関係に対して実行する
    ことを特徴とする、請求項5に記載のシステム。
  7. サーバと、
    ストレージシステムと、
    ソフトウェアを格納するメモリと、
    前記ソフトウェアを実行するプロセッサを有するコンピュータと
    からなるシステムであって、
    前記サーバは、第1サーバポートおよび第2サーバポートとして、第1NIC(Network Interface Card)および第2NICを有する第1サーバと、第3NICおよび第4NICを有する第2サーバとから成り、
    前記第1サーバおよび第2サーバの各々は、自らが有する前記NICに接続される仮想スイッチに接続されている仮想マシンを含み、
    前記システムは、前記ストレージシステムに接続される集約スイッチと、当該集約スイッチと前記第1サーバおよび第2サーバとの間に接続されるアクセススイッチを有し、
    前記ソフトウェアは、
    前記第1サーバおよび前記第2サーバ各々の前記NICと前記仮想スイッチ間の接続を認証する処理と、
    前記第1サーバおよび前記第2サーバと前記アクセススイッチとの間の冗長性を認証する処理とを有し、
    前記冗長性を認証する処理は、前記第1サーバの第1NICと第2NIC間および前記第2サーバの第3NICと第4NIC間、のすべてのパスをパステーブル内に格納する第1の処理と、
    前記パステーブル内のすべてのパスから選択した最短パスを最短パステーブルに格納すると共に前記パステーブルから削除する第2の処理と、
    前記最短パステーブルから前記集約スイッチを含むすべてのパスを削除する第3の処理と、
    前記パステーブル内に前記パスが残らない状態になるまで前記第2および前記第3の処理を繰り返す第4の処理と、
    前記第4の処理の実行後に少なくとも2つの選択された前記最短パスが残っている場合に、前記冗長性の形成を認証する第5の処理とから成る
    ことを特徴とする、システム。
  8. 前記ソフトウェアは、前記2つの認証する処理が成功すれば、前記集約スイッチおよび前記アクセススイッチの各スイッチポートにVLAN(Virtual Local Area Network)IDを設定する処理を有する
    ことを特徴とする、請求項7に記載のシステム。
  9. データプロセッサを制御するための複数の命令を格納するコンピュータ読み取り可能な記憶媒体であって、
    該複数の命令は、
    プロビジョニングするボリュームに対応して指定されたストレージポートに基づき、
    前記データプロセッサが、
    サーバのサーバポート情報を有するサーバ構成情報を収集する命令と、
    サーバポートに接続されるFC−SW(Fibre Channel−SWitch)で検出された該サーバポートのWWN(World Wide Name)およびストレージポートに接続されるFC−SWで検出された該ストレージポートのWWNを含む当該FC−SWの各構成情報を収集する命令と、
    前記ストレージポートを含むストレージポート情報を有するストレージ構成情報を収集する命令と、
    第1サーバポートのWWNと第1ストレージポートのWWNとを、および、第2サーバポートのWWNと第2ストレージポートのWWNとを、それぞれ前記検出された各WWNから照合をして、前記第1サーバポートと前記第1ストレージポート間の第1物理的接続および前記第2サーバポートと前記第2ストレージポート間の第2物理的接続を認証することにより、前記第1物理的接続および前記第2物理的接続による冗長関係を確認する命令と、
    前記冗長関係の確認後に前記ボリュームをプロビジョニングする命令と
    を有することを特徴とする、コンピュータ読み取り可能な記憶媒体。
  10. 前記複数の命令は、前記データプロセッサが、
    前記照合を、前記FC−SWの予約済みでないポートと前記サーバポートとの接続関係および前記FC−SWの予約済みでないポートと前記ストレージポートとの接続関係に対して実行する命令を含む
    ことを特徴とする、請求項9に記載のコンピュータ読み取り可能な記憶媒体。
  11. 前記複数の命令は、前記データプロセッサが、さらに、
    前記第1サーバポートと前記第1ストレージポート間の第1論理的接続および前記第2サーバポートおよび前記第2ストレージポート間の第2論理的接続による冗長関係を確認する命令を
    有することを特徴とする、請求項9または10に記載のコンピュータ読み取り可能な記憶媒体。
  12. データプロセッサを制御するための複数の命令を格納するコンピュータ読み取り可能な記憶媒体であって、
    サーバは、第1サーバポートおよび第2サーバポートとして、第1NIC(Network Interface Card)および第2NICを有する第1サーバと、第3NICおよび第4NICを有する第2サーバとから成り、
    前記第1サーバおよび前記第2サーバの各々は、自らが有する前記NICに接続される仮想スイッチに接続されている仮想マシンを含み、
    集約スイッチが、ストレージシステムに接続され、
    アクセススイッチが、前記集約スイッチと前記第1サーバおよび前記第2サーバとの間に接続される構成に対して、
    前記複数の命令は、前記データプロセッサが、
    前記第1サーバおよび前記第2サーバ各々の前記NICと前記仮想スイッチ間の接続を認証する命令と、
    前記第1サーバおよび前記第2サーバと前記アクセススイッチとの間の冗長性を認証する命令とを有し、
    前記冗長性を認証する命令は、前記第1サーバの第1NICと第2NIC間および前記第2サーバの第3NICと第4NIC間、のすべてのパスをパステーブル内に格納する第1の命令と、
    前記パステーブル内のすべてのパスから選択した最短パスを最短パステーブルに格納すると共に前記パステーブルから削除する第2の命令と、
    前記最短パステーブルから前記集約スイッチを含むすべてのパスを削除する第3の命令と、
    前記パステーブル内に前記パスが残らない状態になるまで前記第2および前記第3の処理を繰り返す第4の命令と、
    前記第4の命令の実行後に少なくとも2つの選択された前記最短パスが残っている場合に、前記冗長性の形成を認証する第5の命令とから成る
    ことを特徴とする、コンピュータ読み取り可能な記憶媒体。
  13. 前記複数の命令は、前記2つの認証する命令による処理が成功すれば、前記集約スイッチおよび前記アクセススイッチの各スイッチポートにVLAN(Virtual Local Area Network)IDを設定する命令を有する
    ことを特徴とする、請求項12に記載のコンピュータ読み取り可能な記憶媒体。
JP2013042617A 2012-07-27 2013-03-05 プロビジョニング前に冗長パスを認証する方法および装置 Expired - Fee Related JP6159103B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/560,139 2012-07-27
US13/560,139 US9354915B2 (en) 2012-07-27 2012-07-27 Method and apparatus of redundant path validation before provisioning

Publications (2)

Publication Number Publication Date
JP2014026637A JP2014026637A (ja) 2014-02-06
JP6159103B2 true JP6159103B2 (ja) 2017-07-05

Family

ID=49996016

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013042617A Expired - Fee Related JP6159103B2 (ja) 2012-07-27 2013-03-05 プロビジョニング前に冗長パスを認証する方法および装置

Country Status (2)

Country Link
US (3) US9354915B2 (ja)
JP (1) JP6159103B2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9621625B2 (en) * 2013-07-11 2017-04-11 Cinarra Systems Method and system for correlation of internet application domain identities and network device identifiers
US11075948B2 (en) * 2014-01-10 2021-07-27 Arista Networks, Inc. Method and system for virtual machine aware policy management
CN104917800B (zh) * 2014-03-14 2018-03-27 国际商业机器公司 建立用于虚拟机的冗余连接的方法及装置
US9841904B2 (en) * 2015-03-02 2017-12-12 Samsung Electronics Co., Ltd. Scalable and configurable non-volatile memory module array
US10129081B1 (en) * 2015-03-30 2018-11-13 EMC IP Holding Company LLC Dynamic configuration of NPIV virtual ports in a fibre channel network
US10452310B1 (en) * 2016-07-13 2019-10-22 Pure Storage, Inc. Validating cabling for storage component admission to a storage array
CN106411747B (zh) * 2016-08-31 2021-08-27 中国电力科学研究院 一种应用于智能变电站交换机报文转发的方法和系统
US10484015B2 (en) 2016-12-28 2019-11-19 Amazon Technologies, Inc. Data storage system with enforced fencing
US10514847B2 (en) 2016-12-28 2019-12-24 Amazon Technologies, Inc. Data storage system with multiple durability levels
US10771550B2 (en) * 2016-12-28 2020-09-08 Amazon Technologies, Inc. Data storage system with redundant internal networks
US11720924B2 (en) 2017-04-05 2023-08-08 Cinarra Systems, Inc. Systems and methods for cookieless opt-out of device specific targeting
US11164212B2 (en) 2017-04-12 2021-11-02 Cinarra Systems, Inc. Systems and methods for relevant targeting of online digital advertising
US10757040B2 (en) * 2017-07-11 2020-08-25 Cisco Technology, Inc. Efficient distribution of peer zone database in Fibre Channel fabric
US10855594B2 (en) * 2018-07-13 2020-12-01 Dell Products L.P. Fibre Channel Forwarder load balancing system
CN109150602A (zh) * 2018-08-16 2019-01-04 郑州云海信息技术有限公司 一种适配存储设备的方法、装置、计算机存储介质及终端
JP6878369B2 (ja) * 2018-09-03 2021-05-26 株式会社日立製作所 ボリューム配置管理装置、ボリューム配置管理方法、及びボリューム配置管理プログラム
US11251979B2 (en) * 2019-10-30 2022-02-15 International Business Machines Corporation Control of information units for encryption
CN111741383A (zh) * 2020-06-23 2020-10-02 国网重庆市电力公司电力科学研究院 一种自动化虚拟系统功能验证平台及验证方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6928484B1 (en) * 2000-01-18 2005-08-09 Cisco Technology, Inc. Method and apparatus for discovering edge-disjoint shortest path pairs during shortest path tree computation
US7243160B2 (en) * 2001-05-10 2007-07-10 Intel Corporation Method for determining multiple paths between ports in a switched fabric
US7406039B2 (en) * 2002-02-26 2008-07-29 Dell Products L.P. System and method for a failover protocol in storage area network controllers
US20030195956A1 (en) * 2002-04-15 2003-10-16 Maxxan Systems, Inc. System and method for allocating unique zone membership
AU2003295356A1 (en) 2002-10-23 2004-05-13 Onaro Method and system for validating logical end-to-end access paths in storage area networks
US7693158B1 (en) * 2003-12-22 2010-04-06 Extreme Networks, Inc. Methods and systems for selectively processing virtual local area network (VLAN) traffic from different networks while allowing flexible VLAN identifier assignment
US7990994B1 (en) * 2004-02-13 2011-08-02 Habanero Holdings, Inc. Storage gateway provisioning and configuring
JP4580195B2 (ja) * 2004-08-12 2010-11-10 株式会社日立製作所 ファイバーチャネルスイッチを含むコンピュータシステムの管理方法、管理プログラム及びそのコンピュータシステム
US20060047850A1 (en) * 2004-08-31 2006-03-02 Singh Bhasin Harinder P Multi-chassis, multi-path storage solutions in storage area networks
US7398421B1 (en) * 2004-12-03 2008-07-08 Symantec Operating Corporation System and method for storage area network switch port failure recovery
JP4579669B2 (ja) * 2004-12-16 2010-11-10 富士通株式会社 信頼性検証プログラムおよび信頼性検証方法
JP4733399B2 (ja) * 2005-01-28 2011-07-27 株式会社日立製作所 計算機システム、計算機、ストレージ装置及び管理端末
US8185639B2 (en) * 2006-01-03 2012-05-22 Emc Corporation Server identification in storage networks
JP5020601B2 (ja) * 2006-11-10 2012-09-05 株式会社日立製作所 アクセス環境構築システム及び方法
US8930537B2 (en) * 2008-02-28 2015-01-06 International Business Machines Corporation Zoning of devices in a storage area network with LUN masking/mapping
US20110106923A1 (en) * 2008-07-01 2011-05-05 International Business Machines Corporation Storage area network configuration
US7706286B2 (en) * 2008-07-08 2010-04-27 Howard Karloff Method for selecting nodes in a network
US20100070722A1 (en) * 2008-09-16 2010-03-18 Toshio Otani Method and apparatus for storage migration
JP4990940B2 (ja) * 2009-07-06 2012-08-01 株式会社日立製作所 計算機装置及びパス管理方法
US8700811B2 (en) * 2010-05-25 2014-04-15 Microsoft Corporation Virtual machine I/O multipath configuration
JP5148664B2 (ja) * 2010-08-11 2013-02-20 富士通株式会社 設定プログラム、および設定装置
JP5577953B2 (ja) * 2010-08-25 2014-08-27 富士通株式会社 判定プログラム、検証装置及び検証方法

Also Published As

Publication number Publication date
US20160127471A1 (en) 2016-05-05
US9354915B2 (en) 2016-05-31
US10223144B2 (en) 2019-03-05
JP2014026637A (ja) 2014-02-06
US20140032727A1 (en) 2014-01-30
US20160127472A1 (en) 2016-05-05
US10127065B2 (en) 2018-11-13

Similar Documents

Publication Publication Date Title
JP6159103B2 (ja) プロビジョニング前に冗長パスを認証する方法および装置
JP6884821B2 (ja) ディスクレスコンピュータシステムのスマートラックアーキテクチャ
JP4414961B2 (ja) 管理サーバによる管理方法、管理サーバ、計算機システムおよび管理プログラム
US8874749B1 (en) Network fragmentation and virtual machine migration in a scalable cloud computing environment
US7711979B2 (en) Method and apparatus for flexible access to storage facilities
JP4462024B2 (ja) ディスク引き継ぎによるフェイルオーバ方法
US8856337B2 (en) Method and apparatus of cluster system provisioning for virtual maching environment
US10148758B2 (en) Converged infrastructure and associated methods thereof
JP4961411B2 (ja) 計算機システム及びその構成管理方法
US20100100878A1 (en) Method and apparatus for resource provisioning
US8387013B2 (en) Method, apparatus, and computer product for managing operation
US8321617B1 (en) Method and apparatus of server I/O migration management
JP2010282447A (ja) 仮想計算機システム、そのアクセス制御方法及び通信装置
US9304875B2 (en) Dynamically tracking logical units moving between input/output ports of a storage area network target
US9760513B2 (en) Low latency efficient sharing of resources in multi-server ecosystems
JP2012043445A (ja) 業務引き継ぎ方法、計算機システム、及び管理サーバ
US20140047083A1 (en) Administration information generation method, administration information generation program, and administration information generation device
US20160142489A1 (en) Connection control apparatus, storage apparatus, and non-transitory computer-readable recording medium having stored therein control program
JP5267544B2 (ja) ディスク引き継ぎによるフェイルオーバ方法
US9143410B1 (en) Techniques for monitoring guest domains configured with alternate I/O domains
JP5508458B2 (ja) 計算機システム及びその構成管理方法
Záhořík Virtualisation of Critical Network Services
JP2009245455A (ja) ディスク引き継ぎによるフェイルオーバ方法
McKeown et al. How to Integrate Computing, Networking and Storage Resources for Cloud-ready Infrastructure
Chen et al. Deploy Hitachi Unified Compute Platform Select for Microsoft® Exchange Server® 2010 with Hitachi Compute Blade 2000 on Hitachi Adaptable Modular Storage 2300

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151021

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161220

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170609

R150 Certificate of patent or registration of utility model

Ref document number: 6159103

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees