JP2017142698A - Information processing method and control method - Google Patents
Information processing method and control method Download PDFInfo
- Publication number
- JP2017142698A JP2017142698A JP2016024266A JP2016024266A JP2017142698A JP 2017142698 A JP2017142698 A JP 2017142698A JP 2016024266 A JP2016024266 A JP 2016024266A JP 2016024266 A JP2016024266 A JP 2016024266A JP 2017142698 A JP2017142698 A JP 2017142698A
- Authority
- JP
- Japan
- Prior art keywords
- load balancer
- server
- storage device
- information processing
- external system
- 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
Links
Images
Abstract
Description
本発明は、情報処理方法および制御方法に関するものである。 The present invention relates to an information processing method and a control method.
計算機システムにおいて、現システムが古くなり、新システムが導入され、現システムから新システムへ移行されることは広く行われていることである。このような新システムへの移行では、現システムから新システムへの例えばデータベースなどの移行と、現システムから新システムへのアクセスの変更が、移行作業の大きな負担となる。そして、現システムから新システムへの切り替え時に、現システムの停止時間が問題となる場合もある。 In computer systems, the current system becomes old, a new system is introduced, and the transition from the current system to the new system is a common practice. In such a migration to a new system, a migration of, for example, a database from the current system to the new system and a change in access from the current system to the new system are a heavy burden of the migration work. When the current system is switched to the new system, the stop time of the current system may become a problem.
2つのシステム間で処理を切り替える技術に関して、特許文献1には「正系システムの正常運転時に、正系ロードバランサ12の転送先を、プライマリに正系WEB/APサーバ14が設定された平常時用から、プライマリに架空のアドレスが設定され、セカンダリに副系ロードバランサ22が設定された副系移行時用に切り替え、プライマリがタイムアウトするまでの間に、正系DBサーバ16→副系DBサーバ26間のレプリケーションを完了させると共に、レプリケーション方向の反転設定を完了させる。タイムアウト後、クライアント端末40からのリクエストは、正系ロードバランサ12→副系ロードバランサ22→副系WEB/APサーバ24に転送され、副系WEB/APサーバ24による処理結果は、副系DBサーバ26→正系DBサーバ16の順に反映される」ことが開示されている。 Regarding the technology for switching processing between two systems, Patent Document 1 states that “During normal operation of the main system, the transfer destination of the main load balancer 12 is set as the primary, and the main system WEB / AP server 14 is set as the primary. The primary DB server 16 → secondary DB server during the period from when the primary is set to a fictitious address to the secondary and when the secondary load balancer 22 is set to the secondary, and when the primary times out Complete the replication between 26 and complete the reverse setting of the replication direction.After the timeout, the request from the client terminal 40 is transferred from the primary load balancer 12 to the secondary load balancer 22 to the secondary WEB / AP server 24 The processing result by the secondary WEB / AP server 24 is reflected in the order of the secondary DB server 26 → the primary DB server 16 ”.
特許文献1に開示された技術を用いれば、2つのサーバ間でDB(データベース)のデータを転送し、処理を切り替えることは可能である。しかしながら、特許文献1には移行のための切り替えの技術は見当たらない。 If the technique disclosed in Patent Document 1 is used, it is possible to transfer DB (database) data between two servers and switch processing. However, there is no switching technique for transition in Patent Document 1.
そこで、本発明の目的は、移行に適したシステムの切り替えを提供することにある。 Accordingly, an object of the present invention is to provide system switching suitable for migration.
本発明に係る代表的な情報処理方法は、外部システムと通信して情報処理する第1のシステムと第2のシステムの情報処理方法において、前記第1のシステムは、情報処理を行う複数の第1のサーバと、前記外部システムから受信した通信を転送する第1のロードバランサと、前記複数の第1のサーバが情報処理の対象とするデータの格納された第1の記憶装置とを備え、前記第2のシステムは、情報処理を行う複数の第2のサーバと、前記外部システムから受信した通信を転送する第2のロードバランサと、前記複数の第2のサーバが情報処理の対象とするデータの格納された第2の記憶装置とを備え、前記第1のロードバランサは前記外部システムから受信した通信を前記第1のサーバへ転送し、前記第1のサーバは前記第1の記憶装置へアクセスして情報処理し、第1の条件を満たすと判定した場合、前記第2のロードバランサは前記外部システムから受信した通信を前記第1のロードバランサへ転送し、前記第1のロードバランサは前記外部システムから受信した通信を前記第1のサーバへ転送し、前記第1のサーバは前記第1の記憶装置へアクセスして情報処理し、前記第1の記憶装置に格納されたデータを前記第2の記憶装置に反映し、第2の条件を満たすと判定した場合、前記第2のロードバランサは前記外部システムから受信した通信を前記第2のサーバへ転送し、前記第2のサーバは前記第2の記憶装置へアクセスして情報処理することを特徴とする。 A representative information processing method according to the present invention includes an information processing method of a first system and a second system that perform information processing by communicating with an external system, and the first system includes a plurality of second information processing devices. 1 server, a first load balancer that transfers communication received from the external system, and a first storage device that stores data to be processed by the plurality of first servers, In the second system, a plurality of second servers that perform information processing, a second load balancer that transfers communication received from the external system, and the plurality of second servers are targets of information processing. A first storage device storing data, wherein the first load balancer transfers communication received from the external system to the first server, and the first server stores the first storage device. When accessing and processing information and determining that the first condition is satisfied, the second load balancer transfers the communication received from the external system to the first load balancer, and the first load balancer The communication received from the external system is transferred to the first server, and the first server accesses the first storage device for information processing, and the data stored in the first storage device is transferred to the first server. When the second load balancer reflects the second storage device and determines that the second condition is satisfied, the second load balancer transfers the communication received from the external system to the second server, and the second server The information processing is performed by accessing the second storage device.
本発明によれば、移行に適したシステムの切り替えを提供することが可能になる。 According to the present invention, it is possible to provide system switching suitable for migration.
以下、図面を用いて、本発明の好ましい実施例を説明する。 Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings.
図1は、現システム110と新システム120の接続の例を示す図である。外部システム130(外部システム130a、130b、130cを特に区別することなく指し示す場合、外部システム130と記載し、他の符号についても同様に記載する)は、現システム110のデータベース(以下、DBと略す)へアクセスするシステムである。
FIG. 1 is a diagram illustrating an example of connection between the
例えば、外部システム130aはDB参照系のシステムであり、外部システム130bはDB更新系のシステムであり、外部システム130cは現システム110の単にクライアントとなるシステムであるが、これらに限定されるものではなく、外部システム130の数も3に限定されるものではない。また、外部システム130は現システム110に対向するシステムであるから対向システムと称されることもある。
For example, the
ネットワーク151はバックボーンネットワークであり、複数の外部システム130間を接続するとともに、外部システム130と現システム110を接続する。現システム110は現在稼働している移行前のシステムであり、外部システム130からDBの参照や更新の要求を処理する。ロードバランサ111は外部システム130からの要求を複数のサーバ112へ分散する。
A
サーバ112は、現DB113を用いて、ロードバランサ111により分散された要求を処理するサーバである。現DB113はDBを構成するデータであり、DBを管理するための情報が含まれてもよく、現DB113はそのようなデータと情報が格納される記憶装置でもよい。この記憶装置はハードディスクドライブであってもよいし、ソリッドステートドライブであってもよい。なお、サーバ112はDB以外の処理を実行してもよいし、そのDB以外の処理が外部システム130からの要求に基づく処理であってもよい。
The server 112 is a server that processes requests distributed by the
ネットワーク152はO&M(Operation and Maintenance)ネットワークであり、図示を省略した端末と現システム110を接続し、ロードバランサ111とサーバ112の設定情報と状態情報を通信可能にする。また、DBのデータが通信可能であってもよい。なお、ネットワーク152は存在しなくてもよい。また、ネットワーク151、152はパケットネットワークでもよい。
A
以上で説明した構成へ新システム120と管理装置140が追加され、現システム110が新システム120へ移行される。ここで、ネットワーク152が存在しない場合は、ネットワーク152と管理装置140が追加されてもよいし、ネットワーク152が既存の場合は、ネットワーク152へ既に接続されているコンピュータが管理装置140となってもよい。
The
基本的には、ロードバランサ121はロードバランサ111に相当し、サーバ122はサーバ112に相当し、新DB123は現DB113に相当するが、これらのそれぞれは同じ機種であってもよいし、異なる機種であってもよい。ただし、新システム120のこれらの構成の方が、現システム110のこれらの構成よりも、高性能であったり、消費電力が少なかったりする方が好ましい。
Basically, the
新システム120はネットワーク151に接続され、外部システム130と通信可能となるとともに、現システム110とも通信可能になる。また、新システム120は、ネットワーク152経由で現システム110と通信可能となってもよい。以下で説明する現システム110と新システム120との間の移行や転送のための通信は、ネットワーク151、152のいずれが使用されてもよい。さらに、現システム110と新システム120とは移行専用のネットワークで接続されてもよい。
The
ロードバランサ121は、サーバ122へ外部システム130からの要求を分散する以外に、ロードバランサ111をサーバ122と同じ接続対象として、ロードバランサ111へ要求やデータを転送する。ロードバランサ121が、外部システム130、サーバ122、ロードバランサ111の中のどれとどれとの間で通信を転送するかは、ロードバランサ121に設定される。
In addition to distributing requests from the external system 130 to the server 122, the
サーバ122は、ロードバランサ121から分散された要求を処理する以外に、移行ツールのプログラムがインストールされ、サーバ112と通信して現DB113から新DB123へデータベースを移行する。移行ツールのプログラムの実行は、管理装置によりネットワーク152経由で制御される。
In addition to processing requests distributed from the
管理装置140は、プロセッサ、メモリ、ネットワークインタフェース、ユーザインタフェースを備えたコンピュータであり、管理装置140へインストールされたプログラムにしたがって、現システム110と新システム120を制御する。また、ネットワーク152がネットワーク151を構成するネットワークスイッチやネットワークルータ、および外部システム130などの機器にも接続され、接続されたこれらの機器を制御してもよい。ユーザインタフェースは、キーボード、マウス、ディスプレイであってもよい。
The
図2は、管理装置140の移行処理の例を示すフロー図である。このフロー図は管理装置140にインストールされたプログラムのフローチャートであってもよい。図2に示した以下で説明する3つのステップにおけるDBへのアクセスの状態の例を図4〜6に示し、それぞれのステップで説明する。
FIG. 2 is a flowchart showing an example of the migration process of the
まず、図3を用いて、DBを移行する前すなわちステップ201の前のDBへのアクセスを説明する。図3は現システム110のDBへのアクセスの例を示す図である。この例では、新システム120と管理装置140がネットワーク151とネットワーク152へ物理的には接続されているが、ネットワーク151を経由した動作はない。
First, referring to FIG. 3, the access to the DB before migration of the DB, that is, before the
図3に示した太い矢印のように、外部システム130はネットワーク151経由で現システム110と通信し、ロードバランサ111は外部システム130からの要求を複数のサーバ112へ負荷分散する。サーバ112は現DB113へアクセスし、必要に応じて、ロードバランサ111とネットワーク151を介して、外部システム130へデータを応答する。
As indicated by the thick arrows shown in FIG. 3, the external system 130 communicates with the
図2に示したステップ201において、管理装置140がネットワーク152経由でサーバ122にインストールされた移行ツールのプログラムを起動することにより、DBのデータの移行が開始される。この起動は、オペレータによる管理装置140のキーボードかマウスの操作を受け付けて、サーバ122へ起動のためのコマンドを送ってもよいし、オペレータが管理装置140へ起動時刻を予め設定したことを受け付けて、管理装置140が内蔵の時計と起動時刻が一致したことを検出し、サーバ122へ起動のためのコマンドを送ってもよい。
In
サーバ122による移行ツールのプログラムの実行は、以下で説明する管理装置140によるステップ202の実行などとは関わりなく、進行する。ここでの移行ツールは、移行ツールのプログラムが起動される前に現DB113へ格納されたデータと、移行ツールのプログラムが起動された後に現DB113で更新されたデータとを、DBとして矛盾なく新DB123へ移行するプログラムである。
The execution of the migration tool program by the server 122 proceeds regardless of the execution of
ステップ202において、外部システム130から現システム110への通信を新システム120への通信に変更する。この変更のために、外部システムの管理装置(図示せず)は、外部システム130における現システム110を宛先とする情報を、新システム120を宛先とする情報に変更してもよいし、ネットワーク151を構成するルータのルーティングテーブルを変更してもよいし、それぞれの変更を指示するコマンドを送ってもよい。
In
管理装置140によるステップ202の実行は、管理装置140がステップ201を実行した後に直ちに行われてもよい。また、DBの移行の進捗とは関係がないため、ステップ201の実行後でありステップ205の開始までに、それぞれの外部システム130により任意のタイミングでステップ202が実行されてもよい。すなわち、ステップ201とステップ205との間は、現システム130に送信する外部システムと新システム120に送信する外部システムとが共存してもよい。
The execution of
ステップ203において管理装置140は、ロードバランサ121が外部システム130から受信した通信をロードバランサ111へ転送するように制御する。この制御のために、管理装置140はネットワーク152経由でロードバランサ121に転送先の情報を設定してもよい。
In
図6Aはロードバランサ111が参照する転送先情報の例を示す図である。図6Aに示した情報はロードバランサ111内のメモリに記憶され、管理装置140からの情報あるいはコマンドによって更新されてもよい。図6Aに示した転送先の「現システムロードバランサ」はロードバランサ111のアドレスであり、「新システムサーバA」はサーバ122aのアドレス、「新システムサーバB」はサーバ122bのアドレス、「新システムサーバC」はサーバ122cのアドレスであり、これらのアドレスを宛先として転送する。なお、これらのアドレスは、実際はIPアドレスなどの数値であってもよい。
FIG. 6A is a diagram illustrating an example of transfer destination information referred to by the
図6Aに示した状態の「enable」は転送を可能にするフラグであり、「disable」は転送を禁止するフラグである。このため、図6Aの例では、ロードバランサ111への転送が可能であり、サーバ122a、122b、122cへの転送が禁止されていることを示す。
“Enable” in the state illustrated in FIG. 6A is a flag that enables transfer, and “disable” is a flag that prohibits transfer. Therefore, in the example of FIG. 6A, it is possible to transfer to the
図6Aに示した転送先情報は、ステップ202より前あるいはステップ201より前に設定されてもよい。この設定により、ステップ202の実行に応じてロードバランサ121が受信するようになった通信を、ステップ203でロードバランサ121が転送するようになってもよい。
The transfer destination information shown in FIG. 6A may be set before
図4は、新システム120を使用したDBの移行とDBへのアクセスの例を示す図であり、これらの移行とアクセスはステップ203の後の状態である。図4に示した太い矢印のように、外部システム130はネットワーク151経由で新システム120へ送信し、ロードバランサ121は外部システム130からの要求をロードバランサ111へ転送し、ロードバランサ111は外部システム130からの要求を複数のサーバ112へ負荷分散する。
FIG. 4 is a diagram illustrating an example of DB migration and access to the DB using the
サーバ112は現DB113へアクセスし、必要に応じて、ロードバランサ111とネットワーク151を介して、外部システム130へデータを応答する。なお、ロードバランサ111はロードバランサ121経由で外部システム130へデータを応答してもよい。
The server 112 accesses the
外部システム130によるDBへのアクセスとは別に、サーバ122の移行ツールのプログラムは、サーバ112へアクセスし、現DB113のデータを新DB123へ移行する。この移行の状態は管理装置140により監視されてもよい。このために、管理装置140はネットワーク152経由でサーバ112から現DB113の状態情報とサーバ122から新DB123の状態情報の両方を取得してもよいし、サーバ122から移行の進捗情報を取得してもよい。
Apart from accessing the DB by the external system 130, the migration tool program of the server 122 accesses the server 112 and migrates the data of the
図2に示したステップ204において、管理装置140は現DB113と新DB123のデータが一致したかを判定する。ステップ204において管理装置140は、一致していないと判定した場合、移行により一致するまで待機するためにステップ204へ戻り、一致していると判定した場合、新DB123が使用可能な状態となったため、ステップ205へ進んでロードバランサ121の転送を終了するように制御する。なお、ステップ204における一致の判定は、一致したときに発生する別の情報で判定してもよい。
In
この制御のために、管理装置140はネットワーク152経由でロードバランサ121に転送先の情報を設定してもよく、図6Aに示した転送先が「現システムロードバランサ」に対応する状態の「enable」を「disable」に設定してもよい。その後、図6Bに示すように転送先が「新システムサーバA」「新システムサーバB」「新システムサーバC」のそれぞれに対応する状態の「disable」を「enable」に設定してもよい。
For this control, the
ロードバランサ121が転送しないと、サーバ112は要求を受けないため、既に要求を受けた処理を終了し、現DB113を更新しなくなる。これにより、現DB113からの移行は実質的に発生しなくなるが、ステップ207のために、ステップ206にて管理装置140は移行の処理を終了するようにサーバ122を制御する。この制御のために、管理装置140はサーバ122に実行状態になっている移行ツールのプログラムを停止するように、ネットワーク152経由で停止のコマンドを送ってもよい。
If the
なお、現DB113と新DB123のデータが一致した後、直ちにステップ205を実行せず、外部システム130の要求により現DB113が更新され、一致しなくなっても、その後の移行により一致するようになる。直ちにステップ205を実行する必要がないため、ステップ204では一致するかの判定以外に、オペレータによる管理装置のキーボードかマウスの操作内容を判定してもよい。
Note that, after the data in the
ロードバランサ121がロードバランサ111への転送を終了し、複数のサーバ122へ要求を分散すると、新システム120がDBとして稼働開始したことになる。要求に応じて新DB123は更新されるため、現DB113と新DB123のデータは一致しなくなる。
When the
ステップ207で管理装置140は、新DB123の更新により発生した差分データで現DB113も更新する処理を開始し、現DB113が新DB123と一致するように制御する。この制御のために、管理装置140はネットワーク152経由でサーバ122の移行ツールのプログラムに含まれる新DB123から現DB113への差分データの転送と更新の処理を起動するコマンドを送ってもよい。また、この処理のために移行ツールとは別のプログラムがサーバ122へインストールされていてもよい。
In
図5は、移行後の新システム120の新DB123へのアクセスの例を示す図である。ステップ207の後では、図5に示した太い矢印のように、新システム120は外部システム130からアクセスされ、サーバ122からサーバ112へ差分データが転送されて現DB113に反映する。
FIG. 5 is a diagram illustrating an example of access to the
以上の処理により、現DB113から新DB123へデータを移行し、現DB113と新DB123のデータを一致した状態とする。なお、移行ツールのプログラムは、サーバ112にインストールされてもよいし、サーバ112、122の両方にインストールされて移行ツール同士が通信するものでもよい。
Through the above processing, the data is transferred from the
次に、図5に示したように、新システム120が外部システム130からの要求を処理し、現DB113と新DB123のデータが一致した状態において、新システム120に障害の発生した場合の処理について説明する。稼働実績のあるシステムに対して、一般に新しいシステムは稼働開始してからしばらくの期間に障害の発生する可能性があるため、現システム110を残しておくことが好ましい。
Next, as shown in FIG. 5, when the
新システム120のロードバランサ121やサーバ122は、一般的なロードバランサやサーバと同様に障害を検出して、ネットワーク152経由で管理装置140へ障害の検出を通知する。ロードバランサ121とサーバ122と新DB123とが相互に監視してもよい。あるいは、管理装置140がロードバランサ121とサーバ122と新DB123とのそれぞれをネットワーク152経由で監視してもよい。
The
図7は、管理装置140の障害処理の例を示すフロー図である。このフロー図は管理装置140にインストールされたプログラムのフローチャートであってもよい。管理装置140は障害の通知を受信する、あるいは監視により障害を検出すると、ステップ701から処理を開始する。まず、通知あるいは検出した障害の情報に基づき、ステップ702で管理装置140はロードバランサ121が正常であるかを判定する。
FIG. 7 is a flowchart showing an example of failure processing of the
ステップ702でロードバランサ121が正常であると判定すると、管理装置140はステップ703へ進み、ロードバランサ121からロードバランサ111へ要求を転送するように制御する。この制御はステップ203と同じである。また、ロードバランサ121が正常でないと判定すると、管理装置140はステップ704へ進み、外部システム130の通信先を現システム110へ変更するように制御する。
If it is determined in
このステップ704はステップ202と変更先が異なり、外部システム130から新システム120への通信を現システム110への通信に変更する。この変更のために、ネットワーク152やネットワーク151などを介して管理装置140は、外部システム130における新システム120を宛先とする情報を、現システム110を宛先とする情報に変更してもよいし、ネットワーク151を構成するルータのルーティングテーブルを変更してもよい。
Step 704 differs from
ステップ705で管理装置140は、サーバ122と新DB123が正常であるかを判定する。ステップ705でサーバ122と新DB123が正常であると判定すると、ステップ207で開始した新DB123から現DB113への差分データの転送が終了するように、ステップ706で管理装置140は制御する。この制御のために管理装置140は、ステップ207で起動したプログラムを停止するコマンドを送ってもよい。
In
ステップ707で管理装置140は、現DB113から新DB123への差分データの転送による移行を開始するように、サーバ122を制御する。この制御のために、管理装置140はネットワーク152経由でサーバ122の移行ツールのプログラムを起動するコマンドを送ってもよい。これにより、新システム120が障害から復帰すると、移行が完了した状態になっている。
In
ステップ705ではサーバ122と新DB123が正常であるかの判定以外に、オペレータによる管理装置のキーボードかマウスの操作内容を判定してもよい。現DB113のデータを後で移行することも可能であるから、新システム120の障害からの復帰のために、新システム120全体を停止する必要のある場合など、必ずしもステップ706、707を実行する必要はない。
In
ステップ705でサーバ122と新DB123のいずれか一方あるいは両方が正常ではないと判定した場合、ステップ207で開始された差分データの転送は行われないはずであるが、現DB113へ何らかの影響を与える可能性がある場合、ステップ706を実行してもよい。また、障害によりサーバ122を制御できない場合、新DB123から現DB113へ差分データを転送するための経路をネットワーク151とネットワーク152の中で遮断するように制御してもよい。
If it is determined in
なお、管理装置140は障害を検出せずに、オペレータによる管理装置140のキーボードかマウスの操作を受け付けて、その操作内容に応じてステップ701からの処理を開始したり、ステップ702の判定をしたりしてもよい。
The
また、新システム120の動作が事前に十分検証されているのであれば、図7を用いて説明した処理を省略してもよい。そして、図2に示したステップ207の処理を省略し、ステップ207の代わりに管理装置140は現システム110を停止するように制御してもよい。この制御のために、管理装置140はネットワーク152経由でロードバランサ111とサーバ112へ停止のためのコマンドを送ってもよい。
If the operation of the
また、ステップ207は実行された後で、オペレータによる管理装置140のキーボードかマウスの操作を受け付けて、管理装置140は、新DB123から現DB113への差分データの転送を終了するためのコマンドをサーバ122へ送り、ロードバランサ111とサーバ112へ処理を停止するためのコマンドを送ってもよい。
In addition, after
以上の説明では、現DB113のデータを新DB123へ移行する例を説明したが、例えば現DB113が複数のDBから構成され、複数のDBの中の一部のDBの移行であってもよい。この移行のために、外部システム130からの通信はどのDBのための通信であるかの情報を含み、その情報をロードバランサ121は判定し、転送先を決定してもよい。
In the above description, the example in which the data of the
そして、図6Aを用いて説明した転送情報の代わりに図6Cに示す転送先情報をロードバランサ121は参照してもよい。図6Cに示した例では、現DB113は「DB−A」と「DB−B」から構成され、現DB113からデータの移行される新DB123も「DB−A」と「DB−B」から構成でき、図6Aに示した転送先情報に対応する。
Then, the
ロードバランサ121は、外部システム130からの通信に含まれる情報に基づき、通信が「DB−A」のための通信であるか、「DB−B」のための通信であるかを判定し、その通信に対応する状態が「enable」の転送先へ転送する。図6Dに示した例は、「DB−A」のみが、図6Bに示した転送先情報と同じである。ここで、「DB−A」と「DB−B」はそれぞれが別のサービスに対応し、サービス毎に「enable」と「disable」が設定されてもよい。
The
以上で説明したように、現DB113のデータを新DB123へ移行し、現システム110から新システム120へ切り替えることができる。現DB113のデータを新DB123へ移行する間も、外部システム130は現DB113へアクセスすることが可能であり、このアクセスは新システム120で転送させることにより、外部システム130の通信先の変更を移行完了までの任意のタイミングで実施することができ、移行の作業の自由度が高くなる。
As described above, the data in the
また、ロードバランサ121の1つの転送先として現システム110を設定できるため、外部システム130からの要求を新システム120から現システム110へ転送するのは容易である。そして、新システム120のサーバ122による処理を開始する場合も、ロードバランサ121の転送先の設定により、外部システム130からの要求の転送先を変更できるため、現システム110から新システム120への切り替え時間を短縮できる。
Since the
さらに、新システム120で処理を開始した後も現システム110へ差分データを反映させることにより、新システム120での移行後の障害に対して現システム110へ戻すことも可能である。
Further, even after the processing is started in the
実施例1では、現DB113から新DB123へのデータの移行(図2のステップ201)において、外部システム130からの要求による現DB113の更新により発生した差分データを含めて移行する例を説明したが、実施例2では、初回の移行として特定の時点あるいは特定の範囲のデータ全件を現DB113から新DB123へ移行し、その初回の移行後に現DB113の更新により発生した差分データをさらに移行して新DB123へ反映させる例を説明する。
In the first embodiment, in the data migration from the
図8は管理装置140の2段階の移行処理の例を示すフロー図である。このフロー図は管理装置140にインストールされたプログラムのフローチャートであってもよい。まず、DBを移行する前すなわちステップ801およびステップ811の前のDBへのアクセスは、既に図3を用いて説明したとおりである。
FIG. 8 is a flowchart showing an example of a two-stage migration process of the
図8の例では、ステップ801〜808の処理のフローと、ステップ811〜816の処理のフローに分けて説明するが、このようにフローを分けることに限定されるものではない。分けられたフローの処理の一部が他方のフローにあってもよいし、分けられたフローの一部が統合されてもよい。処理の2つのフローは、それぞれが別のプロセスなどであってもよい。
In the example of FIG. 8, the processing flow of
ステップ801において管理装置140は、ネットワーク152経由でサーバ122にインストールされた移行ツールのプログラムを起動することにより、DBのデータを移行する。この起動は、オペレータによる管理装置140のキーボードかマウスの操作を受け付けて、サーバ122へ起動のためのコマンドを送ってもよいし、オペレータが管理装置140へ起動時刻を予め設定したことを受け付けて、管理装置140が内蔵の時計と起動時刻が一致したことを検出し、サーバ122へ起動のためのコマンドを送ってもよい。
In
ステップ801における起動時あるいは起動前に、現DB113の中で移行されるDBの範囲が設定されてもよい。移行されるDBの範囲は、例えばDBの静止点までの範囲やDBのロールバックされるチェックポイントまでの範囲などであってもよく、その後の現DB113の更新により発生する差分データを反映させてもDBの整合性を維持できる範囲のデータ全件であってもよい。そして、移行ツールのプログラムの実行により、設定された範囲のデータ全件が移行され、移行が完了する。
A range of DBs to be migrated in the
ステップ802において管理装置140は、差分移行を開始するか判定する。この判定のため、オペレータによる管理装置140のキーボードかマウスの操作を受け付けて、その操作内容を判定してもよいし、オペレータが管理装置140へ開始時刻を予め設定したことを受け付けて、管理装置140が内蔵の時計と開始時刻が一致したことを検出してもよい。これにより、定期的に差分移行を開始してもよい。
In
ステップ802において管理装置140は、差分移行を開始しないと判定すると、ステップ802の判定を繰り返す。また、ステップ802において管理装置140は、差分移行を開始すると判定すると、ステップ803へ進み、ネットワーク152経由でサーバ122の移行ツールへ差分移行開始のコマンドを送り、移行ツールはそれ以前の移行後に現DB113の更新により発生した差分データを移行して新DB123へ反映させる。
If the
ステップ803の移行が完了し、現DB113と新DB123とが一致すると、ステップ804において管理装置140は、現システム110から新システム120へ切り替えるかを判定する。この判定のため、オペレータによる管理装置140のキーボードかマウスの操作を受け付けて、その操作内容を判定してもよい。ステップ804において管理装置140は、切り替えないと判定すると、続けて外部システム130からの要求により現DB113の更新される可能性があるため、ステップ802へ戻る。
When the transition of
ステップ804において管理装置140は、切り替えると判定するとステップ805へ進む。ここで、管理装置140のステップ811からの処理について説明する。ステップ803の実行までの任意のタイミングで、管理装置140はステップ811からの処理を開始する。この開始のため、オペレータによる管理装置140のキーボードかマウスの操作を受け付けて、その操作内容に基づいて処理を開始してもよい。
If the
ステップ811、812のそれぞれは、既に説明したステップ202、203と同じ処理内容である。このため、ステップ811、812が実行されるか否かに関わらず、外部システム130は現DB113を更新したり参照したりすることが可能であり、ステップ811、812はステップ803の実行までの任意のタイミングで実行されればよい。また、ステップ801あるいはステップ803による移行実行中に、ステップ812が終了した後は、図4を用いて説明したとおりのアクセスである。
Each of
ステップ805も含めて説明すると、ステップ805において管理装置140は、ロードバランサ121の転送を終了するように、ロードバランサ121の転送を開始させた処理へ通知し、ステップ813において管理装置140は、転送終了が指示されたと判定すると、ステップ814へ進み、ロードバランサ121の転送を終了するように制御する。
Explaining also including
この制御のために、管理装置140はネットワーク152経由でロードバランサ121に転送先の情報を設定してもよい。例えば、図6Aに示した転送先が「現システムロードバランサ」に対応する状態の「enable」を「disable」に設定し、すべての状態を「disable」としてもよい。これにより、外部システム130との通信が遮断され、DBを静止化することができる。
For this control, the
ステップ806において管理装置140は、ステップ803を最後に実行して差分データを移行してから、ステップ814を実行してロードバランサ121の転送を終了されてまでに、現システム110が受け取った要求などをサーバ112が処理し、現DB113を更新するように制御する。なお、管理装置140からの制御がなくても、受け取った要求などをサーバ112が処理するのであれば、この制御は省略してもよいが、受け取った要求などの処理がすべて完了したことを確認する。
In
この確認のために、管理装置140はネットワーク152経由でサーバ112の処理状況、特に処理待ちの有無と処理中の有無の情報を取得して、処理がすべて完了したことを判定してから、ステップ807へ進んでもよい。ステップ807において管理装置140は、ステップ806の更新で発生した差分データを新DB123へ移行して反映するように移行ツールを制御する。
For this confirmation, the
ステップ807はステップ803と同じ処理内容であり、差分データの移行が終了すると、ロードバランサ121のロードバランサ111への転送が終了された処理へ通知し、ステップ815において差分データの移行が終了したと判定し、ステップ816へ進み、ロードバランサ121からサーバ122へ負荷分散するように制御する。
Step 807 has the same processing content as
この制御のために、管理装置140はネットワーク152経由でロードバランサ121に転送先の情報を設定してもよく、図6Bに示すように転送先が「新システムサーバA」「新システムサーバB」「新システムサーバC」のそれぞれに対応する状態の「disable」を「enable」に設定してもよい。この制御により、サーバ122の新DB123に対する処理が開始され、新システム120が稼働して、外部システム130からの要求に応じて新DB123が更新される。
For this control, the
また、この更新により新DB123には差分データが発生する。管理装置140はステップ207と同じ処理内容のステップ808により、新DB123から差分データを転送して現DB113へ反映するように制御する。ステップ807からステップ808へ進む前に、管理装置140は移行ツールのプログラムを一時的に停止させ、新DB123の整合性を確保してもよい。以上の処理により、図5を用いて説明したとおりとなる。
In addition, this update generates difference data in the
以上で説明したように、初回の移行後に差分データの移行を繰り返すことができるため、現システム110から新システム120への切り替えのタイミングの自由度が高くなる。また、切り替えまでの任意のタイミングで外部システム130の通信先の変更を実施することができ、移行の作業の自由度がさらに高くなる。
As described above, since the difference data transfer can be repeated after the first transfer, the degree of freedom in switching the
また、切り替え時にロードバランサ121からの転送を終了し、終了するまでに転送された要求に対して現DB113を更新し、転送の無い状態で、その更新により発生した差分データも新DB123へ反映できるため、安定した状態を反映することが可能である。
In addition, the transfer from the
実施例1、2では、ロードバランサ121による新システム120から現システム110への転送の例を説明したが、実施例3では、ロードバランサ121の代わりに中継機器921が新システム120から現システム110へ転送する例を説明する。図9は中継機器を用いた現システム110と新システム120の接続の例を示す図である。図1を用いて説明したものは同じ符号を付して説明を省略する
中継機器911、921は、ネットワークパケットを中継するネットワーク機器であり、例えばルータなどである。ロードバランサ111、121は負荷分散するためにそれぞれ2以上のサーバ112、122が接続されるが、中継機器911、921のそれぞれは1以上のサーバ112、122が接続される。
In the first and second embodiments, an example of transfer from the
また、ロードバランサ111、121はそれぞれネットワークアドレスを有しても有さなくてもよいが、中継機器911、921のそれぞれはネットワークアドレスを有さず、サーバ112、122のネットワークアドレスにしたがってネットワークパケットを中継する。
In addition, the
新システム120が転送に使用されない場合、例えば、サーバ112のネットワークアドレスを宛先とするネットワークパケットを、ネットワーク151を構成するネットワーク機器のルーティングテーブルは現システム110の中継機器911へルーティングするように設定され、中継機器911のルーティングテーブルはサーバ112へルーティングするように設定される。
When the
そして、外部システム130は、サーバ112のネットワークアドレスを宛先とするネットワークパケットを送信すると、ネットワーク151経由で中継機器911にネットワークパケットが到着し、中継機器911はサーバ112へネットワークパケットを中継する。
When the external system 130 transmits a network packet whose destination is the network address of the server 112, the network packet arrives at the
また、新システム120が転送に使用される場合、例えば、サーバ112のネットワークアドレスを宛先とするネットワークパケットを、ネットワーク151を構成するネットワーク機器のルーティングテーブルは新システム120の中継機器921へルーティングするように設定され、中継機器921のルーティングテーブルは現システム110の中継機器911へルーティングするように設定され、中継機器911のルーティングテーブルはサーバ112へルーティングするように設定される。
Further, when the
そして、外部システム130は、サーバ112のネットワークアドレスを宛先とするネットワークパケットを送信すると、ネットワーク151経由で中継機器921にネットワークパケットが到着し、中継機器921は中継機器911へネットワークパケットを中継し、中継機器911はサーバ112へネットワークパケットを中継する。
When the external system 130 transmits a network packet whose destination is the network address of the server 112, the network packet arrives at the
サーバ122はサーバ112と同じネットワークアドレスが設定されてもよい。これにより、サーバ112のネットワークアドレスを宛先とするネットワークパケットを中継機器911へルーティングすると設定されたルーティンテーブルの内容を、サーバ122へルーティングする内容へ変更することにより、サーバ122へ中継することができる。
The server 122 may be set with the same network address as the server 112. As a result, the contents of the routing table set to route the network packet destined for the network address of the server 112 to the
ロードバランサ111、121と中継機器911、921との違い以外は、既に図1〜8を用いて説明したとおりである。
Except for the difference between the
以上で説明したように、外部システム130は現システム110のサーバ112を宛先として、設定を変更されることなく、新システム120の中継機器921に転送させることが可能になり、その後は、新システム120のサーバ122へ要求を送信することが可能になる。このため、外部システム130の設定作業を不要にすることができる。
As described above, the external system 130 can be transferred to the
以上の説明では、実施例1と実施例2と実施例3を分けて説明したが、各実施例は独立したものではなく、各実施例の説明の一部を他の実施例の説明の一部に置き換えてもよい。 In the above description, the first embodiment, the second embodiment, and the third embodiment are described separately. However, each embodiment is not independent, and a part of the description of each embodiment is a part of the description of the other embodiments. It may be replaced with a part.
110:現システム
111:ロードバランサ
112:サーバ
113:現DB
120:新システム
121:ロードバランサ
122:サーバ
123:新DB
130:外部システム
140:管理装置
151:ネットワーク
152:ネットワーク
110: Current system 111: Load balancer 112: Server 113: Current DB
120: New system 121: Load balancer 122: Server 123: New DB
130: External system 140: Management device 151: Network 152: Network
Claims (8)
前記第1のシステムは、
情報処理を行う複数の第1のサーバと、
前記外部システムから受信した通信を転送する第1のロードバランサと、
前記複数の第1のサーバが情報処理の対象とするデータの格納された第1の記憶装置と
を備え、
前記第2のシステムは、
情報処理を行う複数の第2のサーバと、
前記外部システムから受信した通信を転送する第2のロードバランサと、
前記複数の第2のサーバが情報処理の対象とするデータの格納された第2の記憶装置と
を備え、
前記第1のロードバランサは前記外部システムから受信した通信を前記第1のサーバへ転送し、前記第1のサーバは前記第1の記憶装置へアクセスして情報処理し、
第1の条件を満たすと判定した場合、前記第2のロードバランサは前記外部システムから受信した通信を前記第1のロードバランサへ転送し、前記第1のロードバランサは前記外部システムから受信した通信を前記第1のサーバへ転送し、前記第1のサーバは前記第1の記憶装置へアクセスして情報処理し、前記第1の記憶装置に格納されたデータを前記第2の記憶装置に反映し、
第2の条件を満たすと判定した場合、前記第2のロードバランサは前記外部システムから受信した通信を前記第2のサーバへ転送し、前記第2のサーバは前記第2の記憶装置へアクセスして情報処理すること
を特徴とする情報処理方法。 In the information processing method of the first system and the second system that perform information processing by communicating with an external system,
The first system includes:
A plurality of first servers for performing information processing;
A first load balancer that forwards communications received from the external system;
A plurality of first servers including a first storage device storing data to be processed;
The second system is:
A plurality of second servers for performing information processing;
A second load balancer that forwards communications received from the external system;
A plurality of second servers including a second storage device storing data to be processed;
The first load balancer transfers communication received from the external system to the first server, and the first server accesses the first storage device for information processing,
When it is determined that the first condition is satisfied, the second load balancer transfers the communication received from the external system to the first load balancer, and the first load balancer receives the communication received from the external system. Is transferred to the first server, the first server accesses the first storage device for information processing, and the data stored in the first storage device is reflected in the second storage device. And
If it is determined that the second condition is satisfied, the second load balancer transfers the communication received from the external system to the second server, and the second server accesses the second storage device. An information processing method characterized in that information processing is performed.
前記第2のサーバが前記第2の記憶装置へアクセスして情報処理することにより前記第2の記憶装置へ格納されたデータを、前記第1の記憶装置に反映すること
を特徴とする情報処理方法。 The information processing method according to claim 1,
Information stored in the second storage device is reflected in the first storage device by the second server accessing the second storage device for information processing. Method.
前記第1の条件を満たすと判定した場合、前記外部システムの送信する通信の宛先を、前記第1のロードバランサから前記第2のロードバランサへ変更すること
を特徴とする情報処理方法。 The information processing method according to claim 1,
When it is determined that the first condition is satisfied, a destination of communication transmitted by the external system is changed from the first load balancer to the second load balancer.
操作の入力を受け付けると、前記第1の条件を満たすと判定し、
前記第1の記憶装置に格納されたデータを前記第2の記憶装置に反映して、前記第1の記憶装置に格納されたデータと前記第2の記憶装置に格納されたデータが一致すると、前記第2の条件を満たすと判定すること
を特徴とする情報処理方法。 The information processing method according to claim 1,
When an operation input is received, it is determined that the first condition is satisfied,
When the data stored in the first storage device is reflected in the second storage device and the data stored in the first storage device matches the data stored in the second storage device, An information processing method characterized by determining that the second condition is satisfied.
前記第2のロードバランサは転送先の情報を有し、
前記第1の条件を満たすと判定した場合、前記第2のロードバランサの転送先の情報は前記第1のロードバランサへ設定され、
前記第2の条件を満たすと判定した場合、前記第2のロードバランサの転送先の情報は前記第2のサーバへ設定されること
を特徴とする情報処理方法。 The information processing method according to claim 1,
The second load balancer has transfer destination information,
When it is determined that the first condition is satisfied, the transfer destination information of the second load balancer is set to the first load balancer.
When it is determined that the second condition is satisfied, the information on the transfer destination of the second load balancer is set in the second server.
前記第2の記憶装置へ格納されたデータを、前記第1の記憶装置に反映し、前記第2のサーバあるいは前記第2の記憶装置に障害を検出した場合、前記第2のロードバランサは前記外部システムから受信した通信を前記第1のロードバランサへ転送し、前記第1のロードバランサは前記外部システムから受信した通信を前記第1のサーバへ転送し、前記第1のサーバは前記第1の記憶装置へアクセスして情報処理すること
を特徴とする情報処理方法。 The information processing method according to claim 2,
When the data stored in the second storage device is reflected in the first storage device and a failure is detected in the second server or the second storage device, the second load balancer The communication received from the external system is transferred to the first load balancer, the first load balancer transfers the communication received from the external system to the first server, and the first server transfers the first load balancer to the first load balancer. An information processing method characterized in that information processing is performed by accessing a storage device.
前記第1のシステムから前記第2のシステムへデータを移行開始する第1のコマンドを発行し、
前記外部システムからの通信を前記第2のシステムから前記第1のシステムへ転送開始する第2のコマンドを発行し、
前記第1のシステムのデータと前記第2のシステムのデータが一致したことを判定し、
前記第2のコマンドにより開始された転送を終了する第3のコマンドを発行し、
前記第1のコマンドにより開始された移行を終了する第4のコマンドを発行すること
を特徴とする制御方法。 In a control method of an apparatus that manages a first system and a second system that process information by communicating with an external system,
Issuing a first command to start migrating data from the first system to the second system;
Issuing a second command for initiating transfer of communications from the external system from the second system to the first system;
Determining that the data of the first system and the data of the second system match,
Issuing a third command to terminate the transfer initiated by the second command;
4. A control method, comprising issuing a fourth command for ending a transition started by the first command.
前記第1のシステムのデータと前記第2のシステムのデータとの差分データを、前記第2のシステムから前記第1のシステムへ転送開始する第5のコマンドを発行すること
を特徴とする制御方法。 The control method according to claim 7,
A control method for issuing a fifth command for starting transfer of difference data between the data of the first system and the data of the second system from the second system to the first system. .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016024266A JP6674272B2 (en) | 2016-02-12 | 2016-02-12 | Information processing method and control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016024266A JP6674272B2 (en) | 2016-02-12 | 2016-02-12 | Information processing method and control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017142698A true JP2017142698A (en) | 2017-08-17 |
JP6674272B2 JP6674272B2 (en) | 2020-04-01 |
Family
ID=59629146
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016024266A Active JP6674272B2 (en) | 2016-02-12 | 2016-02-12 | Information processing method and control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6674272B2 (en) |
-
2016
- 2016-02-12 JP JP2016024266A patent/JP6674272B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP6674272B2 (en) | 2020-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021120970A1 (en) | Distributed local dns system and domain name inquiry method | |
AU2004306913B2 (en) | Redundant routing capabilities for a network node cluster | |
CN110224871B (en) | High-availability method and device for Redis cluster | |
US8375001B2 (en) | Master monitoring mechanism for a geographical distributed database | |
US7619965B2 (en) | Storage network management server, storage network managing method, storage network managing program, and storage network management system | |
CN108075971B (en) | Main/standby switching method and device | |
WO2014087850A1 (en) | Automatic-fault-handling cache system, fault-handling processing method for cache server, and cache manager | |
KR20140043800A (en) | Virtual machine migration to minimize packet loss in virtualized network | |
US9992058B2 (en) | Redundant storage solution | |
TW201824823A (en) | Methods and devices for switching a virtual internet protocol address | |
WO2016082078A1 (en) | Path management system, device and method | |
JP2015523747A (en) | Computer system, communication control server, communication control method and program | |
JP2011028547A (en) | Virtual machine starting terminal and virtual machine starting program | |
JP2004220151A (en) | Server device having function for switching old and new modules | |
CN110535947B (en) | Storage device cluster configuration node switching method, device and equipment | |
JP2008283608A (en) | Computer, program and method for switching redundant communication path | |
JP4579850B2 (en) | Blade type system and connection management method | |
JP4806382B2 (en) | Redundant system | |
JP5526780B2 (en) | Load distribution system, service processing server, load distribution method, and load distribution program | |
JP6674272B2 (en) | Information processing method and control method | |
JP2007249659A (en) | System-switching method, computer system therefor, and program | |
CN114900526A (en) | Load balancing method and system, computer storage medium and electronic device | |
JP2001027951A (en) | File loading device for information processing system of multiprocessor configuration and recording medium | |
JP2014023137A (en) | Communication system, route control device, user terminal and route control method | |
JP2006129348A (en) | Master node determination system and method, node device, and computer program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181213 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20191016 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191023 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191216 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200107 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200127 |
|
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: 20200212 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200306 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6674272 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |