JP5338913B2 - 更新管理装置及び方法 - Google Patents
更新管理装置及び方法 Download PDFInfo
- Publication number
- JP5338913B2 JP5338913B2 JP2011535235A JP2011535235A JP5338913B2 JP 5338913 B2 JP5338913 B2 JP 5338913B2 JP 2011535235 A JP2011535235 A JP 2011535235A JP 2011535235 A JP2011535235 A JP 2011535235A JP 5338913 B2 JP5338913 B2 JP 5338913B2
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- file
- processing apparatus
- update
- updated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Stored Programmes (AREA)
Description
本件は、更新管理装置及び方法に関する。
サーバ等の情報処理装置は、セキュリティの強化や、機能の追加等のために、当該情報処理装置のOS(Operating System)等のファイルの更新がなされる、所謂パッチが適用される場合がある。
しかし、現在運用中の情報処理装置(以下現用情報処理装置とも称す)にパッチを適用すると、ファイルを更新したことによる不具合が生じた場合に、運用に支障をきたす可能性がある。
このため、運用システムに代わって起動を行うブート環境である、即ち代替の情報処理装置(以下代替情報処理装置とも称す)を用意して情報処理装置を二重化し、代替情報処理装置にパッチを適用して正常動作を確認した後、代替情報処理装置と現用情報処理装置とを切り替えて運用を継続する方式が提案されている。
この方式であれば、パッチの適用後、正常に動作するか否かの検証が、運用開始前に可能である。また、パッチ運用後、万一障害が発生した場合でも、情報処理装置が二重化されているため、パッチ適用前の状態に戻すことが可能である。
図11は、上記代替情報処理装置を用いた方式の説明図である。
先ず、運用装置101から代替情報処理装置102へファイルをコピーすることで、両装置101,102のファイルが、互いに同一の内容となる(S1)。ここで、両装置101,102のファイルは、オペレーティングシステムが用いるシステムファイル91と、ユーザデータ等のデータファイル92を含んでいる。
先ず、運用装置101から代替情報処理装置102へファイルをコピーすることで、両装置101,102のファイルが、互いに同一の内容となる(S1)。ここで、両装置101,102のファイルは、オペレーティングシステムが用いるシステムファイル91と、ユーザデータ等のデータファイル92を含んでいる。
現用情報処理装置101は、運用によりデータファイル92の更新(変更、作成、削除を含む)を行う。(S2)。
一方、代替措置102にパッチが適用されると、システムファイル91の少なくとも一部が更新される(S3)。図11において、システムファイル91Aが、更新後のファイルである。なお、パッチの適用にかかる時間は、更新するファイル数等に比例し、多くのファイルの更新を行うパッチであれば多くの時間がかかり、例えば4時間程度かかることがあった。このため、パッチの適用中も現用情報処理装置101を運用することが、望ましい。
代替情報処理装置102において、パッチの適用が正常に終了した場合には、現用情報処理装置101が停止され(S4)、S1からS4までに更新されたデータファイル92Aが代替情報処理装置102にコピーされる(S5)。
更新されたシステムファイル91A及び更新されたデータファイル92Aを有した代替情報処理装置102が、新たに現用情報処理装置に変更され、運用を再開する(S6)。
例えばSolaris(登録商標)の更新ツールであるLive Upgradeでは、運用システムでパッチ適用中に更新されるデータファイルのリスト(/etc/lu/synclist)をユーザが定義すれば、運用の切り替え時に代替情報処理装置へ反映する仕組みがある。しかし、そのファイルのリストをユーザが定義するには、Solaris OSのスキル、運用システムの仕組みの理解などが必要で、且つ更新の度にファイルのリストを定義することになるため、手間がかかり使い難いものであった。
図11の例では、現用情報処理装置101の変更したファイルが、データファイル92Aだけであったので、現用情報処理装置101のデータファイル92Aを代替情報処理装置102にコピーすれば、現用情報処理装置101で運用した結果を代替情報処理装置が問題無く引き継ぐことができる。
しかし、現用情報処理装置101が、運用の結果、システムファイル91を更新した場合、後述のように現用情報処理装置101のシステムファイル91を代替情報処理装置102へコピーすることができない。このため、現用情報処理装置101の運用の結果を代替情報処理装置に完全には引き継げないという問題があった。
図12は、パッチの適用時に上記問題が生じる場合の説明図である。
先ず、運用装置101から代替情報処理装置102へファイルをコピーすることで、両装置101,102のファイルが、互いに同一の内容となる(S11)。
先ず、運用装置101から代替情報処理装置102へファイルをコピーすることで、両装置101,102のファイルが、互いに同一の内容となる(S11)。
ここで、システムファイル91には、情報処理装置の設定に関するコンフィグファイル93を含んでいる。コンフィグファイル93とは、例えば、ユーザの権限や、ファイルのセキュリティ、ユーザインタフェースの表示形式、電源の管理といった設定可能な事項を設定する場合に用いられるファイルである。
現用情報処理装置101は、運用によりデータファイル92及びコンフィグファイル93の更新(変更、作成、削除を含む)を行う。(S12)。
一方、代替措置102にパッチが適用されると、コンフィグファイル93を含むシステムファイル91の一部が更新される(S13)。図12において、コンフィグファイル93A、システムファイル91Aが、更新後のファイルである。
代替情報処理装置102において、パッチの適用が正常に終了した場合には、現用情報処理装置101が停止され(S14)、この時点までに更新されたデータファイル92Aが代替情報処理装置にコピーされる(S15)。
なお、現用情報処理装置101の運用によって更新されたコンフィグファイル93Bを代替情報処理装置102へコピーすると、コンフィグファイル93Aが上書きされ、パッチの適用が無効になってしまうので、コンフィグファイル93Bは代替情報処理装置102へコピーできない。
従って、更新されたシステムファイル91A及び更新されたデータファイル92Aを有した代替情報処理装置102が、新たに現用情報処理装置に変更され、運用を再開すると(S16)、コンフィグファイル93Aにパッチ適用中の運用結果が反映されず、問題が生じる。
そこで、開示の一実施形態は、代替情報処理装置におけるパッチの適用中に、現用情報処理装置で運用した結果を代替情報処理装置のパッチ適用後のファイルに反映させる技術を提供する。
上記課題を解決するため、一実施形態としての更新管理装置は、複数のファイルに基づいて情報処理を実行する現用情報処理装置と、該現用情報処理装置を代替して情報処理を実行する代替情報処理装置とで2重化されるシステムのファイルを更新する更新管理装置であって、前記代替情報処理装置のファイルを更新情報に基づいて更新する第1の更新部と、前記代替情報処理装置のファイルの更新中に、前記現用情報処理装置によって更新された当該現用情報処理装置のファイルを求め、該現用情報処理装置によって更新されたファイルと対応する代替情報処理装置のファイルを、該現用情報処理装置によって更新されたファイルと同一の内容とする同期部と、前記現用情報処理装置によって更新されたファイルと同一の内容にされた代替情報処理装置のファイルを前記更新情報に基づいて更新する第2の更新部と、を備える。
開示の一実施形態は、代替情報処理装置におけるパッチの適用中に、現用情報処理装置で運用した結果を代替情報処理装置のパッチ適用後のファイルに反映させる技術を提供できる。
以下、図面を参照して本発明の実施形態の一例について説明する。以下の実施の形態の構成は例示であり、本発明は実施の形態の構成に限定されない。
本実施形態の更新管理システムは、複数のファイルに基づいて情報処理を実行する現用情報処理装置と、該現用情報処理装置を代替する代替情報処理装置とを備え、現用情報処理装置にて運用を行う一方、代替情報処理装置においてパッチの適用を行う。
図1及び図2は、本実施形態の更新管理方法の説明図、図3は更新管理装置を含む代替情報処理装置のブロック図である。
代替情報処理装置2は、図3に示すように、データの演算処理を行うデータ処理部21と、他の装置との通信を行う通信処理部22、演算処理に用いられるデータやソフトウェアを記憶する記憶部(ハードディスク)23、入力部24、出力部25を備えたサーバ等のコンピュータである。
通信処理部22は、ネットワークやケーブル等の回線を介して他の情報処理装置であるサーバ等のコンピュータと通信を行う。
記憶部23は、OSやアプリケーションプログラム(更新管理プログラム)を記憶する。
入力部24は、データ処理部21へ情報を入力する手段であり、キーボードやポインティングデバイスといったユーザインタフェースや、メモリカードやCD−ROM等の記憶媒体から情報を読み取るデバイスを有する。
出力部25は、データ処理部21の処理結果を出力する手段であり、処理結果等を表示する表示装置や、データを印刷するプリンタを有する。
データ処理部21は、CPU(Central Processing Unit)やメインメモリを有し、前述したOSやアプリケーションプログラムを記憶部23からメインメモリに読み出し、読み出したOSやアプリケーションプログラムに従ってCPUが演算処理を行う。この演算処理により、CPUは、更新部31や、同期部32、再更新部33、切替部34としても機能する。
更新部31としてCPUは、代替情報処理装置2の記憶部23に記憶されたファイルを更新情報即ちパッチに基づいて更新する。
同期部32としてCPUは、代替情報処理装置2のファイルの更新中に、現用情報処理装置1の情報処理によって更新された現用情報処理装置1のファイルを求める。また、同期部31としてCPUは、現用情報処理装置1の情報処理によって更新されたファイルと対応する代替情報処理装置のファイルを現用情報処理装置1の情報処理によって更新されたファイルと同一の内容として同期する
再更新部33としてCPUは、現用情報処理装置1の情報処理によって更新されたファイルと同一の内容に同期された代替情報処理装置2のファイルを更新情報に基づいて再度更新する。
同期部32としてCPUは、代替情報処理装置2のファイルの更新中に、現用情報処理装置1の情報処理によって更新された現用情報処理装置1のファイルを求める。また、同期部31としてCPUは、現用情報処理装置1の情報処理によって更新されたファイルと対応する代替情報処理装置のファイルを現用情報処理装置1の情報処理によって更新されたファイルと同一の内容として同期する
再更新部33としてCPUは、現用情報処理装置1の情報処理によって更新されたファイルと同一の内容に同期された代替情報処理装置2のファイルを更新情報に基づいて再度更新する。
切替部34としてCPUは、パッチの適用後、現用情報処理装置1を停止させ、現用情報処理装置1と代替情報処理装置2とを切替え、代替情報処理装置2を新たな現用情報処理装置として運用を開始させる。
図4は、現用情報処理装置1のブロック図である。現用情報処理装置1は、図4に示すように、データの演算処理を行うデータ処理部11と、他の装置との通信を行う通信処理部12、演算処理に用いられるデータやソフトウェアを記憶する記憶部(ハードディスク)13、入力部14、出力部15を備えたコンピュータである。
通信処理部12は、ネットワークやケーブル等の回線を介して他のコンピュータと通信を行う。
記憶部13は、OSやアプリケーションプログラム(更新管理プログラム)を記憶する。また、記憶部13は、エージェントから受信した管理データやログデータ、分析結果、データのスキーマを格納するデータ格納部である。
入力部14は、データ処理部11へ情報を入力する手段であり、キーボードやポインティングデバイスといったユーザインタフェースや、メモリカードやCD−ROM等の記憶媒体から情報を読み取るデバイスを有する。
出力部15は、データ処理部21の処理結果を出力する手段であり、処理結果等を表示する表示装置や、データを印刷するプリンタを有する。
データ処理部11は、CPUやメインメモリを有し、OSやアプリケーションプログラムを記憶部13からメインメモリに読み出し、読み出したOSやアプリケーションプログラムに従ってCPUが演算処理を行う。
本実施形態では、代替情報処理装置2が更新管理装置を兼ねている。なお、これに限らず、更新管理装置は、現用情報処理装置1が兼ねても良く、また、更新管理装置は、現用情報処理装置1と代替情報処理装置から独立した装置であっても良い。例えば、更新部31や、同期部32、再更新部33を備えた情報処理装置であれば良い。
なお、本実施形態の更新管理装置としての代替情報処理装置2の構成要素のうち、情報を処理する要素は、汎用のプロセッサがソフトウェアとしての更新管理プログラムを実行することによって、上記各機能を実現するものである。これら情報を処理する要素の一部或いは全部は、基本的な回路を組み合わせて各々の機能を実現したハードウェアであっても良い。
代替情報処理装置2において、更新部31や、同期部32、再更新部33、切替部34が、上記の情報を処理する要素である。
これら情報を処理する要素であるハードウェアは、例えば、FPGA[Field Programmable Gate Array]、ASIC[Application Specific Integrated Circuit]、LSI[Large Scale Integration]といった基本的な回路を備えても良い。また、当該ハードウェアは、IC[Integrated Circuit]、ゲートアレイ、論理回路、信号処理回路、アナログ回路といった基本的な回路を備えても良い。
論理回路としては、例えば、AND回路(論理積回路)、OR回路(論理和回路)、NOT回路(否定回路)、NAND回路(否定的論理積回路)、NOR回路(否定的論理和回路)、フリップフロップ回路、カウンタ回路がある。信号処理回路には、信号値に対し、例えば、加算、乗算、除算、反転、積和演算、微分、積分を実行する回路が、含まれていてもよい。アナログ回路には、例えば、信号値に対して、増幅、加算、乗算、微分、積分を実行する回路が、含まれていてもよい。
上記構成の代替情報処理装置(更新管理装置)2は、更新管理プログラムを実行することにより、図1及び図2に示すように更新管理方法を実現する。
先ず、代替情報処理装置2の同期部32は、運用装置1の記憶部13に記憶されているファイルを代替情報処理装置2の記憶部23へコピーすることで、両装置1,2のファイルを同一の内容とする(S21)。
ここで、両装置1,2のファイルは、パッチによる更新対象となるシステムファイル91と、パッチによる更新対象でないデータファイル92とを有する。システムファイルは、例えばOSやアプリケーションプログラムといった情報処理を行う場合に用いられるプログラムであり、データファイル92は、例えば情報処理によって生成されるデータである。
また、システムファイル91は、情報処理装置の設定に関するコンフィグファイル93を含んでいる。コンフィグファイル93は、例えば、ユーザの権限や、ファイルのセキュリティ、ユーザインタフェースの表示形式、電源の管理といった設定可能な事項を設定する場合に用いられるファイルである。
代替情報処理装置2の更新部31は、現用情報処理装置1と代替情報処理装置2の両方で更新されるファイルを監視するため、パッチによって更新されるファイルのリスト、即ち監視ファイルリストを作成する(S22)。図5は、監視ファイルリストの説明図である。
パッチには更新するファイルの情報が含まれているため、更新部31は、更新する全てのファイルのファイル名をパッチから抽出し、監視ファイルリストとする。なお、パッチが複数ある場合、更新部31はファイル名をパッチ毎に抽出し、パッチ毎に監視ファイルリストを作成する。図5の例では、P1からPnまでn個のパッチがある。
また、更新部31は現用情報処理装置1にアクセスし、現用情報処理装置1のファイルのうち、監視ファイルリストのファイル名と一致するファイルの更新日時等の情報を読み出し、ファイル名と対応付けて監視ファイルリストに入力する。
そして、更新部31は、パッチに基づき記憶部23内のシステムファイル91の一部を更新する(S23)。図1において、システムファイル91Aが、更新後のシステムファイルである。
なお、代替情報処理装置2へのパッチの適用中も、現用情報処理装置1は、運用によりデータファイル92の更新(変更、作成、削除を含む)を行う。
パッチの適用後、同期部32は、現用情報処理装置1のファイルのうち、監視ファイルリスト以外のファイルを代替情報処理装置2へ差分コピーし、同期させる(S24)。
また、同期部32は、監視ファイルリストのファイルを現用情報処理装置1から代替情報処理装置2へ差分コピーする。ここで差分としてコピーするファイルがあった場合、即ち現用情報処理装置1の運用によって更新されたファイルがあった場合、当該ファイルのコピー後、再更新部33が当該ファイルを更新するパッチを再適用する(S25)。
切替部34は、現用情報処理装置1と代替情報処理装置2とを切り替えるか否かを判定する。例えば、S24,S25でコピーするファイルが0となった場合や、S24,S25でコピーする処理が所定時間以内に終わると推定される場合、ユーザから切替指示が入力された場合など、所定条件を満たしたか否かを判定する(S26)。
なお、処理が所定時間以内に終わると推定される場合とは、例えば、コピーするファイルが所定数以下である場合や、コピーするファイルのサイズが所定値以下である場合など、処理時間が推定できる条件を満たした場合であれば良い。
切り替えを行わない場合(S27,No)、S24に戻り、切り替えを行う場合(S27,Yes)、切替部34は現用情報処理装置1を停止させ(S28)、代替情報処理装置2による運用を開始させる(S29)。
図6は、S22,S23のステップの詳細な説明図である。
S21のファイルのコピーの後、更新部31は、監視ファイルリストを作成する処理(S22)としてS221−S223の処理を行う。先ず、更新部31は、適用パッチリストを作成する。適用パッチリストは、パッチの適用順を示すリストであり、例えば、パッチの番号P1〜Pnを昇順に列記する(S221)。
更新部31は、適用パッチリストに従って順次パッチを解析し、監視ファイルリストを作成する(S222,S223)。ここで更新部31は、パッチを解析し、更新する全てのファイルのファイル名を抽出し、監視ファイルリストとする。また、更新部31は現用情報処理装置1にアクセスし、現用情報処理装置1のファイルのうち、監視ファイルリストのファイル名と一致するファイルの更新日時、サイズ等の情報を読み出し、ファイル名と対応付けて監視ファイルリストに入力する。
管理ファイルリストの作成を繰り返し、全てのパッチについて監視ファイルリストを作成した場合(S222,Yes)、更新部31は、管理ファイルリストの作成処理S22を終了してS23へ移行する。
更新部31及び同期部32は、パッチ適用時の処理S23として、S231−234を行う。更新部31は、全てのパッチの適用が完了したか否かを判定する(S231)。パッチの適用が完了していなければ(S231,No)、同期部32は、適用パッチリストの順でパッチを一つずつ選択し、選択したパッチが更新するファイルを示す監視ファイルリストを求める。また、同期部32は、当該監視ファイルリストのファイル名と一致するファイルを現用情報処理装置1から代替情報処理装置2へ差分コピーし、現用情報処理装置1と代替情報処理装置2のファイルを同期させる。
また、同期部32は、監視ファイルリストで保持する更新日時として、同期したファイルの更新日時を入力する(S233)。
更新部31は、適用パッチリストに従ってS232と同じパッチを順次選択し、選択したパッチを代替情報処理装置2に適用する。即ち、更新部31は、S232で同期したファイルをパッチによって更新する(S234)。このようにパッチを適用する直前にファイルを同期させることで、パッチの適用後に現用情報処理装置1で更新されるシステムファイルを減らすことができる。
パッチの適用後、S231に戻り、同期部32及び更新部31は、適用パッチリストの次のパッチについて、ファイルの同期とパッチの適用(S232〜S234)を繰り返す。そして、全てのパッチの適用が完了した場合(S231,Yes)、更新部31は、S23を終了して処理S24へ移行する。
図7は、現用情報処理装置1と代替情報処理装置2の双方で更新されたファイルの同期とパッチの再適用を行う処理(S25)を詳細に説明する図である。
S24の差分コピーの後、同期部32及び再更新部33は、ファイルの同期とパッチの再適用を行う処理(S25)として、S251−S257の処理を行う。
同期部32は、適用パッチリストから順次パッチを一つ選択し、選択するパッチが無くなったか否か、即ち全てのパッチに基づく処理が完了したか否かを判定する(S251)。
パッチに基づく処理が完了していない場合(S251,No)、S251で選択したパッチの監視ファイルリストに基づく処理が完了したか否かを判定する(S252)。
監視ファイルリストに基づく処理が完了していない場合(S252,No)、同期部32は、監視ファイルリストに基づき、現用情報処理装置1の運用によって更新されたファイルがあるか否かを判定する(S253)。
例えば、同期部32は監視ファイルリストからファイル名を順次選択し、このファイル名と一致する現用情報処理装置1のファイルの更新日時と監視ファイルリストの更新日時とを比較する。
同期部32は、現用情報処理装置1のファイルの更新日時と監視ファイルリストの更新日時が同一であれば(S253,No)、現用情報処理装置1による更新は無いと判定し、S252に戻って次のファイルについての判定を行う。
また、同期部32は、S253で現用情報処理装置1のファイルの更新日時と監視ファイルリストの更新日時が同一でなく、ファイルが現用情報処理装置1によって更新されたと判定した場合(S253,Yes)、再更新部33はS251で選択されたパッチを外す(S254)。即ち、代替情報処理装置2のシステムファイルのうち、S251で選択されたパッチの適用によって更新されたファイルをパッチ適用前の状態に戻す。
そして、同期部32は、監視ファイルリストが示すファイルを現用情報処理装置1から代替情報処理装置2へ差分コピーし、現用情報処理装置1と代替情報処理装置2のファイルを同期させる(S255)。
また、同期部32は、監視ファイルリストで保持する更新日時として、同期したファイルの更新日時を入力する(S256)。
再更新部33は、当該ファイルを更新するパッチを再適用する(S257)。
パッチの再適用後、S251へ戻り、同期部32及び再更新部33は、次のパッチを選択してS252〜S257を繰り返し、適用パッチリストに選択するパッチが無くなった場合(S251,Yes)、更新部31はS25を終了してS26へ移行する。
なお、パッチを適用する場合、適用したパッチの情報をデータベースに記憶しておき、誤って古いパッチを適用してしまうことや、無駄に同じパッチを適用してしまうことを防止するのが一般的である。このため、本実施形態では、S257でパッチを再適用する前にS254でパッチを外している。なお、重複したパッチの適用を禁止しない仕様であれば、パッチを外す処理(S254)を省略しても良い。
また、重複したパッチの適用を禁止する仕様であっても、パッチを外す処理(S254)を省略し、監視ファイルリストが示すファイルを代替情報処理装置2へ差分コピーした時点で、パッチを外したと見なしてデータベースの情報をパッチ適用前の状態に書換えても良い。これによりパッチを外す時間が不要になり、パッチの再適用にかかる時間を短縮できる。
図8は切り替え処理S29を詳細に説明する図である。
現用情報処理装置1の停止後、切替部34は代替情報処理装置2をシングルユーザモード、即ち他のユーザにサービスを行わないモードで起動させる(S291)。
現用情報処理装置1の停止後、切替部34は代替情報処理装置2をシングルユーザモード、即ち他のユーザにサービスを行わないモードで起動させる(S291)。
同期部32は、監視ファイルリスト以外のファイルを現用情報処理装置1から代替情報処理装置2へ差分コピーする(S292)。
次に同期部32は、適用パッチリストから順次パッチを一つ選択し、選択するパッチが無くなったか否か、即ち全てのパッチに基づく処理が完了したか否かを判定する(S293)。
同期部32は、パッチに基づく処理が完了していない場合(S293,No)、S293で選択したパッチの監視ファイルリストに基づく処理が完了したか否かを判定する(S294)。
監視ファイルリストに基づく処理が完了していない場合(S294,No)、同期部32は、監視ファイルリストに基づき、現用情報処理装置1の運用によって更新されたファイルがあるか否かを判定する(S295)。
例えば、同期部32は監視ファイルリストからファイル名を順次選択し、このファイル名と一致する現用情報処理装置1のファイルの更新日時と監視ファイルリストの更新日時とを比較する。
同期部32は、現用情報処理装置1のファイルの更新日時と監視ファイルリストの更新日時が同一であれば(S295,No)、現用情報処理装置1による更新は無いと判定し、S252に戻って次のファイルについての判定を行う。
また、同期部32が、現用情報処理装置1のファイルの更新日時と監視ファイルリストの更新日時が同一でなく、現用情報処理装置1によって更新されたと判定した場合(S295,Yes)、再更新部33は、S293で選択したパッチを外す(S296)。即ち、代替情報処理装置2のシステムファイルのうち、S293で選択されたパッチの適用によって更新されたファイルをパッチ適用前の状態に戻す。
そして、同期部32は、監視ファイルリストが示すファイルを現用情報処理装置1から代替情報処理装置2へ差分コピーし、現用情報処理装置1と代替情報処理装置2のファイルを同期させる(S297)。
また、同期部32は、監視ファイルリストで保持する更新日時として、同期したファイルの更新日時を入力する(S298)。
再更新部33は、当該ファイルを更新するパッチを再適用する(S299)。
パッチの再適用後、S293へ戻り、同期部32及び再更新部33は、次のパッチを選択してS294〜S299を繰り返す。
そして、適用パッチリストに選択するパッチが無くなった場合(S293,Yes)、切替部34は代替情報処理装置2をマルチユーザモードにて起動させて運用を開始させる(S300,S301)。
S29において、S291〜S230の処理は、現用情報処理装置1を停止させた状態でファイルの同期を行う場合に用いられる処理である。
S291〜S230の処理は、全てのパッチに係るファイルの同期をとる処理であるが、S26で所定条件を満たした場合、即ち現用情報処理装置1と代替情報処理装置2のファイルの相違が所定以下の場合にのみ実行される。従ってS291〜S230の処理で実際にファイルをコピーすることは稀であり、現用情報処理装置1の停止時間を極端に長くすることは無い。
図9は、図2のS24や図8のS292において、監視ファイルリスト以外のファイルを差分コピーする処理の説明図である。
先ず、同期部32は、現用情報処理装置1の記憶部13に記憶されている全ファイルのファイルリストL1を作成する(S31)。ここで、ファイルリストは、各ファイルのファイル名と更新日時を対応付けて記録したものである。
同様に、同期部32は、代替情報処理装置2の記憶部23に記憶されている全ファイルのファイルリストL2を作成する(S32)。
次に同期部32は、ファイルリストL1,L2から監視ファイルリストに該当するファイルの情報を削除する(S33)。
また、同期部32は、ファイルリストL1,L2の比較が完了したか否かを判定する(S34)。即ち、同期部32は、ファイルリストL1に比較していないファイルの情報があれば、比較が完了していないと判定し(S34,No)、ファイルリストL1,L2の比較を行う(S35)。例えば、ファイルリストL1の順に従って比較していないファイルの情報を選択し、ファイルリストL1とL2とでファイルの有無に相違があるか、更新日時に相違があるかについて比較する。
同期部32は、比較の結果相違が無ければ、S34に戻って次のファイルについて比較を行い、比較の結果、当該ファイルの更新日時に相違があれば、当該ファイルを現用情報処理装置1から代替情報処理装置2へコピーして(S36)、S34へ戻る。また、同期部32は、比較の結果、ファイルの有無に相違があれば、どちらの装置に当該ファイルが有り、どちらの装置に当該ファイルが無いのかを判定する(S37)。そして、現用情報処理装置1に当該ファイルが有り、代替情報処理装置2に当該ファイルが無いのであれば、同期部32は、当該ファイルを現用情報処理装置1から代替情報処理装置2へコピーして(S36)、S34へ戻る。また、現用情報処理装置1に当該ファイルが無く、代替情報処理装置2に当該ファイルが有る場合、同期部32は、当該ファイルを代替情報処理装置2から削除し(S38)、S34へ戻る。
図10は、図2のS25や図8のS297において、監視ファイルリストのファイルを差分コピーする処理の説明図である。
先ず、同期部32は、現用情報処理装置1の記憶部13に記憶されているファイルのうち、パッチによって更新されるファイルのファイルリストL3を作成する(S41)。ここで、ファイルリストL3は、図2のS22で作成した監視ファイルリストと同じものであり、S22で作成した監視ファイルリストのうち、必要なパッチの監視ファイルリストを選択すれば良い。
また、同期部32は、代替情報処理装置2の記憶部23に記憶されているファイルのうち、パッチによって更新されるファイルのファイルリストL4を作成する(S42)。ここで、ファイルリストL4は、監視ファイルリストから必要なパッチのファイルリストを選択し、当該ファイルリストの更新日時を記憶部23に記憶されている各ファイルの更新日時に置き換えれば良い。
そして、同期部32は、ファイルリストL3,L4の比較が完了したか否かを判定する(S43)。即ち、同期部32は、ファイルリストL3に比較していないファイルの情報があれば、比較が完了していないと判定し(S43,No)、ファイルリストL3,L4の比較を行う(S44)。例えば、ファイルリストL3の順に従って比較していないファイルの情報を選択し、ファイルリストL3とL4とでファイルの有無に相違があるか、更新日時に相違があるかについて比較する。
同期部32は、比較の結果相違が無ければ、S43に戻って次のファイルについて比較を行い、比較の結果、当該ファイルの更新日時に相違があれば、当該ファイルを現用情報処理装置1から代替情報処理装置2へコピーして(S45)、S43へ戻る。
また、同期部32は、比較の結果、ファイルの有無に相違があれば、どちらの装置に当該ファイルが有り、どちらの装置に当該ファイルが無いのかを判定する(S46)。
そして、現用情報処理装置1に当該ファイルが有り、代替情報処理装置2に当該ファイルが無いのであれば、同期部32は、当該ファイルを現用情報処理装置1から代替情報処理装置2へコピーし(S45)、S34へ戻る。
また、現用情報処理装置1に当該ファイルが無く、代替情報処理装置2に当該ファイルが有る場合、同期部32は、当該ファイルを代替情報処理装置2から削除し(S47)、S34へ戻る。
以上のように、本実施形態の代替情報処理装置(更新管理装置)2によれば、代替情報処理装置におけるパッチの適用中に、現用情報処理装置で運用した結果を代替情報処理装置のパッチ適用後のファイルに反映させることができる。
また、本実施形態の代替情報処理装置は、複数のパッチのうち、現用情報処理装置1の運用によって更新されたファイルと対応する代替情報処理装置2のファイルを更新するパッチを選択し、選択したパッチに基づいて当該ファイルを再度更新する。このため、パッチを選択的に再適用でき、再適用にかかる時間を短縮できる。
また、本実施形態では、代替情報処理装置2と現用情報処理装置1のファイルを繰り返し同期させ、代替情報処理装置2と現用情報処理装置1とで相違したファイルが少なくなった場合に、現用情報処理装置1を停止させて代替情報処理装置2へ切り替えるので、運用を停止する期間を抑制できる。
〈その他〉
本発明は、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
本発明は、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
上述の実施形態において、ファイルの更新の有無は、更新日時の比較によって行っていたが、これに限らず、ファイルのサイズ、或いは更新日時及びサイズの比較によって行っても良い。また、ファイルを更新する毎にログを記録しておき、このログに基づいてファイルの更新の有無が判定されても良い。
上述の実施形態において、更新管理プログラムは、コンピュータが読み取り可能な記録媒体に記録されていても良い。ここで、コンピュータが読み取り可能な記録媒体とは、データやプログラム等の情報を電気的、磁気的、光学的、機械的、または化学的作用によって蓄積し、コンピュータから読み取ることができる記録媒体をいう。このような記録媒体の内コンピュータから取り外し可能なものとしては、例えばフレキシブルディスク、光磁気ディスク、CD-ROM、CD-R/W、DVD、DAT、8mmテープ、メモリカード等がある。
また、コンピュータに固定された記録媒体としてハードディスクやROM(リードオンリーメモリ)等がある。
Claims (6)
- 複数のファイルに基づいて情報処理を実行する現用情報処理装置と、該現用情報処理装置を代替して情報処理を実行する代替情報処理装置とで2重化されるシステムのファイルを更新する更新管理装置であって、
前記代替情報処理装置のファイルを更新情報に基づいて更新する第1の更新部と、
前記代替情報処理装置のファイルの更新中に、前記現用情報処理装置によって更新された当該現用情報処理装置のファイルを求め、該現用情報処理装置によって更新されたファイルと対応する代替情報処理装置のファイルを、該現用情報処理装置によって更新されたファイルと同一の内容とする同期部と、
前記現用情報処理装置によって更新されたファイルと同一の内容にされた代替情報処理装置のファイルを前記更新情報に基づいて更新する第2の更新部と、
を備える更新管理装置。 - 前記第1の更新部が、複数の更新情報に基づいて前記代替情報処理装置のファイルを更新する場合に、
前記第2の更新部が、前記複数の更新情報のうち、前記現用情報処理装置によって更新されたファイルと対応する代替情報処理装置のファイルを更新する更新情報を選択し、選択した更新情報に基づいて当該ファイルを更新する請求項1に記載の更新管理装置。 - 複数のファイルに基づいて情報処理を実行する現用情報処理装置と、該現用情報処理装置を代替する代替情報処理装置とで2重化されるシステムのファイルを更新する更新管理装置が、
前記代替情報処理装置のファイルを更新情報に基づいて更新するステップと、
前記代替情報処理装置のファイルの更新中に、前記現用情報処理装置によって更新された当該現用情報処理装置のファイルを求め、該現用情報処理装置によって更新されたファイルと対応する代替情報処理装置のファイルを該現用情報処理装置によって更新されたファイルと同一の内容とするステップと、
前記現用情報処理装置によって更新されたファイルと同一の内容にされた代替情報処理装置のファイルを前記更新情報に基づいて更新するステップと、
を備える更新管理方法。 - 複数の更新情報に基づいて前記代替情報処理装置のファイルを更新する場合に、
前記複数の更新情報のうち、前記現用情報処理装置によって更新されたファイルと対応する代替情報処理装置のファイルを更新する更新情報を選択し、選択した更新情報に基づいて当該ファイルを更新する請求項3に記載の更新管理方法。 - 複数のファイルに基づいて情報処理を実行する現用情報処理装置と、該現用情報処理装置を代替する代替情報処理装置とで2重化するシステムのファイルを更新する更新管理装置に、
前記代替情報処理装置のファイルを更新情報に基づいて更新するステップと、
前記代替情報処理装置のファイルの更新中に、前記現用情報処理装置によって更新された当該現用情報処理装置のファイルを求め、該現用情報処理装置によって更新されたファイルと対応する代替情報処理装置のファイルを該現用情報処理装置によって更新されたファイルと同一の内容とするステップと、
前記現用情報処理装置によって更新されたファイルと同一の内容にされた代替情報処理装置のファイルを前記更新情報に基づいて更新するステップと、
を実行させるための更新管理プログラム。 - 複数の更新情報に基づいて前記代替情報処理装置のファイルを更新する場合に、
前記複数の更新情報のうち、前記現用情報処理装置によって更新されたファイルと対応する代替情報処理装置のファイルを更新する更新情報を選択し、選択した更新情報に基づいて当該ファイルを更新する請求項5に記載の更新管理プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2009/067468 WO2011042961A1 (ja) | 2009-10-07 | 2009-10-07 | 更新管理装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2011042961A1 JPWO2011042961A1 (ja) | 2013-02-28 |
JP5338913B2 true JP5338913B2 (ja) | 2013-11-13 |
Family
ID=43856459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011535235A Expired - Fee Related JP5338913B2 (ja) | 2009-10-07 | 2009-10-07 | 更新管理装置及び方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20120198432A1 (ja) |
JP (1) | JP5338913B2 (ja) |
WO (1) | WO2011042961A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018018121A (ja) | 2016-07-25 | 2018-02-01 | 富士通株式会社 | データベース制御プログラム、データベース制御方法及びデータベース制御装置 |
US10037203B1 (en) * | 2016-07-28 | 2018-07-31 | National Technology & Engineering Solutions Of Sandia, Llc | Real-time software upgrade |
US11442717B2 (en) * | 2020-03-31 | 2022-09-13 | Arista Networks, Inc. | System and method for updating state information |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07162509A (ja) * | 1993-12-07 | 1995-06-23 | Nec Corp | 電子交換機のプログラム変更方法 |
JPH11191069A (ja) * | 1997-12-26 | 1999-07-13 | Fujitsu Ltd | 二重化装置のファイル更新方法 |
JP2001275140A (ja) * | 2000-03-28 | 2001-10-05 | Matsushita Electric Ind Co Ltd | 運用/待機構成の通信制御装置及び運用/待機系切替方法 |
JP2002049502A (ja) * | 2000-08-01 | 2002-02-15 | Fujitsu Ltd | 複数プロセッサシステムにおけるアップデート方式 |
JP2002328813A (ja) * | 2001-04-27 | 2002-11-15 | Hitachi Ltd | プログラム修正方法 |
JP2008242679A (ja) * | 2007-03-27 | 2008-10-09 | Nec Corp | サーバシステム及びパッチ処理方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090024713A1 (en) * | 2007-07-18 | 2009-01-22 | Metrosource Corp. | Maintaining availability of a data center |
-
2009
- 2009-10-07 WO PCT/JP2009/067468 patent/WO2011042961A1/ja active Application Filing
- 2009-10-07 JP JP2011535235A patent/JP5338913B2/ja not_active Expired - Fee Related
-
2012
- 2012-04-06 US US13/441,270 patent/US20120198432A1/en not_active Abandoned
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07162509A (ja) * | 1993-12-07 | 1995-06-23 | Nec Corp | 電子交換機のプログラム変更方法 |
JPH11191069A (ja) * | 1997-12-26 | 1999-07-13 | Fujitsu Ltd | 二重化装置のファイル更新方法 |
JP2001275140A (ja) * | 2000-03-28 | 2001-10-05 | Matsushita Electric Ind Co Ltd | 運用/待機構成の通信制御装置及び運用/待機系切替方法 |
JP2002049502A (ja) * | 2000-08-01 | 2002-02-15 | Fujitsu Ltd | 複数プロセッサシステムにおけるアップデート方式 |
JP2002328813A (ja) * | 2001-04-27 | 2002-11-15 | Hitachi Ltd | プログラム修正方法 |
JP2008242679A (ja) * | 2007-03-27 | 2008-10-09 | Nec Corp | サーバシステム及びパッチ処理方法 |
Also Published As
Publication number | Publication date |
---|---|
US20120198432A1 (en) | 2012-08-02 |
JPWO2011042961A1 (ja) | 2013-02-28 |
WO2011042961A1 (ja) | 2011-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5018768B2 (ja) | 適用パッチ選別装置及び適用パッチ選別方法 | |
US6751674B1 (en) | Method and system for replication in a hybrid network | |
US8392386B2 (en) | Tracking file contents | |
US8595381B2 (en) | Hierarchical file synchronization method, software and devices | |
KR20100014107A (ko) | 소프트웨어 갱신 장치 및 소프트웨어 갱신 프로그램을 기록한 컴퓨터 판독 가능한 기록매체 | |
JP2008009809A (ja) | データベース同期処理プログラム | |
US20080244563A1 (en) | Dynamic configuration environment for setup | |
JP2008077264A (ja) | Cdpを用いたリカバリ方法 | |
KR20040077497A (ko) | 복제된 파일들을 위한 복수의 파일 상태 관리 방법 | |
JP2011501270A (ja) | 仮想マシン複製を作成するための更新の管理 | |
US7228526B2 (en) | Application imaging infrastructure | |
JP5338913B2 (ja) | 更新管理装置及び方法 | |
De Jong et al. | Zero-downtime SQL database schema evolution for continuous deployment | |
CN112612853A (zh) | 基于数据库集群的数据处理方法、装置及电子设备 | |
JP2012173780A (ja) | ファイルの構成管理システム | |
CN103455288B (zh) | 信息处理装置及控制方法 | |
Masson et al. | Feature Model for Collaborative Modeling Environments. | |
US8438133B2 (en) | Information processing apparatus, file management system, information processing method and computer readable medium | |
US20050262033A1 (en) | Data recording apparatus, data recording method, program for implementing the method, and program recording medium | |
JPH1063557A (ja) | 分散ファイルの同期方式 | |
US20110113001A1 (en) | Information Integrity Rules Framework | |
JP2002229835A (ja) | コンピュータによるファイル管理システムおよびそのプログラムとプログラム記録媒体 | |
US7389515B1 (en) | Application deflation system and method | |
JP5240086B2 (ja) | データ管理プログラム | |
JP2004110691A (ja) | ファイル管理システム、ファイル管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20130709 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130722 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |