JP6231700B2 - サーバストレージシステムと管理システムを有する計算機システム - Google Patents

サーバストレージシステムと管理システムを有する計算機システム Download PDF

Info

Publication number
JP6231700B2
JP6231700B2 JP2016557397A JP2016557397A JP6231700B2 JP 6231700 B2 JP6231700 B2 JP 6231700B2 JP 2016557397 A JP2016557397 A JP 2016557397A JP 2016557397 A JP2016557397 A JP 2016557397A JP 6231700 B2 JP6231700 B2 JP 6231700B2
Authority
JP
Japan
Prior art keywords
storage
server
processor
lpar
memory
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.)
Active
Application number
JP2016557397A
Other languages
English (en)
Other versions
JPWO2016071988A1 (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 JPWO2016071988A1 publication Critical patent/JPWO2016071988A1/ja
Application granted granted Critical
Publication of JP6231700B2 publication Critical patent/JP6231700B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • 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
    • 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
    • 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/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、概して、論理分割技術に関する。
サーバの性能向上により、1台のサーバに複数の負荷を集約することが可能であるが、集約した複数の負荷が互いに影響を与えることがある。サーバを論理的に分割するサーバLPAR(Logical Partitioning)技術を使用することで、負荷が互いに影響を受けないようにする。複数のCPUと複数のメモリ(例えばメモリモジュール)を持つ1台のサーバをサーバLPAR技術により分割した場合に、CPUとそのCPUと直接接続されていないメモリを1つのLPARとすると、CPUとメモリが直接通信できないため、性能が低下することがあり、他の負荷の影響を受けることがある。ここで、CPUとメモリ間の「直接接続」とは、CPUとメモリ間に別のCPUが介在しない物理的な接続、言い換えれば、CPUとメモリ間の通信においてCPUから別のCPUへの転送が発生しない接続である。
このような問題を解決するために、CPUとメモリモジュールの接続関係を考慮してLPARを構成する技術が知られている(例えば、特許文献1)。
また、ストレージについても、ストレージを構成する各コンポーネントを論理的に分割し、タイムシェアリングする技術が知られている(例えば、特許文献2)。
特許第5174941号 特開2006−79495号公報
サーバシステムとストレージシステムを含んだサーバストレージシステムにLPAR技術を適用することでサーバストレージシステムを論理分割することが考えられる。この場合、1つのLPARがサーバシステムの一部とストレージシステムの一部とを含むことになる。つまり、サーバシステムからストレージシステムまでEnd-to-endで論理的にサーバストレージシステムが分割されることになる。
この場合、特許文献1と特許文献2の組合せでは、サーバシステムとストレージシステム間の物理的な接続を考慮できない。このため、サーバシステムとストレージシステム間の通信のたびに不適切なパスが使用されることがあり(プロセッサ間のフォワードが発生することがあり)、結果として、サーバストレージシステムのI/O性能が低下する。
サーバストレージシステムは、複数のインターフェイスデバイスと、サーバシステムと、ストレージシステムとを含む。複数のインターフェイスデバイスの少なくとも1つが、サーバシステム及びストレージシステムの一方に存在してもよい。
サーバシステムは、複数のインターフェイスデバイスにバス接続された複数のサーバプロセッサと、複数のサーバプロセッサにバス接続された複数のサーバメモリとを有する。サーバシステムでは、サーバプロセッサとサーバメモリ間に別のサーバプロセッサが介在しない直接接続と、サーバプロセッサとサーバメモリ間に別のサーバプロセッサが介在する間接接続とが混在してもよい(後述する実施例では、直接接続と間接接続が混在するが、それらの混在は無くてもよい)。
ストレージシステムは、複数の記憶デバイスと、複数の記憶デバイスに接続されたデバイスインターフェイス(デバイスI/F)と、複数のインターフェイスデバイスにバス接続され複数のデバイスI/Fに接続された複数のストレージプロセッサと、複数のストレージプロセッサにバス接続された複数のストレージメモリとを有する。ストレージシステムでは、ストレージプロセッサとストレージメモリ間に別のストレージプロセッサが介在しない直接接続と、ストレージプロセッサとストレージメモリ間に別のストレージプロセッサが介在する間接接続とが混在してもよい(後述する実施例では、直接接続と間接接続が混在するが、それらの混在は無くてもよい)。複数のストレージプロセッサと複数のインターフェイスデバイス間が、複数のサーバプロセッサと複数のインターフェイスデバイス間のバスの形式と同じ形式のバスで接続されている。
SVプロセッサ部を含みサーバシステムの論理区画であるサーバLPARのインターフェイスデバイスに直接接続されているSTプロセッサ部から、そのSTプロセッサ部によりデータがI/Oされる論理ボリュームが、そのサーバLPARに提供される。SVプロセッサ部は、サーバプロセッサ又はサーバプロセッサのコアであり、STプロセッサ部は、ストレージプロセッサ又はストレージプロセッサのコアである。なお、インターフェイスデバイスに間接接続されているSTプロセッサ部は、そのインターフェイスデバイスに別のストレージプロセッサを介して接続されているSTプロセッサ部となる。
SVプロセッサ部からの論理ボリュームに対するI/Oのパスが、サーバシステムとストレージシステム間の物理的な接続関係に基づいて決められたパスとなる。論理ボリュームに対するI/Oにおいて不必要に多くのフォワード(プロセッサ間のフォワード)が発生しない。そのため、I/O性能が向上する。
実施例1に係る計算機システムの構成を示す。 サーバストレージLPARの冗長構成を示す。 SVIFの構成を示す。 MGメモリに記憶されるプログラムおよびデータを示す。 STメモリに記憶されるプログラムおよびデータを示す。 SVメモリに記憶されるプログラムおよびデータを示す。 仮想ボリューム管理テーブルを示す。 ストレージプール管理テーブルを示す。 RAIDグループ管理テーブルを示す。 記憶デバイス管理テーブルを示す。 デバイスI/F管理テーブルを示す。 STプロセッサ管理テーブルを示す。 STコア管理テーブルを示す。 STメモリ管理テーブルを示す。 SVプロセッサ管理テーブルを示す。 LPAR管理テーブルを示す。 SVIF管理テーブルを示す。 RAIDグループ割当てテーブルを示す。 デバイスI/F割当てテーブルを示す。 STコア割当てテーブルを示す。 STメモリ割当てテーブルを示す。 SVIF割当てテーブルを示す。 LPAR割当てテーブルを示す。 新規作成に関するサーバストレージLPAR作成画面を示す。 新規作成に関するサーバストレージリソース検索の流れを示す。 新規作成に関するサーバストレージLPAR作成の流れを示す。 既存利用作成に関するサーバストレージLPAR作成画面を示す。 既存利用作成に関するサーバストレージLPAR作成の流れを示す。
以下、幾つかの実施例を説明する。
なお、以下の説明では、「kkkテーブル」の表現にて情報を説明することがあるが、情報は、テーブル以外のデータ構成で表現されていてもよい。データ構成に依存しないことを示すために「kkkテーブル」のうちの少なくとも1つを「kkk情報」と呼ぶことができる。また、2以上のテーブルは、1つのテーブルに集約されてもよいし、1つのテーブルが、2以上のテーブルに細分化されてもよい。
また、以下の説明では、種々の要素(例えば、記憶デバイス、プロセッサ)の識別情報として、番号(識別番号)が使用されるが、番号に代えてまたは加えて他種の識別情報が使用されてもよい。
また、以下の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサ(例えばCPU(Central Processing Unit)によって実行されることで、定められた処理を、適宜に記憶資源(例えばメモリ)および/または通信インターフェイスデバイス(例えば通信ポート)等を用いながら行うため、処理の主語がプロセッサとされてもよい。プログラムを主語として説明された処理は、プロセッサあるいはそのプロセッサを有する装置が行う処理としてもよい。また、プロセッサは、処理の一部または全部を行うハードウエア回路を含んでもよい。プログラムは、プログラムソースから各コントローラにインストールされてもよい。プログラムソースは、例えば、プログラム配布計算機または記憶メディアであってもよい。
また、管理システムは、一以上の計算機で構成されてよい。具体的には、例えば、管理計算機が情報を表示する場合(具体的には、管理計算機が自分の表示デバイスに情報を表示する、或いは、管理計算機が表示用情報を遠隔の表示用計算機に送信する場合)、管理計算機が管理システムである。また、例えば、複数の計算機で管理計算機と同等の機能が実現されている場合は、当該複数の計算機(表示を表示用計算機が行う場合は表示用計算機を含んでよい)が、管理システムである。計算機への情報の入力や、計算機からの情報の出力は、計算機が有する入出力デバイスにより行われてよい。入出力デバイスの例としては、表示デバイス、キーボードおよびポインティングデバイスが考えられるが、これらのうちの少なくとも1つに代えてまたは加えて別のデバイスが採用されてよい。また、入出力デバイスの代替として、シリアルインターフェイスデバイスやイーサーネットインターフェイスデバイス(イーサネットは登録商標)が採用され、そのようなインターフェイスデバイスに、表示デバイスとキーボードおよびポインタデバイスとを有する表示用計算機が接続され、計算機が表示用情報を表示用計算機に送信したり、計算機が入力用情報を表示用計算機から受信したりすることで、情報の出力(例えば表示)および入力が行われてよい。実施例では、管理サーバ150が管理計算機であり、管理クライアント156が表示用計算機である。
図1は、実施例1に係る計算機システムの構成を示す。
計算機システムは、サーバストレージシステム(以下、SSシステム)50と、SSシステム50の管理システムとを有する。管理システムは、SSシステム50に通信可能に接続された管理サーバ150と、管理サーバ150に通信可能に接続された管理クライアント156とを有する。SSシステム50は、サーバシステムとストレージシステムとを有する。サーバシステムは、1以上のサーバ100を有する。ストレージシステムは、1以上のストレージサブシステムを有する。図1の例では、サーバシステムは、2つのサーバ100を有する。ストレージシステムは、1つのストレージサブシステムを有し、それ故、ストレージサブシステムがストレージシステム300である。サーバ100とストレージシステム300は、1つの筺体に格納されていてもよい。SSシステム50に含まれるサーバ100の数は1以上でよく、SSシステム50に含まれるストレージシステム300の数も1以上でよい。
サーバ100は、サーバ(SV)メモリ110と、サーバ(SV)プロセッサ120と、サーバI/F(SVIF)200とを含む。SVメモリ110とSVプロセッサ120は、内部バスを介して互いに接続されている。SVメモリ110は、メモリであり、アプリケーション、OS(Operating System)、ドライバ等、サーバ100の制御のためのプログラムおよびデータを格納する。SVプロセッサ120は、マイクロプロセッサであり、SVメモリ110内のプログラムに従って処理を実行する。同一サーバ内のSVプロセッサ120はバスを介して夫々接続されている。SVIFは、インターフェイスデバイスであり、サーバ側バスを介してSVプロセッサ120に接続され、ストレージ側バスを介してストレージシステム300に接続され、SVプロセッサ120とストレージシステム300の間の通信を制御する。
SVプロセッサ120とSVIF200の間は、サーバ側バスで接続されている。SVIF200とSTプロセッサ420の間は、サーバ側バスと同一形式のバスであるストレージ側バス(サーバ側バスを経由した通信のプロトコルを同じプロトコルで通信可能なバス)で接続されている。本実施例は、サーバ側バスおよびストレージ側バスとして、PCI Express(PCIe)が用いられる。サーバ側バスおよびストレージ側バスの夫々は、バックプレーン等の基板であってもよいし、ケーブルであってもよい。本システム50では、サーバ100の内部バスと同じ形式のバスでサーバ100からストレージシステム300までを接続することでサーバ100とストレージシステム300の記憶領域と間のDMA転送を可能とし、SVプロセッサ120から発行した要求(例えば、ライト要求またはリード要求であるI/O(Input/Output)要求))に対して、ストレージシステム300内のストレージ(ST)プロセッサ420がSVIF200に搭載したDMAエンジンを起動し、ストレージシステム300内のストレージ(ST)メモリ410上のデータをSVメモリ110上へ、または、SVメモリ110上のデータをストレージシステム300内のSTメモリ410上へ転送する。この構成により、サーバ100とストレージシステム300をいわゆるSAN(Storage Area Network)等のネットワークスイッチのフォワード機能に頼らずに広帯域なバスで接続した一体型システムを構築し、帯域拡張とレイテンシ向上を実現する。さらに、本システム50においてDMA転送を実現することでI/O性能の向上を図ることができる。
なお、サーバ100は、内部バスを介してSVプロセッサ120に接続され且つサーバ側バスを介してSVIF200に接続されたRoot Complex(RC)を含んでもよい。
SVIF200は、インターフェイスデバイスの一例である。SVIF200は、サーバ100からのライトデータ(ライト要求に従うライト対象のデータ)を圧縮して(または圧縮せずに)ストレージシステム300(例えばSTプロセッサ420またはSTメモリ410)へ転送し、ストレージシステム300からのリードデータ(リード要求に従い読み出されたリード対象のデータ)を伸張して(または伸張せずに)サーバ100(例えばSVプロセッサ120またはSVメモリ110)へ転送する。
ストレージシステム300は、ストレージ(ST)コントローラ400(冗長化されたSTコントローラ400)と、記憶装置500とを含む。記憶装置500は、サーバ100からアクセスされるデータを格納する。STコントローラ400は、記憶装置500とサーバ100に接続され、記憶装置500へのアクセスを制御する。STコントローラ400を単に「コントローラ」と呼ぶことがある。
STコントローラ400は、ストレージ(ST)メモリ410と、ストレージ(ST)プロセッサ420と、ドライブインターフェイスデバイス(デバイスI/F)430とを含む。STコントローラ400が有する要素のうちの少なくとも1つの種類の要素が2以上存在してもよい。STメモリ410とSTプロセッサ420とデバイスI/F430は、内部バスを介して互いに接続されている。STメモリ410は、メモリであり、ストレージシステム300の制御のためのプログラムおよびデータを格納する。STプロセッサ420は、マイクロプロセッサであり、ストレージ側バスを介してSVIF200に接続され、STメモリ410に格納されたプログラムに従って処理を実行する。一方のSTコントローラ400内の2つのSTプロセッサ420は、他方のSTコントローラ400内の2つのSTプロセッサ420にSTコントローラ400間バスを介して夫々接続されている。なお、STプロセッサ420は複数でもよい。各STコントローラ400に複数のSTプロセッサ420が存在する場合、一方のSTコントローラ400内の複数のSTプロセッサが、他方のSTコントローラ400内の複数のSTプロセッサ420に、STコントローラ間バスを介して、夫々接続されている。STコントローラ間バスを介して互いに接続された複数のSTプロセッサ420が、冗長化されたSTプロセッサ420であると言える。デバイスI/F430は、記憶装置側バスを介して記憶装置500に接続されており、STプロセッサ420と記憶装置500の間の通信を制御する。なお、STコントローラ400は、内部バスを介してSTプロセッサ420に接続され且つストレージ側バスを介してSVIF200に接続されたRC(Root Complex)を含んでもよい。STプロセッサ420は、2つのコア(ストレージ(ST)コア)440を含むが、STプロセッサ420が含むSTコア440の数は、1であっても3以上であってもよい。
記憶装置500は、複数の記憶デバイス600を含む。複数の記憶デバイス600には、冗長化されたSTコントローラ400(2つのSTコントローラ400)の各々のデバイスI/F430がバス接続されている。
SSシステム50は、複数のSTコントローラ400にそれぞれ対応した複数のインターフェイス拡張装置700を含む。各インターフェイス拡張装置700には、複数(例えば全て)のサーバ100が接続される。サーバ100とSTコントローラ400間にインターフェイス拡張装置700が介在することにより、サーバ100とSTコントローラ400の間のパス数を増やすことができる。すなわち、インターフェイス拡張装置700により、より多くのサーバ100を1つのSTコントローラ400に直接接続できる。サーバ100とSTコントローラ400間の「直接接続」とは、サーバ100とSTコントローラ400間に別のSTコントローラ400が介在しない物理的な接続である。それに対し、サーバ100とSTコントローラ400間の「間接接続」とは、サーバ100とSTコントローラ400間に別のSTコントローラ400が介在する物理的な接続である。サーバ100とSTコントローラ400間にインターフェイス拡張装置700のようなパス数を増やすための装置が介在しても、サーバ100とSTコントローラ400間の「直接接続」(SVプロセッサ120とSTプロセッサ420(STメモリ410)間の「直接接続」)は実現する。
インターフェイス拡張装置700は、例えば、PCIeスイッチである。各サーバ100は、複数のSVIF200、例えば2つのSVIF200を含む。2つのSVIF200は、インターフェイス拡張装置700を介して2つのSTコントローラ400に夫々接続される。各サーバ100が2つのSVIF200を含むことでハードウェアの冗長性を確保できる。1つのサーバ100内の2つのSVIF200は、インターフェイス拡張装置700を介して2つのストレージシステム300に夫々接続される。1つのSVIF200は、インターフェイス拡張装置700を介して1つのストレージシステム300内の2つのSTコントローラ400に接続される。この構成において、サーバ100に2つのSVIF200を搭載することで、より多くのストレージシステム300をサーバ100に接続することができ、サーバ100に対して広帯域、高性能なストレージリソースを提供できる。なお、インターフェイス拡張装置700はなくてもよい。
サーバストレージLPAR1およびサーバストレージLPAR2は、それぞれ、サーバストレージLPARの一例である。サーバストレージLPARは、サーバ100からストレージシステム300までEnd-to-endでSSシステム50を論理的に分割することにより得られる区画(SSシステム50の論理区画)、典型的には、サーバ100の一部とストレージシステム300の一部とを含んだ論理区画である。サーバストレージLPAR1は、1つのSVプロセッサ120、1つのSVメモリ110、1つのSVIF200、1つのSTプロセッサ420、1つのSTメモリ410、1つのデバイスI/F430、および、2つの記憶デバイス600を含む。サーバストレージLPAR2は、1つのSVプロセッサ120、1つのSVメモリ110、1つのSVIF200、および、1つのSTコア440を含む。サーバストレージLPAR1は、SVプロセッサ120から記憶デバイス600までのサーバストレージLPARであり、サーバストレージLPAR2は、SVプロセッサ120からSTコア440までのサーバストレージLPARである。サーバストレージLPARの構成において、SVプロセッサ120はSVIF200と直接接続していて、STプロセッサ420はSVIF200と直接接続している。従って、SVプロセッサとSTプロセッサ(STメモリ)間が、SVIF200経由で直接接続されている。また、サーバストレージLPARの必須要素(後述の占有割当てとされるべき要素)の種類は、SVプロセッサの少なくとも一部、SVIFの少なくとも一部及びSTプロセッサの少なくとも一部であり、記憶デバイス、デバイスI/F、STメモリの少なくとも一部(例えば後述のCLPAR)は利用者任意の要素である。このように、サーバストレージLPARには構成の柔軟性がある。
ここで、SVプロセッサ120とSVIF200間の「直接接続」とは、SVプロセッサ120とSVIF200間に別のSVプロセッサ120が介在しない物理的な接続である。それに対し、SVプロセッサ120とSVIF200間の「間接接続」とは、SVプロセッサ120とSVIF200間に別のSVプロセッサ120が介在する物理的な接続である。
STプロセッサ420とSVIF200間の「直接接続」とは、STプロセッサ420とSVIF200間に別のSTプロセッサ420が介在しない物理的な接続である。それに対し、STプロセッサ420とSVIF200間の「間接接続」とは、STプロセッサ420とSVIF200間に別のSTプロセッサ420が介在する物理的な接続である。
SVプロセッサとSTプロセッサ(STメモリ)間の「直接接続」とは、SVプロセッサとSTプロセッサ(STメモリ)間に別のSVプロセッサ及び別のSTプロセッサが介在しない物理的な接続である。それに対し、SVプロセッサとSTプロセッサ(STメモリ)間の「間接接続」とは、SVプロセッサとSTプロセッサ(STメモリ)間に別のSVプロセッサ又は別のSTプロセッサが介在する物理的な接続である。SVプロセッサから発行された要求は、複数のSTプロセッサのうち要求発行元のSVプロセッサに「直接接続」されているSTプロセッサが始めに受信することになる。
管理サーバ150は、SSシステム50(例えば、サーバ100およびストレージシステム300のうちの少なくとも1つ)および管理クライアント156に通信可能に接続されるインターフェイスデバイス(図示せず)と、MG(マネージャ)メモリ160と、それらに接続されたMGプロセッサ170とを有する。MG(マネージャ)メモリ160は、記憶リソースの一例であり、メモリである。MGプロセッサ170は、マイクロプロセッサである。
管理クライアント156は、少なくとも管理サーバ150に通信可能に接続されるインターフェイスデバイス(図示せず)と、入力デバイス(例えば、キーボードおよびポインティングデバイス)と、表示デバイスと、メモリと、それらに接続されたプロセッサとを有する。入力デバイスおよび表示デバイスは、タッチパネルのように一体でもよい。
図2は、冗長構成のサーバストレージLPARの一例を示す。
サーバストレージLPAR3は、冗長構成のサーバストレージLPARの一例である。サーバストレージLPAR3は、2つのストレージコントローラ400の各々の一部を含むことで、冗長構成となっている。SVIF200と2つのSTコントローラ400は夫々接続されており、各STコントローラ400上のSTプロセッサ420とSVIF200は、他のSTプロセッサ420を介することなく直接接続されている。各ストレージコントローラ400上のSTプロセッサ420は、他のSTプロセッサ420を介することなくドライブI/430と直接接続されている。各ストレージコントローラ400上のドライブI/430は、異なるパスで記憶デバイス600と接続されている。SVプロセッサ120と記憶デバイス600間でデータは2つのSTコントローラ400のいずれも経由可能である。
なお、図1及び図2において、太い破線枠1〜3が、それぞれ、サーバストレージLPARを示すが、図示のサーバストレージLPAR内の要素は、占有割当てされている要素(後述の割当て状態が「占有」)の要素である。サーバストレージLPARに含まれる(割り当てられる)要素として、例えば、SVメモリの少なくとも一部、そのSVメモリに直接接続されたSVプロセッサの少なくとも一部(例えばコア又はプロセッサ全体)、そのSVプロセッサに直接接続されたSVIFの少なくとも一部(例えば後述の2つのインターフェイス260のうちの1つ又は全部)、そのSVIFに接続されたSTプロセッサの少なくとも一部(例えばSTコア又はSTプロセッサ全体)、及び、そのSTプロセッサに直接接続されたSTメモリの少なくとも一部(例えば後述のCLPAR)でよい。サーバストレージLPARは、本実施例で言ういずれの種類の間接接続も含まないことが望ましい。
図3は、SVIF200の構成を示す。
SVIF200は、例えば、ASIC(Application Specific Integrated Circuit)である。SVIF200は、IF(Interface)プロセッサ210と、DMA(Direct Memory Access)コントローラ220と、内部メモリ230と、レジスタ240と、インターフェイス250と、2つのインターフェイス260と、内部スイッチ270とを含む。DMAコントローラ220を単に「DMA」と言うことがある。IFプロセッサ210と、DMAコントローラ220と、内部メモリ230と、レジスタ240と、インターフェイス250と、2つのインターフェイス260とは、内部スイッチ270を介して互いに接続されている。一方のインターフェイス250は、サーバ側バスを介してSVプロセッサ120に接続されている。他方の2つのインターフェイス260は、ストレージ側バスを介して2つのSTプロセッサ420に夫々接続されている。内部メモリ230は、メモリであり、プログラムおよびデータを格納する。IFプロセッサ210は、マイクロプロセッサであり、内部メモリ230内のプログラムに従って処理を実行する。DMAコントローラ220は、IFプロセッサ210からの指示に従ってデータ転送(メモリ間転送)を実行する。レジスタ240は、IFプロセッサ210の設定値を格納する。内部スイッチ270は、IFプロセッサ210からの指示に従って各部の間の通信を制御する。なお、SV側インターフェイスおよびST側インターフェイスは夫々複数あって、各バスおよびインターフェイス拡張を介して、SVプロセッサ120とSTプロセッサ420に接続されていてもよい。
同一空間(例えばアドレス空間)内に存在可能なマスタデバイスの数が規定されている通信インターフェイス(プロトコル)の一例として、PCIeが知られている。PCIeでは、一般に、マスタデバイスは「ルートデバイス」(または「ルートコンプレックス」)と呼ばれ、スレイブデバイスは「エンドポイント」と呼ばれ、空間は「ドメイン」と呼ばれる。PCIeでは、同一ドメインに存在可能なルートデバイスは1つでありその1つのルートデバイスに1以上のエンドポイントを接続可能である。SSシステム50において、サーバプロセッサ120もストレージプロセッサ420もルートデバイスであり、SVIF200がエンドポイントとなることで、サーバプロセッサ120とSTプロセッサ420間のSVIF200経由の通信(SVメモリ110とSTメモリ410間のSVIF200経由のDMAによる通信)が可能である。
図4は、MGメモリ160に記憶されるプログラムおよびデータを示す。
MGメモリ160は、サーバの構成に関する情報とストレージシステムの構成に関する情報とを含んだSS管理情報を記憶する。SS管理情報は、SVIFとSVプロセッサとの接続関係、SVプロセッサとSVメモリとの接続関係、SVIFとSTプロセッサとの接続関係、STプロセッサとSTメモリとの接続関係等を表す。SS管理情報では、SVIFとSVプロセッサとの接続関係にSTプロセッサとSVIFとの接続関係が関連付けられており、それにより、SS管理情報から、直接接続されている関係にある要素、特に、互いに直接接続されているSVプロセッサとSTプロセッサ(STメモリ)とを特定すること、サーバからストレージシステムにかけたEnd-to-endの直接接続関係を特定することができる。SS管理情報は、例えば、SVIF管理テーブル1001と、RAIDグループ割当てテーブル1002と、デバイスI/F割当てテーブル1003と、STコア割当てテーブル1004と、STメモリ割当てテーブル1005と、SVIF割当てテーブル1006と、LPAR割当てテーブル1007とを含む。また、MGメモリ160は、管理プログラム1021を記憶する。これらのテーブルおよびプログラムについては後述する。
図5は、STメモリ410に記憶されるプログラムおよびデータを示す。
STメモリ410は、ストレージシステムの構成に関する情報を含んだST管理情報を記憶する。ST管理情報は、STプロセッサとSTメモリとの接続関係等を表す。ST管理情報は、例えば、仮想ボリューム管理テーブル810と、ストレージプール管理テーブル820と、RAIDグループ管理テーブル830と、記憶デバイス管理テーブル840と、デバイスI/F管理テーブル841と、STプロセッサ管理テーブル842と、STコア管理テーブル843と、STメモリ管理テーブル844とを含む。これらのテーブルについては後述する。また、STメモリ410は、ストレージ制御プログラム870を記憶する。ストレージ制御プログラム870は、例えば米国特許出願公開第2011/0208940号明細書により開示されているI/O(input/output)処理を行う。さらに、ストレージ制御プログラム870は、後述の処理を行う。STメモリ410には、更に、ストレージ(ST)キャッシュ領域880と、ストレージ(ST)バッファ領域890とが確保される。STキャッシュ領域880には、ライトデータやリードデータが一時的に格納され、ライト要求やリード要求に対する、データヒットに利用される。STバッファ領域890には、STコントローラ400により送受信されるデータや制御情報が格納される。
図6は、SVメモリ110に記憶されるプログラムおよびデータを示す。
SVメモリ110は、サーバの構成に関する情報を含んだSV管理情報を記憶する。SV管理情報は、SVIFとSVプロセッサとの接続関係、SVプロセッサとSVメモリとの接続関係等を表す。SV管理情報は、例えば、SVプロセッサ管理テーブル901と、LPAR管理テーブル902とを含む。これらのテーブルについては後述する。SVメモリ110は、例えば、LPARプログラム921と、アプリケーション922とを記憶する。LPARプログラム921は、サーバ100を論理的に複数のLPARに分割し、各LPARに対して計算機リソース(例えば、CPU、メモリおよびI/F)を割り当てるプログラムである。各LPAR上で、OSおよびアプリケーションなどが夫々動作する。アプリケーション922は、アプリケーションプログラムであり、例えばDBMS(Database Management System)などである。
図7は、仮想ボリューム管理テーブル810を示す。
仮想ボリューム管理テーブル810は、仮想ボリューム毎のエントリを含む。各エントリは、仮想ボリューム番号(#)と、ボリューム容量と、割当済み容量と、プール番号(#)とを含む。1つの仮想ボリューム(この段落において「対象仮想ボリューム」)を例に取る。ボリューム番号は、対象仮想ボリュームの識別番号である。ボリューム容量は、対象仮想ボリュームの容量である。割当済み容量は、実ページが割り当てられている仮想ページ(対象仮想ボリューム内で仮想ページ)の合計容量である。プール番号は、対象仮想ボリュームに関連付けられたストレージプール(対象仮想ボリュームに割り当てられる実ページを含むストレージプール)の識別番号である。なお、本実施例において、仮想ボリュームは、複数の仮想ページ(仮想的な記憶領域)で構成されており容量仮想化技術(典型的にはThin Provisioning)に従う論理ボリュームであり、ストレージプールは、1以上の記憶デバイス600に基づく複数の実ページで構成された記憶領域である。ライト先の仮想ページに実ページが割り当てられる。なお、論理ボリュームとしては、仮想ボリューム以外の種別の論理ボリューム、例えば、1以上の記憶デバイス600に基づく論理ボリュームが採用されてもよい。
図8は、ストレージプール管理テーブル820を示す。
ストレージプール管理テーブル820は、ストレージプール毎のエントリを含む。各エントリは、プール番号(#)と、RAIDグループリストとを含む。1つのストレージプール(この段落において「対象ストレージプール」)を例に取る。プール番号は、対象ストレージプールの識別番号である。RAIDグループリストは、対象ストレージプールの基になっているRAID(Redundant Array of Independent (or Inexpensive) Disks)グループの識別番号である。
図9は、RAIDグループ管理テーブル830を示す。
RAIDグループ管理テーブル830は、RAIDグループ毎のエントリを含む。各エントリは、RAIDグループ番号(#)と、RAIDレベルと、記憶デバイス番号(#)と、デバイス種別と、容量と、デバイスI/F番号(#)とを含む。1つのRAIDグループ(この段落において「対象RAIDグループ」)を例に取る。RAIDグループ番号は、対象RAIDグループの識別番号である。RAIDレベルは、対象RAIDグループのRAIDレベルを示す。記憶デバイス番号は、対象RAIDグループを構成する記憶デバイス(物理的な記憶デバイス)の識別番号である。デバイス種別は、対象RAIDグループを構成する記憶デバイスのデバイス種別を示す。容量は、対象RAIDグループの使用可能な容量を示す。容量は、例えば、対象RAIDグループを構成する記憶デバイスの容量と、対象RAIDグループのRAIDレベルにより決まる。デバイスI/F番号は、対象RAIDグループを構成する記憶デバイスが接続されているデバイスI/Fの識別番号を示す。
図10は、記憶デバイス管理テーブル840を示す。
記憶デバイス管理テーブル840は、記憶デバイス毎のエントリを含む。各エントリは、記憶デバイス番号(#)と、物理容量と、デバイス種別と、デバイスI/Fとを含む。1つの記憶デバイス(この段落において「対象記憶デバイス」)を例に取る。記憶デバイス番号は、対象記憶デバイスの識別番号である。物理容量は、対象記憶デバイスの記憶容量を示す。デバイス種別は、対象記憶デバイスの種別を示す。記憶デバイスの種別としては、例えば、SSD(Solid State Drive)、HDD(Hard Disk Drive)等がある。デバイスI/F番号は、対象記憶デバイスが直接接続されているデバイスI/Fの識別番号である。記憶デバイスとデバイスI/F間の「直接接続」とは、記憶デバイスとデバイスI/F間に別のデバイスI/Fが介在しない物理的な接続である。それに対し、記憶デバイスとデバイスI/F間の「間接接続」とは、記憶デバイスとデバイスI/F間に別のデバイスI/Fが介在する物理的な接続である。
図11は、デバイスI/F管理テーブル841を示す。
デバイスI/F管理テーブル841は、デバイスI/F毎のエントリを含む。各エントリは、デバイスI/F番号(#)と、STプロセッサ番号(#)と、コントローラ番号(#)とを含む。1つのデバイスI/F(この段落において「対象デバイスI/F」)を例に取る。デバイスI/F番号は、対象デバイスI/Fの識別番号である。STプロセッサ番号は、対象デバイスI/Fが直接接続されているSTプロセッサの識別番号である。デバイスI/FとSTプロセッサ間の「直接接続」とは、デバイスI/FとSTプロセッサ間に別のSTプロセッサが介在しない物理的な接続である。それに対し、デバイスI/FとSTプロセッサ間の「間接接続」とは、デバイスI/FとSTプロセッサ間に別のSTプロセッサが介在する物理的な接続である。コントローラ番号は、対象デバイスI/Fが配置されているコントローラの識別番号である。
図12は、STプロセッサ管理テーブル842を示す。
STプロセッサ管理テーブル842は、STプロセッサ毎のエントリを含む。各エントリは、STプロセッサ番号(#)と、ストレージ(ST)コア番号(#)と、STメモリアドレスと、コントローラ番号(#)とを含む。1つのSTプロセッサ(この段落において「対象STプロセッサ」)を例に取る。STプロセッサ番号は、対象STプロセッサの識別番号である。STコア番号は、対象STプロセッサが持つSTコアの識別番号である。STメモリアドレスは、対象STプロセッサから直接接続されているSTメモリのアドレスを示す。STプロセッサとSTメモリ間の「直接接続」とは、STプロセッサとSTメモリ間に別のSTプロセッサが介在しない物理的な接続である。それに対し、STプロセッサとSTメモリ間の「間接接続」とは、STプロセッサとSTメモリ間に別のSTプロセッサが介在する物理的な接続である。コントローラ番号は、対象STプロセッサが配置されているコントローラ番号の識別番号である。
図13は、STコア管理テーブル843を示す。
STコア管理テーブル843は、STコア毎のエントリを含む。各エントリは、STコア番号(#)と、担当仮想ボリューム番号(#)と、コントローラ番号(#)とを含む。1つのSTコア(この段落において「対象STコア」)を例に取る。STコア番号は、対象STコアの識別番号である。担当仮想ボリューム番号は、対象STコアによるI/O先の仮想ボリューム(つまり対象STコアが担当する仮想ボリューム)の識別番号である。コントローラ番号は、対象STコアが配置されているコントローラ番号の識別番号である。
図14は、STメモリ管理テーブル844を示す。
STメモリ管理テーブル844は、CLPAR(Cache Logical Partition)毎のエントリを含む。CLPARは、キャッシュメモリ領域を論理的に分割することにより得られた、キャッシュメモリ領域の論理区画である。各エントリは、STプロセッサ番号(#)と、STメモリアドレスと、CLPAR番号(#)と、仮想ボリューム番号(#)と、コントローラ番号(#)とを含む。1つのCLPAR(この段落において「対象CLPAR」)を例に取る。STプロセッサ番号は対象CLPARのメモリに直接アクセスできるSTプロセッサ(言い換えれば、対象CLPARの基になっているSTメモリに直接接続されているSTプロセッサ)の識別番号である。STメモリアドレスは、対象CLPARのアドレス(STメモリにおけるアドレス)を示す。CLPAR番号は、対象CLPARの識別番号である。仮想ボリューム番号は、対象CLPARがI/Oの際に使用される仮想ボリュームの識別番号である。つまり、仮想ボリュームにI/Oされるデータは、その仮想ボリュームに対応したCLPARに一時的に格納されることになる。コントローラ番号は、対象CLPARの基になっているSTメモリが配置されているコントローラの識別番号である。
以上の図7〜図14に示したテーブル810、820、830、840、841、842、843および844は、STメモリ410に格納されるテーブルである(図5参照)。これらのテーブルを含むST管理情報は、ストレージシステム300においてどの要素とどの要素が直接接続されているか、および、どの仮想ボリュームに対するI/OにどのCLPARおよびどのSTコアが使用されるのかを示している。
図15は、SVプロセッサ管理テーブル901を示す。
SVプロセッサ管理テーブル901は、SVプロセッサ毎のエントリを含む。各エントリは、SVプロセッサ番号(#)と、SVコア番号(#)と、SVIF番号(#)とを含む。1つのSVプロセッサ(この段落において「対象SVプロセッサ」)を例に取る。SVプロセッサ番号は、対象SVプロセッサの識別番号である。SVコア番号は、対象SVプロセッサが持つSVコアの識別番号である。SVメモリアドレスは、対象SVプロセッサから直接接続されているSVメモリのアドレスを示す。SVIF番号は、対象SVプロセッサから直接接続されているSVIFの識別番号である。
図16は、LPAR管理テーブル902を示す。
LPAR管理テーブル902は、LPAR毎のエントリを含む。ここで言う「LPAR」は、サーバ100において閉じた論理区画(サーバLPAR)であり、サーバストレージLPARのようなサーバからストレージシステム300へのEnd-to-endのLPARとは異なる。各エントリは、LPAR番号(#)と、SVコア番号(#)と、SVメモリアドレス(#)と、SVメモリ容量と、SVIF番号(#)とを含む。1つのLPAR(この段落において「対象LPAR」)を例に取る。LPAR番号は、対象LPARの識別番号である。SVコア番号は、対象LPARが占有して使用するSVコアの識別番号である。SVメモリアドレスは、対象LPARが占有して使用するSVメモリのアドレスを示す。SVメモリ容量は、対象LPARのメモリ容量を示す。SVIF番号は、対象LPARが占有して使用するSVIFの識別番号である。このテーブル902又は別のテーブルにおいて、SVコアとSVプロセッサの対応関係も登録されてよい。
以上の図15および図16に示したテーブル901および902は、SVメモリ110に格納されるテーブルである(図6参照)。これらのテーブルを含むSV管理情報は、サーバ100においてどの要素とどの要素が直接接続されているかを示している。
図17は、SVIF管理テーブル1001を示す。
SVIF管理テーブル1001は、SVIF毎のエントリを含む。各エントリは、SVIF番号(#)と、SVプロセッサ番号(#)と、STプロセッサ番号(#)とを含む。1つのSVIF(この段落において「対象SVIF」)を例に取る。SVIF番号は、対象SVIFの識別番号である。SVプロセッサ番号は、対象SVIFと直接接続しているSVプロセッサの識別番号である。STプロセッサ番号は、対象SVIFと直接接続しているSTプロセッサの識別番号である。
図18は、RAIDグループ割当てテーブル1002を示す。
RAIDグループ割当てテーブル1002は、RAIDグループ毎のエントリを含む。各エントリは、RAIDグループ番号(#)と、割当て状態と、サーバストレージLPAR番号(#)とを含む。1つのRAIDグループ(この段落において「対象RAIDグループ」)を例に取る。RAIDグループ番号は、対象RAIDグループの識別番号である。割当て状態は、対象RAIDグループの割当て状態を示す。割当て状態「占有」は、対象RAIDグループが占有割当てされていることを示し、割当て状態「共有」は、対象RAIDグループが占有割当てされていないことを示す。サーバストレージLPAR番号は、割当て状態が「占有」の場合に設定される値であって、対象RAIDグループを占有しているサーバストレージLPARの識別番号である。
図19は、デバイスI/F割当てテーブル1003を示す。
デバイスI/F割当てテーブル1003は、デバイスI/F毎のエントリを含む。各エントリは、デバイスI/F番号(#)と、割当て状態と、サーバストレージLPAR番号(#)とを含む。1つのデバイスI/F(この段落において「対象デバイスI/F」)を例に取る。デバイスI/F番号は、対象デバイスI/Fの識別番号である。割当て状態は、対象デバイスI/Fの割当て状態を示す。割当て状態「占有」は、対象デバイスI/Fが占有割当てされていることを示し、割当て状態「共有」は、対象デバイスI/Fが占有割当てされていないことを示す。サーバストレージLPAR番号は、割当て状態が「占有」の場合に設定される値であって、対象デバイスI/Fを占有しているサーバストレージLPARの識別番号である。
図20は、STコア割当てテーブル1004を示す。
STコア割当てテーブル1004は、STコア毎のエントリを含む。各エントリは、STプロセッサ番号(#)と、STコア番号(#)と、割当て状態と、サーバストレージLPAR番号(#)とを含む。1つのSTコア(この段落において「対象STコア」)を例に取る。STプロセッサ番号は、対象STコアが配置されているSTプロセッサの識別番号である。STコア番号は、対象STコアの識別番号である。割当て状態は、対象STコアの割当て状態を示す。割当て状態「占有」は、対象STコアが占有割当てされていることを示し、割当て状態「共有」は、対象STコアが占有割当てされていないことを示す。サーバストレージLPAR番号は、割当て状態が「占有」の場合に設定される値であって、対象STコアを占有しているサーバストレージLPARの識別番号である。
図21は、STメモリ割当てテーブル1005を示す。
STメモリ割当てテーブル1005は、CLPAR毎のエントリを含む。各エントリは、CLPAR番号(#)と、割当て状態と、サーバストレージLPAR番号(#)とを含む。1つのCLPAR(この段落において「対象CLPAR」)を例に取る。CLPAR番号は、対象CLPARの識別番号である。割当て状態は、対象CLPARの割当て状態を示す。割当て状態「占有」は、対象CLPARが占有割当てされていることを示し、割当て状態「共有」は、対象CLPARが占有割当てされていないことを示す。サーバストレージLPAR番号は、割当て状態が「占有」の場合に設定される値であって、対象CLPARを占有しているサーバストレージLPARの識別番号である。
図22は、SVIF割当てテーブル1006を示す。
SVIF割当てテーブル1006は、SVIF毎のエントリを含む。各エントリは、SVIF番号(#)と、割当て状態と、サーバストレージLPAR番号(#)とを含む。1つのSVIF(この段落において「対象SVIF」)を例に取る。SVIF番号は、対象SVIFの識別番号である。割当て状態は、対象SVIFの割当て状態を示す。割当て状態「占有」の場合は、対象SVIFが占有割当てされていることを示し、割当て状態「共有」は、対象SVIFが占有割当てされていないことを示す。サーバストレージLPAR番号は、割当て状態が「占有」の場合に設定される値であって、対象SVIFを占有しているサーバストレージLPARの識別番号である。
図23は、LPAR割当てテーブル1007を示す。
LPAR割当てテーブル1007は、LPAR(サーバ100において閉じた論理区画)毎のエントリを含む。各エントリは、LPAR番号(#)と、割当て状態と、サーバストレージLPAR番号(#)とを含む。1つのLPAR(この段落において「対象LPAR」)を例に取る。LPAR番号は、対象LPARの識別番号である。割当て状態は、対象LPARの割当て状態を示す。割当て状態「占有」の場合は、対象LPARが占有割当てされていることを示し、割当て状態「共有」は、対象LPARが占有割当てされていないことを示す。サーバストレージLPAR番号は、割当て状態が「占有」の場合に設定される値であって、対象LPARを占有しているサーバストレージLPARの識別番号である。
以上の図17〜図23に示したテーブル1001、1002、1003、1004、1005、1006および1007は、MGメモリ160に格納されるテーブルである(図4参照)。これらのテーブルは、ストレージシステム300においてどの要素とどの要素が直接接続されているか、サーバ100においてどの要素とどの要素が直接接続されているか、どのSVIFにどのSVプロセッサとどのSTプロセッサが直接接続されているか、どの要素が1つのサーバストレージLPARに占有されているか、および、どの要素がいずれのサーバストレージLPARからも使用可能であるのかを示す。SS管理情報は、これらのテーブルの他に、SVメモリに記憶されているSV管理情報(複数のテーブル)が含む情報、STメモリに記憶されているST管理情報(複数のテーブル)が含む情報を含んでもよい。SS管理情報に基づいて、互いに直接接続されているSVプロセッサとSTプロセッサ(STメモリ)とを特定することができる。SS管理情報の少なくとも一部の情報は、MGプロセッサ170(管理プログラム1021)が、サーバ100およびストレージシステム300のうちの少なくとも一方から収集した情報またはその情報を基に生成した情報でよい。また、SS管理情報の少なくとも一部の情報は、管理クライアント156から入力された情報でもよい。以下の説明では、MGメモリ160には、図17〜図23に示したテーブルの他に、図7〜図16に示したテーブルも、例えば情報収集の結果として記憶されているものとする。
図24は、サーバストレージLPAR作成画面180を示す。
サーバストレージLPAR作成画面180は、GUI(Graphical User Interface)のようなユーザインターフェイスの一例である。画面180は、例えば、管理プログラム1021により管理クライアント156に表示される。具体的には、例えば、画面1806の表示用情報が管理プログラム1021により管理クライアント156に送信され、管理クライアント156によりその表示用情報を基に画面180が表示される。
画面180は、サーバについての入力項目として、SVプロセッサ数、SVコア数、SVメモリ容量およびSVIF数を有する。また、画面180は、ストレージシステムについての入力項目として、作成するボリュームの容量および個数、デバイスの合計容量、種別およびRAIDレベル、デバイスI/F数、STプロセッサ数、STコア数、STメモリ容量、および、冗長構成の有無を有する。画面180は、これらの入力項目のうちの少なくとも1つの各々について、占有割当てとするか否かの選択を、例えばチェックマークの有無により、受け付ける。また、この画面180は、「作成」ボタンを有する。「作成」ボタンは、作成の指示を受け付けるためのボタンである。
画面180における複数の入力項目の各々について、どのような単位で指定するか、指定された単位で幾つの要素を作成対象のサーバストレージLPARに割り当てるか(例えば数の入力)、および、割り当てられる要素は占有割当てとするか否か(例えばチェックマークの有無により指定)うちの少なくとも1つを利用者が入力可能となっている。また、画面180には、作成対象のサーバストレージLPARの構成を冗長構成とするか否かについても利用者が入力可能となっている。入力項目については後述する。
なお、サーバストレージLPARは、サーバ100からストレージシステム300までEnd-to-endでSSシステム50を論理的に分割することにより得られる区画であり、典型的には、サーバ100の一部とストレージシステム300の一部とを含んだ論理区画である。従って、本実施例では、サーバストレージLPAR作成画面180において、少なくとも、「SVプロセッサ」、「SVIF数」及び「STプロセッサ」の入力項目については、占有割当てとすることを意味するチェックマークが必須である。例えば、デフォルトでチェックマークが設定されていて、管理プログラム1021は、そのチェックマークについては利用者操作不可の状態で管理してよい。このため、利用者は、少なくとも「SVプロセッサ」、「SVIF数」及び「STプロセッサ」の入力項目については、チェックマークを外すことができない。言い換えれば、少なくとも、SVプロセッサ(又はコア)、SVIF及びSTプロセッサ(又はコア)が、図26に示す処理において、占有割当てとされる。
図25は、サーバストレージリソース検索の流れを示す。
利用者(例えば管理者)がサーバストレージLPAR作成画面180を用いて作成指示をしたときに(「作成」ボタンを押したときに)ステップ1101が実行される。なお、検索対象の順序は、図25に示す順序に限られないでよい。
ステップ1101において、管理プログラム1021は、RAIDグループ割当てテーブル1002において割当て状態が「共有」であり、サーバストレージLPAR作成画面180において入力された容量、デバイス種別、RAIDレベルを満たすRAIDグループを、RAIDグループ管理テーブル830から全て検索する。1つのRAIDグループで容量条件を満たさない場合は、条件を満たす複数のRAIDグループを合計し、容量条件を満たすRAIDグループを検索する。
条件を満たすRAIDグループが見つかった場合(ステップ1102:Yes)、ステップ1103に進む。条件を満たすRAIDグループが見つからなかった場合(ステップ1102:No)、管理プログラム1021がリソース不足(例えばメッセージ)を表示し、終了する。
ステップ1103において、管理プログラム1021は、ステップ1101において見つかったRAIDグループの各々について、RAIDグループ管理テーブル830を用いて、RAIDグループに接続されているデバイスI/Fを特定し、特定されたデバイスI/Fのうち、デバイスI/F割当てテーブル1003において割当て状態が「共有」であるデバイスI/Fを特定する。サーバストレージLPAR作成画面180において、冗長構成を指示されている場合(冗長構成を有するサーバストレージLPARとすることが指定されている場合)は、管理プログラム1021は、異なる複数のSTコントローラにそれぞれ接続されている異なる複数のデバイスI/Fを特定する。
全RAIDグループについて条件を満たすデバイスI/Fが見つかった場合(ステップ1104:Yes)、ステップ1105に進む。条件を満たすデバイスI/Fが見つからなかった場合(ステップ1104:No)、管理プログラム1021がリソース不足を表示し、終了する。
ステップ1105において、管理プログラム1021は、ステップ1103において特定したデバイスI/Fの各々について、デバイスI/F管理テーブル841を用いて、デバイスI/Fに接続されているSTプロセッサを特定する。サーバストレージLPAR作成画面180においてソケット単位(STプロセッサ単位)での占有割当てが指定されている場合は、管理プログラム1021は、STコア割当てテーブル1004においてデバイスI/Fに接続されたSTプロセッサ内のSTコアの割当て状態が全て「共有」であるSTプロセッサを特定する。サーバストレージLPAR作成画面180においてコア単位での占有割当てが指定されている場合は、管理プログラム1021は、STコア割当てテーブル1004においてデバイスI/Fに接続されたSTプロセッサ内のSTコアの割当て状態が「共有」であるSTコアの数が、サーバストレージLPAR作成画面180において指定されたSTコア数以上のSTプロセッサを特定する。サーバストレージLPAR作成画面180において、冗長構成を指示されている場合は、管理プログラム1021は、異なる複数のSTコントローラにそれぞれ配置されている異なる複数のSTプロセッサを特定する。
条件を満たすSTプロセッサが見つかった場合(ステップ1106:Yes)、ステップ1107に進む。条件を満たすSTプロセッサが見つからなかった場合(ステップ1106:No)、管理プログラム1021は、リソース不足を表示し、終了する。
ステップ1107において、管理プログラム1021は、STメモリ管理テーブル844を用いて、ステップ1105において特定したSTプロセッサが直接アクセスできるメモリ上のCLPARであり、STメモリ割当てテーブル1005において割当て状態が「共有」であるCLPARであり、且つ、サーバストレージLPAR作成画面180において指定されたSTメモリ容量以上であるCLPARを特定する。CLPARの容量が足りない場合は、管理プログラム1021は、複数のCLPARを組み合わせ、CLPARの容量を合計してもよい。CLPARの容量の合計が画面1808において指定されたSTメモリ容量以上であれば、条件が満たされる。
条件を満たすCLPARが見つかった場合(ステップ1108:Yes)、ステップ1109に進む。条件を満たすCLPARが見つからなかった場合(ステップ1108:No)、管理プログラム1021は、リソース不足を表示し、終了する。
ステップ1109において、管理プログラム1021は、SVIF管理テーブル1001を用いて、ステップ1105において特定したSTプロセッサに直接接続されたSVIFを特定し、サーバストレージLPAR作成画面180において指定された数以上のSVIFが直接接続されたSTプロセッサであり、SVIF割当てテーブル1006において割当て状態が「共有」であるSVIFを特定する。なお、インターフェイス拡張装置700が多段接続されている場合、管理プログラム1021は、STプロセッサ420からSVIF200までのパスにおいてインターフェイス拡張装置700が最も少ないSVIF200を選択してもよい。通信において経由するインターフェイス拡張装置700の数が多い程I/O性能が低いと考えられるので、この選択により、I/O性能の低下を軽減することが期待できる。STプロセッサ420とSVIF200間のインターフェイス拡張装置700の段数は、SS管理情報に登録されていて、そのSS管理情報から特定可能でよい。
条件を満たすSVIFが見つかった場合(ステップ1110:Yes)、ステップ1111に進む。条件を満たすSVIFが見つからなかった場合(ステップ1110:No)、管理プログラム1021は、リソース不足を表示し、終了する。
ステップ1111において、管理プログラム1021は、SVIF管理テーブル1001を用いて、ステップ1109において特定したSVIFが直接接続するSVプロセッサを検索する。サーバストレージLPAR作成画面180においてソケット単位での占有割当てが指定されている場合は、管理プログラム1021は、SVプロセッサ管理テーブル901とLPAR管理テーブル902を用いて、SVプロセッサ内のSVコアがどのLPARにも使用されていないSVプロセッサを選択する。サーバストレージLPAR作成画面180においてコア単位での占有割当てが指定されている場合は、管理プログラム1021は、SVプロセッサ内のSVコアのうち、LPARに割り当てられていないSVコアの数が、サーバストレージLPAR作成画面180において指定されたSVコア数以上のSVプロセッサを選択する。
条件を満たすSVプロセッサが見つかった場合(ステップ1112:Yes)、サーバストレージLPAR作成処理に進む。条件を満たすSVプロセッサが見つからなかった場合(ステップ1112:No)、管理プログラム1021は、リソース不足を表示し、終了する。
図26は、サーバストレージLPAR作成の流れを示す。
ステップ1201において、サーバストレージLPAR作成画面180の「デバイス」の「占有割当て」がチェックされている場合は、図25に示す処理において特定したRAIDグループを占有割当てにするために、管理プログラム1021は、RAIDグループ割当てテーブル1002を更新する。この結果、RAIDグループ割当てテーブル1002において、図25に示す処理において特定したRAIDグループの割当て状態が、「占有」とされる。サーバストレージLPAR作成画面180の「デバイス」の「占有割当て」がチェックされていない場合は、図25に示す処理において特定したRAIDグループの割当て状態は、「共有」のままとなる。
ステップ1202において、管理プログラム1021は、ストレージ制御プログラム870に、図25に示す処理において特定したRAIDグループに基づくストレージプールとそのストレージプールに関連付けられる仮想ボリュームとを作成することの指示を送信する。ストレージ制御プログラム870は、その指示に従い、ストレージプールとそのストレージプールに関連付けられる仮想ボリュームをと作成し、ストレージプール管理テーブル820と仮想ボリューム管理テーブル810を更新する。この結果、ストレージプール管理テーブル820に、作成されたストレージプールに対応したエントリが追加され、仮想ボリューム管理テーブル810に、作成された仮想ボリュームに対応したエントリが追加される。
ステップ1203において、サーバストレージLPAR作成画面180の「STメモリ容量」の「占有割当て」がチェックされている場合は、図25に示す処理において特定したCLPARを占有割当てにするために、管理プログラム1021は、STメモリ割当てテーブル1005を更新する。この結果、特定したCLPARの割当て状態が「占有」とされる。サーバストレージLPAR作成画面180の「STメモリ容量」の「占有割当て」がチェックされていない場合は、特定したCLPARの割当て状態は「共有」のままとなる。なお、特定したCLPARの容量が、サーバストレージLPAR作成画面180において指定されたSTメモリ容量よりも大きい場合は、CLPARを分割してもよい。この場合は、管理プログラム1021が、ストレージ制御プログラム870に、CLPAR分割の指示を送信し、ストレージ制御プログラム870が、その指示に従い、CLPARを分割し、STメモリ管理テーブル844を更新してよい。この分割により、指定されたSTメモリ容量のCLPARと、それ以外のCLPARとが得られてよい。
ステップ1204において、管理プログラム1021は、ストレージ制御プログラム870に、ステップ1202において作成した仮想ボリュームが占有割当てしたCLPARを使用するよう設定変更の指示を送信する。サーバストレージLPAR作成画面180の「STメモリ容量」の「占有割当て」がチェックされている場合において、ステップ1202において作成した仮想ボリュームでない仮想ボリュームが、占有割当てしたCLPARを使用する設定になっている場合、設定変更の指示は、その仮想ボリュームを他のCLPARを使用するようにすることの設定変更を含む。このとき、移動先CLPAR(管理プログラム1021により選択されストレージ制御プログラム870に移動先として指定されるCLPAR)は、割当て状態が「共有」であるCLPARである。ストレージ制御プログラム870は、その指示に従い、STメモリ管理テーブル844の仮想ボリューム番号を更新する。
ステップ1205において、サーバストレージLPAR作成画面180の「STプロセッサ」の「ソケット」の「占有割当て」がチェックされている場合、または、「STプロセッサ」の「コア」の「占有割当て」がチェックされている場合は、図25に示す処理において特定したSTプロセッサまたはSTコアを占有割当てにするために、管理プログラム1021は、STコア割当てテーブル1004を更新する。この結果、特定したSTプロセッサまたはSTコアの割当て状態が「占有」とされる。管理プログラム1021は、ストレージ制御プログラム870に、ステップ1202において作成した仮想ボリュームを、図25に示す処理において特定したSTプロセッサまたはSTコアが処理するように設定変更の指示を送信する。ストレージ制御プログラム870は、その指示に従い、STコア管理テーブル843の担当仮想ボリューム番号を更新する。図25に示す処理において特定したSTプロセッサまたはSTコアが、ステップ1202において作成した仮想ボリュームでない仮想ボリュームの処理を担当している場合は、管理プログラム1021が、ストレージ制御プログラム870に、その仮想ボリュームを他のSTコアに移す指示(ステップ1202において作成した仮想ボリュームでない仮想ボリュームの担当STコアを他のSTコアに変更することの指示)を送信する。このとき、移動先として選択されるSTコアは、割当て状態が「共有」であるSTコアである。ストレージ制御プログラム870は、STコア管理テーブル843を更新する。サーバストレージLPAR作成画面180の「STプロセッサ」の「ソケット」の「占有割当て」がチェックされてなく、かつ、「STプロセッサ」の「コア」の「占有割当て」がチェックされてない場合は、特定したSTプロセッサまたはSTコアの割当て状態は「共有」のままとなる。なお、上述したように、「STプロセッサ」の「ソケット」及び「コア」のいずれかの「占有割当て」のチェックが必須の場合、少なくともSTプロセッサ又はそのコアが、サーバストレージLPARの必須構成要素となる。
ステップ1206において、サーバストレージLPAR作成画面180において、「デバイスI/F数」の「占有割当て」がチェックされている場合は、図25に示す処理において特定したデバイスI/Fを占有割当てにするために、管理プログラム1021は、デバイスI/F割当てテーブル1003を更新する。この結果、特定したデバイスI/Fの割当て状態が「占有」とされる。管理プログラム1021は、ストレージ制御プログラム870に、図25に示す処理において特定したデバイスI/Fと直接接続されたSTプロセッサ上のSTコアに処理を担当している仮想ボリュームを他のSTプロセッサ上のSTコアに移動する指示(図25に示す処理において特定したデバイスI/Fと直接接続されたSTプロセッサ上のSTコアが担当となっている仮想ボリュームの担当(オーナ権)を他のSTプロセッサ上のSTコアに移動する指示)を送信する。このとき、移動先として選択されるSTコア(管理プログラム1021により選択されストレージ制御プログラム870に指定されるSTコア)は、割当て状態が「共有」であるSTコアである。ストレージ制御プログラム870は、その指示に従い、STコア管理テーブルの担当仮想ボリューム番号を更新する。この結果、図25に示す処理において特定したデバイスI/Fと直接接続されたSTプロセッサ上のSTコアが担当となっている仮想ボリュームの担当(オーナ権)が、指定された他のSTプロセッサ上のSTコアに移動する。なお、ステップ1206において、サーバストレージLPAR作成画面180の「デバイスI/F数」の「占有割当て」がチェックされていない場合は、図25に示す処理において特定したデバイスI/Fの割当て状態は、「共有」のままとなる。
ステップ1207において、管理プログラム1021は、LPARプログラム921に、図25に示す処理において特定したSVプロセッサ、SVメモリ及びSVIFを含んだLPAR(サーバLPAR)を作成する指示を送信する。LPARプログラム921は、その指示に従い、LPAR管理テーブル902を更新する。この結果、LPAR管理テーブル902に、新たなLPARのエントリが追加される。なお、SVIF割当てテーブル1006及びLPAR管理テーブル1007のうちの少なくとも一部において、図25に示す処理において特定したSVプロセッサ(コア)、SVメモリ及びSVIFの各々について、割当て状態(「占有」又は「共有」)が記録されてよい。
また、STプロセッサ割当てとCLPAR割当ての代わりに、ストレージシステム上にLPAR(ストレージLPAR)が作成され、STプロセッサとSTメモリが論理分割され、論理分割されたSTプロセッサとSTメモリ(ストレージLPAR)がサーバストレージLPARに割り当てられてもよい。
以上が、実施例1の説明である。
実施例1によれば、管理プログラム1021が、SS管理情報を基に、SVIF200に直接接続されているSVプロセッサ120及びSTプロセッサ420、そのSVプロセッサ120に直接接続されているSVメモリ110、及び、そのSTプロセッサ420に直接接続されているSTメモリ410を特定でき、それらの特定された要素をサーバストレージLPARに含まれる要素として決定する。従って、サーバストレージLPARには、間接接続の関係にある要素が含まれず、結果として、上述したようなフォワードは発生しない。具体的には、例えば、図26のステップ1202で作成された仮想ボリュームは、ステップ1205において占有割当てされたSTプロセッサ(STコア)に割り当てられている。故に、そのサーバストレージLPARが起動された場合、その仮想ボリュームが、ステップ1205において占有割当てされたSTプロセッサ(STコア)に直接接続されているSVプロセッサ(ステップ1207で作成されるLPAR)に提供されることとなる。この結果、そのSVプロセッサ(SVコア)から発行されるI/O要求で指定される論理ボリュームは、ステップ1202で作成された仮想ボリュームであり、そのI/O要求は、複数のSTプロセッサのうちの、そのSVプロセッサ(SVコア)に直接接続されているSTプロセッサに最初に届くことになる。指定されている仮想ボリュームは、そのSTプロセッサ(STコア)にとって担当仮想ボリュームである。故に、I/O要求のフォワード(STプロセッサ間でのフォワード)は発生しない。これにより、I/O性能の向上が期待できる。
また、実施例1によれば、SSシステム50は、サーバ100とストレージシステム300をいわゆるSAN(Storage Area Network)等のネットワークスイッチのフォワード機能に頼らない広帯域なバスで接続した一体型システムである。SVメモリとSVプロセッサ間、SVIFを介したSVプロセッサとSTプロセッサ間、STプロセッサとSTメモリ間は、同一形式のバスで接続されている(同一プロトコルでの通信が可能である)。これにより、帯域拡張とレイテンシ向上を実現できる。
また、実施例1(例えば図26)によれば、STプロセッサ(又はSTコア)の担当仮想ボリュームは、そのSTプロセッサ(又はSTコア)に直接接続されているRAIDグループ(記憶デバイス)にデータがI/Oされる仮想ボリュームである。このため、データのI/Oにおいてフォワード(STプロセッサ間のフォワード)の発生を回避できる。
また、実施例1(例えば図26)によれば、割当て状態「共有」の特定されたSTプロセッサ(又はSTコア)が担当する仮想ボリュームの担当が割当て状態「共有」の別のSTプロセッサ(又はSTコア)に移動し、作成された仮想ボリュームの担当が、特定されたSTプロセッサ(又はSTコア)とされる。これにより、その仮想ボリュームに対するI/Oの処理が、占有割当てされ他の仮想ボリュームの担当が外されたSTプロセッサ(又はSTコア)により行われることになり、結果として、I/O性能の向上が期待できる。
以下、実施例2を説明する。その際、実施例1との相違点を主に説明し、実施例1との共通点については説明を省略或いは簡略する。
実施例2では、サーバストレージLPARの作成に関し、管理プログラム1021が、既存LPAR(既存のサーバLPAR)を利用したサーバストレージLPAR作成(既存利用作成)とするか、既存LPARを利用しない新規サーバストレージLPAR作成(新規作成)とするかの選択を利用者から受け付ける。新規作成が選択された場合、図24に示した作成画面180が表示され、図25に示した流れに従う検索が行われ、図26に示した流れに従う作成が行われる。新規作成であれば、既存のサーバLPAR又は既存のサーバストレージLPARの構成を変えることなくサーバストレージLPARの構築が可能である。一方、既存利用作成が選択された場合、図27に示す作成画面181が表示され、図28に示す流れに従う作成が行われる。既存利用作成であれば、利用者の入力負担(操作負担)少なくサーバストレージLPARを作成できる。既存利用作成とするか新規作成とするかの選択は、利用者から受け付けることに代えて、管理プログラム1021が所定のポリシーに従い行ってもよい。例えば、管理プログラム1021は、SSシステムのリソース量に対する共有リソース量の割合が所定割合を超えている場合に既存利用作成を選択し、共有リソース量の割合が所定割合以下の場合に新規作成を選択してもよい。共有リソースとは、割当て状態が「共有」のリソースである。リソースの量は、リソースの種別によって単位が異なっていてよい。
図27は、既存利用作成に関するサーバストレージLPAR作成画面181を示す。
サーバストレージLPAR作成画面181は、入力項目として、サーバLPAR選択、仮想ボリューム選択、ストレージリソース選択(デバイスI/F数、STプロセッサ数、STコア数、STメモリ容量、冗長構成)、「作成」ボタンを有する。
サーバLPAR選択として、既存LPARの一覧が表示される。その一覧から、作成対象のサーバストレージLPARに含めるLPARの選択を管理プログラム1021が受け付ける。既存LPARの一覧は、例えば、管理プログラム1021が複数のサーバ100から収集した情報(例えば、LPAR管理テーブル902が有する情報)を基に表示されてよい。
仮想ボリューム選択として、既存の仮想ボリュームの一覧が表示される。その一覧から、作成対象のサーバストレージLPARに含める仮想ボリュームの選択を管理プログラム1021が受け付ける。既存の仮想ボリュームの一覧は、例えば、例えば、管理プログラム1021がストレージシステム300から収集した情報(例えば、仮想ボリューム管理テーブル810が有する情報)を基に表示されてよい。
ストレージリソース選択の構成は、図24に示した画面180における構成と同様である。
図27は、既存利用作成に関するサーバストレージLPAR作成の流れを示す。
利用者がサーバストレージLPAR作成画面181を用いて作成指示をしたときにステップ1301が実行される。
ステップ1301において、管理プログラム1021は、画面181の既存LPAR一覧から選択されたLPAR(図27の説明において「指定LPAR」)においてSVプロセッサとSVメモリが互いに直接接続されているか否かを、LPAR管理テーブル902とSVプロセッサ管理テーブル901を用いて判断する。
ステップ1302において、管理プログラム1021は、指定LPARにおいてSVプロセッサとSVIFが互いに直接接続されているか否かを、LPAR管理テーブル902とSVIF管理テーブル1001を用いて判断する。
指定LPARにおいてSVプロセッサにSVメモリ及びSVIFの両方が直接接続されていると判断された場合(ステップ1303:Yes)、ステップ1309に進む。そうでない場合(ステップ1303:No)、ステップ1304に進む。
SVプロセッサにSVメモリが直接接続されていない場合、ステップ1304において、管理プログラム1021は、SVプロセッサ管理テーブル901と、LPAR管理テーブル902と、LPAR割当てテーブル1007とが用いて、指定LPAR内のSVプロセッサに直接接続されているSVメモリを検索する。SVメモリの検索では、管理プログラム1021は、SVプロセッサと直接接続されているSVメモリから、現状のLPAR(指定LPAR)内のSVメモリと同容量(又はより多い容量)であり、他の占有割当てのLPARに割り当てられていないSVメモリを検索する。SVプロセッサにSVIFが直接接続されていない場合、ステップ1304において、管理プログラム1021は、LPAR管理テーブル902と、SVIF管理テーブル1001と、SVIF割当てテーブル1006とを用いて、指定LPAR内のSVプロセッサに直接接続されており、占有割当てされていないSVIFを検索する。
検索対象が見つかった場合(ステップ1305:Yes)、ステップ1306に進む。検索対象が見つからなかった場合(ステップ1305:No)、管理プログラム1021は、リソース不足を表示し、終了する。
ステップ1306において、管理プログラム1021は、LPARプログラム921に、指定LPARの停止の指示を送信する。LPARプログラム921は、その指示に従い、指定LPARを停止する
ステップ1307において、管理プログラム1021は、LPARプログラム921に、指定LPARについて、SVメモリが直接接続されていなかった場合は、ステップ1304において見つかったSVメモリを使用する構成変更の指示を送信する。LPARプログラム921は、指定LPARに、(例えば、指定LPARに割り当てられているSVメモリに代えて)上記見つかったSVメモリを割り当てる。SVIFが直接接続されていなかった場合は、管理プログラム1021は、ステップ1304において見つかったSVIFを使用する構成変更の指示をLPARプログラム921に送信し、管理プログラム1021は、SVIF割当てテーブル1006を更新する。LPARプログラム921は、指定LPARに、(例えば、指定LPARに割り当てられているSVIFに代えて)上記見つかったSVIFを割り当てる。
ステップ1308において、管理プログラム1021は、LPARプログラム921に、指定LPARの起動の指示を送信する。LPARプログラム921は、その指示に従い、指定LPARを起動する。
ステップ1309において、管理プログラム1021は、SVIF管理テーブル1001と、STプロセッサ管理テーブル842と、STコア割当てテーブル1004とを用いて、指定LPAR内のSVIFから直接接続されているSTプロセッサ上のSTコアであり、占有割当てされていないSTコアを検索する。
画面181において指定された数のSTコアが見つかった場合(ステップ1310:Yes)、ステップ1311に進む。画面181において指定された数のSTコアが見つからなかった場合(ステップ1310:No)、リソース不足を表示し、終了する。
ステップ1311において、管理プログラム1021は、ストレージ制御プログラム870に、画面181において指定された仮想ボリュームを、ステップ1309において見つかったSTコアに対応した担当仮想ボリュームとする設定変更の指示を送信する。ストレージ制御プログラム870は、その指示に従い、STコア管理テーブル843の担当仮想ボリューム番号を更新する。この結果、ステップ1309において見つかったSTコアについて、担当仮想ボリューム番号として、画面181において指定された仮想ボリュームの番号が追加される。管理プログラム1021は、STコア割当てテーブル1004を更新する。この結果、ステップ1309において見つかったSTコアの各々の割当て状態が、「共有」から「占有」となる。
以上、一実施例を説明したが、本発明は、この実施例に限定されるものでなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
例えば、SVIF200のようなインターフェイスデバイス(例えばASIC)は、SVプロセッサとSTプロセッサ間に介在していればよく、サーバ100に搭載されていなくてもよい。
また、SS管理情報(例えばいずれかのテーブル)に、冗長化されたコントローラ400におけるSTプロセッサ同士の接続関係が登録されていてよい。それにより、管理プログラム1021は、例えば図26のステップ1203において、SS管理情報から、どのSTプロセッサとどのSTプロセッサが直接接続されているかを特定できる。SVプロセッサ120からのライト要求に従うライト対象データが、異なる(又は同一の)STコントローラ400における2つの異なるSTメモリ410に格納される。つまり、ライト対象データの二重化が行われる。このため、管理プログラム1021は、特定したSTプロセッサ部(STプロセッサ420又はSTコア440)に直接接続されているSTメモリ部(例えばSTメモリ410又はそのSTメモリ410上のCLPAR)である第1のSTメモリ部と、特定したSTプロセッサ部にバス接続(直接接続)されているSTプロセッサ部に直接接続されているSTメモリ部である第2のSTメモリ部とを、SS管理情報を基に特定し、特定された第1及び第2のSTメモリ部を、サーバストレージLPARに占有割当てしてよい。第2のSTメモリ部を別の観点から言えば、特定したSTプロセッサ部が受けたライト要求に従うライト対象データが経由するノード(例えばSTプロセッサ420)の数が最も少ない(ライト対象データのホップ数が最も少ない)ルートにあるSTメモリ部であると言える。従って、ライト対象データの二重化の高速化が期待できる。
100…サーバ、300…ストレージシステム、150…管理サーバ

Claims (12)

  1. 複数のインターフェイスデバイスと、
    前記複数のインターフェイスデバイスにバス接続された複数のサーバプロセッサと、前記複数のサーバプロセッサにバス接続された複数のサーバメモリとを有するサーバシステムと、
    複数の記憶デバイスと、前記複数の記憶デバイスに接続されたデバイスインターフェイス(デバイスI/F)と、前記複数のインターフェイスデバイスにバス接続され前記複数のデバイスI/Fに接続された複数のストレージプロセッサと、前記複数のストレージプロセッサにバス接続された複数のストレージメモリとを有し、前記複数のストレージプロセッサと前記複数のインターフェイスデバイス間が前記複数のサーバプロセッサと前記複数のインターフェイスデバイス間のバスの形式と同じ形式のバスで接続されているストレージシステムと
    を有し、
    SVプロセッサ部を含み前記サーバシステムの論理区画であるサーバLPARのインターフェイスデバイスに直接接続されているSTプロセッサ部から、そのSTプロセッサ部によりデータがI/Oされる論理ボリュームが、そのサーバLPARに提供され、SVプロセッサ部は、サーバプロセッサ又はサーバプロセッサのコアであり、STプロセッサ部は、ストレージプロセッサ又はストレージプロセッサのコアであ
    インターフェイスデバイスに直接接続されているSVプロセッサ部及びSTプロセッサ部を表す情報を前記複数のインターフェイスデバイスの各々について含んだ管理情報を基に、前記複数のインターフェイスデバイスと前記サーバシステムと前記ストレージシステムとを含んだサーバストレージシステムの論理区画であるサーバストレージLPARの要素として、前記サーバLPARと、前記サーバLPARのインターフェイスデバイスに直接接続されているSTプロセッサ部とを割り当てる管理システムを更に有する、
    計算機システム。
  2. 前記管理システムは、前記管理情報を基に、記憶デバイスと、その記憶デバイスに接続されているデバイスI/Fと、そのデバイスI/Fに別のSTプロセッサ部を介することなく接続されているSTプロセッサ部とを特定し、前記特定した記憶デバイス、デバイスI/F及びSTプロセッサ部を前記サーバストレージLPARの要素として割り当て、
    前記サーバLPARに提供される論理ボリュームは、I/Oされるデータが前記特定した記憶デバイスにI/Oされることになる論理ボリュームである、
    請求項記載の計算機システム。
  3. 前記サーバストレージシステムの要素として、前記サーバストレージLPARについてのI/Oにのみ使用される占有要素と、いずれのサーバシステムLPARについてのI/Oにも使用可能な共有要素とがあり、
    複数のSTプロセッサ部の各々は、複数の論理ボリュームのうちのそのSTプロセッサ部に対応した担当論理ボリュームに対してのみデータをI/Oするようになっており、
    前記管理システムは、
    前記管理情報を基に、共有要素としてのSTプロセッサ部を特定し、
    前記特定したSTプロセッサ部に対応した論理ボリュームの担当を、共有要素としての別のSTプロセッサ部であり前記特定したSTプロセッサ部と異なるストレージプロセッサにあるSTプロセッサ部に移動し、
    前記特定したSTプロセッサ部を、前記提供される論理ボリュームの担当とし、
    前記特定したSTプロセッサ部を占有要素として前記サーバストレージLPARに割り当てる、
    請求項記載の計算機システム。
  4. 前記サーバストレージシステムにおいて、前記複数のインターフェイスデバイスの少なくとも1つと前記複数のストレージプロセッサとの間に、インターフェイスデバイスとストレージプロセッサ間のバス数を拡張するためのインターフェイス拡張装置が介在し、
    前記管理システムは、介在するインターフェイス拡張装置の数が最も少ないSTプロセッサ部を特定し、特定したSTプロセッサ部を前記サーバストレージLPARの要素として割り当てる、
    請求項記載の計算機システム。
  5. 前記ストレージシステムが、冗長化されたコントローラを有し、
    前記ストレージシステムに、ストレージプロセッサとストレージメモリ間に別のストレージプロセッサが介在しない直接接続と、ストレージプロセッサとストレージメモリ間に別のストレージプロセッサが介在する間接接続とが混在し、
    前記冗長化されたコントローラの各々が、2以上のストレージメモリ及び2以上のストレージプロセッサを有し、
    前記冗長化されたコントローラにおける冗長化されたストレージプロセッサが互いにバス接続されており、
    前記管理システムが、前記特定したSTプロセッサ部に直接接続されているSTメモリ部である第1のSTメモリ部と、前記特定したSTプロセッサ部にバス接続されているSTプロセッサ部に直接接続されているSTメモリ部である第2のSTメモリ部とを、前記管理情報を基に特定し、
    前記特定された第1及び第2のSTメモリ部が、前記サーバストレージLPARの要素として割り当てられ、
    前記第1及び第2のSTメモリ部の各々は、ストレージメモリ又はその一部である、
    請求項2記載の計算機システム。
  6. 前記サーバストレージシステムの要素として、前記サーバストレージLPARについてのI/Oにのみ使用される占有要素と、いずれのサーバシステムLPARについてのI/Oにも使用可能な共有要素とがあり、
    前記管理システムは、
    前記管理情報を基に、それぞれ共有要素であり、記憶デバイス、その記憶デバイスに接続されているデバイスI/F、そのデバイスI/Fに直接接続されているSTプロセッサ部、そのSTプロセッサ部に直接接続されているインターフェイスデバイス、及び、そのインターフェイスデバイスに直接接続されているSVプロセッサ部を特定し、
    I/Oされるデータが前記特定した記憶デバイスにI/Oされることになる論理ボリュームを決定し、
    前記決定した論理ボリュームの担当を、前記特定されたSTプロセッサ部とし、
    前記特定したSVプロセッサ部を含んだ新たなサーバLPARを決定し、
    前記特定したインターフェイスデバイスの少なくとも一部と、前記新たなサーバLPARと、前記特定したSTプロセッサ部とが割り当てられた新たなサーバストレージLPARを決定する、
    請求項記載の計算機システム。
  7. 前記サーバストレージシステムの要素として、前記サーバストレージLPARについてのI/Oにのみ使用される占有要素と、いずれのサーバシステムLPARについてのI/Oにも使用可能な共有要素とがあり、
    前記管理システムは、
    既存のサーバLPARのうちのサーバLPARの選択を受け付け、
    既存の論理ボリュームのうちの論理ボリュームの選択を受け付け、
    前記管理情報を基に、選択されたサーバLPARのインターフェイスデバイスに直接接続されており共有要素としてのSTプロセッサ部を特定し、
    前記特定したSTプロセッサ部に対応した論理ボリュームの担当を、共有要素としての別のSTプロセッサ部であり前記特定したSTプロセッサ部と異なるストレージプロセッサにあるSTプロセッサ部に移動し、
    前記選択された論理ボリュームの担当を、前記特定したSTプロセッサ部とし、
    前記選択されたサーバLPARが割り当てられているサーバストレージLPARに、前記特定したSTプロセッサ部を割り当てる、
    請求項記載の計算機システム。
  8. 前記サーバストレージシステムの要素として、前記サーバストレージLPARについてのI/Oにのみ使用される占有要素と、いずれのサーバシステムLPARについてのI/Oにも使用可能な共有要素とがあり、
    前記サーバストレージLPARに占有要素として割り当てられるべき要素は、サーバLPAR、STプロセッサ部、ストレージメモリ又はその一部であるSTメモリ部、デバイスI/F及び記憶デバイスのうちのサーバLPAR及びSTプロセッサ部である、
    請求項1記載の計算機システム。
  9. 前記ストレージシステムに、ストレージプロセッサとストレージメモリ間に別のストレージプロセッサが介在しない直接接続と、ストレージプロセッサとストレージメモリ間に別のストレージプロセッサが介在する間接接続とが混在し、
    前記サーバストレージLPARに占有要素として割り当てられるべき要素は、サーバLPAR、STプロセッサ部、ストレージメモリ又はその一部であるSTメモリ部、デバイスI/F及び記憶デバイスのうちのサーバLPAR、STメモリ部及びSTプロセッサ部であり、
    前記管理システムは、前記管理情報を基に、サーバLPAR、そのサーバLPARのインターフェイスデバイスに直接接続されているSTプロセッサ部、そのSTプロセッサ部に直接接続されているSTメモリ部を特定し、特定したサーバLPAR、STプロセッサ部及びSTメモリ部をそれぞれサーバストレージLPARの構成要素とする、
    請求項記載の計算機システム。
  10. 前記サーバシステムに、サーバプロセッサとサーバメモリ間に別のサーバプロセッサが介在しない直接接続と、サーバプロセッサとサーバメモリ間に別のサーバプロセッサが介在する間接接続とが混在し、
    前記管理情報は、サーバプロセッサとサーバメモリ間の関係を表す情報を含み、
    前記管理システムは、前記管理情報を基に、SVプロセッサ部と、そのSVプロセッサ部と直接接続されたSVメモリ部とを特定し、特定したSVプロセッサ部及びSVメモリ部をそれぞれサーバLPARの構成要素とし、
    SVメモリ部は、サーバメモリ又はその一部である、
    請求項記載の計算機システム。
  11. 前記ストレージシステムが、冗長化されたコントローラを有し、
    前記ストレージシステムに、ストレージプロセッサとストレージメモリ間に別のストレージプロセッサが介在しない直接接続と、ストレージプロセッサとストレージメモリ間に別のストレージプロセッサが介在する間接接続とが混在し、
    前記冗長化されたコントローラの各々が、ストレージメモリ及びストレージプロセッサを有し、
    前記サーバストレージLPARは、冗長構成を有し、
    前記冗長構成のサーバストレージLPARは、記憶デバイスと、前記記憶デバイスに別のSTプロセッサ部を介することなく接続されており前記冗長化されたコントローラにおける冗長化されたSTプロセッサ部と、前記冗長化されたSTプロセッサ部に直接接続されているSVプロセッサ部とが割り当てられているサーバストレージLPARである、
    請求項1記載の計算機システム。
  12. 複数のインターフェイスデバイスと、
    前記複数のインターフェイスデバイスにバス接続された複数のサーバプロセッサと、前記複数のサーバプロセッサにバス接続された複数のサーバメモリとを有するサーバシステムと、
    複数の記憶デバイスと、前記複数の記憶デバイスに接続されたデバイスインターフェイス(デバイスI/F)と、前記複数のインターフェイスデバイスにバス接続され前記複数のデバイスI/Fに接続された複数のストレージプロセッサと、前記複数のストレージプロセッサにバス接続された複数のストレージメモリとを有し、ストレージプロセッサとストレージメモリ間に別のストレージプロセッサが介在しない直接接続と、ストレージプロセッサとストレージメモリ間に別のストレージプロセッサが介在する間接接続とが混在し、前記複数のストレージプロセッサと前記複数のインターフェイスデバイス間が前記複数のサーバプロセッサと前記複数のインターフェイスデバイス間のバスの形式と同じ形式のバスで接続されているストレージシステムと
    を有するサーバストレージシステムの管理方法であって、
    インターフェイスデバイスに直接接続されているSVプロセッサ部及びSTプロセッサ部を表す情報を前記複数のインターフェイスデバイスの各々について含んだ管理情報を参照し、
    前記管理情報を基に、前記サーバストレージシステムの論理区画であるサーバストレージLPARの要素として、SVプロセッサ部を含み前記サーバシステムの論理区画であるサーバLPARと、前記サーバLPARのインターフェイスデバイスに直接接続されているSTプロセッサ部とを割り当て、SVプロセッサ部は、サーバプロセッサ又はサーバプロセッサのコアであり、STプロセッサ部は、ストレージプロセッサ又はストレージプロセッサのコアである、
    管理方法。
JP2016557397A 2014-11-06 2014-11-06 サーバストレージシステムと管理システムを有する計算機システム Active JP6231700B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/079441 WO2016071988A1 (ja) 2014-11-06 2014-11-06 サーバストレージシステムと管理システムを有する計算機システム

Publications (2)

Publication Number Publication Date
JPWO2016071988A1 JPWO2016071988A1 (ja) 2017-06-08
JP6231700B2 true JP6231700B2 (ja) 2017-11-15

Family

ID=55908740

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016557397A Active JP6231700B2 (ja) 2014-11-06 2014-11-06 サーバストレージシステムと管理システムを有する計算機システム

Country Status (3)

Country Link
US (1) US10268391B2 (ja)
JP (1) JP6231700B2 (ja)
WO (1) WO2016071988A1 (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006079495A (ja) 2004-09-13 2006-03-23 Hitachi Ltd ストレージシステム及び論理区画の設定方法
JP4704161B2 (ja) * 2005-09-13 2011-06-15 株式会社日立製作所 ファイルシステムの構築方法
US7624262B2 (en) * 2006-12-20 2009-11-24 International Business Machines Corporation Apparatus, system, and method for booting using an external disk through a virtual SCSI connection
JP5147955B2 (ja) * 2011-01-25 2013-02-20 株式会社日立製作所 仮想計算機システム
JP5174941B2 (ja) 2011-07-22 2013-04-03 株式会社日立製作所 仮想計算機の制御方法
JP5856925B2 (ja) * 2012-08-21 2016-02-10 株式会社日立製作所 計算機システム

Also Published As

Publication number Publication date
US20170308301A1 (en) 2017-10-26
JPWO2016071988A1 (ja) 2017-06-08
WO2016071988A1 (ja) 2016-05-12
US10268391B2 (en) 2019-04-23

Similar Documents

Publication Publication Date Title
JP5981563B2 (ja) 情報記憶システム及び情報記憶システムの制御方法
US8918615B2 (en) Information storage system including a plurality of storage systems that is managed using system and volume identification information and storage system management method for same
WO2014064756A1 (ja) ストレージプールから実記憶領域を仮想ボリュームへ割り当てる方法及び計算機システム
US11734137B2 (en) System, and control method and program for input/output requests for storage systems
WO2013160944A1 (en) Provisioning of resources like cpu or virtual machines or virtualized storage in a cloud computing environment
US20130110966A1 (en) Computer system and management system therefor
WO2015087442A1 (ja) ストレージシステムの移行方式および移行方法
WO2013157072A1 (ja) 計算機システム、リソース管理方法及び管理計算機
WO2016157274A1 (ja) ストレージ管理計算機
WO2014108933A1 (en) Resource management system and resource management method of a computer system
JP5996098B2 (ja) ストレージデバイスの高速アクセス及びデータ保護を実現する計算機、計算機システム、及びi/o要求処理方法
US20150234907A1 (en) Test environment management apparatus and test environment construction method
JP6480955B2 (ja) 計算機システム、管理システム、及び、リソース管理方法
JP6448779B2 (ja) サーバストレージシステムを含んだ計算機システム
US9239681B2 (en) Storage subsystem and method for controlling the storage subsystem
JP6231700B2 (ja) サーバストレージシステムと管理システムを有する計算機システム
JP6244496B2 (ja) サーバストレージシステムの管理システム及び管理方法
US9690610B2 (en) Computer system and management computer controlling method
WO2016139749A1 (ja) 計算機システム、及び、記憶制御方法
JP5987104B2 (ja) 計算機システム、ストレージシステムの管理システム及び管理方法
US11513690B2 (en) Multi-dimensional I/O service levels
WO2016056050A1 (ja) 計算機システム及びそれの管理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170801

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170920

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171019

R150 Certificate of patent or registration of utility model

Ref document number: 6231700

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150