JP2020095547A - コンテナ提供支援システムおよびコンテナ提供支援方法 - Google Patents

コンテナ提供支援システムおよびコンテナ提供支援方法 Download PDF

Info

Publication number
JP2020095547A
JP2020095547A JP2018233904A JP2018233904A JP2020095547A JP 2020095547 A JP2020095547 A JP 2020095547A JP 2018233904 A JP2018233904 A JP 2018233904A JP 2018233904 A JP2018233904 A JP 2018233904A JP 2020095547 A JP2020095547 A JP 2020095547A
Authority
JP
Japan
Prior art keywords
container
volume
image
site
registry
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018233904A
Other languages
English (en)
Other versions
JP6759317B2 (ja
Inventor
太郎 川瀬
Taro Kawase
太郎 川瀬
永見 明久
Akihisa Nagami
明久 永見
航 大野
Wataru Ono
航 大野
雄太郎 情野
Yutaro Jono
雄太郎 情野
亮輔 近藤
Ryosuke Kondo
亮輔 近藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2018233904A priority Critical patent/JP6759317B2/ja
Priority to US16/569,436 priority patent/US20200192693A1/en
Publication of JP2020095547A publication Critical patent/JP2020095547A/ja
Application granted granted Critical
Publication of JP6759317B2 publication Critical patent/JP6759317B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2094Redundant storage or storage space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • G06F11/1662Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)
  • Hardware Redundancy (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】コンテナの提供にかかる時間を短縮し得るコンテナ提供支援システムを提供する。【解決手段】第1のサイトには、アプリケーションプログラムの実行環境である第1のコンテナの起動に用いる第1のコンテナイメージを有する第1のレジストリ装置と、第1のコンテナイメージをもとに第1のコンテナを起動する第1のコンテナ装置と、アプリケーションプログラムにおいて使用される第1のボリュームを提供する第1のストレージ装置とが設けられ、第2のサイトには、第1のボリュームの複製である第2のボリュームを提供する第2のストレージ装置が設けられ、第1のボリュームの識別情報と、第2のボリュームの識別情報と、第1のコンテナイメージの識別情報とが対応付けられた管理情報を管理する管理部を設けるようにした。【選択図】図1

Description

本発明はコンテナ提供支援システムおよびコンテナ提供支援方法に関するものである。
近年、コンテナ型の仮想化環境を提供するオープンソフトウェアであるDocker(登録商標)の登場で、コンテナ技術が急速に普及し始めている。コンテナ技術においては、ファイルシステムであるコンテナイメージをもとに、アプリケーションプログラムの実行環境であるコンテナが起動される。この点、コンテナイメージをレジストリ(リポジトリ)で管理する技術が開示されている(特許文献1参照)。
特開2017−219972号公報
ここで、例えば、メインサイト(ローカルサイト)にてコンテナの利用時に障害が発生した際、DR(Disaster Recovery)サイト(リモートサイト)に切り替えて、業務が継続される。しかしながら、DRサイトにてコンテナの起動に必要なコンテナイメージと、当該コンテナ上で実行されるアプリケーションプログラムで用いられるボリュームとの特定に時間がかかり、DRサイトでのコンテナの提供までに時間を要してしまう問題がある。
本発明は以上の点を考慮してなされたもので、コンテナの提供にかかる時間を短縮し得るコンテナ提供支援システムを提案しようとするものである。
かかる課題を解決するため本発明においては、第1のサイトには、アプリケーションプログラムの実行環境である第1のコンテナの起動に用いる第1のコンテナイメージを有する第1のレジストリ装置と、前記第1のコンテナイメージをもとに前記第1のコンテナを起動する第1のコンテナ装置と、前記アプリケーションプログラムにおいて使用される第1のボリュームを提供する第1のストレージ装置とが設けられ、第2のサイトには、前記第1のボリュームの複製である第2のボリュームを提供する第2のストレージ装置が設けられ、前記第1のボリュームの識別情報と、前記第2のボリュームの識別情報と、前記第1のコンテナイメージの識別情報とが対応付けられた管理情報を管理する管理部を設けるようにした。
上記構成によれば、例えば、第1のサイトで障害が発生した場合、管理情報により、第2のサイトにてコンテナの起動に必要なコンテナイメージと、当該コンテナ上で実行されるアプリケーションプログラムで用いられる第2のボリュームとが紐づけられているので、コンテナの起動に必要なコンテナイメージとボリュームとを容易に特定でき、第2のサイトにおいてコンテナを短時間で起動することができる。
本発明によれば、信頼性の高いシステムを実現することができる。なお、上記した以外の課題、構成および効果は、以下の発明を実施するための形態の説明により明らかにされる。
第1の実施の形態によるコンテナ提供支援システムに係る構成の一例を示す図である。 第1の実施の形態によるコンテナ提供支援システムに係る物理構成の一例を示す図である。 第1の実施の形態によるコンテナ提供支援システムに係る論理構成の一例を示す図である。 第1の実施の形態によるサイト−ストレージ管理テーブルの一例を示す図である。 第1の実施の形態によるサイト−レジストリ管理テーブルの一例を示す図である。 第1の実施の形態によるレジストリ−イメージ管理テーブルの一例を示す図である。 第1の実施の形態によるボリューム−イメージ管理テーブルの一例を示す図である。 第1の実施の形態によるレプリケーション管理テーブルの一例を示す図である。 第1の実施の形態によるコンテナ立上時処理の一例を示す図である。 第1の実施の形態によるコンテナ立上時処理の一例を示す図である。 第1の実施の形態によるコンテナ立上時処理の一例を示す図である。 第1の実施の形態によるコンテナ立上時処理の一例を示す図である。 第1の実施の形態によるコンテナイメージ更新時処理の一例を示す図である。 第1の実施の形態によるフェイルオーバー時処理の一例を示す図である。 第2の実施の形態によるコンテナ提供支援システムに係る構成の一例を示す図である。 第3の実施の形態によるコンテナ提供支援システムに係る構成の一例を示す図である。
以下図面について、本発明の一実施の形態を詳述する。
なお、以下の説明では、同種の要素を区別しないで説明する場合には、枝番を含む参照符号のうちの共通部分(枝番を除く部分)を使用し、同種の要素を区別して説明する場合は、枝番を含む参照符号を使用することがある。例えば、サイトを特に区別しないで説明する場合には、「サイト101」と記載し、個々のサイトを区別して説明する場合には、「サイト101−1」、「サイト101−2」のように記載することがある。
(1)第1の実施の形態
図1において、100は全体として第1の実施の形態によるコンテナ提供支援システムを示す。
コンテナ提供支援システム100は、1以上のサイト101と、1以上の管理装置102と、1以上のクライアント装置103と、を含んで構成される。本実施の形態では、サイト101として、第1のサイト101−1(現用系のサイトであるローカルサイト)と、第2のサイト101−2(待機系のサイトであるリモートサイト)とを例に挙げて説明する。なお、コンテナ提供支援システム100には、サイト101が含まれていてもよいし、含まれていなくてもよい。また、コンテナ提供支援システム100には、クライアント装置103が含まれていてもよいし、含まれていなくてもよい。
サイト101は、業務に係るデータを扱うデータセンタ等であり、1以上のレジストリ装置110、1以上のコンテナ装置120、および1以上のストレージ装置130を含んで構成される。
レジストリ装置110は、レジストリ111という記憶空間を提供するサーバ装置でよい。レジストリ111には、コンテナイメージ112が登録される。コンテナイメージ112は、後述のコンテナ121を起動するときに必要なファイルシステム(コンテナ121を動作させるのに必要なファイル群)である。付言するならば、コンテナイメージ112は、例えば、読み込み専用のレイヤのセットであり、1番目の層をベースイメージと称し、他の全てのレイヤは、ベースイメージのレイヤ上に積み重なっている。レイヤには、例えば、ファイルシステムとメタデータ(何のコマンドを実行するのか、どのポートを開くか等の管理情報)とが含まれる。
ここで、図13を用いて後述するように、例えば、クライアント装置103より、コンテナイメージ112の変更(登録、更新、削除など)のコマンドがレジストリ装置110に送信され、レジストリ装置110のコンテナイメージ112が変更されることがある。管理装置102は、レジストリ装置110に対するコンテナイメージ112の変更を検出するが、検出方法については限定しない。例えば、コンテナイメージ112の変更は、管理装置102による監視の結果として検出されてもよい。また、例えば、コンテナイメージ112の変更は、レジストリ装置110にコンテナイメージ112の変更があったときには管理装置102に通知を出すという設定が事前にレジストリ装置110にされていて、その設定に従ってレジストリ装置110が変更を管理装置102に通知し、コンテナイメージ112の変更が検出されてもよい。
コンテナ装置120は、コンテナ121を起動(生成)するコンテナエンジン122を備える。コンテナ121は、業務に係るAPP(アプリケーションプログラム)の実行環境であり、例えば、APPの実行に必要な全てを含む。コンテナ121は、コンテナエンジン122により、生成、開始、停止、移動、削除されるものである。ここで、コンテナ121の生成とは、例えば、コンテナイメージ112上に読み書き可能なレイヤを追加し、指定されたプロセスを隔離された状態、システムリソース上などで実行することをいう。
コンテナエンジン122は、コンテナ121の起動に際し、コンテナ装置120にコンテナイメージ112がない場合(例えば、初回の実行時)、レジストリ装置110からコンテナイメージ112を取得(ダウンロード)する。なお、コンテナエンジン122では、1以上のコンテナ121が生成され、コンテナ装置120では、1以上のコンテナ121が稼働可能であってもよい。
コンテナエンジン122は、コンテナイメージ112を生成(変更)できる。この際、手動で変更するケースと、自動で変更するケースとがある。何れのケースにおいてもクライアント装置103より変更のコマンドがコンテナエンジン122に送信されるが、コンテナエンジン122は、変更のコマンドを受信した場合、コンテナイメージ112を変更すると共に、管理装置102にコンテナイメージ112が変更された旨(コンテナイメージ112のイメージ名など)を通知する。管理装置102は、かかる通知により、コンテナイメージ112の変更を把握できる。また、コンテナエンジン122は、変更したコンテナイメージ112をレジストリ装置110に送信する構成であってもよい。
ストレージ装置130は、コンテナエンジン122上でAPPを実行するコンテナ121に、APPの実行において使用されるボリューム131を提供する。例えば、ローカルサイトのストレージ装置130−1では、コンテナエンジン122−1上でAPPを実行するコンテナ121−1に、APPの実行において使用されるボリューム131−1(正ボリューム)が紐付けられている。また、例えば、リモートサイトのストレージ装置130−2では、ボリューム131−1(正ボリューム)のレプリカ(複製)であるボリューム131−2(副ボリューム)が設けられている。なお、ボリューム131−2(副ボリューム)は、コンテナエンジン122−2上でAPPを実行するコンテナ121−2に対して設けられ、APPの実行において使用される。
また、リモートサイトのコンテナ装置120−2は、ローカルサイトで障害(システム障害、ネットワーク障害など、コンテナ121−1の利用時の障害)が発生した際、コンテナイメージ112−2をもとにコンテナ121−2を立ち上げ、コンテナ121−2とボリューム131−2とを紐付けてもよい。このように、障害の発生時に、コンテナ121−2を立ち上げてボリューム131−2と紐付けることで、リモートサイトに切り替えることができる。例えば、レプリケーションのペア分割をトリガにコンテナ121−2を利用可能にしてもよい(このケースについては、図14を用いて後述する)。また、例えば、APPのハングアップ、無限ループの検出をトリガにコンテナ121−2を利用可能にしてもよい。また、例えば、通信エラーの検出をトリガにコンテナ121−2を利用可能にしてもよい。
また、ストレージ装置130は、正ボリュームと副ボリュームとのレプリケーションに係る情報を格納する管理テーブル132を有する。なお、管理テーブル132については、図8を用いて後述する。
管理装置102は、コンテナ121の構築に係る情報を格納する1以上の管理テーブル102Aを有する。管理テーブル102Aでは、例えば、コンテナイメージ112と正ボリュームと副ボリュームとの対応関係が保持される。なお、管理テーブル102Aについては、図4〜図7を用いて後述する。
管理装置102は、例えば、第1のボリュームの識別情報(例えば、ボリューム131−1に係るコンテナ装置120−1のコンテナ装置名、ボリューム131−1を提供するストレージ装置130−1のストレージ装置名、ボリューム131−1のボリューム名)と、第2のボリュームの識別情報(例えば、ボリューム131−2に係るコンテナ装置120−2のコンテナ装置名、ボリューム131−2を提供するストレージ装置130−2のストレージ装置名、ボリューム131−2のボリューム名)と、第1のコンテナイメージの識別情報(例えば、コンテナイメージ112−1のイメージ名。なお、コンテナイメージ112−1とコンテナイメージ112−2とのイメージ名は同じであるので、コンテナイメージ112−2のイメージ名であってもよい。)と、が対応付けられた管理情報(例えば、後述のボリューム−イメージ管理テーブル305)を管理する。
なお、管理情報は、コンテナ121の立ち上げ時などに、後述するように自動で生成されてもよいし、管理者により手動で生成されてもよい。何れの場合であっても、管理情報により、リモートサイトにてコンテナ121−2の起動に必要なコンテナイメージ112−2と、当該コンテナ121−2上で実行されるAPPで用いられるボリューム131−2とが紐づけられている。よって、コンテナ121−2の起動に必要なコンテナイメージ112−2とボリューム131−2とを容易に特定できるので、ローカルサイトからリモートサイトへの切り替えにおいて、リモートサイトでコンテナ121−2を短時間で起動することができる。付言するならば、管理情報が自動で生成されるようにすることで、リモートサイトにてコンテナ121−2を起動する際に必要なコンテナイメージ112と対応するボリュームとを管理者が台帳に登録する作業を省くことができる。
管理装置102は、管理テーブル102Aに基づいて、リモートサイトへの副ボリュームの作成に合わせて、リモートサイトのレジストリ装置110−2にコンテナイメージ112−1のコピーを実施するようにしてもよい。なお、管理者によるクライアント装置103の操作により、コンテナイメージ112−1がコピーされてもよい。つまり、リモートサイトには、コンテナイメージ112−1の複製であるコンテナイメージ112−2を有するレジストリ装置110−2と、コンテナイメージ112−2をもとにコンテナ121−2を起動するコンテナ装置120−2とが設けられることが好適である。このように、コンテナイメージ112のコピーをリモートサイトのレジストリ装置110−2に登録しておくことで、ローカルサイトでの障害の発生時に、コンテナイメージ112−1を取得できない状況に陥ったとしても、リモートサイトでのコンテナ121−2の起動ができずに、業務の継続が不可能になってしまう事態を回避できるようになる。付言するならば、管理装置102は、例えば、ボリューム131−2が作成されたとき、コンテナイメージ112−1をコンテナイメージ112−2としてレジストリ装置110−2に複製するようにしてもよい。かかる構成によれば、コンテナイメージ112−1のコピーについて、管理者の負担を軽減することができる。
クライアント装置103は、コンテナ121の立ち上げを指示するコマンド、コンテナ121の起動を指示するコマンド、コンテナイメージ112の更新を指示するコマンド等をレジストリ装置110、コンテナ装置120等に送信する装置であったり、業務に係るAPPを操作するための装置であったりする。
図2は、コンテナ提供支援システム100に係る物理構成の一例を示す図である。
管理装置102、クライアント装置103、レジストリ装置110、およびコンテナ装置120は、第1のネットワークの一例であるLAN(Local Area Network)201に接続されている。各コンテナ装置120および各ストレージ装置130は、第2のネットワークの一例であるFC(Fibre Channel)ネットワーク202に接続されている。各ストレージ装置130は、第3のネットワークの一例であるFCネットワーク203に接続されている。
FCネットワーク202は、各ストレージ装置130のフロントエンドネットワークの一例である。FCネットワーク203は、各ストレージ装置130のバックエンドネットワークの一例である。なお、第1のネットワーク〜第3のネットワークの2以上のネットワークが一体でもよい。ネットワークとしては、WAN(Wide Area Network)のような他種のネットワークが採用されてもよい。
管理装置102は、LAN201に接続されるLANインターフェース204、記憶部205、および、それらに接続されたプロセッサ部206を有する。
管理装置102の機能(後述の管理部301など)は、例えば、プロセッサ部206がプログラムを記憶部205に読み出して実行すること(ソフトウェア)により実現されてもよいし、専用の回路などのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアとが組み合わされて実現されてもよい。また、管理装置102の機能の一部は、管理装置102と通信可能な他のコンピュータにより実現されてもよい。
クライアント装置103は、LAN201に接続されるLANインターフェース207、記憶部208、および、それらに接続されたプロセッサ部209を有する。
クライアント装置103の機能(後述のクライアント部306など)は、例えば、プロセッサ部209がプログラムを記憶部208に読み出して実行すること(ソフトウェア)により実現されてもよいし、専用の回路などのハードウェアにより実現されてもよいし、ソフトウェアとハードウェアとが組み合わされて実現されてもよい。また、クライアント装置103の機能の一部は、クライアント装置103と通信可能な他のコンピュータにより実現されてもよい。
レジストリ装置110は、LAN201に接続されるLANインターフェース211、記憶部212、および、それらに接続されたプロセッサ部213を有する。
コンテナ装置120は、インターフェース部(LAN201に接続されるLANインターフェース221およびFCネットワーク202に接続されるFCインターフェース222)、記憶部223、および、それらに接続されたプロセッサ部224を有する。
ストレージ装置130は、PDEV部231と、PDEV部231に接続されたストレージコントローラ232とを有する。ストレージコントローラ232は、FCネットワーク202およびFCネットワーク203に接続されている。ストレージコントローラ232は、図示は省略するが、インターフェース部、メモリ部、および、それらに接続されたプロセッサ部を有する。ストレージコントローラ232は、APPの実行に従いコンテナ装置120から出力されたI/O(Input / Output)要求を受信し、当該I/O要求に応答して、ボリューム131に対するI/Oを行う。ボリューム131に書き込まれるデータは、ボリューム131における論理的な記憶領域に関連付けられている物理的な記憶領域(PDEV部231における記憶領域)に書き込まれる。
なお、管理装置102、クライアント装置103、レジストリ装置110、コンテナ装置120、およびストレージ装置130の各装置は、キーボード、ポインティングデバイス等の入力部、ディスプレイ、スピーカ等の出力部、タッチパネル等の入出力部等を備えていてもよい。また、各装置102には、入力部、出力部、入出力部が接続されていてもよい。
図3は、コンテナ提供支援システム100に係る論理構成の一例を示す図である。
管理装置102は、管理部301を有する。管理部301は、例えば、管理テーブル102A(サイト−ストレージ管理テーブル302、サイト−レジストリ管理テーブル303、レジストリ−イメージ管理テーブル304、およびボリューム−イメージ管理テーブル305)を管理する。
管理部301は、リモートサイトでコンテナ121−2を起動するための管理情報を生成してもよい。例えば、管理部301は、ボリューム131−1を指定してコンテナ121−1を立ち上げる旨の要求をクライアント装置103から受信すると、ストレージ装置130−2にボリューム131−2の作成を指示し、ストレージ装置130−2により作成されたボリューム131−2の識別情報を取得し、上記要求により指定されるボリューム131−1の識別情報と、ストレージ装置130−2から取得するボリューム131−2の識別情報と、コンテナ121−1の起動に用いるコンテナイメージ112−1の識別情報とを対応付けて管理情報を生成する。
また、管理部301は、リモートサイトでコンテナ121−2を起動するためのコンテナイメージ112−1を管理してもよい。例えば、管理部301は、コンテナイメージ112−1をコンテナイメージ112−2としてレジストリ装置110−2に複製する。また、例えば、管理部301は、コンテナイメージ112がレジストリ装置110に登録されたことに応答して送信される通知を受信し、コンテナイメージ112−2が更新されたと判定したとき、更新されたコンテナイメージ112−1をレジストリ装置110−2に送信する。なお、管理部301は、コンテナ121を監視してもよい。なお、結果として、コンテナ121において障害が発生した場合、その障害を検知する場合もある。
また、管理部301は、2以上のコンテナイメージ112を1つのコンテナイメージ112に統合してもよいし、その他の処理を行ってもよい。
クライアント装置103は、クライアント部306を有する。クライアント部306は、例えば、ローカルサイトでのコンテナ121−1の立ち上げを管理装置102に指示する。また、例えば、クライアント部306は、ダウンロードしたコンテナイメージ112−1の変更をレジストリ装置110−1に指示する。
レジストリ装置110は、イメージ管理部311を有する。イメージ管理部311は、例えば、コンテナエンジン122からの要求に応じてコンテナイメージ112を送信する。また、例えば、イメージ管理部311は、コンテナイメージ112の変更に応答して管理装置102に通知を送信する。
また、例えば、イメージ管理部311は、管理装置102からの指示に応じて、コンテナイメージ112のコピーを他のレジストリ装置110に作成する。例えば、イメージ管理部311−1は、管理装置102から、レジストリ装置110−2にイメージ112−1をコピーする旨の指示を受け取ると、レジストリ装置110−2にコンテナイメージ112―1を送信する。レジストリ装置110−2のイメージ管理部311−2は、受信したコンテナイメージ112―1をコンテナイメージ112―2として登録する。
コンテナ装置120では、記憶部223に、コンテナ制御部322Aおよびボリュームドライバ322Bを含んで構成されるコンテナエンジン122、ボリュームプラグイン323、およびホストOS(Operating System)324といったプログラムが格納されており、それらのプログラムが、プロセッサ部224によって実行される。
コンテナ制御部322Aは、コンテナ121の起動、コンテナ121のコンテナイメージ112の作成等を行う。なお、起動されたコンテナ121上では、APP321が動作可能である。
ボリュームドライバ322Bは、コンテナ制御部322Aよりコンテナ121を起動する旨の通知を受け取り、ボリューム131の紐付けをボリュームプラグイン323に指示する。その指示に応答してボリュームプラグイン323により起動対象のコンテナ121にボリューム131が紐付けられ、当該コンテナ121が起動される。なお、コンテナ121とボリューム131との対応関係を示す情報については、管理テーブル132により管理されていてもよいし、コンテナイメージ112に埋め込まれて管理されていてもよいし、その他の記憶領域に管理されていてもよい。また、ボリュームドライバ322Bは、ストレージ装置130内にあるレプリケーション管理テーブル332(管理テーブル132の一例)を更新する。
ボリュームプラグイン323は、仮想ストレージ設定の指示に応答して仮想ストレージ設定を行うといったようなボリューム制御を行う。例えば、ボリュームプラグイン323は、例えば、或るボリューム131をプライマリのボリューム(正ボリューム)としたセカンダリのボリューム(副ボリューム)を作成する指示をストレージ装置130に送信する。その指示に応答して、例えば、ボリューム131−1の複製であるボリューム131−2が作成される。また、例えば、ボリュームプラグイン323は、ストレージ装置130から提供されたボリューム131を、コンテナ121に紐付ける。また、例えば、ボリュームプラグイン323は、仮想ストレージ設定の指示に応答して仮想ストレージ設定を行う。
ホストOS324は、コンテナ制御部322A、ボリュームドライバ322B、ボリュームプラグイン323等が動作するための基本環境を提供するカーネルである。
ストレージ装置130は、プール331とレプリケーション管理テーブル332とを有する。ストレージ装置130は、例えば、プール331からボリューム131を切り出して提供する。
プール331には、例えば、ボリューム131間の差分としてのデータ(例えば、スナップショットボリュームに対するデータ)が格納される。プール331は、例えば、ボリューム131がThin Provisioningに従うボリュームの場合、ボリューム131に動的に割り当てられる記憶領域を含んだプールを含んでもよい。なお、プール331は、複数のストレージ装置130に跨って設けられてもよいし、設けられていなくもよい。
レプリケーション管理テーブル332は、ストレージコントローラ232のメモリ部に格納されてもよいし、所定のボリューム131に格納されてもよい。なお、レプリケーション管理テーブル332については、図8を用いて後述する。
なお、本実施の形態では、全ストレージ装置130において、同内容のレプリケーション管理テーブル332が保持される。言い換えれば、ストレージ装置130において、レプリケーション管理テーブル332は同期する。
図4は、サイト−ストレージ管理テーブル302の一例を示す図である。
サイト−ストレージ管理テーブル302は、サイト101とストレージ装置130との関係を示す情報を保持する。より具体的には、サイト−ストレージ管理テーブル302には、各サイト101に設けられるストレージ装置130を識別可能な情報が含まれる。例えば、サイト−ストレージ管理テーブル302は、サイト名401とストレージ装置名402とが対応付けられた情報を格納する。サイト名401は、サイト101を識別可能な識別情報を示す。ストレージ装置名402は、ストレージ装置130を識別可能な識別情報を示す。
図5は、サイト−レジストリ管理テーブル303の一例を示す図である。
サイト−レジストリ管理テーブル303は、各サイト101におけるレジストリ装置110とレジストリ111との関係を示す情報を保持する。より具体的には、サイト−レジストリ管理テーブル303には、各サイト101に設けられるレジストリ111を識別可能な情報が含まれる。例えば、サイト−レジストリ管理テーブル303は、サイト名501とレジストリ装置名502とレジストリ名503とが対応付けられた情報を格納する。サイト名501は、サイト101を機器別可能な識別情報を示す。レジストリ装置名502は、レジストリ装置110を識別可能な識別情報を示す。レジストリ名503は、レジストリ111を識別可能な識別情報を示す。
図6は、レジストリ−イメージ管理テーブル304の一例を示す図である。
レジストリ−イメージ管理テーブル304は、レジストリ111とコンテナイメージ112との関係を示す情報を保持する。より具体的には、レジストリ−イメージ管理テーブル304には、各レジストリ111に記憶されるコンテナイメージ112を識別可能な情報が含まれる。例えば、レジストリ−イメージ管理テーブル304は、レジストリ名601とイメージ名602とが対応付けられた情報を格納する。レジストリ名601は、レジストリ111を識別可能な識別情報を示す。イメージ名602は、コンテナイメージ112を識別可能な識別情報を示す。
図7は、ボリューム−イメージ管理テーブル305の一例を示す図である。
ボリューム−イメージ管理テーブル305は、副ボリュームと正ボリュームとコンテナイメージ112との関係を示す情報を保持する。より具体的には、ボリューム−イメージ管理テーブル305には、副ボリュームと正ボリュームとのペアに対応するコンテナイメージ112を識別可能な情報が含まれる。例えば、ボリューム−イメージ管理テーブル305は、副ボリューム700と正ボリューム710とイメージ名720とが対応付けられた情報を格納する。
副ボリューム700は、副ボリューム(ボリューム131−2)に係る情報を示す。例えば、副ボリューム700は、コンテナ装置名701と、ストレージ装置名702と、ボリューム名703とが対応付けられた情報を格納する。コンテナ装置名701は、副ボリュームとコンテナ121とを紐付けるコンテナ装置120を識別可能な識別情報を示す。ストレージ装置名702は、副ボリュームを提供するストレージ装置130を識別可能な識別情報を示す。ボリューム名703は、副ボリュームを識別可能な識別情報を示す。
正ボリューム710は、正ボリューム(ボリューム131−1)に係る情報を示す。例えば、正ボリューム710は、コンテナ装置名711と、ストレージ装置名712と、ボリューム名713とが対応付けられた情報を格納する。コンテナ装置名711は、正ボリュームとコンテナ121とを紐付けるコンテナ装置120を識別可能な識別情報を示す。ストレージ装置名712は、正ボリュームを提供するストレージ装置130を識別可能な識別情報を示す。ボリューム名713は、正ボリュームを識別可能な識別情報を示す。
イメージ名720は、副ボリューム(なお、コンテナイメージ112−1とコンテナイメージ112−2とで同じイメージ名とした場合は、正ボリュームであってもよい。)に紐付けられるコンテナ装置120の起動に用いられるコンテナイメージ112を識別可能な識別情報を示す。
付言するならば、副ボリュームの情報および正ボリュームの情報には、プール名など、プールを識別可能な識別情報が含まれていてもよいし、コンテナ名など、コンテナ121を識別可能な識別情報が含まれていてもよい。
図8は、レプリケーション管理テーブル332の一例を示す図である。
レプリケーション管理テーブル332は、ボリューム131のレプリケーションを管理するための情報を保持する。より具体的には、レプリケーション管理テーブル332には、正ボリュームと副ボリュームとの対応関係と、当該正ボリュームと副ボリュームとにおけるレプリケーションの状態とを示す情報が含まれる。例えば、レプリケーション管理テーブル332には、ストレージ装置名801と、ボリューム名802と、容量803と、正/副ボリューム804と、レプリケーションモード805と、ペアボリューム806とが対応付けられた情報が格納される。
ストレージ装置名801は、ストレージ装置130を識別可能な識別情報を示す。ボリューム名802は、ボリューム131を識別可能な識別情報を示す。容量803は、ボリューム131の容量を示す。正/副ボリューム804は、ボリューム名802により識別されるボリューム131の種別(正ボリュームまたは副ボリューム)を示す。レプリケーションモード805は、レプリケーションのモード(同期がとられていることを示すペアまたは同期がとられていないことを示すペア分割)を示す。ペアボリューム806は、ボリューム名802により識別されるボリューム131とペアとなるボリューム131を示す。
次に、コンテナ提供支援システム100におけるコンテナ提供支援処理について説明する。
コンテナ提供支援処理については、例えば、ローカルサイトでのコンテナ121の立ち上げ時の処理(A)コンテナ立上時処理と、コンテナイメージ112が更新されたときの処理(B)コンテナイメージ更新時処理と、ローカルサイトに故障が発生したときにリモートサイトに自動的に切り替えるときの処理(C)フェイルオーバー時処理とを含んで構成されてもよい。以下、コンテナ提供支援処理の一例について説明する。
(A)コンテナ立上時処理
コンテナ立上時処理における主な処理としては、下記の処理(A−1)〜(A−4)が挙げられる。
(A−1)ローカルサイトでのコンテナ121の立ち上げ(図9)
(A−2)リモートサイトでのボリューム131の作成(図10)
(A−3)レプリケーションの設定(図11)
(A−4)リモートサイトのレジストリ111にコンテナイメージ112のコピーの作成(図12)
(B)コンテナイメージ更新時処理
更新されたコンテナイメージ112のコピーがリモートサイトに作成される(図13)。
(C)フェイルオーバー時処理
ローカルサイトで障害が発生した際、リモートサイトでコンテナ121の立ち上げが行われる(図14)。
(A)コンテナ立上時処理
(A−1)ローカルサイトでのコンテナ121の立ち上げ
図9は、ローカルサイトでのコンテナ121の立ち上げに係る処理の一例を示す図である。
ステップS901では、クライアント装置103は、コンテナ121の立ち上げを行う旨の指示を管理装置102に送信する。クライアント装置103は、例えば、管理者により入力されたローカルサイトのサイト名、コンテナ121の立ち上げに用いるコンテナイメージ112のイメージ名、コンテナイメージ112を記憶するコンテナ装置120のコンテナ装置名、コンテナ121に紐付けられるボリューム131を提供するストレージ装置130のストレージ装置名、コンテナ121に紐付けられるボリューム131のボリューム名、コンテナ121に紐付けられるボリューム131の複製(副ボリューム)を提供するDR先(リモートサイト)のストレージ装置130のストレージ装置名を指定してコンテナ121の立ち上げを管理装置102に指示する。なお、コンテナ121の立ち上げを行う旨の指示に含まれる情報は、上述した情報に限るものではない。例えば、DR先のストレージ装置名は含まれていなくてもよい。
以下では、サイト101のサイト名「Site1」、コンテナイメージ112−1のイメージ名「img1」、コンテナ装置120−1のコンテナ装置名「ConS1」、ストレージ装置130−1のストレージ装置名「Str1−1」、ボリューム131−1のボリューム名「Vol1」、DR先のストレージ装置130−2のストレージ装置名「Str2−1」が指定されたものとして適宜説明する。
ステップS902では、管理装置102は、コンテナ121の立ち上げを行う旨の指示(サイト名、イメージ名、コンテナ装置名、ストレージ装置名、ボリューム名、DR先のストレージ装置名)を受信する。
ステップS903では、管理装置102は、受信したサイト名をキーとしてサイト−レジストリ管理テーブル303から当該サイト名に対応付けられているレジストリ名およびレジストリ装置名を取得(特定)する。本例では、レジストリ装置110−1のレジストリ装置名「RegS1」およびレジストリ111−1のレジストリ名「Reg1」が特定される。
ステップS904では、管理装置102は、特定したレジストリ名のレジストリ装置110−1に対して、受信したイメージ名のコンテナイメージ112−1(対象のコンテナイメージ112)を、受信したコンテナ装置名のコンテナ装置120−1に送信する旨の指示(イメージコピー指示)を送信する。
ステップS905では、レジストリ装置110−1は、コンテナイメージ112−1をコンテナ装置120−1にコピー(送信)する。
ステップS906では、コンテナ装置120−1は、受信したコンテナイメージ112−1からコンテナ121−1を立ち上げる。
ステップS907では、管理装置102は、立ち上げ対象のコンテナ121−1に対応付けられるボリューム131−1(対象ボリューム)の情報の取得要求を、コンテナ121−1を立ち上げたコンテナ装置120−1に送信する。なお、取得要求には、ステップS902で受信したストレージ装置名、ボリューム名の情報が含まれる。
ステップS908では、コンテナ装置120−1は、取得要求に含まれるストレージ装置名のストレージ装置130−1に、対象ボリューム情報の取得要求を送信する。
ステップS909では、ストレージ装置130−1は、取得要求に含まれるボリューム名からボリューム131−1および容量(リモートサイトに作成するボリューム131−2の容量)を取得し、取得したボリューム131−1および容量をコンテナ装置120−1に送信する。
ステップS910では、コンテナ装置120−1は、コンテナ121−1にボリューム131−1を紐付ける(アタッチする)。
(A−2)リモートサイトでのボリューム131の作成
図10は、リモートサイトでのボリューム131の作成に係る処理の一例を示す図である。
ステップS1001では、コンテナ装置120−1は、ステップS910で受信した容量(対象ボリュームの容量)を管理装置102に送信する。
ステップS1002では、管理装置102は、対象ボリュームの容量を取得する。
ステップS1003では、管理装置102は、ステップS902で受信したDR先のストレージ装置名のストレージ装置130−2に、取得した容量のボリューム131−2を作成するように、サイト−ストレージ管理テーブル302を用いて特定されるリモートサイトにおけるコンテナ装置120−2に指示を送信する。
ステップS1004では、コンテナ装置120−2は、指示された容量のボリューム131−2を作成するようにストレージ装置130−2に指示を送信する。
ステップS1005では、ストレージ装置130−2は、ボリューム131−2を作成し、コンテナ装置120−2に作成したボリューム131−2のボリューム名を送信する。
ステップS1006では、コンテナ装置120−2は、ボリューム名を取得(受信)する。
ステップS1007では、コンテナ装置120−2は、副ボリュームの情報(リモートサイトのサイト名、コンテナ装置名、ストレージ装置名、およびボリューム名)を管理装置102に送信する。以下では、コンテナ装置120−2は、リモートサイトのサイト名「Site2」、コンテナ装置名「ConS2」、ストレージ装置名「Str2−1」、およびボリューム名「Vol1’」を管理装置102に送信するものとして適宜説明する。
ステップS1008では、管理装置102は、リモートサイトのサイト名、コンテナ装置名、ストレージ装置名、およびボリューム名を取得(受信)する。
ステップS1009では、管理装置102は、ボリューム−イメージ管理テーブル305を更新する。より具体的には、管理装置102は、副ボリュームの情報(ステップS1008で取得したサイト名、コンテナ装置名、ストレージ装置名、およびボリューム名)と、正ボリュームの情報(ステップS902で受信したサイト名、コンテナ装置名、ストレージ装置名、およびボリューム名)と、ステップS902で受信したイメージ名との情報を含むレコードを、ボリューム−イメージ管理テーブル305に追加する。
なお、管理装置102は、追加したレコードの情報を出力してもよい。出力方法としては、例えば、クライアント装置103に表示されてもよいし、所定の電子メールアドレスに送信されてもよいし、プリンタにより所定の媒体に印刷されてもよいし、その他の出力方法であってもよい。
(A−3)レプリケーションの設定
図11は、レプリケーションの設定に係る処理の一例を示す図である。
ステップS1101では、管理装置102は、レプリケーションの対象の正ボリューム(対象正ボリューム)の情報と、レプリケーションの対象の副ボリューム(対象副ボリューム)の情報として、ボリューム−イメージ管理テーブル305からステップS1009で追加したレコードを読み出す。より具体的には、対象正ボリュームのコンテナ装置名、ストレージ装置名、およびボリューム名と、対象副ボリュームのコンテナ装置名、ストレージ装置名、およびボリューム名とを取得し、対象正ボリュームのコンテナ装置名のコンテナ装置120−1に対して、対象正ボリュームから対象副ボリュームへのデータのコピーを指示する。
ステップS1102では、コンテナ装置120−1は、対象正ボリュームを提供するストレージ装置名のストレージ装置130−1に対して、対象正ボリュームのデータの読出しの要求を行う。
ステップS1103は、ストレージ装置130−1は、対象正ボリュームのデータの読出しを行う。
ステップS1104は、ストレージ装置130−1は、要求元のコンテナ装置120−1にデータの書出し(送信)を行う。
ステップS1105では、コンテナ装置120−1は、データの書出し(受信)を行う。
ステップS1106では、コンテナ装置120−1は、対象副ボリュームのコンテナ装置名のコンテナ装置120−2にデータの書込みの要求(送信)を行う。
ステップS1107では、コンテナ装置120−2は、対象副ボリュームを提供するストレージ装置名のストレージ装置130−2に対して、対象副ボリュームのデータの書込みの要求を行う。
ステップS1108では、ストレージ装置130−2は、対象副ボリュームのデータの書込みを行う。
ステップS1109では、ストレージ装置130−2は、対象副ボリュームのデータの書込みを完了する。
ステップS1110では、ストレージ装置130−2は、レプリケーション管理テーブル332を更新する。より具体的には、ストレージ装置130−2は、対象正ボリュームに係る第1のレコードと、対象副ボリュームに係る第2のレコードとをレプリケーション管理テーブル332に追加する。第1のレコードには、例えば、ストレージ装置名として、レジストリ−イメージ管理テーブル304の対象正ボリュームに紐づくストレージ装置名と、ボリューム名として、レジストリ−イメージ管理テーブル304の対象正ボリュームに紐づくボリューム名と、容量として、コピー元またはコピー先のボリューム容量と、正/副ボリュームとして「正ボリューム」と、レプリケーションモードとして「ペア」と、ペアボリュームとして、レジストリ−イメージ管理テーブル304の対象副ボリュームに紐づくボリューム名と、が設定される。第2のレコードには、例えば、ストレージ装置名として、レジストリ−イメージ管理テーブル304の対象副ボリュームに紐づくストレージ装置名と、ボリューム名として、レジストリ−イメージ管理テーブル304の対象副ボリュームに紐づくボリューム名と、容量として、コピー元またはコピー先のボリューム容量と、正/副ボリュームとして「副ボリューム」と、レプリケーションモードとして「ペア」と、ペアボリュームとして、レジストリ−イメージ管理テーブル304の対象正ボリュームに紐づくボリューム名と、が設定される。
ステップS1111では、コンテナ装置120−2は、データのコピーが完了した旨の通知(完了通知)をコンテナ装置120―1に送信する。
ステップS1112では、コンテナ装置120−1は、対象正ボリュームを提供するストレージ装置名のストレージ装置130−1に対して、レジストリ−イメージ管理テーブル304の更新を指示する。
ステップS1113では、ストレージ装置130−1は、レプリケーション管理テーブル332を更新する。なお、かかる更新は、ステップS1110と同様であるので、その説明を省略する。
ステップS1114では、ストレージ装置130−1は、レプリケーション管理テーブル332の更新が完了した旨の通知(完了通知)をコンテナ装置120−1に送信する。
ステップS1115では、コンテナ装置120−1は、レプリケーションの設定が完了した旨の通知(完了通知)を管理装置102に送信する。
ステップS1116では、管理装置102は、完了通知を受信する。
(A−4)リモートサイトのレジストリ111にコンテナイメージ112のコピーの作成
図12は、リモートサイトのレジストリ111にコンテナイメージ112のコピーの作成に係る処理の一例を示す図である。
ステップS1201では、管理装置102は、ステップS1116にて完了通知を受信すると、立ち上げたコンテナ121のもとになるコンテナイメージ112−1(対象のコンテナイメージ112)に係る情報を取得する。より具体的には、管理装置102は、ボリューム−イメージ管理テーブル305から、ステップS1009で追加したレコードの対象正ボリュームに紐づくストレージ装置名およびイメージ名と、対象副ボリュームに紐づくストレージ装置名とを取得する。
ステップS1202では、管理装置102は、サイト−ストレージ管理テーブル302から、対象正ボリュームのストレージ装置名に紐づくサイト名と、対象副ボリュームのストレージ装置名に紐づくサイト名とを取得する。本例では、対象正ボリュームのストレージ装置名に紐づくサイト名として「Site1」が取得され、対象副ボリュームのストレージ装置名に紐づくサイト名として「Site2」が取得される。
ステップS1203では、管理装置102は、サイト−レジストリ管理テーブル303から、対象正ボリュームのサイト名に紐づくレジストリ装置名およびレジストリ名と、対象副ボリュームのサイト名に紐づくレジストリ装置名およびレジストリ名とを取得する。対象正ボリュームのサイト名「Site1」に紐づくレジストリ装置名「RegS1」およびレジストリ名「Reg1」と、対象副ボリュームのサイト名「Site2」に紐づくレジストリ装置名「RegS2」およびレジストリ名「Reg2」とが取得される。そして、管理装置102は、取得した対象正ボリュームのレジストリ装置名のレジストリ装置110−1に対して、取得した対象副ボリュームのレジストリ装置名のレジストリ装置110−2に対象のコンテナイメージ112をコピーする旨の指示を行う。かかる指示には、例えば、ローカルサイトのレジストリ装置名、レジストリ名、イメージ名、リモートサイトのレジストリ装置名、レジストリ名が含まれる。
ステップS1204では、レジストリ装置110−1は、レジストリ111−1から、取得したイメージ名のコンテナイメージ112−1(対象のコンテナイメージ112)を読出し、リモートサイトのレジストリ装置名のレジストリ装置110−2に送信する。
ステップS1205では、レジストリ装置110−2は、コンテナイメージ112−1をコンテナイメージ112−2としてレジストリ111−2に書込む。
ステップS1206では、レジストリ装置110−2は、書込みが完了した旨の通知(完了通知)をクライアント装置103に送信する。
ステップS1207では、クライアント装置103は、完了通知を受信する。
以上により、コンテナ立上時処理が終了する。
(B)コンテナイメージ更新時処理
図13は、更新されたコンテナイメージ112のコピーのリモートサイトでの作成に係る処理の一例を示す図である。
ステップS1301では、クライアント装置103は、利用しているコンテナ121を別名のコンテナイメージ112として生成するコマンド(イメージ名を指定して更新コマンド)を実行する。以下では、クライアント装置103がコンテナ121−1のコンテナイメージ112−1を記憶するレジストリ装置110−1に対して更新コマンドを実行する例について説明する。
ステップS1302では、レジストリ装置110−1は、コンテナイメージ112−1を更新(例えば、追加)する。
ステップS1303では、レジストリ装置110−1は、コンテナイメージ112−1の更新前のイメージ名、自身のレジストリ名(ローカルサイトのレジストリ名)、指定されたイメージ名を管理装置102に送信する。かかる送信により、管理装置102は、コンテナイメージ112の更新を検出することができる。
ステップS1304では、管理装置102は、レジストリ−イメージ管理テーブル304から、更新前のイメージ名に紐づくリモートサイトのレジストリ名を取得する。なお、管理装置102は、サイト−ストレージ管理テーブル302、サイト−レジストリ管理テーブル303、およびボリューム−イメージ管理テーブル305を用いて、リモートサイトのレジストリ名を取得してもよい。
ステップS1305では、管理装置102は、サイト−レジストリ管理テーブル303から、リモートサイトのレジストリ名に紐づくサイト名およびレジストリ装置名を取得する。本例では、管理装置102は、ローカルサイトのレジストリ装置110−1からリモートサイトのレジストリ装置110−2に、更新されたコンテナイメージ112−1(対象コンテナイメージ)をコピーする旨を指示する。かかる指示には、例えば、リモートサイトのサイト名、レジストリ装置名、およびレジストリ名が含まれる。
また、管理装置102は、管理テーブル102Aを更新する。より具体的には、管理装置102は、クライアント装置103で指定されたイメージ名とローカルサイトのレジストリ名とを用いて、レジストリ−イメージ管理テーブル304にレコードを追加する。また、管理装置102は、ボリューム−イメージ管理テーブル305において、コンテナ121−1に対応付けられているイメージ名を指定されたイメージ名で更新(上書き等)する。
ステップS1306では、レジストリ装置110−1は、対象コンテナイメージをリモートサイトのレジストリ装置名のレジストリ装置110−2に送信する。
ステップS1307では、レジストリ装置110−2は、レジストリ111−2に対象コンテナイメージを追加する。
ステップS1308では、レジストリ装置110−2は、更新が完了した旨の通知(完了通知)をクライアント装置103に送信する。
ステップS1309では、クライアント装置103は、完了通知を受信する。
以上により、コンテナイメージ更新時処理が終了する。このように、管理装置102は、レジストリ装置110−1のコンテナイメージ112−1が更新されたとき、更新されたコンテナイメージ112−1をレジストリ装置110−2に送信することにより、ローカルサイトとリモートサイトとで更新されたコンテナイメージ112−1を自動で同期する。かかる同期によれば、ローカルサイトにアクセスできない状況に陥ったときに、更新されたコンテナイメージ112−1を取り出せない事態を回避できるようになる。ただし、管理者が手動でコピー(同期)する構成を排除するものではない。
(C)フェイルオーバー時処理
図14は、リモートサイトでのコンテナ121の立ち上げに係る処理の一例を示す図である。
ステップS1401は、ローカルサイトの所定のストレージ装置130(本例では、ストレージ装置130―1を例に挙げて説明する。)で障害が発生したことを示す。
ステップS1402では、障害が発生したストレージ装置130−1とのレプリケーションが設定されているストレージ装置130−2は、ストレージ装置130−1で障害が発生したことを検知する。
ステップS1403では、ストレージ装置130−2は、レプリケーション管理テーブル332−2を参照し、障害が発生したストレージ装置130−1のストレージ装置名に紐づく正ボリュームおよび副ボリュームのレプリケーションモードを「ペア分割」に切り替える。
ステップS1404では、ストレージ装置130−2は、レプリケーション管理テーブル332−2から、「ペア分割」に切り替えた副ボリュームのストレージ装置名およびボリューム名を取得する。
ステップS1405では、コンテナ装置120−2は、取得された副ボリュームのストレージ装置名およびボリューム名を管理装置102に送信する。
ステップS1406では、管理装置102は、ボリューム−イメージ管理テーブル305から、受信したボリューム名をキーとして、副ボリュームのコンテナ装置名、ストレージ装置名、イメージ名を取得する。
ステップS1407では、管理装置102は、サイト−ストレージ管理テーブル302から、取得したストレージ装置名に紐づくサイト名を取得する。
ステップS1408では、管理装置102は、サイト−レジストリ管理テーブル303から、取得したサイト名に紐づくレジストリ装置名およびレジストリ名を取得する。管理装置102は、取得したレジストリ装置名のレジストリ装置110−2から、取得したコンテナ装置名のコンテナ装置120−2に対して、取得したレジストリ名のコンテナイメージ112−2をコピーし、コンテナ121−2を立ち上げ、受信したボリューム名のボリューム131−2にアタッチする旨の指示を、取得したレジストリ装置名のレジストリ装置110−2に送信する。かかる指示には、例えば、取得したレジストリ装置名、レジストリ名、イメージ名、コンテナ装置名、ストレージ装置名、受信したボリューム名などが含まれる。
ステップS1409では、レジストリ装置110−2は、受信した指示に基づいて、受信したイメージ名のコンテナイメージ112−2を読込む(受信したコンテナ装置名のコンテナ装置120−2に送信する)。
ステップS1410では、コンテナ装置120―2は、読込まれたコンテナイメージ112−2を書出す(受信する)。
ステップS1411では、コンテナ装置120―2は、コンテナ121−2を立ち上げ(起動し)、受信したボリューム名のボリューム131−2をアタッチ(紐付け)し、コンテナ121−2の立ち上げが完了した旨の通知(完了通知)をクライアント装置103に送信する。
ステップS1412では、クライアント装置103は、完了通知を受信する。
以上により、フェイルオーバー時処理が終了する。このように、リモートサイトのストレージ装置130−2は、ローカルサイトにおいてボリューム131−1に係る障害(例えば、レプリケーションが切れたこと)を検知すると、ボリューム131−1とボリューム131−2との対応関係を示すレプリケーション管理テーブル332(複製管理情報の一例)をもとに、ボリューム131−2のボリューム名を管理装置102に送信する。また、管理装置102は、管理テーブル102Aからボリューム131−2に対応付けられているコンテナイメージ112−2を特定し、コンテナイメージ112−2をもとにコンテナ121−2を起動してコンテナ121−2とボリューム131−2とを紐付ける旨の指示をコンテナ装置120−2に送信する。かかる構成によれば、レプリケーションが切れたことを契機に、コンテナ121−2が立ち上がるので、ダウンタイムを短くすることができる。また、コンテナ121−2の立ち上げを自動化できるので、障害の発生時における管理者の作業を軽減することができる。
本実施の形態によれば、例えば、適切なサイトのレジストリにコンテナイメージがコピーされるので、リモートサイトでのコンテナの立ち上げに必要なデータを確実に移行することができる。また、例えば、レプリケーション先のリモートサイトにコンテナイメージがコピーされるので、リモートサイトでのコンテナの立ち上げが容易となる。また、例えば、副ボリュームとコンテナイメージとの対応関係を台帳管理する必要なく、リモートサイトでのコンテナの立ち上げが可能となる。このように、リモートサイトでコンテナを短時間で起動することができるので、信頼性の高いシステムを実現することができる。
(2)第2の実施の形態
第2の実施の形態を説明する。その際、第1の実施の形態との相違点を主に説明し、第1の実施の形態との共通点については説明を省略または簡略する。
本実施の形態では、図15に示すように、コンテナ提供支援システム1500は、ローカルサイト(サイト101−1)と、複数のリモートサイト(サイト101−2およびサイト1501−2)とを含んで構成される。なお、本実施の形態では、ローカルサイトに複数のコンテナ装置が設けられ、コンテナ装置に対応してリモートサイトが設けられる構成を示しているが、これに限られるものではなく、一または複数のコンテナ装置に対応してリモートサイトが設けられてもよい。
ローカルサイトのサイト101−1には、コンテナ装置120−1およびコンテナ装置1520−1が設けられている。コンテナ装置1520−1は、コンテナエンジン1522−1を備え、レジストリ装置110−1に記憶されているコンテナイメージ1512−1をもとにコンテナ1521−1を起動する。コンテナ1521−1には、ボリューム1531−1(正ボリューム)が紐付けられ、ボリューム1531−1は、コンテナ1521−1上で動作するAPPにおいて使用される。
リモートサイトのサイト1501−2には、レジストリ装置1510−2と、コンテナ装置1520−2と、ストレージ装置1530−2とが設けられている。レジストリ装置1510は、レジストリ1511−2を備え、レジストリ1511−2には、コンテナイメージ1512−1のコピーであるコンテナイメージ1512−2が格納されている。また、ストレージ装置1530には、レプリケーションのために、ボリューム1531−1(正ボリューム)に対応するボリューム1531−2(副ボリューム)が設けられ、管理テーブル1532−2が設けられている。コンテナ装置1520−2のコンテナエンジン1522−2は、ローカルサイトのボリューム1531−1等に障害が発生した場合、レジストリ1511−2からコンテナイメージ1512−2をもとにコンテナ1521−2を立ち上げ、コンテナ1521−2にボリューム1531−2を紐付ける。
上述したコンテナ提供支援システム1500では、例えば、次のような特徴的な構成を有する。例えば、第1のレジストリ装置(例えば、レジストリ装置110−1)は、第1のコンテナイメージ(例えば、コンテナイメージ112−1)とは異なる他のコンテナイメージ(例えば、コンテナイメージ1512−1)を有する。第1のサイト(例えば、サイト101−1)には、上記他のコンテナイメージをもとに、アプリケーションプログラムの実行環境である他のコンテナ(例えば、コンテナ1521−1)を起動する他のコンテナ装置(例えば、コンテナ装置1520−1)が設けられる。第1のストレージ装置(例えば、ストレージ装置130−1)は、上記アプリケーションプログラムにおいて使用される上記第1のボリュームとは異なる他のボリューム(例えば、ボリューム1531−1)を提供する。第2のサイト(例えば、サイト101−2)とは異なるサイトである第3のサイト(例えば、サイト1501−2)には、上記他のコンテナイメージの複製である第3のコンテナイメージ(例えば、コンテナイメージ1512−2)を有する第3のレジストリ装置(例えば、レジストリ装置1510−2)と、上記第3のコンテナイメージをもとに第3のコンテナ(例えば、コンテナ1521−2)を起動する第3のコンテナ装置(例えば、コンテナ装置1520−2)と、上記第3のコンテナで実行されるアプリケーションプログラムにおいて使用され、上記他のボリュームの複製である第3のボリューム(例えば、ボリューム1531−2)を提供する第3のストレージ装置(例えば、ストレージ装置1530−2)と、が設けられる。管理部(例えば、管理装置102)は、上記他のボリュームの識別情報(例えば、コンテナ装置名、ストレージ装置名、ボリューム名)と、上記第3のボリュームの識別情報(例えば、コンテナ装置名、ストレージ装置名、ボリューム名)と、上記第1のコンテナイメージの識別情報(例えば、イメージ名)とが対応付けられた管理情報(例えば、ボリューム−イメージ管理テーブル305)を管理する。
本実施の形態では、例えば、コンテナ装置に対応してリモートサイトを設けられるので、ローカルサイトと同じ規模のシステムをリモートサイトに設けなくてもよくなる。また、運用に応じて(例えば、ローカルサイトのコンテナ装置のうち障害の発生時におけるコンテナの提供にかかる時間を短縮したいコンテナ装置に対して)、リモートサイトを設けることができるようになる。
(3)第3の実施の形態.
第3の実施の形態を説明する。その際、第1の実施の形態との相違点を主に説明し、第1の実施の形態との共通点については説明を省略または簡略する。
本実施の形態では、図16に示すように、コンテナ提供支援システム1600は、ローカルサイト(サイト101−1)と、複数のリモートサイト(サイト101−2およびサイト1601−2)とを含んで構成される。なお、本実施の形態では、ローカルサイトに複数のコンテナが設けられ、コンテナに対応してリモートサイトが設けられる構成を示しているが、これに限られるものではなく、一または複数のコンテナに対応してリモートサイトが設けられてもよい。
ローカルサイトのサイト101−1には、コンテナ装置120−1が設けられ、コンテナ装置120−1は、レジストリ装置110−1に記憶されているコンテナイメージ1612−1をもとにコンテナ1621−1を起動する。コンテナ1621−1には、ボリューム1631−1(正ボリューム)が紐付けられ、ボリューム1631−1は、コンテナ1621−1上で動作するAPPにおいて使用される。
リモートサイトのサイト1601−2には、レジストリ装置1610−2と、コンテナ装置1620−2と、ストレージ装置1630−2とが設けられている。レジストリ装置1610は、レジストリ1611−2を備え、レジストリ1611−2には、コンテナイメージ1612−1のコピーであるコンテナイメージ1612−2が格納されている。また、ストレージ装置1630には、レプリケーションのために、ボリューム1631−1(正ボリューム)に対応するボリューム1631−2(副ボリューム)が設けられ、管理テーブル1632−2が設けられている。コンテナ装置1620−2のコンテナエンジン1622−2は、ローカルサイトのボリューム1631−1等に障害が発生した場合、レジストリ1611−2からコンテナイメージ1612−2をもとにコンテナ1621−2を立ち上げ、コンテナ1621−2にボリューム1631−2を紐付ける。
上述したコンテナ提供支援システム1600では、例えば、次のような特徴的な構成を有する。例えば、第1のレジストリ装置(例えば、レジストリ装置110−1)は、第1のコンテナイメージ(例えば、コンテナイメージ112−1)とは異なる他のコンテナイメージ(例えば、コンテナイメージ1612−1)を有する。第1のコンテナ装置は、他のコンテナイメージをもとに、アプリケーションプログラムの実行環境である他のコンテナ(例えば、コンテナ1621−1)を起動する。第1のストレージ装置(例えば、ストレージ装置130−1)は、上記アプリケーションプログラムにおいて使用される上記第1のボリュームとは異なる他のボリューム(例えば、ボリューム1631−1)を提供する。第2のサイト(例えば、サイト101−2)とは異なるサイトである第3のサイト(例えば、サイト1601−2)には、上記他のコンテナイメージの複製である第3のコンテナイメージ(例えば、コンテナイメージ1612−2)を有する第3のレジストリ装置(例えば、レジストリ装置1610−2)と、上記第3のコンテナイメージをもとに第3のコンテナ(例えば、コンテナ1621−2)を起動する第3のコンテナ装置(例えば、コンテナ装置1620−2)と、上記第3のコンテナで実行されるアプリケーションプログラムにおいて使用され、上記他のボリュームの複製である第3のボリューム(例えば、ボリューム1631−2)を提供する第3のストレージ装置(例えば、ストレージ装置1630−2)と、が設けられる。管理部(例えば、管理装置102)は、上記他のボリュームの識別情報(例えば、コンテナ名、コンテナ装置名、ストレージ装置名、ボリューム名)と、上記第3のボリュームの識別情報(例えば、コンテナ名、コンテナ装置名、ストレージ装置名、ボリューム名)と、上記第1のコンテナイメージの識別情報(例えば、イメージ名)とが対応付けられた管理情報(例えば、ボリューム−イメージ管理テーブル305)を管理する。
本実施の形態では、例えば、コンテナに対応してリモートサイトを設けられるので、ローカルサイトと同じ規模のシステムをリモートサイトに設けなくてもよくなる。また、運用に応じて(例えば、ローカルサイトのコンテナのうち障害の発生時におけるコンテナの提供にかかる時間を短縮したいコンテナに対して)、リモートサイトを設けることができるようになる。
(4)他の実施の形態
なお上述の実施の形態においては、本発明をコンテナ提供支援システムに適用するようにした場合について述べたが、本発明はこれに限らず、この他種々のシステム、装置、方法、プログラムに広く適用することができる。
また上述の実施の形態においては、管理テーブル102Aが管理装置102に設けられる場合について述べたが、本発明はこれに限らず、管理テーブル102Aの一部または全部が他の記憶装置(例えば、ストレージ装置130)に設けられるようにしてもよい。
また上述の実施の形態においては、サイト−レジストリ管理テーブル303では、1つのサイト101に1つのレジストリ装置110が設けられることを前提としたテーブル構造について述べたが、本発明はこれに限らず、サイト−レジストリ管理テーブル303は、1つのサイト101に複数のレジストリ装置110が設けられることを前提としたテーブル構造にしてもよい。
また上述の実施の形態においては、ボリューム−イメージ管理テーブル305のイメージ名は、ローカルサイトとリモートサイトとで共通のものとして述べたが、本発明はこれに限らず、ローカルサイトとリモートサイトとイメージ名を異ならせる場合は、ボリューム−イメージ管理テーブル305に、副ボリュームに対応したイメージ名と、正ボリュームに対応したイメージ名とを設けるようにしてもよい。なお、この場合、正ボリュームに対応したイメージ名は設けられなくてもよい。
また、上述の実施の形態において、「インターフェース部」は、1以上のインターフェースでよい。当該1以上のインターフェースは、1以上の同種の通信インターフェースデバイス(例えば1以上のNIC(Network Interface Card))であってもよいし2以上の異種の通信インターフェースデバイス(例えばNICとHBA(Host Bus Adapter))であってもよい。
また、上述の実施の形態において、「メモリ部」は、1以上のメモリであり、典型的には主記憶デバイスでよい。メモリ部における少なくとも1つのメモリは、揮発性メモリであってもよいし不揮発性メモリであってもよい。
また、上述の実施の形態において、「PDEV部」は、1以上のPDEVであり、典型的には補助記憶デバイスでよい。「PDEV」は、物理的な記憶デバイス(Physical storage DEVice)を意味し、典型的には、不揮発性の記憶デバイス、例えばHDD(Hard Disk Drive)又はSSD(Solid State Drive)である。
また、上述の実施の形態において、「記憶部」は、メモリ部とPDEV部の少なくとも一部とのうちの少なくとも1つ(典型的には少なくともメモリ部)である。
また、上述の実施の形態において、「プロセッサ部」は、1以上のプロセッサである。少なくとも1つのプロセッサは、典型的には、CPU(Central Processing Unit)のようなマイクロプロセッサであるが、GPU(Graphics Processing Unit)のような他種のプロセッサでもよい。少なくとも1つのプロセッサは、シングルコアでもよいしマルチコアでもよい。少なくとも1つのプロセッサは、処理の一部又は全部を行うハードウェア回路(例えばFPGA(Field-Programmable Gate Array)又はASIC(Application Specific Integrated Circuit))といった広義のプロセッサでもよい。
また、上述の実施の形態において、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサ部によって実行されることで、定められた処理を、適宜に記憶部(例えばメモリ)及び/又はインターフェース部(例えば通信ポート)等を用いながら行うため、処理の主語がプロセッサとされてもよい。プログラムを主語として説明された処理は、プロセッサ部あるいはそのプロセッサ部を有する装置が行う処理としてもよい。また、プロセッサ部は、処理の一部又は全部を行うハードウェア回路(例えばFPGA(Field-Programmable Gate Array)またはASIC(Application Specific Integrated Circuit))を含んでもよい。プログラムは、プログラムソースから計算機のような装置にインストールされてもよい。プログラムソースは、例えば、プログラム配布サーバまたは計算機が読み取り可能な記録媒体(例えば非一時的な記録媒体)であってもよい。また、以下の説明において、2以上のプログラムが1つのプログラムとして実現されてもよいし、1つのプログラムが2以上のプログラムとして実現されてもよい。
また、上述の実施の形態において、各テーブルの構成は一例であり、1つのテーブルは、2以上のテーブルに分割されてもよいし、2以上のテーブルの全部または一部が1つのテーブルであってもよい。
また、上述の実施の形態において、説明の便宜上、XXテーブル、XXファイルを用いて各種のデータを説明したが、データ構造は限定されるものではなく、XX情報などと表現してもよい。
また、上記の説明において、各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記憶装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また上述した構成については、本発明の要旨を超えない範囲において、適宜に、変更したり、組み替えたり、組み合わせたり、省略したりしてもよい。
100……コンテナ提供支援システム、102……管理装置、110……レジストリ装置、112……コンテナイメージ、120……コンテナ装置、121……コンテナ、130……ストレージ装置、131……ボリューム。

Claims (10)

  1. 第1のサイトには、アプリケーションプログラムの実行環境である第1のコンテナの起動に用いる第1のコンテナイメージを有する第1のレジストリ装置と、前記第1のコンテナイメージをもとに前記第1のコンテナを起動する第1のコンテナ装置と、前記アプリケーションプログラムにおいて使用される第1のボリュームを提供する第1のストレージ装置とが設けられ、
    第2のサイトには、前記第1のボリュームの複製である第2のボリュームを提供する第2のストレージ装置が設けられ、
    前記第1のボリュームの識別情報と、前記第2のボリュームの識別情報と、前記第1のコンテナイメージの識別情報とが対応付けられた管理情報を管理する管理部を備える、
    ことを特徴とするコンテナ提供支援システム。
  2. 前記管理部は、前記第1のボリュームを指定して前記第1のコンテナを立ち上げる旨の要求をクライアント装置から受信すると、
    前記第2のストレージ装置に前記第2のボリュームの作成を指示し、前記第2のストレージ装置により作成された前記第2のボリュームの識別情報を取得し、
    前記要求により指定される前記第1のボリュームの識別情報と、前記第2のストレージ装置から取得する前記第2のボリュームの識別情報と、前記第1のコンテナの起動に用いる前記第1のコンテナイメージの識別情報とを対応付けて前記管理情報を生成する、
    ことを特徴とする請求項1に記載のコンテナ提供支援システム。
  3. 前記第2のサイトには、前記第1のコンテナイメージの複製である第2のコンテナイメージを有する第2のレジストリ装置と、前記第2のコンテナイメージをもとに第2のコンテナを起動する第2のコンテナ装置とが設けられる、
    ことを特徴とする請求項2に記載のコンテナ提供支援システム。
  4. 前記管理部は、前記第2のボリュームが作成されたとき、前記第1のコンテナイメージを前記第2のコンテナイメージとして前記第2のレジストリ装置に複製する、
    ことを特徴とする請求項3に記載のコンテナ提供支援システム。
  5. 前記管理部は、前記第1のコンテナイメージが更新されたとき、更新されたコンテナイメージを前記第2のレジストリ装置に送信する、
    ことを特徴とする請求項3に記載のコンテナ提供支援システム。
  6. 前記第2のコンテナ装置は、前記第1のサイトで障害が発生した際、前記第2のコンテナイメージをもとに前記第2のコンテナを起動し、前記第2のコンテナと前記第2のボリュームとを紐付ける、
    ことを特徴とする請求項3に記載のコンテナ提供支援システム。
  7. 前記第2のストレージ装置は、前記第1のサイトにおいて前記第1のボリュームに係る障害を検知すると、前記第1のボリュームと前記第2のボリュームとの対応関係を示す複製管理情報をもとに、前記第2のボリュームの識別情報を前記管理部に送信し、
    前記管理部は、前記管理情報から前記第2のボリュームに対応付けられている前記第2のコンテナイメージを特定し、前記第2のコンテナイメージをもとに前記第2のコンテナを起動して前記第2のコンテナと前記第2のボリュームとを紐付ける旨の指示を前記第2のコンテナ装置に送信する、
    ことを特徴とする請求項3に記載のコンテナ提供支援システム。
  8. 前記第1のレジストリ装置は、前記第1のコンテナイメージとは異なる他のコンテナイメージを有し、
    前記第1のサイトには、前記他のコンテナイメージをもとに、アプリケーションプログラムの実行環境である他のコンテナを起動する他のコンテナ装置が設けられ、
    前記第1のストレージ装置は、前記アプリケーションプログラムにおいて使用される前記第1のボリュームとは異なる他のボリュームを提供し、
    前記第2のサイトとは異なるサイトである第3のサイトには、前記他のコンテナイメージの複製である第3のコンテナイメージを有する第3のレジストリ装置と、前記第3のコンテナイメージをもとに第3のコンテナを起動する第3のコンテナ装置と、前記第3のコンテナで実行されるアプリケーションプログラムにおいて使用され、前記他のボリュームの複製である第3のボリュームを提供する第3のストレージ装置とが設けられ、
    前記管理部は、前記他のボリュームの識別情報と、前記第3のボリュームの識別情報と、前記第1のコンテナイメージの識別情報とが対応付けられた管理情報を管理する、
    ことを特徴とする請求項1に記載のコンテナ提供支援システム。
  9. 前記第1のレジストリ装置は、前記第1のコンテナイメージとは異なる他のコンテナイメージを有し、
    前記第1のコンテナ装置は、前記他のコンテナイメージをもとに、アプリケーションプログラムの実行環境である他のコンテナを起動し、
    前記第1のストレージ装置は、前記アプリケーションプログラムにおいて使用される前記第1のボリュームとは異なる他のボリュームを提供し、
    前記第2のサイトとは異なるサイトである第3のサイトには、前記他のコンテナイメージの複製である第3のコンテナイメージを有する第3のレジストリ装置と、前記第3のコンテナイメージをもとに第3のコンテナを起動する第3のコンテナ装置と、前記第3のコンテナで実行されるアプリケーションプログラムにおいて使用され、前記他のボリュームの複製である第3のボリュームを提供する第3のストレージ装置とが設けられ、
    前記管理部は、前記他のボリュームの識別情報と、前記第3のボリュームの識別情報と、前記第1のコンテナイメージの識別情報とが対応付けられた管理情報を管理する、
    ことを特徴とする請求項1に記載のコンテナ提供支援システム。
  10. 第1のサイトには、アプリケーションプログラムの実行環境である第1のコンテナの起動に用いる第1のコンテナイメージを有する第1のレジストリ装置と、前記第1のコンテナイメージをもとに前記第1のコンテナを起動する第1のコンテナ装置と、前記アプリケーションプログラムにおいて使用される第1のボリュームを提供する第1のストレージ装置とが設けられ、
    第2のサイトには、前記第1のボリュームの複製である第2のボリュームを提供する第2のストレージ装置が設けられ、
    管理部が、前記第1のボリュームを指定して前記第1のコンテナを立ち上げる旨の要求をクライアント装置から受信する第1のステップと、
    前記管理部が、前記第2のストレージ装置に前記第2のボリュームの作成を指示し、前記第2のストレージ装置により作成された前記第2のボリュームの識別情報を取得するステップと、
    前記管理部が、前記要求により指定される前記第1のボリュームの識別情報と、前記第2のストレージ装置から取得する前記第2のボリュームの識別情報と、前記第1のコンテナの起動に用いる前記第1のコンテナイメージの識別情報とを対応付けて管理情報を生成する第3のステップと、
    備えることを特徴とするコンテナ提供支援方法。
JP2018233904A 2018-12-13 2018-12-13 コンテナ提供支援システムおよびコンテナ提供支援方法 Active JP6759317B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018233904A JP6759317B2 (ja) 2018-12-13 2018-12-13 コンテナ提供支援システムおよびコンテナ提供支援方法
US16/569,436 US20200192693A1 (en) 2018-12-13 2019-09-12 Container provision support system and container provision support method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018233904A JP6759317B2 (ja) 2018-12-13 2018-12-13 コンテナ提供支援システムおよびコンテナ提供支援方法

Publications (2)

Publication Number Publication Date
JP2020095547A true JP2020095547A (ja) 2020-06-18
JP6759317B2 JP6759317B2 (ja) 2020-09-23

Family

ID=71070881

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018233904A Active JP6759317B2 (ja) 2018-12-13 2018-12-13 コンテナ提供支援システムおよびコンテナ提供支援方法

Country Status (2)

Country Link
US (1) US20200192693A1 (ja)
JP (1) JP6759317B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022254953A1 (ja) * 2021-06-03 2022-12-08 オムロン株式会社 制御システムおよび制御方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11875037B2 (en) * 2020-07-01 2024-01-16 Viewpointe Archive Services, Llc Request-based content services replication
KR20220057355A (ko) * 2020-10-29 2022-05-09 삼성전자주식회사 호스트 및 스토리지 시스템을 포함하는 컴퓨팅 시스템 및 컴퓨팅 시스템의 동작 방법
US11550491B2 (en) * 2021-04-30 2023-01-10 Nutanix, Inc. Container-based application processing
JP2023102641A (ja) * 2022-01-12 2023-07-25 株式会社日立製作所 計算機システム及びスケールアップ管理方法
JP2024016596A (ja) 2022-07-26 2024-02-07 株式会社日立製作所 ストレージシステムおよび制御方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010079391A (ja) * 2008-09-24 2010-04-08 Hitachi Ltd レプリケーション環境構築方法およびストレージシステム
JP2014520344A (ja) * 2011-06-20 2014-08-21 マイクロソフト コーポレーション リカバリーサイトにおけるレプリカされた仮想ストレージの管理
JP2017111761A (ja) * 2015-12-18 2017-06-22 エヌ・ティ・ティ・コミュニケーションズ株式会社 コンテナ収容装置、コンテナ作成方法、及びプログラム
JP2017219972A (ja) * 2016-06-06 2017-12-14 富士通株式会社 コンピュータプログラム、情報処理方法、管理ノードおよび情報処理システム
WO2018007884A1 (en) * 2016-07-08 2018-01-11 International Business Machines Corporation Providing debug information on production containers using debug containers
WO2018048628A1 (en) * 2016-09-09 2018-03-15 Veritas Technologies Llc Systems and methods for performing live migrations of software containers
WO2018064568A1 (en) * 2016-09-29 2018-04-05 Amazon Technologies, Inc. Managed container instances

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010079391A (ja) * 2008-09-24 2010-04-08 Hitachi Ltd レプリケーション環境構築方法およびストレージシステム
JP2014520344A (ja) * 2011-06-20 2014-08-21 マイクロソフト コーポレーション リカバリーサイトにおけるレプリカされた仮想ストレージの管理
JP2017111761A (ja) * 2015-12-18 2017-06-22 エヌ・ティ・ティ・コミュニケーションズ株式会社 コンテナ収容装置、コンテナ作成方法、及びプログラム
JP2017219972A (ja) * 2016-06-06 2017-12-14 富士通株式会社 コンピュータプログラム、情報処理方法、管理ノードおよび情報処理システム
WO2018007884A1 (en) * 2016-07-08 2018-01-11 International Business Machines Corporation Providing debug information on production containers using debug containers
WO2018048628A1 (en) * 2016-09-09 2018-03-15 Veritas Technologies Llc Systems and methods for performing live migrations of software containers
WO2018064568A1 (en) * 2016-09-29 2018-04-05 Amazon Technologies, Inc. Managed container instances

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022254953A1 (ja) * 2021-06-03 2022-12-08 オムロン株式会社 制御システムおよび制御方法

Also Published As

Publication number Publication date
US20200192693A1 (en) 2020-06-18
JP6759317B2 (ja) 2020-09-23

Similar Documents

Publication Publication Date Title
JP6759317B2 (ja) コンテナ提供支援システムおよびコンテナ提供支援方法
US8117161B2 (en) Storage system, NAS server and snapshot acquisition method
JP4800046B2 (ja) ストレージシステム
JP5172574B2 (ja) アプリケーションデータのバックアップ構成構築に用いる管理計算機
US8438136B2 (en) Backup catalog recovery from replicated data
JP6344798B2 (ja) データ送信方法、データ受信方法、及びストレージデバイス
JP4325524B2 (ja) スイッチ装置とシステム並びにバックアップ及びリストア方法とプログラム
CN103677656B (zh) 虚拟存储系统和远程复制系统的管理设备与系统
JP5244430B2 (ja) ストレージ装置及びその制御方法
US10169165B2 (en) Restoring data
JP4908872B2 (ja) 計算機システム、管理計算機及び記憶領域の管理方法
JP2005031716A (ja) データバックアップの方法及び装置
US20110061049A1 (en) Storage system, and remote copy control method therefor
US20080195827A1 (en) Storage control device for storage virtualization system
JP2004252686A (ja) 情報処理システム
US9026753B2 (en) Snapshot volume generational management for snapshot copy operations using differential data
JP2006209636A (ja) スナップショット維持方法
JP2005242632A (ja) 情報処理装置の制御方法、情報処理装置、及びストレージ装置の制御方法
JPWO2007099636A1 (ja) ファイルシステム移行方法、ファイルシステム移行プログラム及びファイルシステム移行装置
US8117405B2 (en) Storage control method for managing access environment enabling host to access data
JP2013161383A (ja) 情報処理装置、情報処理方法、プログラム及び情報処理システム
JP6291977B2 (ja) 分散ファイルシステム、バックアップファイル取得方法、制御装置及び管理装置
US20240111638A1 (en) Computer system and data control method
US20240070035A1 (en) Information processing system and backup method
JP2024016596A (ja) ストレージシステムおよび制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190710

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200819

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200902

R150 Certificate of patent or registration of utility model

Ref document number: 6759317

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150