JP5428721B2 - 管理システム,管理装置,管理方法および管理プログラム - Google Patents

管理システム,管理装置,管理方法および管理プログラム Download PDF

Info

Publication number
JP5428721B2
JP5428721B2 JP2009230601A JP2009230601A JP5428721B2 JP 5428721 B2 JP5428721 B2 JP 5428721B2 JP 2009230601 A JP2009230601 A JP 2009230601A JP 2009230601 A JP2009230601 A JP 2009230601A JP 5428721 B2 JP5428721 B2 JP 5428721B2
Authority
JP
Japan
Prior art keywords
firmware
version
program
switch
management
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
JP2009230601A
Other languages
English (en)
Other versions
JP2011081434A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2009230601A priority Critical patent/JP5428721B2/ja
Priority to US12/896,218 priority patent/US20110083129A1/en
Publication of JP2011081434A publication Critical patent/JP2011081434A/ja
Application granted granted Critical
Publication of JP5428721B2 publication Critical patent/JP5428721B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00—Arrangements for software engineering
    • G06F8/60—Software deployment
    • G06F8/65—Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Description

本件は、複数のデータ中継装置が接続されたデータ伝送システムにおいて、データ中継装置にインストールされるプログラムを管理する技術に関する。
近年、ハードディスク装置や磁気テープ装置等のストレージと、サーバ等のコンピュータとをファイバチャネル等のシリアルSCSIプロトコルを用いてネットワーク化したストレージエリアネットワーク(SAN;Storage Area Network)が知られている。
また、このようなSANの構築に際しては、一般にスイッチと呼ばれる中継装置をサーバとストレージとの間に配置することにより、フレキシブルなシステム構成を実現している(下記特許文献1,2参照)。
スイッチは、サーバとストレージとの間におけるデータの送受信処理を行なうものであり、ファームウェアをメインプロセッサにより実行することにより、プロトコル制御やステータス管理等の各種制御を実現している。
また、複数のSAN(ファブリック)からなる大規模なSANにおいては、各ファブリック内にそれぞれ複数のスイッチがそなえられることも多い。
特開2004−252806号公報 特開2003−131897号公報
さて、上述の如き従来のSANの運用に際して、複数のスイッチのファームウェアの更新は、保守作業員が各スイッチに1台ずつログインしてファームウェアを適用することにより行なっている。すなわち、保守作業員が各スイッチにそれぞれ保守用PC(Personal Computer)を接続し、インストールを実行するためのコマンド入力を行なう。
このようなファームウェアのインストール作業は煩雑である。特に、スイッチの台数が多くなるに従って、ファームウェアの更新作業に要する時間が長くなり、結果的にメンテナンスコストが増大するという課題がある。
また、スイッチにおいては、インストールされているファームウェアに対して、新たなファームウェアを直接適用できない場合もある。このような場合には、スイッチに対して、一旦、中間のバージョンのファームウェア(中間ファームウェア)をインストールした後に、新たなファームウェアをインストールする。すなわち、段階的に複数のインストール作業を行なう必要があり、これにより、ファームウェアの更新作業が更に煩雑になる。
さらに、一般に、SANにおいては、信頼性を向上させるために、サーバとストレージとの間のアクセスパスを二重化することが一般的に行なわれており、これに応じて、2以上のスイッチがペアとなるように配置される。従って、保守作業員は、サーバからストレージへの業務アクセスが停止しないように、これらのスイッチに対して1台ずつ時間を空けてインストール作業を行なう必要がある。すなわち、スイッチに対して保守作業を行なうタイミングを考慮しなければならず、これによっても煩雑である。
また、故障等の理由でスイッチ本体を交換する場合に、交換後のスイッチにインストールされているファームウェアの版が、交換前のスイッチにインストールされていたファームウェアの版と異なる場合がある。このような場合において、稼動実績を考慮して、交換後のスイッチに交換前のスイッチと同じ版のファームウェアをインストールして使用したい場合がある。このような場合に、保守作業員は、交換前のスイッチのファームウェアの版数を確認して、その版のファームウェアを入手する必要があり、これによっても煩雑である。
本件の目的の一つは、このような課題に鑑み創案されたもので、データ中継装置のファームウェア等のプログラムを一元的に管理できる工夫を施すことにより、メンテナンス作業に要する労力を軽減し、メンテナンスコストを低減できるようにすることである。
なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本発明の他の目的の1つとして位置付けることができる。
このため、この管理システムは、データ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理システムであって、該プログラムの複数の版のそれぞれを格納するプログラム格納部と、該データ中継装置にインストールされているプログラムの版情報を格納する版情報格納部と、該プログラムの複数の版のそれぞれに関して、他の版へ変更する際に適用可能な版の段数を示す制約情報を格納する制約情報格納部と、該データ中継装置に適用されるべきプログラムの版情報を指示情報として入力可能な指示情報入力部と、該指示情報入力部から入力された該指示情報により指示された版の該プログラムについて、該版情報格納部に管理された該版情報と、該制約情報格納部に格納された該制約情報とを参照して、当該プログラムを該データ中継装置に適用可能であるかを確認する確認部と、該確認部により該プログラムが適用可能であると判断された場合に、該指示された版のプログラムを該データ中継装置にインストールするインストール処理部とをそなえる。
また、この管理装置は、データ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理装置であって、該データ中継装置にインストールされているプログラムの版情報を格納する版情報格納部と、該プログラムの複数の版のそれぞれに関して、他の版へ変更する際に適用可能な版の段数を示す制約情報を格納する制約情報格納部と、適用が指示された版の該プログラムについて、該版情報格納部に管理された該版情報と、該制約情報格納部に格納された該制約情報とを参照して、当該プログラムを該データ中継装置に適用可能であるかを確認する確認部と、該確認部により該プログラムが適用可能であると判断された場合に、該指示された版のプログラムを該データ中継装置にインストールするインストール処理部とをそなえる。
この管理方法は、データ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理方法であって、該データ中継装置に適用されるべきプログラムの版情報を指示情報として入力可能な指示情報入力ステップと、該指示情報入力ステップにおいて入力された該指示情報により指示される版の該プログラムについて、該データ中継装置にインストールされているプログラムの版情報と、該プログラムの複数の版のそれぞれに関して、他の版へ変更する際に適用可能な版の段数を示す制約情報とに基づいて、当該プログラムを該データ中継装置に適用可能であるかを確認する確認ステップと、該確認ステップにおいて該プログラムが適用可能であると判断された場合に、該指示された版のプログラムを該データ中継装置にインストールするインストールステップとをそなえる。
この管理プログラムは、データ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理機能をコンピュータに実行させるための管理プログラムであって、適用が指示された版の該プログラムについて、該データ中継装置にインストールされているプログラムの該版情報と、他の版へ変更する際に適用可能な版の段数を示す制約情報とを参照して、該プログラムの複数の版の中から該データ中継装置にインストールするプログラムを選択する選択ステップと、該選択ステップにおいて選択された該プログラムを該データ中継装置にインストールするインストールステップとを該コンピュータに実行させる。
開示の管理システム,管理装置,管理方法および管理プログラムによれば、以下の少なくともいずれか1つの効果ないし利点が得られる。
(1)データ中継装置のプログラムに関するメンテナンスが容易となり利便性が高い。
(2)システムの管理・運用のコストを低減することができる。
(3)システム可用性を向上させることができる。
(4)システムの信頼性を向上させることができる。
実施形態の一例としての管理システムの構成を模式的に示す図である。 実施形態の一例としての管理システムがそなえられるストレージシステムの構成を模式的に示す図である。 実施形態の一例としての管理システムのスイッチのハードウェア構成を模式的に示す図である。 実施形態の一例としての管理システムの代理スイッチの構成を模式的に示す図である。 実施形態の一例としての管理システムのファームウェア管理テーブルを示す図である。 実施形態の一例としての管理システムのファームウェア管理テーブルを示す図である。 実施形態の一例としての管理システムのベーススイッチの構成例を模式的に示す図である。 実施形態の一例としての管理システムにおける各スイッチのファームウェアの管理登録手法を説明するためのフローチャートである。 実施形態の一例としての管理システムにおけるファームウェア管理テーブルセットの更新手法を説明するためのフローチャートである。 実施形態の一例としての管理システムにおける、スイッチのファームウェアの変更手法を説明するためのフローチャートである。 実施形態の一例としての管理システムにおけるスイッチの交換時における処理を説明するためのフローチャートである。
以下、図面を参照して本管理システム,管理装置,管理方法および管理プログラムに係る実施の形態を説明する。
図1は実施形態の一例としての管理システムの構成を模式的に示す図、図2は本管理システムがそなえられるストレージシステムの構成を模式的に示す図である。
ストレージシステム100は、データ中継装置としてのスイッチ60や通信ネットワークを介して複数のサーバ71やストレージ72を接続することにより構成され、ストレージ71の記憶領域の共有や、冗長性によるデータ保護等を実現する。すなわち、このストレージシステム100は、複数のスイッチ60が接続されたデータ伝送システムとして機能する。
本管理システム1は、このストレージシステム100にそなえられ、ストレージシステム100にそなえられた各スイッチ60のファームウェア(プログラム)を管理するもの
である。
図2に示す例においては、ストレージシステム100は、複数のファブリック(SAN:管理領域)F1〜F3をそなえており、これらのファブリックF1〜F3には、それぞれサーバ71やストレージ72がスイッチ60を介して接続されている。
なお、本実施形態においては、ストレージシステム100にファブリックF1〜F3の3つのファブリックがそなえられている例について説明するが、これに限定されるものではなく、ストレージシステム100内に、2つ以下、もしくは4つ以上のファブリックをそなえて構成してもよい。
以下、ファブリックを示す符号としては、複数のファブリックのうち1つを特定する必要があるときには符号F1〜F3を用いるが、任意のファブリックを指すときには符号Fを用いる。
本管理システム1は、図1に示すように、ベーススイッチ(第2の管理装置)10,代理スイッチ(第1の管理装置)20,管理端末30およびファームサーバ40をそなえて構成されている。
ファームサーバ40は、ベーススイッチ10に通信回線502およびLAN(Local Area Network)/WAN(Wide Area Network)507を介して接続されており、管理端末30は、ベーススイッチ10に通信回線503およびLAN/WAN507を介して接続されている。
また、各ファブリックF1〜F3にはそれぞれ代理スイッチ20がそなえられ、これらの代理スイッチ20は、ベーススイッチ10に通信回線501を介して接続されている。
各ファブリックFにおいては、代理スイッチ20に、通信回線504を介してストレージ80が接続されており、又、この代理スイッチ20には、同一のファブリックF内のスイッチ60のそれぞれが、通信回線506およびLAN/WAN508を介して接続されている。
また、各スイッチ60には、サーバ71やストレージ72が通信回線509を介して接続されている。又、一部のサーバ71やストレージ72は、複数のスイッチ60と通信回線509を介して接続することにより、通信パスの冗長化を実現している。
なお、図2に示す例においては、通信回線502,503,506はイーサネット(Ethernet:登録商標)の規格に基づく回線であり、通信回線501,504,509はファイバチャネル(Fibre Channel:FC)の規格に基づく回線である。
なお、図1,図2に示す例においては、便宜上、ファブリックF1についてのみ、その構成を示しているが、他のファブリックF2,F3もファブリックF1と同様に構成されている。又、図1に示す例においては、便宜上、LAN/WAN507,508の図示を省略している。
図3は本管理システムのスイッチのハードウェア構成例を模式的に示す図である。
スイッチ60は、サーバ71やストレージ72,他のスイッチ60が通信回線509を介して接続され、これらの間のデータや各種命令の授受を中継するデータ送受信制御を行なうものである。このスイッチ60は、図3に示すように、メインプロセッサ61,データ送受信制御部62,不揮発性メモリ63,FCインタフェース64およびイーサネットインタフェース65をそなえて構成されている。
FCインタフェース64は、FC規格の機器が接続されるインタフェースであり、複数(図3に示す例では5つ)のポート641をそなえて構成されている。これらのポート641には、例えば、通信回線509を介して、サーバ71やストレージ72,他のスイッチ60が接続される。
データ送受信制御部62は、FCインタフェース64に接続された機器間のデータ送受信処理を実現するものである。又、例えば、FCインタフェース64に接続されたサーバ71とストレージ72との間のデータ送受信は、通常はデータ送受信制御部62による制御により実現され、後述するメインプロセッサ61を介さないで行なわれる。
イーサネットインタフェース65は、イーサネット規格の機器が接続されるインタフェースであり、例えば、通信回線506を介して代理スイッチ20が接続される。なお、図2に示す例においては、スイッチ60にLAN/WAN508を介して代理スイッチ20が接続されている状態を示しているが、イーサネットインタフェース65と代理スイッチ20との接続は種々変形して実施することができる。
不揮発性メモリ63は、種々のデータやプログラムを格納する記憶領域である。この不揮発性メモリ63には、スイッチ60の各種機能を実現するためのファームウェア(プログラム)が格納されている。
メインプロセッサ61は、不揮発性メモリ63に格納されたファームウェアを実行することにより、スイッチ60における各種制御や機能を実現するものである。例えば、メインプロセッサ61は、ファームウェアを実行することにより、FCインタフェース64を介して接続された各種装置のステータス監視を行なったり、この監視の結果、何らかの異常を検出した場合に、後述する管理端末30等に対してエラー通知を行なう。又、メインプロセッサ61は、ファームウェアを実行することにより、各種設定やプロトコル制御等も行なう。これらにより、メインプロセッサ61は、スイッチ60において、例えば、ポート641に接続されている装置の種類や装置の各種情報を一括管理したり、データへのアクセス制限を行なうことにより、ゾーニング(Zoning)も実現する。なお、これらの機能はスイッチの機能(常駐プロセス)として既知のものであり、その詳細な説明は省略する。
また、スイッチ60によって実行されるファームウェアは、スイッチ60の機能強化やセキュリティの向上、動作の安定性の向上等の目的で、適宜、更新される。すなわち、同じスイッチ60に適用される同一種類のファームウェアであっても、その更新(作成)日時により異なる。
本管理システム1においては、このように作成(更新)された複数のファームウェアを「版」を用いて区別する。この版の表現には、数字やアルファベット等の前後関係が明白な文字を用いることが望ましく、これらの数字等の順序によりファームウェアの新旧を表現することができる。本実施形態においては、英数字や記号を単独もしくは組み合わせて用い、数字の大きい方が後に作成された(新しい)ファームウェアであることを表す。例えば、図6に示す例においては、“v3.0”の如く、バージョン(version)を表す文字“v”と数字“3”、記号“.(ピリオド)”、数字“0”を組み合わせることによりファームウェアを表現している。そして、このv3.0のファームウェアよりもv3.1のファームウェアの方が新しい。
また、本実施形態においては、同一種類のファームウェアについて、各版の時系列的な順序を「版数」を用いて表現する。この版数の表現には、数字やアルファベット等の前後関係が明白な文字を用いることが望ましく、これらの数字等の順序によりファームウェアの新旧を表現することができる。本実施形態においては、版数を自然数を用い、数字の大きい方が後に作成された(新しい)ファームウェアであることを表す。
これらの版と版数との対応付けは、後述するファームウェア管理テーブルT2(図6参照)において管理される。
なお、ファームウェア管理テーブルT2における版と版数との対応付けは、本システム1の導入時や、ファームウェアの新たな版が作成されファームサーバ40に登録されたタイミング等に、管理者等が作成してもよい。又、かかる処理を、例えばファームウェア管理プロセス101bもしくはファーム管理プロセス201bが自動的に行なってもよい。かかる処理を自動的に行なう場合には、作成されたファームウェアに設定されたファイル名や、属性情報(バージョン名),作成日時を示すタイムスタンプ等に基づいて、複数のファームウェア間で順序付けを行なうことができる。
そして、メインプロセッサ61は、不揮発性メモリ63に格納されているファームウェアを他の版のファームウェアに変更(バージョンアップ,バージョンダウン)する自ファームウェア更新プロセスも実行する。
この自ファームウェア更新プロセスは、例えば、後述する代理スイッチからリモートログインされた状態で、この代理スイッチにおいてインストールコマンドを実行することにより実施される。
なお、自ファームウェア更新プロセスにおいて、スイッチ60においてファームウェアをインストールする具体的な手法は、既知のコマンド等により実現することができ、その詳細な説明は省略する。又、以下、スイッチ60に対してファームウェアをインストールすることをファームウェアを適用すると表現する場合がある。
また、メインプロセッサ61においては、代理スイッチ20からのリクエストに応じて、現在インストールされているファームウェアの版情報(版数)を、代理スイッチ20に対して送信する自ファームウェア表示プロセスを実行する機能をそなえている。ファームウェアの版情報は、例えば、ファームウェアのインストールを行なう際に、不揮発性メモリ63の所定の領域に格納される。メインプロセッサ61は、この自ファームウェア表示プロセスを実行する際に、この不揮発性メモリ63の所定の領域に格納された版情報を、代理スイッチ20に通知する。
なお、同一ファブリックF内のサーバ71からストレージ72にアクセスする際には、スイッチ60を経由してアクセスする。又、本実施形態においては、スイッチ60は仮想機能をもっていないものとする。
図4は本管理システムの代理スイッチの構成例を模式的に示す図である。
代理スイッチ20は、ファブリックF毎にそなえられ、同一のファブリックF内のスイッチ60の各ファームウェアを管理するものである。
代理スイッチ20は、図4に示すように、メインプロセッサ201,データ送受信制御部202,不揮発性メモリ203,FCインタフェース204,イーサネットインタフェース205,揮発性メモリ206および仮想−物理変換制御部207をそなえて構成されている。
FCインタフェース204は、FC規格の機器が接続されるインタフェースであり、複数(図4に示す例では5つ)のポート241をそなえている。これらのポート241には、例えば、図2に示す通信回線501や通信回線504を介してベーススイッチ10やストレージ80が接続される。
データ送受信制御部202は、FCインタフェース24に接続されたベーススイッチ10との間においてデータ送受信処理を実現するものである。
ストレージ(プログラム格納部)80は、ハードディスクドライブ(Hard disk drive:HDD)、SSD(Solid State Drive)等の記憶装置であって、種々のデータを格納するものである。本実施形態においては、このストレージ80には、後述の如く、代理スイッチ20がベーススイッチ10を介してファームサーバ40から取得したファームウェアが格納される。
このストレージ80には、同じファブリックF内にそなえられたスイッチ60にインストールされているものと同じ版数の全てのファームウェアが格納される。すなわち、このストレージ80は、ファーム格納用ストレージ装置として機能する。
このストレージ80の所定の記憶領域には、そのストレージ80が設置されたファブリックF内の各スイッチ60にインストールされている各ファームウェアと同じ版のファームウェアが格納される。又、このストレージ80には、新たにスイッチ60にインストールされるファームウェアも格納される。
これらの各ファームウェアの格納にストレージ80を用いることにより、複数の機種のファームウェア、かつ複数の世代のファームウェアという大量のデータを確実に格納することができる。
また、このストレージ80をRAID構成にすることにより冗長度や信頼性を向上することができる。又、代理スイッチ20に故障が生じ、交換を行なう場合においても、これらのファームウェアをストレージ80に格納しておくことにより、ストレージ80内のファームウェアをそのまま利用することができる。すなわち、ファームウェアのデータを改めてファームサーバ40から取得する必要がなく利便性が高い。
さらに、このストレージ80に格納されたファームウェアを、複数の格納領域にコピーすることによりデータの冗長化を容易に行なうことができる。又、ストレージ80の交換を行なう際においても、古いストレージ80から新しいストレージ80に容易にファームウェアの入れ替えを行なうことができ利便性が高い。
イーサネットインタフェース205は、イーサネット規格の機器が接続されるインタフェースであり、例えば、通信回線506を介してスイッチ60が接続される。
揮発性メモリ206は、後述するメインプロセッサ201の制御によりストレージ80から取得したファームを一時的に格納するものであり、ファームデータ格納領域として機能する。
不揮発性メモリ203は、種々のデータやプログラムを格納する記憶領域である。この不揮発性メモリ203には、仮想構成情報203aやファームウェア管理テーブルセットTSが格納される。ここで、仮想構成情報203aは、後述するメインプロセッサ201が仮想−物理構成管理プロセス201aを実行するに際して用いる情報である。又、ファームウェア管理テーブルセットTSは、メインプロセッサ201がファームウェア管理プロセス201bを実行するに際して用いる情報である(詳細は後述)。又、この不揮発性メモリ203には、代理スイッチ20の各種機能を実現するためのファームウェア(プログラム)も格納される。
仮想−物理変換制御部207は、仮想ボリュームへのアクセス要求をファブリックF内にそなえられた実ストレージへのアクセス要求に変換してデータ送受信制御部202(FCインタフェース204)へ転送するものである。又、仮想−物理変換制御部207は、後述するベーススイッチ10の仮想イニシエータVI−1から、代理スイッチ20の仮想ターゲットVTへの要求をファームウェア管理プロセス201bへ渡す。なお、この仮想−物理変換制御部207としての機能は、既知の手法によって実現することができ、例えば、LSI(Large Scale Integration)として構成される。
メインプロセッサ201は、不揮発性メモリ203に格納されたファームウェアを実行することにより、代理スイッチ20における各種制御や機能を実現するものである。例えば、メインプロセッサ201は、ファームウェアを実行することにより、仮想−物理構成管理プロセス201aやファームウェア管理プロセス201bの他、各種常駐プロセス201cを実行する。
仮想−物理構成管理プロセス201aは、仮想ターゲットVTや仮想イニシエータVI−2,仮想ボリュームVVOLを構築(定義)するプロセスである。
ここで、仮想ターゲットVTは、ベーススイッチ10の仮想イニシエータVI−1と通信するためのインタフェースであり、このベーススイッチ10の仮想イニシエータVI−1から送信される命令(コマンド)を受信するものである。
仮想イニシエータVI−2は、その代理スイッチ20が設置されたファブリック(以下、担当ファブリックという場合がある)F内の任意のストレージ装置(例えば、ストレージ80)にアクセスするためのインタフェースである。
仮想ボリュームVVOLは、代理スイッチ20の中に定義される仮想的なボリュームである。仮想−物理構成管理プロセス201aは、この仮想ボリュームVVOLに、担当ファブリックF内のストレージ80の任意のボリューム容量から記憶領域を割り当てる。
そして、この仮想ボリュームVVOLには、ベーススイッチ10の仮想イニシエータVI−1から代理スイッチ20の仮想ターゲットVTを介してデータの読み出し/書き込みを行なうことができる。又、仮想ボリュームVVOLには、ベーススイッチ10を介することなく代理スイッチ20からデータの読み出し/書き込みを行なうこともできる。
代理スイッチ20の仮想ボリュームVVOLは、ストレージ80内の実ボリュームとのひもづけを行なう定義体である。この代理スイッチ20は、仮想ボリュームVVOL内にどのようなファームウェアデータを格納したのかがわかっているので、仮想ボリュームに対して読み書きの命令をすれば、ひもづけられている実ボリュームへアクセスしてデータを読み書きしにいく。
ちなみに、実ボリュームへのアクセスは、仮想イニシエータVI−2を経由する。これにより、ストレージ80から見ると、仮想イニシエータVI−2という仮想的なサーバからアクセスされているように見えることになる。
そして、仮想イニシエータVI−2や仮想ターゲットVTは、ベーススイッチ10および代理スイッチ20がファームウェアのデータを読み書きするべくストレージ80にアクセスするために用いられる。
ファームウェア管理プロセス201bは、担当ファブリックF内の各スイッチ60のファームウェアを管理するプロセスである。具体的には、ファームウェア管理プロセス201bは、各スイッチ60にインストールされているファームウェアの情報(版等)を、ファームウェア管理テーブルセットTSを用いて管理する。
ファームウェア管理テーブルセットTSは、図1に示すように、ファームウェア管理テーブルT1,T2の2つのテーブルをそなえて構成されている。
図5はファームウェア管理テーブルT1の例を示す図、図6はファームウェア管理テーブルT2の例を示す図である。
ファームウェア管理テーブルT1は、ファブリックF内の各スイッチ60のファームウェアに関する情報であって、図5に示すように、装置識別番号,代理,ファーム種,同版数グループ(Group;以下、Gと示す),冗長G,現版数および適用版数を項目(パラメータ)としてそなえている。
“装置識別番号”は、ファームウェアが適用される各装置(ファーム適用対象装置;スイッチ60)の1台毎にユニークに割り当てられる識別情報である。図5に示す例においては、ファブリック番号=1で特定されるファブリックFに8台のスイッチ60がそなえられており、これらの8台のスイッチ60に対して、1〜8の整数のいずれかを装置識別番号として割り当てた例を示している。
なお、ファブリック番号は、ファブリックF毎にユニークに割り当てられる識別情報である。
“代理”は、ベースメントサーバからファーム適用指示を受ける装置を示しており、マスタとなる装置には1が、スレーブとなる装置には2が、それぞれ設定される。
“ファーム種”は、ファームウェアの種類を表す識別情報であって、図5においては、1,2,3のいずれかの整数によって特定される3種類のファームウェアが存在する例を示している。
“同版数G”は、同じ版のファームウェアが適用されるべきスイッチ60(装置グループ)を示す情報であって、同じ版のファームウェアを適用する複数のスイッチ60に、互いに同じ数値が設定される。例えば、図5に示す例においては、装置識別番号3,4のスイッチ60に同版数G=1が、又、装置識別番号7,8のスイッチ60に同版数G=2が、それぞれ設定されている。従って、装置識別番号3と装置識別番号4のスイッチ60には同じ版数のファームウェアが適用されるべきことを示している。同様に、装置識別番号7と装置識別番号8のスイッチ60には同じ版数のファームウェアが適用されるべきことを示している。
“冗長G”は、パスを冗長化しているスイッチ60(装置グループ)を示す情報であって、パスが冗長化されている複数のスイッチ60に、互いに同じ数値が設定される。すなわち、この冗長Gには、同一のパスで構成されるグループを識別する識別子が格納される。例えば、図5に示す例においては、装置識別番号5,6のスイッチ60に冗長数G=1が、又、装置識別番号7,8のスイッチ60に冗長G=2が、それぞれ設定されている。従って、装置識別番号5と装置識別番号6のスイッチ60がパスを冗長化して構成されていることを示している。同様に、装置識別番号7と装置識別番号8のスイッチ60がパスを冗長化して構成されていることを示している。
“現版数”は、そのスイッチ60にインストールされているファームウェアの版数であり、例えば、ファームウェア管理プロセス201bがスイッチ60に対して版数を問い合わせるコマンドを送信することにより取得される。
“適用版数”は、そのスイッチ60に適用を希望するファームウェアの版(適用版数)を特定するための情報(版数)である。
なお、これらの情報のうち、例えば、同版数G,冗長Gおよび適用版数は、管理端末30等を用いてオペレータ等が入力することにより任意に設定される。管理端末30から入力されたこれらの情報は、後述するベーススイッチ10に送信され、ベーススイッチ10から対応する代理スイッチ20に送信される。
ファームウェア管理テーブルT2は、ファームウェアについての情報であり、ファームウェアの複数の版のそれぞれに関して、他の版へ変更する際の制約条件を表す制約情報である。この制約情報は、ファームウェアの各版に対して、その版から一度に変更可能な版の段数を示す段数情報をそれぞれ対応付けて構成されている。
図6に示す例においては、ファーム種1,3,4の各ファームウェアには、それぞれ版数1〜4の4つの版があり、ファーム種2のファームウェアには、版数1〜5の5つの版がある。又、図6に示す例においては、ファームウェアの各版数の版情報(バージョン,リビジョン)を、「v」を付し、且つ、ダブルコーテーション(”)で囲んだ状態で示している。例えば、ファーム種=2の版数2のファームウェアは、”v4.4”と表現している。同様に、例えば、ファーム種3のファームウェアは、版数1がv5.3、版数2がv6.0、版数3がv6.1、版数4がv6.1.2である。
また、ファームウェア管理テーブルT2においては、これらの各ファーム種の各版数に対応付けてU/Dパラメータがそれぞれ設定されている。U/Dパラメータは、その版のファームウェアを上位の版にバージョンアップする場合や、下位の版にバージョンダウンする際に、何段目の版のファームウェアまで一度に適用できるかを表す情報である。すなわち、U/Dパラメータは、バージョンアップもしくはバージョンダウン時における、一度に適用可能なファームウェアの段数(制約段数)である。
図6に示す例においては、U/Dパラメータとして、バージョンアップ時の制約段数をスラッシュ(/)の左側に、又、バージョンダウン時の制約段数をスラッシュの右側にそれぞれ配置することにより表している。
例えば、制約段数“N”(Nは自然数)は、バージョンアップに関しては、その版のファームウェアに対しては、N−1段飛ばしてN段階上の版のファームウェアまで適用可能であることを示す。同様に、バージョンダウンに関しては、その版のファームウェアに対しては、N−1段飛ばしてN段下の版のファームウェアまで適用可能であることを示す。
従って、制約段数=2は、バージョンアップに関しては、その版のファームウェアに対しては、1段飛ばして2段階上の版のファームウェアまで適用可能であることを示す。同様に、バージョンダウンに関しては、その版のファームウェアに対しては、1段飛ばして2段下の版のファームウェアまで適用可能であることを示す。
また、制約段数=1は、バージョンアップについては、その版のファームウェアに対しては、1段上の版のファームウェアのみを適用可能であることを示す。同様に、バージョンダウンについては、その版のファームウェアに対しては、1段下の版のファームウェアのみを適用可能であることを示す。
なお、制約段数=0は、制限なくバージョンアップもしくはバージョンダウン可能であることを示す。又、制約段数=FFFFは、バージョンアップもしくはバージョンダウンができないことを示す。
例えば、図6に示す例において、ファーム種2のv4.2のファームウェア(版数1)は、バージョンアップに関して、1つ上の版のファームウェアのみ適用可能であり、又、バージョンダウンはできない。又、ファーム種2のv4.4のファームウェア(版数2)は、バージョンアップに関して、2つ上の版のファームウェアまで一度に適用可能であり、v5.0.1もしくはv5.0.2のファームウェアを適用することができる。又、バージョンダウンに関しては、1つ下の版のファームウェア(v4.2)を適用することができる。
また、ファーム種2のv5.0.2のファームウェア(版数4)は、バージョンアップに関しては制限なく適用可能である。又、バージョンダウンに関しては、2つ下の版のファームウェアまで一度に適用可能であり、v4.4もしくはv5.0.1のファームウェアを適用することができる。なお、備考は、ファームウェアに関する種々の任意の情報である。
なお、このファームウェア管理テーブルT2のU/Dパラメータや備考は、管理端末30等を用いてオペレータ等が入力することにより任意に設定される。管理端末30から入力されたこれらの情報は、後述するベーススイッチ10に送信され、ベーススイッチ10から対応する代理スイッチ20に送信される。
そして、これらのファームウェア管理テーブルT1,T2はファブリックF毎にそなえられる。すなわち、各代理スイッチ20にはその担当ファブリックFに関するファームウェア管理テーブルT1,T2がファームウェア管理テーブルセットTSとして保持される。
このように、代理スイッチ20においては、不揮発性メモリ203が、ファームウェア管理テーブルT1を格納することにより、複数のスイッチ60にそれぞれインストールされているファームウェアの版情報を格納する版情報格納部として機能する。又、この不揮発性メモリ203は、ファームウェア管理テーブルT2を格納することにより、ファームウェアの複数の版のそれぞれに関して、他の版へ変更する際の制約情報を格納する制約情報格納部として機能する。
また、ファームウェア管理プロセス201bは、後述するベーススイッチ10から、更新されたファームウェア管理テーブルT1,T2が送信された場合に、不揮発性メモリ203に格納されているファームウェア管理テーブルT1,T2を、受信したファームウェア管理テーブルT1,T2により更新する機能をそなえている。
さらに、ファームウェア管理プロセス201bは、スイッチ60のファームウェアを変更するに際して、ファームウェア管理テーブルT1とファームウェア管理テーブルT2とを参照して、ファームウェアを現版から適用したい版へ変更する際に、インストールすべきファームウェアの選択を行なう。
例えば、ファームウェア管理プロセス201bは、ファームウェアの変更が指示されたスイッチ60に関して、ファームウェア管理テーブルT1を参照して、現版数から適用版数までの段数を取得する。又、ファームウェア管理プロセス201bは、現版数に基づいてファームウェア管理テーブルT2を参照して、そのファームウェアについての現版数のファームウェアの制約段数を取得する。
ファームウェア管理プロセス201bは、これらの情報に基づいて、現版から適用したい版までファームウェアを変更するためには、適用したい版(適用が指示された版)のファームウェアをそのまま適用できるか否かの判断を行なう。
すなわち、ファームウェア管理プロセス201bは、適用版数のファームウェアについて、不揮発性メモリ203に格納されたファームウェア管理テーブルT1,T2を参照して、適用版数のファームウェアを対象スイッチ60に適用可能であるかを確認する確認部210(図1参照)としての機能を実現する。
さらに、ファームウェア管理プロセス201bは、確認部210により適用版数のファームウェアを対象スイッチ60に直接適用できないと判断された場合に、ファームウェア管理テーブルT1,T2を参照して、複数の版のファームウェアの中から対象スイッチ60にインストールするファームウェアを選択する選択部211(図1参照)としての機能を実現する。
なお、以下、ファームウェアの変更が指示されたスイッチ60のことを対象スイッチ60という場合があり、又、この対象スイッチ60に対して適用が指示されたファームウェア版数を適用版数という場合がある。
また、ファームウェア管理プロセス201b(選択部211)は、現版数から適用版数までファームウェアを変更するためには、適用版数のファームウェアをそのまま適用できない場合には、一旦、現版数と適用版数との間の版数のファームウェア(中間ファームウェア)をインストール対象として選択する。
なお、ファームウェア管理プロセス201bは、選択された中間ファームウェアの版からでも適用版数を適用できない場合には、更に、この選択された中間ファームウェアの版数と適用版数との間の版数の中間ファームウェアを更にインストール対象として選択する。
すなわち、ファームウェア管理プロセス201bは、必要に応じて1以上の中間ファームウェアの選択およびインストールを順次行なうことにより、現版数から適用版数まで段階的に変更する。
なお、中間ファームウェアの選択手法としては、例えば、現版数に対して適用可能な版が複数ある場合には、これらの版のうち、適用版数に最も近い版数のファームウェアを選択することが望ましい。これにより、適用する中間ファームウェアの数を減らすことができ効率的である。
すなわち、ファームウェア管理プロセス201bは、適用版数のファームウェアについて、ファームウェア管理テーブルT1の版情報(現版数,適用版数)とファームウェア管理テーブルT2とを参照して、複数の版のファームウェアの中からそのスイッチ60にインストールするファームウェアを選択する選択機能を実現する。
なお、ファームウェア管理プロセス201bは、中間ファームウェアの選択やスイッチ60に対するインストールを行なう際に、管理端末30等を介して、スイッチ60に対するインストールの実行許可をオペレータに対して行なってもよい。又、スイッチ60に対して中間ファームウェアや適用版数のファームウェアのインストールを行なった場合には、ファームウェア管理プロセス201bは、不揮発性メモリ203に格納されたファームウェア管理テーブルT1の更新を適宜行なう。
また、ファームウェア管理プロセス201bは、このファームウェア管理テーブルセットTSを、FCインタフェース204を介してベーススイッチ10に対して送信する。
さらに、ファームウェア管理プロセス201bは、ベーススイッチ10から、担当ファブリックF内のスイッチ60にインストールされるべきファームウェアを取得し、この取得したファームウェアをストレージ80に格納する制御を行なう。
また、ファームウェア管理プロセス201bは、上述の如く選択したファームウェアを対象のスイッチ60にインストールするインストール処理機能を実現する。
ファームウェア管理プロセス201bは、後述するベーススイッチ10からファームウェアの変更指示(ファームアップ指示)を受信した場合に、指示されたスイッチ60に対して、ストレージ80に格納されたファームウェアをインストールさせる制御(インストール操作)を行なう。
すなわち、ファームウェア管理プロセス201bは、この確認部210によって適用可能であると判断されたファームウェアをスイッチ60にインストールするインストール処理部212(図1参照)として機能する。
このインストール処理部212は、選択部211によって選択されたファームウェアを、対象となるスイッチ60に対してインストールものであり、例えば、スイッチ60に対して、ファームウェアをインストールするためのコマンドを出力することにより、ファームウェアのインストールを行なう。
このスイッチ60にファームウェアをインストールするための具体的手法は、既知の種々の手法を用いて実現することができる。
例えば、代理スイッチ20は、スイッチ60に対して、Telnet等の手法により接続し、スイッチ60に対して、ストレージ80に格納されたファームウェアをインストールさせるためのコマンドを発行する。例えば、インストール処理部212は、対象となるスイッチ60にTelnet等の機能を用いてログインして、ファームウェアをインストールするためのコマンド(例えば、firmware download)とともにファームウェアの格納場所(ストレージ80における格納位置)を出力することにより、インストールが行なわれる。そして、このファームウェアをインストールさせるためのコマンドとしては、既知の種々のコマンドを用いることができる。
また、ファームウェア管理プロセス201bは、イーサネットインタフェース205を介して、イーサネットのポーリングを用いて、各スイッチ60と通信できるか否かをチェックする機能、すなわち、各スイッチ60の生存状態監視機能をそなえている。又、この生存状態監視機能においては、各スイッチ60にインストールされているファームウェアの版数を取得し、ファームウェア管理テーブルT1に登録されている現版数との比較も行なう。この生存状態監視機能は、定期もしくは不定期の所定のタイミングで行なわれる。
後述するベーススイッチ10の仮想イニシエータVI−1から稼働中のスイッチ60のファームウェアの版数の取得要求が行なわれると、代理スイッチ20においては仮想ターゲットVTがこの取得要求を受信する。
仮想ターゲットVTが受けた取得要求は、代理スイッチ20内のファームウェア管理プロセス201bへ渡され、上述したファームウェア管理プロセス201bの生存状態監視機能により、代理スイッチ20に接続されている全てのスイッチ60のファームウェア情報が取得される。
ファームウェア管理プロセス201bは、各スイッチ60のファームウェア版数を取得すると、不揮発性メモリ203に格納されたファームウェア管理テーブルT1の現版数に全スイッチ20のファーム版数を書き込む。そして、ファームウェア管理プロセス201bは、このファームウェア管理テーブルT1を添付して、ベーススイッチ10の仮想イニシエータVI−1へ応答を返す。
また、例えば、代理スイッチ20においては、イーサネットインタフェース205にスイッチ60が接続されたことを検知した場合に、そのスイッチ60にインストールされているファームウェアの版数とファームウェア管理テーブルT1に登録されている現版数との比較が行なわれる。
例えば、スイッチ60の交換が行なわれ、交換後のスイッチ60が代理スイッチ20に接続された場合に、ファームウェア管理プロセス201bは、交換後のスイッチ60にインストールされているファームウェアの版数を取得し、ファームウェア管理テーブルT1に登録されている現版数と比較する。
そして、ファームウェア管理プロセス201bは、交換後のスイッチ60にインストールされているファームウェアの版数が、ファームウェア管理テーブルT1に登録されている現版数と異なる場合には、そのスイッチ60に対して、ファームウェア管理テーブルT1に登録されている現版数と同じ版数のファームウェアを、このスイッチ60に適用する。
例えば、交換されたスイッチ60に、交換前のスイッチ60よりも新しい版のファームウェアがインストールされている場合には、ファームウェア管理プロセス201bは、ファームウェア管理テーブルT1に登録されている現版数と同じ版数のファームウェアをストレージ80から取得し、その交換されたスイッチ60にインストール(バージョンダウン)する。
また、この際、ファームウェア管理プロセス201bは、ファームウェア管理テーブルT2を参照して、交換後のスイッチ60にインストールされているファームウェアの版数から、変更後のファームウェアの版数(適用版数)へのバージョンダウンが、制約条件を満たしているかを判断する。
そして、制約条件を満たしていない場合、すなわち、適用版数のファームウェアをそのまま適用できない場合には、ファームウェア管理プロセス201bは、中間ファームウェアのインストールを行なってから、変更後のファームウェアの版数へのバージョンダウンを行なう。
常駐プロセス201cは、メインプロセッサ201が定常的に実行するプロセスである。この常駐プロセス201cとしては、例えば、FCインタフェース204を介して接続されたストレージ80のステータス監視や、ベーススイッチ10との間の通信ステータスの管理等を行なったり、この監視の結果、何らかの異常を検出した場合に、後述する管理端末30等に対してエラー通知を行なう。又、メインプロセッサ201は、各種常駐プロセス201cとして、各種設定やプロトコル制御等も行なう。なお、これらの機能は一般的なスイッチの機能(常駐プロセス)として既知のものであり、その詳細な説明は省略する。
そして、代理スイッチ20のメインプロセッサ201が、ファームウェア(管理プログラム)を実行することにより、上述したファームウェア管理プロセス201b(確認部210,選択部211,インストール処理部212),仮想−物理構成管理プロセス201aおよび常駐プロセス201cとして機能する。
なお、これらのファームウェア管理プロセス201b,仮想−物理構成管理プロセス201aおよび常駐プロセス201cとしての機能を実現するための管理プログラムは、例えばフレキシブルディスク,CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
ファームウェア管理プロセス201b,仮想−物理構成管理プロセス201aおよび常駐プロセス201cとしての機能を実現する際には、内部記憶装置(本実施形態では不揮発性メモリ203)に格納されたプログラムがコンピュータのマイクロプロセッサ(本実施形態ではメインプロセッサ101)によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
なお、本実施形態において、コンピュータとは、ハードウェアとオペレーティングシステムとを含む概念であり、オペレーティングシステムの制御の下で動作するハードウェアを意味している。又、オペレーティングシステムが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、CPU等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とをそなえており、本実施形態においては、代理スイッチ20,ベーススイッチ10がコンピュータとしての機能を有しているのである。
ファームサーバ40は、本ストレージシステム100にそなえられた各スイッチ60において用いられるファームウェアを管理・保存するものであり、図示しないディスプレイや入力装置,CPU(Central Processing Unit),メモリ等をそなえた情報処理装置として構成されている。このファームサーバ40は、例えば、ストレージ41をそなえたサーバコンピュータとして構成され、このストレージ41に、本ストレージシステム1にそなえられた全てのスイッチ60についての全ての版のファームウェアを保存している。
このファームサーバ40は、通信回線502を介してベーススイッチ10に接続されており、このベーススイッチ10からの要求(ファームウェア入手要求)に応じて、要求された版のファームウェアをベーススイッチ10に送信する。
また、スイッチ60についての新たな版のファームウェアが作成された場合には、その新たな版のファームウェアが、ストレージ41に旧版のファームウェアとともに格納され、このファームサーバ40によって管理される。
なお、このファームサーバ40への新たな版のファームウェアの登録は、例えば、管理端末30から、新たなファームウェアのデータをファームサーバ40に送信されることにより行なわれる。
管理端末30は、オペレータが使用する情報処理装置であって、図示しないディスプレイや入力装置,CPU,メモリ等をそなえた情報処理装置として構成されている。
オペレータは、この管理端末30を用いて、本ストレージシステム100の各スイッチ60のファームウェアの管理を行なう。具体的には、オペレータは、キーボードやマウス等の入力装置を用いて、任意のスイッチ60に関するファームウェア管理テーブルT1に登録されるべき“同版数G”や“冗長G”,“適用版数”等の情報を入力する。又、オペレータは、新たなファームウェアが作成された場合には、その新たなファームウェアに関してファームウェア管理テーブルT2に登録されるべき情報(U/Dパラメータや備考)を入力する。
これらの管理端末30の入力装置から入力された情報は、通信回線503やLAN/WAN507を介してベーススイッチ10に送信される。
図7は本管理システムのベーススイッチの構成例を模式的に示す図である。
ベーススイッチ10は、本ストレージシステム100における各代理スイッチ20,ファームサーバ40および管理端末30とそれぞれ通信可能に接続され、本ストレージシステム100中において1つそなえられている。
このベーススイッチ10は、図7に示すように、メインプロセッサ101,データ送受信制御部102,不揮発性メモリ103,FCインタフェース104,イーサネットインタフェース105および仮想−物理変換制御部107をそなえて構成されている。
FCインタフェース104は、代理スイッチ20のFCインタフェース204と同様に、FC規格の機器が接続されるインタフェースであり、複数(図7に示す例では5つ)のポート141をそなえて構成されている。これらのポート141には、例えば、通信回線501を介して代理スイッチ20が接続される。
データ送受信制御部102は、FCインタフェース104に接続された代理スイッチ20との間においてデータ送受信処理を実現するものである。
イーサネットインタフェース105は、イーサネット規格の機器が接続されるインタフェースである。ベーススイッチ10は、このイーサネットインタフェース105を介して通信回線502に接続され、この通信回線502,503やLAN/WAN507を介して、管理端末30やファームサーバ40に接続されている。なお、図2に示す例においては、ベーススイッチ10にはLAN/WAN507を介して管理端末30やファームサーバ40が接続されている状態を示しているが、イーサネットインタフェース105と、これらの機器との接続は種々変形して実施することができる。
そして、ベーススイッチ10は、これらの通信回線502,503やLAN/WAN507を介して、管理端末30からファームウェア管理テーブルT1,T2に登録される種々の情報を受信したり、ファームサーバ40からファームウェアを受信することができる。又、ベーススイッチ10で制御される機能は、管理端末30から操作される。
不揮発性メモリ103は、種々のデータやプログラムを格納する記憶領域である。この不揮発性メモリ103には、仮想構成情報103aやファームウェア管理テーブルセットTSが格納される。ここで、仮想構成情報103aは、後述するメインプロセッサ101が仮想−物理構成管理プロセス101aを実行するに際して用いるものである。又、ファームウェア管理テーブルセットTSは、メインプロセッサ101がファームウェア管理プロセス101bを実行するに際して用いるものである。
ベーススイッチ10には、接続された各代理スイッチ20からファームウェア管理テーブルセットTSが送信され、ベーススイッチ10においては、これらの受信したファームウェア管理テーブルセットTSは、この不揮発性メモリ103に格納される。そして、ベーススイッチ10においては、これらのファームウェア管理テーブルセットTSが、ファブリックF毎に保存されている。
すなわち、ベーススイッチ10上には、全てのファブリックF上のスイッチ60のファームウェア情報を管理した管理テーブルがそなえられている。
また、不揮発性メモリ103には、ベーススイッチ10の各種機能を実現するためのファームウェア(プログラム)も格納される。
仮想−物理変換制御部107は、後述するファームウェア管理プロセス101bからの要求をデータ送受信制御部102(FCインタフェース104)へ転送するものである。
なお、この仮想−物理変換制御部107としての機能は、既知の手法によって実現することができ、例えば、LSI(Large Scale Integration)として構成される。
メインプロセッサ101は、不揮発性メモリ103に格納されたファームウェアを実行することにより、ベーススイッチ10における各種制御や機能を実現するものである。例えば、メインプロセッサ101は、ファームウェアを実行することにより、仮想−物理構成管理プロセス101aやファームウェア管理プロセス101bの他、各種常駐プロセス101cを実行する。
仮想−物理構成管理プロセス101aは、仮想イニシエータVI−1を定義・構築することにより、代理スイッチ20との通信をこの仮想イニシエータVI−1を用いて実現するものである。
そして、仮想−物理構成管理プロセス101aは、各ファブリックF内の代理スイッチ20に仮想イニシエータVI−1を定義する。
仮想−物理構成管理プロセス101aは、同ファブリックF内の任意のストレージ(本実施形態ではストレージ80)内の任意のボリュームを確保し、代理スイッチ20上にファームウェア格納用の仮想ボリュームVVOLとして割り当てる。又、仮想−物理構成管理プロセス101aは、ベーススイッチ10の仮想イニシエータVI−1と通信可能な仮想ターゲットVTを定義する。仮想ターゲットVTと前述の仮想ボリュームVVOLとを結合することにより、ベーススイッチ10から仮想ボリュームVVOLへのアクセスを可能とする。
ファームウェア管理プロセス101bは、本ストレージシステム100の各ファブリックF内のスイッチ60のファームウェアを管理するプロセスである。このファームウェア管理プロセス101bは、上述した仮想−物理構成管理プロセス101aに対して仮想イニシエータVI−1の構築指示も行なう(仮想イニシエータ構築指示)。
また、ファームウェア管理プロセス101bは、本ストレージシステム100において稼動中のスイッチ60のファームウェアの版数を取得する。
具体的には、ベーススイッチ10の仮想イニシエータVI−1に、代理スイッチ20上の仮想ターゲットVTに対して、各ファブリックFに接続されている全スイッチ60のファームウェア版数を要求させる。
また、ファームウェア管理プロセス101bは、各代理スイッチ20から取得したファームウェア管理テーブルT1の情報から全てのスイッチ60の版数を確認し、同じ版数のファームウェアのデータを、ファームサーバ40からダウンロードする。これらのダウンロードされたファームウェアのデータは、ベーススイッチ10内の仮想イニシエータVI−1を経由して、代理スイッチ20内の仮想ボリュームVVOLへ転送される。
ファームウェア管理プロセス101bは、各スイッチ60にインストールされているファームウェアの情報(版等)を、ファームウェア管理テーブルセットTSを用いて管理する。
このファームウェア管理プロセス101bにおいては、管理端末30からファームウェア管理テーブルT1,T2に登録されている情報を更新するための入力が行なわれると、その入力された情報に従って、不揮発性メモリ103に格納されているファームウェア管理テーブルセットTSを更新する(管理テーブル更新)。
ファームウェア管理プロセス101bは、管理端末30からの入力によってファームウェア管理テーブルT1が更新された場合に、更新後のファームウェア管理テーブルT1において更新前のファームウェア管理テーブルT1には無い新たな版数が含まれていないかを確認する。更新されたファームウェア管理テーブルT1において、新たなファームウェアの版数を検出した場合には、ファームウェア管理プロセス101bは、ファームサーバ40から、その新たな版のファームをダウンロードする(ファームデータ入手)。
そして、ファームウェア管理プロセス101bは、更新されたファームウェア管理テーブルT1にかかるファブリックFの代理サーバ20に対して、ダウンロードしたファームウェアを転送し(ファームデータ転送)、そのストレージ80に格納させる。
また、この際、ファームウェア管理プロセス101bは、その対応するファブリックFの代理スイッチ20に対して、更新されたファームウェア管理テーブルT1,T2の送信も行なう。そして、ファームウェア管理プロセス101bは、この代理スイッチ20に、送信したファームウェア管理テーブルT1,T2で、不揮発性メモリ203に格納されているファームウェア管理テーブルT1,T2を更新させる(ファーム適用指示)。
具体的には、ファームウェア管理プロセス101bは、ベーススイッチ10の仮想イニシエータVI−1から、各ファブリックFの代理スイッチ20内の仮想ターゲットVTに対して、新しいファームウェアの適用を指示する。
また、ファームウェア管理プロセス101bは、代理スイッチ20から送信されるファームウェア管理テーブルセットTSを受信し(管理テーブル受信)、この受信したファームウェア管理テーブルセットTSにより、不揮発性メモリ103に格納されているファームウェア管理テーブルセットTSを更新する機能をそなえている。
そして、ベーススイッチ10のメインプロセッサ101が、ファームウェア(プログラム)を実行することにより、上述したファームウェア管理プロセス101b,仮想−物理構成管理プロセス101aおよび常駐プロセス101cとして機能する。
なお、これらのファームウェア管理プロセス101b,仮想−物理構成管理プロセス101aおよび常駐プロセス101cとしての機能を実現するためのプログラムも、例えばフレキシブルディスク,CD,DVD,ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。
ファームウェア管理プロセス101b,仮想−物理構成管理プロセス101aおよび常駐プロセス101cとしての機能を実現する際には、内部記憶装置(本実施形態では不揮発性メモリ103)に格納されたプログラムがコンピュータのマイクロプロセッサ(本実施形態ではメインプロセッサ101)によって実行される。このとき、記録媒体に記録されたプログラムをコンピュータが読み取って実行するようにしてもよい。
上述の如く構成された本管理システム1における各スイッチ60のファームウェアの管理登録手法の一例を、図8に示すフローチャート(ステップA10〜A90)に従って説明する。
オペレータは、本ストレージシステム100において稼働中のスイッチ60のファームウェアの版数を取得させるべく、管理端末30から、ベーススイッチ10に対して、管理対象の全スイッチ60のファームウェア版数情報の取得を指示する。これにより、ベーススイッチ10においては、ファームウェア管理プロセス101bが、仮想−物理構成管理プロセス101aに対して、仮想イニシエータ構築指示を行なう。
仮想−物理構成管理プロセス101aは、この仮想イニシエータ構築指示に従い、ベーススイッチ10上に仮想イニシエータVI−1を定義する(ステップA10)。
仮想−物理構成管理プロセス101aは、各ファブリックF内の代理スイッチ20に仮想イニシエータVI−2を定義する(ステップA20)。又、仮想−物理構成管理プロセス101aは、同じファブリックF内のストレージ80内の任意のボリュームを確保し、代理スイッチ20上にファームウェア格納用の仮想ボリュームVVOLとして割り当てる(ステップA30)。
さらに、仮想−物理構成管理プロセス101aは、ベーススイッチ10の仮想イニシエータVI−1と通信可能な仮想ターゲットVTを定義する(ステップA40)。仮想ターゲットVTと前述の仮想ボリュームVVOLとを結合することにより、ベーススイッチ10から仮想ボリュームVVOLへのアクセスが可能となる。
ベーススイッチ10の仮想イニシエータVI−1は、代理スイッチ20上の仮想ターゲットVTに対して、各ファブリックFにおいて接続されている全スイッチ60のファームウェアの版数の通知を要求する(ステップA50)。
各代理スイッチ20は、仮想ターゲットVTが受けたファームウェア版数の通知要求を代理スイッチ20内のファームウェア管理プロセス201bへ渡し、その代理スイッチ20に接続されている全てのスイッチ60のファームウェア情報を取得する。ファームウェア管理プロセス201bは、ファームウェア版数を取得すると、ファームウェア管理テーブルセットTSに全スイッチ60のファーム版数を書き込む(ステップA60)。なお、この時点では、ファームウェア管理テーブルセットTS内の全てのパラメータは埋まらない。ファームウェア管理プロセス201bは、このファームウェア管理テーブルセットTSを添付して、ベーススイッチ10の仮想イニシエータVI−1へ応答を返す。
ベーススイッチ10は、各代理スイッチ20から取得したファームウェア管理テーブルセットTSの情報から、全てのスイッチ60の版数を確認し(ステップA70)、これらの全ての同じ版数のファームウェアのデータをファームサーバ40からダウンロードする(ステップA80)。
これらのファームウェアのデータは、ベーススイッチ10内の仮想イニシエータVI−1を経由して、代理スイッチ20内の仮想ボリュームVVOLにそれぞれ転送される(ステップA90)。これにより、各代理スイッチの仮想ボリュームVVOL(ストレージ80)には、同じファブリックF内のスイッチ60にインストールされている全ての版のファームウェアのデータが格納される。
次に、本管理システム1におけるファームウェア管理テーブルセットTSの更新手法の一例を、図9に示すフローチャート(ステップB10〜B40)に従って説明する。
オペレータは、オペレータ端末30を用いて、各ファブリックFのシステム構成や運用条件に合わせて、ファームウェア管理テーブルT1,T2の情報を更新する(ステップB10)。
具体的には、オペレータは、ファームウェア管理テーブルT1の代理や、ファーム種別,同版数G,冗長Gの値(パラメータ)を要件に応じて変更する。このオペレータによるファームウェア管理テーブルT1の変更は、先ず、ベーススイッチ10の不揮発性メモリ103に格納されたファームウェア管理テーブルセットTS(ファームウェア管理テーブルT1)に反映される。
ベーススイッチ10においてファームウェア管理テーブルTSが更新された後(ステップB20)、ベーススイッチ10から、更新されたファームウェア管理テーブルT1,T2が各ファブリックF毎にそなえられた代理スイッチ20に送信される(ステップB30)。その後、各代理スイッチ20において、送信されたファームウェア管理テーブルセットTSにより、不揮発性メモリ203に格納されたファームウェア管理テーブルセットTSが更新される(ステップB40)。
次に、本管理システム1における、スイッチ60のファームウェアの変更手法の一例を、図10に示すフローチャート(ステップC10〜C170)に従って説明する。
オペレータは、管理端末30から入力することにより、ベーススイッチ10上のファームウェア管理テーブルT1,T2の情報を更新する(ステップC10)。すなわち、オペレータは、先ず、ファームウェア管理テーブルT2に、新たに適用したいファームウェアについての制約情報(U/Dパラメータ)を追加する。又、オペレータは、ファームウェア管理テーブルT1における、ファームウェアの変更を希望するスイッチ60に対して、その“適用版数”パラメータに、適用したいファームウェア版数を指定・入力する。
また、ベーススイッチ10において、ファームウェア管理プロセス101bは、ファームウェア管理テーブルT1,T2を監視し、これらのファームウェア管理テーブルT1,T2において新たなファームウェア版数を検出した場合は(ステップC20)、ファームサーバ40から、その新たな版数のファームウェアのマスタデータをダウンロードする(ステップC30)。又、ファームウェア管理プロセス101bは、ダウンロードしたファームウェアのデータを各ファブリックF内の仮想ボリュームVVOLに転送する(ステップC40)。
さらに、ベーススイッチ10の仮想イニシエータVI−1から、対象スイッチ60が含まれる各ファブリックFの代理スイッチ20内の仮想ターゲットVTに対して、新しいファームウェアの適用の指示が送信される(ステップC50)。又、このとき、ステップC10において更新されたファームウェア管理テーブルT1,T2も送信される。
ファーム適用指示を受けた代理スイッチ20は、送信されたファームウェア管理テーブルT1,T2を参照しインストールの条件を確認する(ステップC60)。すなわち、ファームウェア管理プロセス201bは、ファームウェア管理テーブルT1から、対象スイッチ60に現在インストールされているファームウェアの版数(現版数)を取得する。又、ファームウェア管理プロセス201bは、この取得した現版数に基づいてファームウェア管理テーブルT2を参照し、そのU/Dパラメータを取得する。
そして、ファームウェア管理プロセス201bは、これらの現版数,U/Dパラメータおよび適用版数に基づき、対象スイッチ60に対して、適用版数のファームウェアを対象スイッチ60に対して適用可能であるか否かを判断する(ステップC70;確認ステップ)。
ここで、対象スイッチ60に対して適用版数のファームウェアを適用可能である場合には(ステップC70のYESルート参照)、ファームウェア管理プロセス201bは、次に、仮想ボリュームVVOLの中に、該当するファームウェアデータが格納されているかどうかを確認する(ステップC80)。
仮想ボリュームVVOL中に適用版数のファームウェアデータが格納されている場合には(ステップC80のYESルート参照)、ファームウェア管理プロセス201bは、そのファームウェアデータを取得して、対象スイッチ60に対してインストールを行なう。
また、この際、ファームウェア管理プロセス201bは、ファームウェア管理テーブルT1を参照して、スイッチ60がペア構成であるか否かの確認も行なう(ステップC90)。対象スイッチ60がペア構成でない場合、すなわち、ファームウェア管理テーブルT1の冗長Gパラメータに、冗長化されている装置グループが登録されていない場合には(ステップC90のNOルート参照)、対象スイッチ60に対してのみ適用版数のファームウェアのインストールを行ない(ステップC100;インストールステップ)、処理を終了する。
一方、対象スイッチ60がペア構成である場合には(ステップC90のYESルート参照)、ペア構成をなす全てのスイッチ60に対して、一台ずつ適用版数のファームウェアのインストールを行なう(ステップC170;インストールステップ)。又、ペア構成をなす複数のスイッチ60に対してファームウェアのインストールを行なう際には、一台ずつファームウェアのインストールを行なうとともに、インストール後のスイッチ60がオンライン状態に復帰したのを確認してから、次のスイッチ60のファーム適用を開始する。これにより、システムを停止させることなく、全てのスイッチ60へのインストールを完了させることが可能となる。ファームウェア管理プロセス201bは、ペア構成をなす全てのスイッチ60へのファームウェアのインストールが完了すると、処理を終了する。
また、仮想ボリュームVVOL中に適用版数のファームウェアデータが格納されていない場合には(ステップC80のNOルート参照)、ファームウェア管理プロセス201bは、ファームウェア管理プロセス201bは、ベーススイッチ10の仮想イニシエータIV−1に、その旨を通知(応答)する(ステップC130)。又、この際、ファームウェア管理プロセス201bは、希望するファームウェアの適用版数も併せて通知する。
ベーススイッチ10においては、この代理スイッチ60の仮想イニシエータVI−2からの応答に基づき、ファームウェア管理プロセス101bが、ファームサーバ40から適用版数のファームウェアのデータをダウンロードする。又、ベーススイッチ10は、このダウンロードした適用版数のファームウェアデータを、その代理スイッチ60に送信する(ステップC140)。ベーススイッチ10からファームウェアデータを受信した代理スイッチ20は、受信したファームウェアデータを仮想ボリュームVVOLに格納して、ステップC90に移行する。
また、対象スイッチ60に対して適用版数のファームウェアを適用可能できない(互換性がない)場合には(ステップC70のNOルート参照)、ファームウェア管理プロセス201bは、ファームウェアを現版数から適用版数まで変更するために用いることができる中間ファームウェアが仮想ボリュームVVOLに格納されているか否かを確認する(ステップC110;選択ステップ)。
仮想ボリュームVVOLにこの中間ファームウェアが格納されている場合には(ステップC110のYESルート参照)、ファームウェア管理プロセス201bは、その中間ファームウェアのデータを取得して、対象スイッチ60に対してインストールを行なう(ステップC120;インストールステップ)。
また、仮想ボリュームVVOLにこの中間ファームウェアが格納されていない場合には(ステップC110のNOルート参照)、ファームウェア管理プロセス201bは、ファームウェア管理プロセス201bは、ベーススイッチ10の仮想イニシエータIV−1に、その旨を通知する(ステップC150)。又、この際、ファームウェア管理プロセス201bは、希望する中間ファームウェアを特定するための情報も併せて通知する。
ベーススイッチ10においては、この代理スイッチ60の仮想イニシエータからの応答に基づき、ファームウェア管理プロセス101bが、ファームサーバ40からその指定された中間ファームウェアのデータをダウンロードする。又、ベーススイッチ10は、このダウンロードした中間ファームウェアデータを、その代理スイッチ60に送信して(ステップC160)、ステップC120に移行する。すなわち、必要に応じて、中間ファームウェアを経由して複数段階のファームウェアインストールを自動で行なうのである。
次に、本管理システム1におけるスイッチ60の交換時における処理の一例を、図11に示すフローチャート(ステップD10〜D60)に従って説明する。
例えば、スイッチ60が故障して保守作業員による交換が行なわれた場合には、新たなスイッチ60が代理スイッチ20に接続された時点で、代理スイッチ20が交換後のスイッチ60のファーム版数を確認する(ステップD10)。具体的には、代理スイッチ20のファームウェア管理プロセス201bは、交換後のスイッチ60のファームウェア版数が、交換前のスイッチ60のファームウェア版数と同じであるか否かを確認する(ステップD20)。
この確認作業は、例えば、交換後のスイッチ60から取得したファームウェア版数と、ファームウェア管理テーブルT1に登録されている、交換前のスイッチ60についてのファームウェア版数との比較により行なう。
比較の結果、交換後のスイッチ60のファームウェア版数が交換前のスイッチ60のファームウェア版数と異なる場合には(ステップD20のNOルート参照)、その交換後のスイッチ60(対象スイッチ)に対して、稼動実績のある交換前のスイッチ60のファームウェアの版数の適用を行なう。
そこで、ファームウェア管理プロセス201bは、ファームウェア管理テーブルT2を参照して、交換後のスイッチ60のファームウェア版数から交換前のスイッチ60のファームウェア版数(適用版数)へ変更する場合のU/Dパラメータを取得する。すなわち、ファームウェア管理プロセス201bは、インストール条件の確認を行なう(ステップD30)。
そして、ファームウェア管理プロセス201bは、これらの現版数,U/Dパラメータおよび適用版数に基づき、適用版数のファームウェアを対象スイッチ60に対して適用可能であるか否かを判断する(ステップD40)。
ここで、対象スイッチ60に対して適用版数のファームウェアを適用可能である場合には(ステップD40のYESルート参照)、ファームウェア管理プロセス201bは、仮想ボリュームVVOLに格納されているファームウェアデータを用いて、対象スイッチ60に適用版数のファームウェアをインストールして(ステップD50)、処理を終了する。
また、対象スイッチ60に対して適用版数のファームウェアを適用可能できない場合には(ステップD40のNOルート参照)、ファームウェア管理プロセス201bは、対象スイッチ60に対して中間ファームウェアのインストールを行なってから(ステップD60)、ステップD50に移行する。
なお、この中間ファームウェアのインストールを行なうに際しては、前述した図10のステップC110,C120,C150,C160と同様の処理を行なうことが望ましい。
このように、実施形態の一例としてのストレージシステム100によれば、オペレータが、管理端末30からファームウェアの適用指示を入力し、ファームウェア管理テーブルT1を更新することにより、対応するファブリックFの代理スイッチ20が対象スイッチ60のファームの変更を行なう。これにより、スイッチ60のファームウェアに関するメンテナンスが容易となり利便性が高く、又、管理・運用のコストを低減することができる。又、システム可用性を向上させることができる。
また、この際、ファームウェア管理プロセス201bが、対象スイッチ60に対して適用版数のファームウェアを適用可能であるか否かを判断し、対象スイッチ60に対して適用版数のファームウェアを適用可能できない場合には、対象スイッチ60に対して中間ファームウェアのインストールを行なう。これにより、対象スイッチ60に適用版数のファームウェアを適用することが可能となる。又、ファームウェア管理プロセス201bが、適用する中間ファームウェアの選択およびインストールを行なうので、オペレータの作業を軽減でき利便性が高い。
さらに、ベーススイッチ10において、各ファブリックFについてのファームウェア管理テーブルT1,T2を一元的に管理することにより、管理端末30からファームウェア管理テーブルT1,T2を容易に変更・修正することができる。
また、ベーススイッチ10において管理されるファームウェア管理テーブルT1,T2において変更が行なわれると、ベーススイッチ10がかかる変更されたファームウェア管理テーブルT1,T2を、対応するファブリックFの代理スイッチ20に送信する。又、代理スイッチ20において、ファームウェア管理テーブルT1の変更が生じた際には、代理スイッチ20が、変更されたファームウェア管理テーブルT1をベーススイッチ10に送信する。これらにより、ベーススイッチ10と代理スイッチ20とにおいてファームウェア管理テーブルT1,T2を常に最新の状態に維持することができ、システムの信頼性を向上させることができる。
さらに、故障等によりスイッチ60が交換された場合に、交換後のスイッチ60に交換前とは異なる版数のファームウェアがインストールされていた場合でも、自動的に交換前の版数のファームウェアがインストールされる。これにより、スイッチ60に稼動実績のあるファームウェアがインストールされることになるので、システムの信頼性を向上させることができる。
また、この際、交換後のスイッチ60のファームウェアを交換前と同じ版数に戻すために、交換前の版のファームウェアを直接適用することができない場合には、自動的に必要な中間ファームウェアのインストールが行われるので、利便性が高い。
さらに、ファブリックF内のスイッチ60で使用されているファームウェア(中間ファームウェアを含む)が、その代理スイッチ20の仮想ボリュームVVOLに格納されている。これにより、同じファームウェアのインストールを行なう際に、そのファームウェアをファームサーバ40から取得する必要がなく、迅速にインストールを行なうことができる他、ネットワークのトラフィックを軽減することができる。
そして、開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。
例えば、ベーススイッチ10と代理スイッチ20が同じ構成をそなえてもよい。すなわち、ベーススイッチ10もしくは代理スイッチ20のハードウェアに(不揮発性メモリ103,203)に、ベーススイッチ10として機能させるファームウェアと、代理スイッチ20として機能させるファームウェアとの両方を格納しておく。そして、物理的もしくはソフトウェア的に設けられたスイッチを用いて、これらのいずれかのファームウェアを選択的に実行することにより、当該スイッチをベーススイッチ10もしくは代理スイッチのいずれかとして機能させる。このように、ベーススイッチ10および代理スイッチ構成することにより、システムの運用をフレキシブルに行なうことができ利便性が高い。
同様に、各スイッチ60に対して、スイッチ60として機能させるためのファームウェアの他、ベーススイッチ10として機能させるファームウェアや代理スイッチ20として機能させるファームウェアを格納してもよい。すなわち、物理的もしくはソフトウェア的に設けられたスイッチを用いて、これらのいずれかのファームウェアを選択的に実行することにより、スイッチ60,ベーススイッチ10および代理スイッチのいずれかとして機能させる。このように、スイッチ60,ベーススイッチ10および代理スイッチを共通のハードウェアとして構成することにより、システムの運用をよりフレキシブルに行なうことができ利便性が高い。
また、上述した実施形態においては、U/Dパラメータとして、スラッシュの左右にバージョンアップ時およびバージョンダウン時の制約段数を配置することにより表しているが、これに限定されるものではない。例えば、バージョンアップ時の制約段数とバージョンダウン時の制約段数をそれぞれ独立した項目として各ファームウェアの版数に関連付けて管理してもよく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。
さらに、上述した実施形態においては、本管理システム1により、各スイッチ60のファームウェアを管理しているが、これに限定されるものではない。例えば、代理スイッチ60のファームウェアの管理行なってもよい。又、スイッチ以外の装置のファームウェアの管理を行なってもよく、又、ファームウェア以外のプログラムの管理を行なってもよい。
また、上述した実施形態においては、 代理スイッチ20と各スイッチ60とをイーサネットの規格に基づく通信回線506により接続しており、代理スイッチ20がストレージ72のボリュームを用いて仮想ボリュームを構成することは想定していない。しかしながら、これに限定されるものではなく、この通信回線506をFCに規格に基づく回線により接続してもよい。そして、代理スイッチ20からストレージ72にアクセスして、このストレージ72のボリュームを用いて仮想ボリュームを構成してもよい。これにより、代理スイッチ20とスイッチ60とが同一ファブリックになるので、代理スイッチ20が、ストレージ72のボリュームにアクセスすることが可能となり、このストレージ72をファームウェアの格納に用いることもできる。
なお、上述した実施形態においては、スイッチ60が仮想機能を有していないが、これに限定されるものではなく、例えば、スイッチ60に代えて、このスイッチ60と同様の機能を有する代理スイッチ20を用いることにより、このスイッチ60の代替としての代理スイッチ20により仮想機能を実現することができる。
上述した開示により本実施形態を当業者によって実施・製造することが可能である。
以上の実施形態に関し、更に以下の付記を開示する。
(付記1)
データ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理システムであって、
該プログラムの複数の版のそれぞれを格納するプログラム格納部と、
該データ中継装置にそれぞれインストールされているプログラムの版情報を格納する版情報格納部と、
該プログラムの複数の版のそれぞれに関して、他の版へ変更する際の制約情報を格納する制約情報格納部と、
該データ中継装置に適用されるべきプログラムの版情報を指示情報として入力可能な指示情報入力部と、
該指示情報入力部から入力された該指示情報により指示された版の該プログラムについて、該版情報格納部に管理された該版情報と、該制約情報格納部に格納された該制約情報とを参照して、当該プログラムを該データ中継装置に適用可能であるかを確認する確認部と、
該確認部により該プログラムが適用可能であると判断された場合に、該指示された版のプログラムを該データ中継装置にインストールするインストール処理部とをそなえることを特徴とする、管理システム。
(付記2)
該確認部により該プログラムが適用できないと判断された場合に、該制約情報に基づき、当該データ中継装置に対して適用可能な版のプログラムを選択する選択部をそなえ、
該インストール処理部が、該選択部によって選択されたプログラムのインストールを行なった後に、該指示された版のプログラムのインストールを行なうことを特徴とする、付記1記載の管理システム。
(付記3)
該プログラムの該複数の版の順序を示す順序情報を、各版のプログラムのそれぞれに設定し、
該制約情報が、該プログラムの各版に対して、当該版から該順序に沿って一度に変更可能な版の段数を示す段数情報をそれぞれ対応付けて構成されたことを特徴とする、付記1又は付記2記載の管理システム。
(付記4)
複数の該データ中継装置が含まれる1以上の所定の管理領域毎にそなえられ、当該管理領域内の複数の該データ中継装置と通信可能に接続される第1の管理装置と、
該指示情報入力部および該該1以上の第1の管理装置と通信可能に接続される第2の管理装置とをそなえ、
該第1の管理装置が、該版情報格納部,該制約情報格納部,該確認部および該インストール処理部をそなえ、
該第2の管理装置が、該指示情報入力部から入力された該指示情報を該第2の管理装置に通知することを特徴とする、付記1〜付記3のいずれか1項に記載の管理システム。
(付記5)
複数のデータ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理装置であって、
該複数のデータ中継装置にそれぞれインストールされているプログラムの版情報を格納する版情報格納部と、
該プログラムの複数の版のそれぞれに関して、他の版へ変更する際の制約情報を格納する制約情報格納部と、
適用が指示された版の該プログラムについて、該版情報格納部に管理された該版情報と、該制約情報格納部に格納された該制約情報とを参照して、当該プログラムを該データ中継装置に適用可能であるかを確認する確認部と、
該確認部により該プログラムが適用可能であると判断された場合に、該指示された版のプログラムを該データ中継装置にインストールするインストール処理部とをそなえることを特徴とする、管理装置。
(付記6)
該確認部により該プログラムが適用できないと判断された場合に、該制約情報に基づき、当該データ中継装置に対して適用可能な版のプログラムを選択する選択部をそなえ、
該インストール処理部が、該選択部によって選択されたプログラムのインストールを行なった後に、該指示された版のプログラムのインストールを行なうことを特徴とする、付記5記載の管理装置。
(付記7)
該プログラムの該複数の版の順序を示す順序情報を、各版のプログラムのそれぞれに設定し、
該制約情報が、該プログラムの各版に対して、当該版から該順序に沿って一度に変更可能な版の段数を示す段数情報をそれぞれ対応付けて構成されたことを特徴とする、付記5又は付記6記載の管理装置。
(付記8)
複数のデータ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理方法であって、
該データ中継装置に適用されるべきプログラムの版情報を指示情報として入力可能な指示情報入力ステップと、
該指示情報入力ステップにおいて入力された該指示情報により指示される版の該プログラムについて、該複数のデータ中継装置にそれぞれインストールされているプログラムの版情報と、該プログラムの複数の版のそれぞれに関して、他の版へ変更する際の制約情報とに基づいて、当該プログラムを該データ中継装置に適用可能であるかを確認する確認ステップと、
該確認ステップにおいて該プログラムが適用可能であると判断された場合に、該指示された版のプログラムを該データ中継装置にインストールするインストールステップとをそなえることを特徴とする、管理方法。
(付記9)
該確認ステップにおいてにより該プログラムが適用できないと判断された場合に、該制約情報に基づき、当該データ中継装置に対して適用可能な版のプログラムを選択する選択ステップをそなえ、
該インストール処理ステップにおいて、該選択ステップにおいて選択されたプログラムのインストールを行なった後に、該指示された版のプログラムのインストールを行なうことを特徴とする、付記8記載の管理方法。
(付記10)
該プログラムの該複数の版の順序を示す順序情報を、各版のプログラムのそれぞれに設定し、
該制約情報が、該プログラムの各版に対して、当該版から該順序に沿って一度に変更可能な版の段数を示す段数情報をそれぞれ対応付けて構成されたことを特徴とする、付記8又は付記9記載の管理方法。
(付記11)
複数のデータ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理機能をコンピュータに実行させるための管理プログラムであって、
適用が指示された版の該プログラムについて、該版情報格納部に管理された該版情報と、該制約情報格納部に格納された該制約情報とを参照して、該複数の版のプログラムの中から該データ中継装置にインストールするプログラムを選択する選択ステップと、
該選択ステップにおいて選択された該プログラムを該データ中継装置にインストールするインストールステップとを該コンピュータに実行させることを特徴とする、管理プログラム。
(付記12)
該管理プログラムが、
該確認ステップにおいてにより該プログラムが適用できないと判断された場合に、該制約情報に基づき、当該データ中継装置に対して適用可能な版のプログラムを選択する選択ステップを該コンピュータに実行させるとともに、
該インストール処理ステップにおいて、該選択ステップにおいて選択されたプログラムのインストールを行なった後に、該指示された版のプログラムのインストールを行なうことを特徴とする、付記11記載の管理プログラム。
(付記13)
該プログラムの該複数の版の順序を示す順序情報を、各版のプログラムのそれぞれに設定し、
該制約情報が、該プログラムの各版に対して、当該版から該順序に沿って一度に変更可能な版の段数を示す段数情報をそれぞれ対応付けて構成されたことを特徴とする、付記11又は付記12記載の管理プログラム。
(付記14)
複数のデータ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理機能をコンピュータに実行させるための管理プログラムを記録したコンピュータ読取可能な記録媒体であって、
該管理プログラムが、
適用が指示された版の該プログラムについて、該版情報格納部に管理された該版情報と、該制約情報格納部に格納された該制約情報とを参照して、該複数の版のプログラムの中から該データ中継装置にインストールするプログラムを選択する選択ステップと、
該選択ステップにおいて選択された該プログラムを該データ中継装置にインストールするインストールステップとを該コンピュータに実行させることを特徴とする、管理プログラムを記録したコンピュータ読取可能な記録媒体。
(付記15)
該管理プログラムが、
該確認ステップにおいてにより該プログラムが適用できないと判断された場合に、該制約情報に基づき、当該データ中継装置に対して適用可能な版のプログラムを選択する選択ステップを該コンピュータに実行させるとともに、
該インストール処理ステップにおいて、該選択ステップにおいて選択されたプログラムのインストールを行なった後に、該指示された版のプログラムのインストールを行なうことを特徴とする、付記14記載の管理プログラムを記録したコンピュータ読取可能な記録媒体。
(付記16)
該プログラムの該複数の版の順序を示す順序情報を、各版のプログラムのそれぞれに設定し、
該制約情報が、該プログラムの各版に対して、当該版から該順序に沿って一度に変更可能な版の段数を示す段数情報をそれぞれ対応付けて構成されたことを特徴とする、付記14又は付記15記載の管理プログラムを記録したコンピュータ読取可能な記録媒体。
1 管理システム
10 ベーススイッチ(第2の管理装置)
20 代理スイッチ(第1の管理装置)
30 管理端末(指示情報入力部)
40 ファームサーバ(プログラム格納部)
71 サーバ
72 ストレージ
80 ストレージ(プログラム格納部)
100 ストレージシステム
61,101,201 メインプロセッサ
101a 仮想−物理構成管理プロセス
101b ファームウェア管理プロセス
101c 常駐プロセス
103a,203a 仮想構成情報
62,102,202 データ送受信制御部
63,103,203 不揮発性メモリ(制約情報格納部)
64,104,204 FCインタフェース
65,105,205 イーサネットインタフェース
107,207 仮想−物理変換制御部
206 揮発性メモリ
210 確認部
211 選択部
212 インストール処理部
501,502,503,504,506 通信回線
507,508 LAN/WAN
141,241,641 ポート
TS ファームウェア管理テーブルセット
T1,T2 ファームウェア管理テーブル
VI−1,VI−2 仮想イニシエータ
VT 仮想ターゲット
VVOL 仮想ボリューム

Claims (8)

  1. データ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理システムであって、
    該プログラムの複数の版のそれぞれを格納するプログラム格納部と、
    該データ中継装置にインストールされているプログラムの版情報を格納する版情報格納部と、
    該プログラムの複数の版のそれぞれに関して、他の版へ変更する際に適用可能な版の段数を示す制約情報を格納する制約情報格納部と、
    該データ中継装置に適用されるべきプログラムの版情報を指示情報として入力可能な指示情報入力部と、
    該指示情報入力部から入力された該指示情報により指示された版の該プログラムについて、該版情報格納部に管理された該版情報と、該制約情報格納部に格納された該制約情報とを参照して、当該プログラムを該データ中継装置に適用可能であるかを確認する確認部と、
    該確認部により該プログラムが適用可能であると判断された場合に、該指示された版のプログラムを該データ中継装置にインストールするインストール処理部とをそなえることを特徴とする、管理システム。
  2. 該確認部により該プログラムが適用できないと判断された場合に、該制約情報に基づき、当該データ中継装置に対して適用可能な版のプログラムを選択する選択部をそなえ、
    該インストール処理部が、該選択部によって選択されたプログラムのインストールを行なった後に、該指示された版のプログラムのインストールを行なうことを特徴とする、請求項1記載の管理システム。
  3. 該プログラムの該複数の版の順序を示す順序情報を、各版のプログラムのそれぞれに設定し、
    該制約情報が、該プログラムの各版に対して、当該版から該順序に沿って一度に変更可能な版の段数を示す段数情報をそれぞれ対応付けて構成されたことを特徴とする、請求項1又は請求項2記載の管理システム。
  4. 該インストール処理部は、
    該データ中継装置と同一のグループに属する他のデータ中継装置があるかを確認し、
    該他のデータ中継装置がある場合には、該データ中継装置及び該他のデータ中継装置のうち、いずれか1つのデータ中継装置に該プログラムをインストールし、
    当該インストールが完了し、該プログラムがインストールされたデータ中継装置がオンライン状態に復帰したのを確認した後に、該データ中継装置及び該他のデータ中継装置のうち、次のデータ中継装置に該プログラムをインストールすることを特徴とする、請求項1〜3のいずれか1項に記載の管理システム。
  5. 該データ中継装置が含まれる1以上の所定の管理領域毎にそなえられ、当該管理領域内の該データ中継装置と通信可能に接続される第1の管理装置と、
    該指示情報入力部及び該1以上の第1の管理装置と通信可能に接続される第2の管理装置とをそなえ、
    該第1の管理装置が、該版情報格納部,該制約情報格納部,該確認部及び該インストール処理部をそなえ、
    該第2の管理装置が、該指示情報入力部から入力された該指示情報を該第1の管理装置に通知することを特徴とする、請求項1〜請求項4のいずれか1項に記載の管理システム。
  6. データ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理装置であって、
    該データ中継装置にインストールされているプログラムの版情報を格納する版情報格納部と、
    該プログラムの複数の版のそれぞれに関して、他の版へ変更する際に適用可能な版の段数を示す制約情報を格納する制約情報格納部と、
    適用が指示された版の該プログラムについて、該版情報格納部に管理された該版情報と、該制約情報格納部に格納された該制約情報とを参照して、当該プログラムを該データ中継装置に適用可能であるかを確認する確認部と、
    該確認部により該プログラムが適用可能であると判断された場合に、該指示された版のプログラムを該データ中継装置にインストールするインストール処理部とをそなえることを特徴とする、管理装置。
  7. データ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理方法であって、
    該データ中継装置に適用されるべきプログラムの版情報を指示情報として入力可能な指示情報入力ステップと、
    該指示情報入力ステップにおいて入力された該指示情報により指示される版の該プログラムについて、該データ中継装置にインストールされているプログラムの版情報と、該プログラムの複数の版のそれぞれに関して、他の版へ変更する際に適用可能な版の段数を示す制約情報とに基づいて、当該プログラムを該データ中継装置に適用可能であるかを確認する確認ステップと、
    該確認ステップにおいて該プログラムが適用可能であると判断された場合に、該指示された版のプログラムを該データ中継装置にインストールするインストールステップとをそなえることを特徴とする、管理方法。
  8. データ中継装置が接続されたデータ伝送システムにおいて、該データ中継装置のプログラムを管理する管理機能をコンピュータに実行させるための管理プログラムであって、
    適用が指示された版の該プログラムについて、該データ中継装置にインストールされているプログラムの版情報と、他の版へ変更する際に適用可能な版の段数を示す制約情報とを参照して、該プログラムの複数の版の中から該データ中継装置にインストールするプログラムを選択する選択ステップと、
    該選択ステップにおいて選択された該プログラムを該データ中継装置にインストールするインストールステップとを該コンピュータに実行させることを特徴とする、管理プログラム。
JP2009230601A 2009-10-02 2009-10-02 管理システム,管理装置,管理方法および管理プログラム Expired - Fee Related JP5428721B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009230601A JP5428721B2 (ja) 2009-10-02 2009-10-02 管理システム,管理装置,管理方法および管理プログラム
US12/896,218 US20110083129A1 (en) 2009-10-02 2010-10-01 Management system, management apparatus, management method, and computer readable recording medium storing the management program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009230601A JP5428721B2 (ja) 2009-10-02 2009-10-02 管理システム,管理装置,管理方法および管理プログラム

Publications (2)

Publication Number Publication Date
JP2011081434A JP2011081434A (ja) 2011-04-21
JP5428721B2 true JP5428721B2 (ja) 2014-02-26

Family

ID=43824143

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009230601A Expired - Fee Related JP5428721B2 (ja) 2009-10-02 2009-10-02 管理システム,管理装置,管理方法および管理プログラム

Country Status (2)

Country Link
US (1) US20110083129A1 (ja)
JP (1) JP5428721B2 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9146726B2 (en) * 2010-12-16 2015-09-29 Netapp, Inc. System and method for firmware update for network connected storage subsystem components
CN103138969B (zh) * 2011-11-28 2016-03-16 英业达科技有限公司 服务器机架系统
CN103324494B (zh) * 2012-03-22 2018-01-05 金蝶软件(中国)有限公司 自动制作补丁的方法、服务器及系统
US9058428B1 (en) 2012-04-12 2015-06-16 Amazon Technologies, Inc. Software testing using shadow requests
US9268663B1 (en) * 2012-04-12 2016-02-23 Amazon Technologies, Inc. Software testing analysis and control
US20130311696A1 (en) * 2012-05-18 2013-11-21 Lsi Corporation Storage processor for efficient scaling of solid state storage
US9164773B2 (en) * 2012-09-21 2015-10-20 Dell Products, Lp Deciding booting of a server based on whether its virtual initiator is currently used by another server or not
GB2508599A (en) * 2012-12-04 2014-06-11 Ibm Software version management when downgrading software
JP6265631B2 (ja) 2013-06-14 2018-01-24 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
CN103729205B (zh) * 2013-07-02 2017-07-25 深圳市金溢科技股份有限公司 一种电子标签及电子标签的升级方法
JP6167736B2 (ja) * 2013-08-05 2017-07-26 ソニー株式会社 情報処理装置、サーバ装置、情報処理方法及びプログラム
EP3101537A4 (en) * 2014-03-14 2017-03-22 Omron Corporation Control device, control system, control method for control device, and control method for control system
EP3024175B1 (en) * 2014-11-19 2019-07-31 Tanaza S.p.A. Method and system for remote management of network devices
JP2016139386A (ja) * 2015-01-29 2016-08-04 富士ゼロックス株式会社 装置管理システム、中継装置及びプログラム
CN104598283A (zh) * 2015-02-06 2015-05-06 浪潮电子信息产业股份有限公司 一种单架构多结构bmc固件程序的实现方法
US10146720B2 (en) * 2016-05-03 2018-12-04 Quanta Computer Inc. Flexible configuration server system
US10936299B2 (en) * 2017-04-28 2021-03-02 Dell Products, L.P. Automated intra-system persistent memory updates
US10572275B2 (en) * 2017-06-15 2020-02-25 Microsoft Technology Licensing, Llc Compatible dictionary layout
US10613847B2 (en) * 2018-02-13 2020-04-07 Dell Products, L.P. Information handling system to treat demoted firmware with replacement firmware
JP7707597B2 (ja) * 2021-03-25 2025-07-15 カシオ計算機株式会社 電子機器、ファームウェア更新方法及びプログラム
US12561124B2 (en) * 2022-09-23 2026-02-24 Dell Products, L.P. Systems and methods for firmware updates using hardware accelerators

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2333864B (en) * 1998-01-28 2003-05-07 Ibm Distribution of software updates via a computer network
US7080371B1 (en) * 1998-03-03 2006-07-18 Siebel Systems, Inc. Method, system, apparatus and program product for distribution and instantiation of software upgrades
US6052531A (en) * 1998-03-25 2000-04-18 Symantec Corporation Multi-tiered incremental software updating
JP2000242598A (ja) * 1999-02-23 2000-09-08 Matsushita Electric Ind Co Ltd ファームウェア更新システムおよびその更新方法
JP3671759B2 (ja) * 1999-08-26 2005-07-13 株式会社日立製作所 ソフトウェア配布方法およびシステム
US6768740B1 (en) * 2000-08-08 2004-07-27 Sun Microsystems, Inc. Coordinating loop-free forwarding table updates
US20030140339A1 (en) * 2002-01-18 2003-07-24 Shirley Thomas E. Method and apparatus to maintain service interoperability during software replacement
WO2004042538A2 (en) * 2002-11-05 2004-05-21 Bitfone Corporation Firmware update system for facilitating firmware update in mobile handset related applications
US7284234B2 (en) * 2002-11-06 2007-10-16 Alcatel Canada Inc. System and method for implementing maintenance functions for a switch
US7130382B2 (en) * 2003-01-09 2006-10-31 Bellsouth Intellectual Property Corp. MTS-switch generic verification
WO2005045671A1 (en) * 2003-10-27 2005-05-19 American Power Conversion Corporation System and method for updating a software program
GB0326626D0 (en) * 2003-11-14 2003-12-17 Filewave International Holding A method in a network of the delivery of files
US20050125489A1 (en) * 2003-11-26 2005-06-09 Hanes David H. System and method for determining messages on a server as relating to at least one functional component of a client system
JP4483283B2 (ja) * 2003-12-12 2010-06-16 ソニー株式会社 インターネット端末
US20050223373A1 (en) * 2004-04-05 2005-10-06 Dell Products L.P. Method for updating the firmware of a device
US7360208B2 (en) * 2004-05-17 2008-04-15 Oracle International Corp. Rolling upgrade of distributed software with automatic completion
US7552430B2 (en) * 2004-08-31 2009-06-23 Microsoft Corporation Patch sequencing
US20060053116A1 (en) * 2004-08-31 2006-03-09 Rits Maarten E Dynamic software updating using mobile agent AOP
JP2006255955A (ja) * 2005-03-15 2006-09-28 Oki Data Corp 印刷装置および制御プログラム更新方法
KR100794800B1 (ko) * 2005-12-12 2008-01-15 삼성전자주식회사 소프트웨어 업데이트 방법 및 그 장치
JP4842690B2 (ja) * 2006-04-14 2011-12-21 富士通株式会社 アプリケーション管理プログラム、アプリケーション管理方法およびアプリケーション管理装置
US8108734B2 (en) * 2009-11-02 2012-01-31 International Business Machines Corporation Intelligent rolling upgrade for data storage systems

Also Published As

Publication number Publication date
JP2011081434A (ja) 2011-04-21
US20110083129A1 (en) 2011-04-07

Similar Documents

Publication Publication Date Title
JP2011081434A (ja) 管理システム,管理装置,管理方法および管理プログラム
US7467275B2 (en) Capacity expansion volume migration method
JP4473153B2 (ja) ネットワーク構成のチェックおよび修理のための方法、システムおよびプログラム
JP4963892B2 (ja) 仮想ストレージシステムの構成要素となることが可能なストレージシステムの制御装置
US9654346B2 (en) System and method for automatically deploying a network design
US8341251B2 (en) Enabling storage area network component migration
JP4568574B2 (ja) ストレージ装置の導入方法、プログラム並びに管理計算機
US6854112B2 (en) System and method for the automatic installation and configuration of an operating system
US20060168436A1 (en) Systems and methods to facilitate the creation and configuration management of computing systems
CN109857445A (zh) 存储系统和控制软件配置方法
SG189417A1 (en) Upgrade of highly available farm server groups
US20050256961A1 (en) Methods and systems for predictive change management for access paths in networks
JP4855516B2 (ja) アクセス制御プログラム、アクセス制御装置およびアクセス制御方法
US7203770B2 (en) Apparatus and method of supporting configuration of storage system
JP2005202919A (ja) ストレージシステムへのアクセスを制限する方法と装置
US20070234351A1 (en) Method, apparatus, and computer product for managing operation
CN102523101A (zh) 机器管理器服务结构
JP2009026091A (ja) 接続管理プログラム、接続管理方法および情報処理装置
JP4734259B2 (ja) 運用管理プログラム、運用管理方法および運用管理装置
US20140189129A1 (en) Information processing system and storage apparatus
JP7632631B2 (ja) コンテナ基盤クラスタのアップデート制御方法、コンテナ基盤クラスタアップデートシステム、アップデート制御装置、および、アップデート制御プログラム
US20090077338A1 (en) Apparatus and Method for Managing Storage Systems
JP5182350B2 (ja) 運用管理プログラム、運用管理方法および運用管理装置
Bolinches et al. IBM elastic storage server implementation guide for version 5.3
JP4981412B2 (ja) ファイル転送システムおよびその方法、管理装置ならびにサーバ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120605

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130701

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130806

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131002

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131118

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees