JP2013120471A - 自動復旧システム、および自動復旧方法 - Google Patents

自動復旧システム、および自動復旧方法 Download PDF

Info

Publication number
JP2013120471A
JP2013120471A JP2011267654A JP2011267654A JP2013120471A JP 2013120471 A JP2013120471 A JP 2013120471A JP 2011267654 A JP2011267654 A JP 2011267654A JP 2011267654 A JP2011267654 A JP 2011267654A JP 2013120471 A JP2013120471 A JP 2013120471A
Authority
JP
Japan
Prior art keywords
middleware
program
file
pattern definition
server
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.)
Pending
Application number
JP2011267654A
Other languages
English (en)
Inventor
Yoji Machida
陽二 町田
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 Systems Ltd
Original Assignee
Hitachi Systems 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 Systems Ltd filed Critical Hitachi Systems Ltd
Priority to JP2011267654A priority Critical patent/JP2013120471A/ja
Publication of JP2013120471A publication Critical patent/JP2013120471A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】ミドルウェアのパターンに応じて自動的に適切にシステムやサーバの復旧を可能とする自動復旧システム、および自動復旧方法を提供する。
【解決手段】ミドルウェアを有した装置のシステムを復旧させるための自動復旧システムであって、操作者からミドルウェアの指定を受け付ける操作受付部と、受け付けられたミドルウェアのミドルウェア名に基づいて、ミドルウェアを構成するプログラムおよび設定ファイルのパターンを定義したパターン定義ファイルを取得し、取得したパターン定義ファイルを解析してミドルウェアに合致した設定ファイルをリポジトリサーバから取得し、パターン定義ファイルに示されたプログラムをプログラム管理サーバから取得する解析部と、解析部が解析したプログラムを実行し、設定ファイルをデプロイしてシステムを復旧させる生成部と、を備える。
【選択図】 図1

Description

本発明は、ミドルウェアを有したサーバやシステムを自動的に復旧させる自動復旧システム、および自動復旧方法に関するものである。
昨今、クラウドサービスの提供が盛んである。クラウドサービスの提供は、仮想化技術を利用した本番環境で行われる傾向にある。こうした環境下にあるサーバやシステムをバックアップするための方法として、仮想マシン全体のシステムバックアップや、サーバやシステムの構成を変更する作業を行う際のリカバリ用のスナップショットによるバックアップが存在する。例えば、特許文献1では、仮想化技術のスナップショットにより現行のバージョンを管理しており、障害時には、そのスナップショットより復元可能な仮想マシン管理システムを提案している。
しかしながら、この場合には事前にスナップショットによる復元を計画していることが前提であり、例えば、システムバックアップの場合には、特にサーバの停止計画が必要となる。また、データセンタ内に配置している仮想マシンの場合には、他のシステムと共存してリソースを共有している関係上、同一仮想マシンのスナップショットを多数保持しておくことが技術的に可能であっても、実運用上では頻繁にそれらのスナップショットを取得できない場合が多い。さらに、予期せぬ論理障害が発生した場合、あるいはスナップショットによるバックアップが無く、オペレーションミスによりリカバリが困難な場合には、システムバックアップからの復元では数時間要することが多い。
特開2008−84029号公報
上述した特許文献1では、仮想化技術のスナップショットにより現行のバージョンを管理しており、障害時には、そのスナップショットより復元可能となっている。しかしながら、例えば、複数のスナップショットを取得して保持する場合、復元の際に古いスナップショットを一旦削除した上で変更内容の差分をマージするが、この際には、削除するスナップショットの順番を意識しておく必要が生じる。
また、復元先のサーバ等で、復元対象となるスナップショットのファイルのバージョンに対応していない場合には、その順番により差分内容が仮想マシンに反映されない場合がある。したがって、スナップショットのファイルの管理のバージョンを把握しておく必要がある。スナップショットの内容は、あくまで仮想マシンの一時点の状態を管理しているに過ぎないため、例えば、あるサーバやシステムがミドルウェアを使用している場合には、そのミドルウェアのバージョンや設定内容等のパターンは、実際に復元して比較しない限り、正しく復元されているか否か判断がつかないことが多い。特に、ミドルウェアはOS(Operation System)やアプリケーションとの間の階層に位置するものであり、それ自体でバージョンや設定内容等のパターンを確認することが難しく、上述したように、実際に復元して比較してはじめて正しく復元されたことがわかる場合が多い。
本発明は、上記に鑑みてなされたものであって、ミドルウェアのパターンに応じて自動的に適切にシステムやサーバの復旧を可能とする自動復旧システム、および自動復旧方法を提供することを目的とする。
上述した課題を解決し、目的を達成するために、本発明にかかる自動復旧システムは、ミドルウェアを有した装置のシステムを復旧させるための自動復旧システムであって、操作者から前記ミドルウェアの指定を受け付ける操作受付部と、受け付けられた前記ミドルウェアのミドルウェア名に基づいて、前記ミドルウェアを構成するプログラムおよび設定ファイルのパターンを定義したパターン定義ファイルを取得し、取得した前記パターン定義ファイルを解析して前記ミドルウェアに合致した設定ファイルをリポジトリサーバから取得し、前記パターン定義ファイルに示されたプログラムをプログラム管理サーバから取得する解析部と、前記解析部が解析した前記プログラムを実行し、前記設定ファイルをデプロイして前記システムを復旧させる生成部と、を備えることを特徴とする。
また、本発明は、上記自動復旧システムで行われる自動復旧方法である。
本発明によれば、ミドルウェアのパターンに応じて自動的に適切にシステムやサーバの復旧を可能とする自動復旧システム、および自動復旧方法を提供することができるという効果を奏する。
本実施の形態における自動復旧システムの構成を示す図である。 自動ツールサーバの機能的な構成および概念を示すブロック図である。 ミドルウェアパターン定義ファイルの例を示す図である。 自動復旧システムの自動ツールサーバが有する解析部が行う解析処理の処理手順を示すフローチャートである。 自動復旧システムの自動ツールサーバが有する生成部が行う生成処理の処理手順を示すフローチャートである。
以下に添付図面を参照して、本発明にかかる自動復旧システム、および自動復旧方法の実施の形態を詳細に説明する。
図1は、本実施の形態における自動復旧システム1000の構成を示す図である。図1に示すように、自動復旧システム1000は、自動ツールサーバ100と、パターン管理サーバ110と、プログラム管理サーバ120と、リポジトリサーバ130と、を有して構成されている。これらの各装置は、LAN(Local Area Network)やWAN(Wide Area Network)等の一般的なセットワークNによって接続されている。また、後述する処理を行うことにより、復旧対象となったサーバ(復旧サーバ)200と、パターン管理サーバ110とが、上述したネットワークNによって接続されている。
以下に示すように、自動復旧システム1000は、第一に、プログラム管理サーバ120に記憶されたミドルウェアの復旧に必要なプログラム、およびリポジトリサーバ130に記憶されたミドルウェアの設定を定めた設定ファイルから定義したパターン管理サーバ110に記憶されたミドルウェアパターンを利用して、サーバやシステムを自動的に復旧する点、第二に、リポジトリサーバ130によりライブラリ管理しているミドルウェアの設定ファイルのバージョンに併せて自動的にサーバやシステムを復旧する点の2点である。
自動ツールサーバ100は、操作者からの指示を受け付けてサーバやシステムを復旧するための処理を行うものである。図2は、自動ツールサーバ100の機能的な構成および概念を示すブロック図である。図2に示すように、自動ツールサーバ100は、機能的には、解析部101と、生成部102と、を有している。なお、特に図示していないが、自動ツールサーバ100は、操作者からの操作(ミドルウェアの指定やそのバージョンの指定等)を受け付けるキーボードやマウス等の操作受付部や、他の装置との間で通信するためのNIC(Network Interface Card)等の通信部を有しているものとする。
解析部101は、不図示の操作受付部により指定されたミドルウェアを特定するためのミドルウェア名、そのミドルウェアのバージョンを参照してパターン管理サーバ110にアクセスし、ミドルウェア名およびバージョンをキーとして、ミドルウェアパターン定義ファイル111(Apache用)やミドルウェアパターン定義ファイル112(MySQL用)を取得してその内容を解析する。そして、解析部101は、解析した内容から必要となるプログラムおよび設定ファイルを特定する。
そして、解析部101は、そのプログラムのプログラム名をキーとして、プログラム管理サーバ120にアクセスし、必要なプログラム121(Apache用)やプログラム122(MySQL用)を取得する。また、解析部101は、特定された設定ファイルのファイル名をキーとして、リポジトリサーバ130にアクセスし、必要な設定ファイル131(Apache用)や設定ファイル132(MySQL用)を取得する。なお、以下ではApache用のミドルウェアを前提として説明しているが、MySQL用のミドルウェアやこれ以外の種々のミドルウェアについてもこれと同様に処理することができる。
生成部102は、解析部101が取得したプログラム121および設定ファイル131を実行し、復旧対象となっているサーバやシステムを自動的に復旧させる。また、生成部102は、解析部101から受け取ったプログラムが依存している他のプログラム(例えば、そのプログラムの実行に必要となるサブモジュール等)である依存関係プログラム123が存在する場合には、その依存関係プログラム123のプログラム名をキーとして、再度プログラム管理サーバ120にアクセスし、その依存関係プログラム123を取得した後に実行し、復旧対象となっているサーバやシステムを自動的に復旧させる。
なお、自動ツールサーバ100は、復旧対象とするサーバやシステムで用いられるミドルウェア名およびバージョンを標準構成とした指示を受けることにより、後述する各種の処理を実行する。なお、ミドルウェア名を複数指定する場合には、”,”区切りで複数指定することも可能である。また、バージョンには、リポジトリサーバ130が管理している設定ファイルのバージョンが指定される。
自動ツールサーバ100が有する上述した各部は、解析部101、および生成部102の各機能を実現するためのソフトウェアプログラムにより実行される。これらのソフトウェアプログラムは、例えば、上述した各部を含むモジュール構成となっており、実際のハードウェアとしては、CPU等の制御部がHDD等の記録装置からこれらのソフトウェアプログラムを読み出して実行することにより、上記各部が主記憶装置上にロードされ、解析部101、および生成部102の各部が主記憶装置上に生成されるようになっている。
また、上述したソフトウェアプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記録媒体に記録されて提供することも可能である。さらに、これらのソフトウェアプログラムを、ネットワーク経由でダウンロードさせて提供または配布するように構成してもよい。続いて、パターン管理サーバ110について説明する。
パターン管理サーバ110は、ミドルウェアを構成するプログラムおよび設定ファイルのパターンを定義したXML(Extensible Markup Language)形式のファイルであるミドルウェアパターン定義ファイル(ミドルウェアパターン定義ファイル111(Apache用)やミドルウェアパターン定義ファイル112(MySQL用))を記憶するものである。例えば、ミドルウェアパターン定義ファイル111には、リポジトリサーバ130が管理しているそのミドルウェアパターン定義ファイル111に対応する設定ファイルのバージョンが記述されている。通常、設定ファイルは複数のバージョンによって管理されているため、同一のファイル名であっても複数の設定ファイルについて記述されている場合もある。これにより、指定された任意のバージョンの設定ファイルを用いて、ミドルウェアを搭載するシステムやサーバの自動復旧が可能となる。
図3は、上述したミドルウェアパターン定義ファイル111の例を示す図である。ミドルウェアパターン定義ファイル111は、復旧対象のミドルウェアごと(種類ごと)に設けられ、そのミドルウェアを定義するものであり、図3に示すように、OSの指定(Windows(登録商標)またはLinux(登録商標))、復旧すべきファイルのタイプの指定(設定ファイルおよびプログラム)、バージョンの指定を含む種々の定義が対応付けて記述されている。このような定義を記述することにより、ミドルウェアの自動復旧する際に必要となるプログラムおよび設定ファイルを把握できるようになっている。図3に示す例では、OSの指定として「Linux」、復旧すべきファイルのタイプの指定として「config」および「program」、バージョンの指定として「5000」あるいは「6000」が記述されていることを示している。続いて、図1に戻り、プログラム管理サーバ120について説明する。
プログラム管理サーバ120は、ミドルウェアのプログラム本体およびそれに付随するプログラムを管理するものである。本実施の形態においては、プログラム管理サーバ120には、Windows対象およびLinux対象のミドルウェアを保持しているが、特にこれに限定されることはない。また、ある1つのミドルウェアのプログラムであっても、プログラム管理サーバ120は、そのミドルウェアが実行される環境のOSに対応した複数のミドルウェアを記憶するので、そのOSに応じたサーバやシステムの自動復旧が可能となる。
リポジトリサーバ130は、上述した設定ファイルを管理するものである。リポジトリサーバ130は、例えば、ミドルウェアのバージョンを管理するための管理ソフトウェアのSVN(Subversion)を利用し、各ミドルウェアに対応する設定ファイルを管理する。リポジトリサーバ130は、デフォルトの状態から随時変更した設定ファイルをSVN上に管理することにより、異なるバージョンの設定ファイルを保持することが可能となる。リポジトリサーバ130が管理する設定ファイルは、仮想化技術のシステムバックアップやスナップショットに比べ、ファイルサイズも小さく管理しやすいという利点がある。さらに、データセンタ内のリソースを追加利用することがないため、より小さな容量のリソースで管理することができるという利点がある。
続いて、自動復旧システム1000で行われる処理について説明する。図4は、自動復旧システム1000の自動ツールサーバ100が有する解析部101が行う解析処理の処理手順を示すフローチャートである。
図4に示すように、まず、解析部101は、不図示の操作受付部により利用者から指定されたミドルウェア名のミドルウェア、バージョンをロードして取得する(ステップS401)。その後、解析部101は、パターン管理サーバ110にアクセスし、指定されたミドルウェア名のミドルウェアパターン定義ファイルをロードする(ステップS402)。
そして、解析部101は、ステップS401においてバージョンの指定があるか否かを判定し(ステップS403)、バージョンの指定があると判定した場合(ステップS403;Yes)、指定されたそのバージョンに合致した設定ファイルを取得する(ステップS404)。一方、解析部101は、バージョンの指定がない(省略されている)と判定した場合(ステップS403;No)、最新バージョンの設定ファイルを取得する(ステップS405)。
ステップS404またはS405のいずれかの処理が終了すると、解析部101は、ロードしたミドルウェアパターン定義ファイルに記載されたプログラムを取得し(ステップS406)、そのプログラムと設定ファイルとを生成部102に引き渡す(ステップS407)。このステップS407の処理が終了すると、図4に示した解析処理の全ての処理が終了する。続いて、自動復旧システム1000の自動ツールサーバ100が有する生成部102が行う生成処理について説明する。
図5は、自動復旧システム1000の自動ツールサーバ100が有する生成部102が行う生成処理の処理手順を示すフローチャートである。
図5に示すように、生成部102は、解析部101が取得したプログラムを解析し、依存関係プログラムがあるか否かを判定し(ステップS501)、依存関係プログラムがないと判定した場合(ステップS501;No)、ステップS503に進み、解析部101から受け取ったプログラムを実行し(ステップS503)、ステップS505に進む。
一方、生成部102は、依存関係プログラムがないと判定した場合(ステップS501;No)、その依存関係プログラム123のプログラム名をキーとして、再度プログラム管理サーバ120にアクセスしてその依存関係プログラム123を取得し(ステップS502)、その後、解析部101から受け取ったプログラムと取得した依存関係プログラム123とを実行する(ステップS504)。
そして、生成部102は、解析部101から受け取った設定ファイルをデプロイし(ステップS505)、ミドルウェアのサービスをリロードし(ステップS506)、復旧対象となっているサーバやシステムを自動的に復旧させる。
このように、本実施の形態においては、ミドルウェアの自動復旧に必要な、プログラム本体、ミドルウェアの設定ファイルのパターンを管理したミドルウェアパターン定義ファイルを用いてサーバやシステムの自動復旧を可能とし、さらに、ミドルウェアパターン定義ファイルをロードする為、自動ツールサーバで復旧対象のミドルウェアのみ(あるいは必要に応じてそのバージョン)を指定することにより、独立性が確保できる構造としている。
また、ミドルウェアパターン定義ファイルに設定ファイルのバージョンを保持することにより、任意のバージョンの設定ファイルで復旧することを可能としている。これにより、仮想化技術のシステムバックアップ機能やスナップショット機能のようにデータセンタ内のリソースを使用せず、設定ファイルをライブラリ管理しておくことだけで済むようになっている。
すなわち、本発明では、論理障害等により、ミドルウェアの再構築が必要な際に、ミドルウェアパターンにより、自動復旧(自動インストール)することが可能になる。また、ミドルウェアパターン定義ファイルで設定したバージョンにより、設定ファイルリポジトリに管理している任意のバージョンの設定ファイルを用いてピンポイントの状態の復旧が可能になる。設定ファイルの管理のみ行えばよいのでメンテナンスを極小化できる。なお、本発明は障害時を想定した発明ではあるが、新規サーバ構築する際にも利用ができるなど汎用性が高いといえる。
なお、本発明は、上記実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。例えば、上述した各種のサーバを1台のサーバとして構成したり、これらを適宜組み合わせても良い。
1000 自動復旧システム
100 自動ツールサーバ
101 解析部
102 生成部
110 パターン管理サーバ
111、112 ミドルウェアパターン定義ファイル
120 プログラム管理サーバ
121、122 プログラム
123 依存関係プログラム
130 リポジトリサーバ
131、132 設定ファイル
N ネットワーク。

Claims (5)

  1. ミドルウェアを有した装置のシステムを復旧させるための自動復旧システムであって、
    操作者から前記ミドルウェアの指定を受け付ける操作受付部と、
    受け付けられた前記ミドルウェアのミドルウェア名に基づいて、前記ミドルウェアを構成するプログラムおよび設定ファイルのパターンを定義したパターン定義ファイルを取得し、取得した前記パターン定義ファイルを解析して前記ミドルウェアに合致した設定ファイルをリポジトリサーバから取得し、前記パターン定義ファイルに示されたプログラムをプログラム管理サーバから取得する解析部と、
    前記解析部が解析した前記プログラムを実行し、前記設定ファイルをデプロイして前記システムを復旧させる生成部と、
    を備えることを特徴とする自動復旧システム。
  2. 前記パターン定義ファイルには前記設定ファイルのバージョン情報が含まれ、
    前記操作受付部は、さらに前記バージョン情報の指定を受け付け、
    前記解析部は、受け付けられた前記バージョン情報に合致する設定ファイルを前記リポジトリサーバから取得する、
    ことを特徴とする請求項1に記載の自動復旧システム。
  3. 前記生成部は、前記解析部が解析した前記プログラムが依存している他のプログラムが存在する場合には、前記他のプログラムのプログラム名に基づいて、前記プログラム管理サーバから前記他のプログラムを取得し、前記プログラムと前記他のプログラムとを実行する、
    ことを特徴とする請求項1または2に記載の自動復旧システム。
  4. 前記パターン定義ファイルは、複数のミドルウェアの種類ごとに設けられ、
    前記解析部は、前記複数のミドルウェアの種類ごとに設けられたパターン定義ファイルの中から、受け付けられた前記ミドルウェアのパターン定義ファイルを取得する、
    ことを特徴とする請求項1〜3のいずれか1項に記載の自動復旧システム。
  5. ミドルウェアを有した装置のシステムを復旧させるための自動復旧システムで行われる自動復旧方法であって、
    操作者から前記ミドルウェアの指定を受け付けるステップと、
    受け付けられた前記ミドルウェアのミドルウェア名に基づいて、前記ミドルウェアを構成するプログラムおよび設定ファイルのパターンを定義したパターン定義ファイルを取得するステップと、
    取得した前記パターン定義ファイルを解析して前記ミドルウェアに合致した設定ファイルをリポジトリサーバから取得し、前記パターン定義ファイルに示されたプログラムをプログラム管理サーバから取得するステップと、
    解析された前記プログラムを実行し、前記設定ファイルをデプロイして前記システムを復旧させるステップと、
    を含むことを特徴とする自動復旧方法。
JP2011267654A 2011-12-07 2011-12-07 自動復旧システム、および自動復旧方法 Pending JP2013120471A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011267654A JP2013120471A (ja) 2011-12-07 2011-12-07 自動復旧システム、および自動復旧方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011267654A JP2013120471A (ja) 2011-12-07 2011-12-07 自動復旧システム、および自動復旧方法

Publications (1)

Publication Number Publication Date
JP2013120471A true JP2013120471A (ja) 2013-06-17

Family

ID=48773088

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011267654A Pending JP2013120471A (ja) 2011-12-07 2011-12-07 自動復旧システム、および自動復旧方法

Country Status (1)

Country Link
JP (1) JP2013120471A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016526726A (ja) * 2013-07-03 2016-09-05 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 動的に生成される仮想ディスク・コンテンツを用いてプロビジョニング時間を最適化する方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016526726A (ja) * 2013-07-03 2016-09-05 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 動的に生成される仮想ディスク・コンテンツを用いてプロビジョニング時間を最適化する方法

Similar Documents

Publication Publication Date Title
KR102047216B1 (ko) 서비스의 2차 위치에서의 작업의 재생 기법
US9734019B2 (en) Systems and methods for host image transfer
US9767424B2 (en) Zero downtime maintenance with maximum business functionality
US8316224B2 (en) Systems and methods for tracking a history of changes associated with software packages and configuration management in a computing system
US20190391880A1 (en) Application backup and management
KR101969604B1 (ko) 복구 서비스의 자동 구성 기법
US10963236B2 (en) Creation of software images of software applications for image-based maintenance of the software applications
WO2014180290A1 (zh) 云计算环境下的无状态化虚拟机及其应用
US10929247B2 (en) Automatic creation of application-centric extended metadata for a storage appliance
US20190114231A1 (en) Image restore from incremental backup
US11593491B2 (en) Identifying a software vulnerability
US11663340B2 (en) Managing software vulnerabilities
US10089097B2 (en) Dynamic templates for virtualized systems
JP2012068771A (ja) バックアップ・リストア処理装置とバックアップ・リストア処理方法およびプログラム
CN107465709B (zh) 分布式镜像构建任务方法及装置、系统
US11599643B2 (en) Facilitating analysis of software vulnerabilities
JP2013120471A (ja) 自動復旧システム、および自動復旧方法
WO2016120989A1 (ja) 管理計算機及びルールの試験方法
Zhang et al. Lifecycle Management
CN114048074A (zh) 超融合主机的数据恢复方法、系统、电子设备及存储介质
JP2018018328A (ja) クラスタシステム及びサーバ制御プログラム
Bach et al. Implementing Data Guard
Hwang Oracle Fusion Middleware Installation Guide for Oracle Data Integrator 11g Release 1 (11.1. 1.7. 0) E16453-06
JP2018025849A (ja) バックアッププログラム、バックアップ装置およびバックアップ方法