JP2011065495A - Network system, method, and computer program - Google Patents
Network system, method, and computer program Download PDFInfo
- Publication number
- JP2011065495A JP2011065495A JP2009216399A JP2009216399A JP2011065495A JP 2011065495 A JP2011065495 A JP 2011065495A JP 2009216399 A JP2009216399 A JP 2009216399A JP 2009216399 A JP2009216399 A JP 2009216399A JP 2011065495 A JP2011065495 A JP 2011065495A
- Authority
- JP
- Japan
- Prior art keywords
- server
- release
- network environment
- program module
- approved
- 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
Links
Images
Abstract
Description
本発明は、開発ネットワーク環境と運用ネットワーク環境を備えたネットワークシステムに関する。 The present invention relates to a network system having a development network environment and an operation network environment.
従来では、開発環境と運用環境とが互いに独立の環境で構築されたシステムにおいて、これら別個の環境間に保存媒体を設けたことで、開発環境側に蓄積されるファイルを、運用環境側に移行させる技術が知られている(例えば特許文献1)。 Conventionally, in a system constructed in an environment where the development environment and the operation environment are independent from each other, a storage medium is provided between these separate environments, so that files accumulated on the development environment side are transferred to the operation environment side. The technique to make is known (for example, patent document 1).
特許文献1に示す技術は、CORBAに準拠した分散オブジェクト環境において、開発環境において定義されるインターフェースリポジトリIRの情報をIDLファイルとして抽出して保存媒体に記憶させておき、この保存媒体に記憶されたIDLファイルを、全く異なる運用環境で展開して、その環境下でインターフェースリポジトリIRとして登録することにより開発環境と運用環境とを異なる環境として構築することが可能となる。
In the technology shown in
ところで、近年ではいわゆる日本版SOX法対応として、開発者と運用者の職責分離の義務付けや、監査などの要件が厳しくなっている。このため、開発ネットワーク環境と運用ネットワーク環境とを明確に分離するとともに、開発ネットワーク環境から運用ネットワーク環境へアプリケーションをリリースする際にも監査のためのログを収集するなど、開発ネットワーク環境と運用ネットワーク環境との間のやり取りをきちんと管理しておく必要がある。 By the way, in recent years, in order to comply with the so-called Japanese version of the SOX law, requirements for separation of duties between developers and operators and requirements for auditing have become stricter. For this reason, the development network environment and the operation network environment are clearly separated, and audit logs are collected when an application is released from the development network environment to the operation network environment. It is necessary to manage the exchanges between them.
そこで、本発明の目的は、開発ネットワーク環境と運用ネットワーク環境との間のやり取りを一括管理することにある。 Accordingly, an object of the present invention is to collectively manage exchanges between the development network environment and the operation network environment.
本発明の一つの実施態様に従うネットワークシステムは、配信サーバを備えた、プログラム開発を行うための開発ネットワーク環境と、前記開発ネットワーク環境で開発されたプログラムモジュールを実行させる複数の業務サーバを備えた運用ネットワーク環境と、前記開発ネットワーク環境及び前記運用ネットワーク環境に接続された中立サーバとを備えたネットワークシステムであって、前記配信サーバは、前記運用ネットワーク環境にリリースするためのプログラムモジュールを前記中立サーバへ送信して、前記プログラムモジュールのリリース依頼をするリリース依頼手段を備え、前記中立サーバは、所定の承認者から、前記配信サーバからのリリース依頼を受け付けたプログラムモジュールのリリースを承認したことを示す情報の入力を受け付ける受付手段と、前記受付手段が受け付けた入力に基づく承認履歴データを記憶する承認履歴記憶手段と、前記承認者によってリリース承認されたプログラムモジュールを、前記リリースサーバへ送信する手段と、を備え、前記リリースサーバは、前記中立サーバから送信されたリリース承認されたプログラムモジュールを、前記複数の業務サーバが実行可能に前記運用ネットワーク環境内の他の機器に保存するインストール手段を備える。 A network system according to an embodiment of the present invention includes a development network environment for performing program development, including a distribution server, and an operation including a plurality of business servers for executing program modules developed in the development network environment. A network system comprising a network environment and a neutral server connected to the development network environment and the operation network environment, wherein the distribution server sends a program module for releasing to the operation network environment to the neutral server Information indicating that the neutral server has approved the release of the program module that has received the release request from the distribution server from a predetermined approver; of Receiving means for receiving a force, approval history storage means for storing approval history data based on an input received by the receiving means, and means for transmitting a program module released and approved by the approver to the release server. The release server includes an installation unit that stores the release-approved program module transmitted from the neutral server in another device in the operation network environment so that the plurality of business servers can execute the module.
好適な実施態様では、前記運用ネットワーク環境は、前記複数の業務サーバと接続されている共有データ記憶部をさらに有し、前記インストール手段は、前記リリース承認されたプログラムモジュールを前記共有データ記憶部に保存し、前記複数の業務サーバは、前記共有データ記憶部を参照して、前記承認されたプログラムモジュールを実行する。 In a preferred embodiment, the operational network environment further includes a shared data storage unit connected to the plurality of business servers, and the installation unit stores the release approved program module in the shared data storage unit. The plurality of business servers execute the approved program module with reference to the shared data storage unit.
好適な実施態様では、前記中立サーバは、前記リリースサーバから、前記インストール手段による前記承認されたプログラムモジュールのインストール結果を取得し、前記承認履歴記憶手段に格納する。 In a preferred embodiment, the neutral server obtains an installation result of the approved program module by the installation unit from the release server and stores it in the approval history storage unit.
本発明によれば、開発ネットワーク環境と運用ネットワーク環境との間のやり取りを一括管理することができる。 According to the present invention, it is possible to collectively manage exchanges between the development network environment and the operation network environment.
以下、本発明の一実施形態にかかるネットワークシステムとして、開発ネットワーク環境で開発されたプログラムモジュールの運用ネットワーク環境へのプログラムモジュールのリリース処理などを行うシステムを一例に挙げ、図面を参照して詳細に説明する。 Hereinafter, as an example of a network system according to an embodiment of the present invention, a system that performs a release process of a program module to an operation network environment of a program module developed in a development network environment will be described as an example, with reference to the drawings. explain.
本実施形態にかかるネットワークシステムは、配信サーバ12を備えた、プログラム開発を行うための開発ネットワーク環境1と、開発ネットワーク環境1で開発されたプログラムモジュールを実行させる複数の業務サーバ33を備えた運用ネットワーク環境3と、開発ネットワーク環境1及び運用ネットワーク環境3に接続された中立サーバ21とを備える。また、運用ネットワーク環境3は、複数の業務サーバ33と接続されている共有データ記憶部をさらに備える。
The network system according to the present embodiment includes a
図1は、本実施形態にかかるネットワークシステムの全体構成図である。図1を用いて、本ネットワークシステムの構成を以下に説明する。 FIG. 1 is an overall configuration diagram of a network system according to the present embodiment. The configuration of this network system will be described below with reference to FIG.
本ネットワークシステムは、例えば図1に示すように、開発ネットワーク環境1と、中立ネットワーク環境2と、運用ネットワーク環境3とを備える。
The network system includes a
開発ネットワーク環境1、運用ネットワーク環境3及び中立ネットワーク環境2は、各々が独立したネットワークシステムである。これらネットワークシステムは、それぞれLANなどのネットワーク内にサーバや記憶装置等が接続される。
The
開発ネットワーク環境1は、プログラムモジュール開発者側の環境であって、例えば図1に示すように、一または複数の開発側アプリケーションサーバ11(以下、開発側APサーバという)と、配信サーバ12とを備える。
The
開発側APサーバ11は、例えば、アプリケーション開発に使用されるサーバである。開発側APサーバ11には、開発者が開発したアプリケーションのプログラムモジュールが蓄積される。開発側APサーバ11は、一つの開発ネットワーク環境につき1つのみ設置してもよいし、複数設置してもよい。
The development-
配信サーバ12は、運用ネットワーク環境3にリリースするためのプログラムモジュールを中立サーバ21へ送信して、プログラムモジュールのリリース依頼をするリリース依頼手段としての配信サーバ12を備える。
The
配信サーバ12は、転送処理部121と、抽出部122とを備える。
The
「所定のアプリケーションの所定バージョンのプログラムモジュールを運用ネットワーク環境3にリリースするように」との開発者からのリリース依頼が、端末装置4を通じて配信サーバ12に受信された場合には、抽出部122は、例えば、開発者からリリース依頼のあった所定のアプリケーションの所定バージョンのプログラムモジュール(以下、対象モジュールという)を、開発側APサーバ11から抽出する。このとき、対象モジュールは、開発者からリリース依頼のあった所定のアプリケーションの所定バージョンのプログラムモジュール群すべてではなく、運用ネットワーク環境3において、そのアプリケーションが現在稼働しているバージョン(以下、カレントバージョンという)との差分のプログラムモジュールのみである。
When the release request from the developer that “a program module of a predetermined version of a predetermined application is released to the
転送処理部121は、対象モジュールを中立サーバ21へ転送することにより、中立サーバ21に対象モジュールのリリースを依頼する。
The
例えば、中立サーバ121は、対象モジュールをアーカイブ処理し、アーカイブファイルとして中立サーバ21へ転送する。
For example, the
アーカイブファイルは、所定の単位、例えば業務ごとに作成するなどしてもよい。アーカイブファイルは、例えばそのファイル名として、そのアーカイブファイルに含まれる対象モジュールのリリース希望日と、対象モジュールのアプリケーション名及びバージョン名と、1つのアーカイブファイルで複数の対象モジュールをリリースする場合のリリース番号とを記載しておいてもよい。転送は、例えばFTP形式で行われる。 The archive file may be created for each predetermined unit, for example, for each business. The archive file has, for example, the desired release date of the target module included in the archive file, the application name and version name of the target module, and the release number when a plurality of target modules are released with one archive file. May be described. The transfer is performed in the FTP format, for example.
中立ネットワーク環境2は、開発ネットワーク環境1から運用ネットワーク環境3へ、プログラムモジュールをリリースする場合の中継をするとともに、開発ネットワーク環境1から運用ネットワーク環境3へのプログラムモジュールのリリースについて、一括管理を行うネットワークシステムである。
The
中立ネットワーク環境2には、例えば図1に示すように、中立サーバ21が設置される。
In the
中立サーバ21は、所定の承認者から、配信サーバ12からのリリース依頼を受け付けたプログラムモジュールのリリースを承認したことを示す情報の入力を受け付ける受付手段としての承認処理部214と、受付手段が受け付けた入力に基づく承認履歴データ(ログ)を記憶する承認履歴記憶手段としてのログ記憶部213と、承認者によってリリース承認されたプログラムモジュールを、リリースサーバ31へ送信する手段としての転送処理部215と、を備える。中立サーバ21は、また、移動ディレクトリ211と、配布ディレクトリとを備えてもよい。中立サーバ21は、さらに、リリースサーバ31から、後述するインストール手段による承認されたプログラムモジュールのインストール結果を取得し、ログ記憶部に格納する。
The
移動ディレクトリ211は、配信サーバ12から送信されたアーカイブファイルが、一時的に保存されるディレクトリである。
The
配布ディレクトリ212は、例えば、承認処理部214によって、移動ディレクトリ211から移動してきた、後述する承認アーカイブファイルが保存されるディレクトリである。
The
承認処理部214は、リリース依頼を受けた対象モジュールの承認処理を行う。
The
例えば、承認処理部214は、対象モジュールが承認者に承認されたか否かを示す承認情報を端末装置4から受け付ける。ここで、承認情報とは、「対象モジュールについて運用ネットワーク環境3側にリリースしてほしい」と要請を、本システムとは別途に、承認者が開発者から受けた場合に、承認者が、その要請をアーカイブ単位で承認したか否かを示す情報である。なおここでは、承認者は、アーカイブファイル単位で承認を行っているが、アーカイブファイル単位で承認を行うのでなく、アーカイブファイル内のプログラムモジュール(対象モジュール)単位で承認を行っててもよい。
For example, the
移動ディレクトリ211にアーカイブファイルが一時保存され、かつ、そのアーカイブファイルが承認された旨の承認情報を承認処理部214が受信した場合には、承認処理部214は、その承認されたアーカイブファイル(以下、承認アーカイブファイルという)を配布ディレクトリ212に移動させる。なお、移動ディレクトリ211がアーカイブファイルを受信し、かつ、そのアーカイブファイルの承認しない旨の承認情報を承認処理部214が受信した場合には、承認処理部214は、移動ディレクトリ211内のそのアーカイブファイルを破棄する。
When the archive file is temporarily stored in the moving
また詳細は後述するが、承認処理部214は、リリース処理が完了したときには、展開処理部313から完了通知を受信する。そして、承認処理部214は、受信した完了通知の内容をログ記憶部213のログファイル40に記録する。
Although details will be described later, the
転送処理部215は、配布ディレクトリ212に保存されている承認アーカイブファイルをリリースサーバ31へ転送する。
The
例えば、転送処理部215は、タイマー送信機能を有しており、配布ディレクトリ212が受信した承認アーカイブファイルを、予めタイマー予約しておいた予約時間に、運用ネットワーク環境3内のリリースサーバ31に転送する。転送は例えばFTP形式により行われる。
For example, the
ログ記憶部213には、例えば、承認処理部214による処理についての情報を含むログが記憶される。例えば図2に、ログ記憶部213に記憶されたログファイル40の一例を示す。ログファイル40には、承認処理部214が承認情報をいつ受信したかを示す日時41と、承認情報について誰が判断をしたかを示す承認者42と、どのアーカイブファイルについての承認情報かを示すアーカイブファイル43と、承認情報の内容について、承認がされたか否かを示す承認の有無44と、承認がなされた場合に、後述する完了通知結果の内容が記憶される完了通知結果45と、リリース処理が「通常」の処理であるか、「緊急」の処理であるか、若しくは、リリース処理に代えてバージョン「切り戻し」の処理が行われたかを示すリリースの種類46と、が記憶される。
In the
運用ネットワーク環境3は、例えば図1に示すように、リリースサーバ31と、NAS(Network Attached Strage)32と、複数の業務サーバ33と、運用監視サーバ34とを備える。
For example, as shown in FIG. 1, the
リリースサーバ31は、中立サーバ21から送信されたリリース承認されたプログラムモジュールを、複数の業務サーバ33が実行可能に運用ネットワーク環境3内の他の機器に保存するインストール手段を備える。他の機器は、例えばNASなどの共有データ記憶部、または、各業務サーバ33のローカルの記憶部である。、また、インストール手段により、複数の業務サーバ33は、共有データ記憶部を参照して、承認されたプログラムモジュールを実行する。
The
リリースサーバ31は、例えば図1に示すように、受信ディレクトリ311と、プールディレクトリ312と、展開処理部313と、監視部314とを備える。
As shown in FIG. 1, for example, the
リリースサーバ31は、中立サーバ21から転送された承認アーカイブファイル展開処理し、対象モジュールを取り出すとともに、対象モジュールをNAS32に反映する。NAS32に対象モジュールを反映した後、リリースサーバ31は、NAS32への反映が正常に完了したか、異常な完了であったかが記録される完了通知を、業務サーバ33及び中立ネットワーク環境2の承認処理部214に送信する。
The
受信ディレクトリ311は、中立サーバ21の配布ディレクトリ212から転送された承認アーカイブファイルを一時的に蓄積するディレクトリである。
The
また、受信ディレクトリ311は、業務サーバ33から送信されたフラグファイルを一時的に保存するディレクトリである。ここで、フラグファイルとは、リリース開始の合図として、後述の運用監視サーバ34などからの指示により、業務サーバ33などのサーバから送信されるファイルである。フラグファイルは、開発者、承認者若しくはオペレータなどによって、端末装置4から業務サーバ33などに登録されている。フラグファイルには、例えば、リリース要請のあったアーカイブファイル名と、NAS32への反映が終了した後に完了通知を送付する業務サーバ33などのIPアドレスとが記載される。
The
プールディレクトリ312には、受信ディレクトリ311から受け渡された承認アーカイブファイルが保存される
The
監視部314は、受信ディレクトリ311及びプールディレクトリ312を常時監視する。例えば、受信ディレクトリ311に、配布ディレクトリ212から転送されて承認アーカイブファイルが格納された場合には、監視部314は、格納された承認アーカイブファイルを、受信ディレクトリ311からプールディレクトリ312へ移動する。
The
また、受信ディレクトリ311が、業務サーバからフラグファイルを受信した場合には、監視部314は、プールディレクトリ312内に保存された承認アーカイブファイルの中から、そのフラグファイルに記載された承認アーカイブファイル名を展開処理部313に通知する。
When the
図3は、承認展開部313の機能を説明するための図である。
FIG. 3 is a diagram for explaining the function of the
展開処理部313は、監視部314からの通知を受け、通知された承認アーカイブファイルを展開処理して、対象モジュールを取り出す。
The
例えば、展開処理部313は、監視部314から通知された承認アーカイブファイル名に基づいて、対象モジュールのアプリケーション名及びバージョン名を特定する。そして、特定されたアプリケーション名及びバージョン名の更新ディレクトリdを、展開処理部313の一時記憶部313a内に作成する。なお、作成された更新ディレクトリd名が、更新後の新たなバージョン名となる。
For example, the
また、展開処理部313は、一時記憶部313aの更新ディレクトリd内に、対象となるアプリケーションのカレントバージョンのプログラムモジュール群をNAS32からコピーするとともに、そのフォルダ内に、対象モジュールを保存する。なお、前述したように、展開処理後の対象モジュールは、対象となるアプリケーションのカレントバージョンのプログラムモジュール群に対する差分のプログラムモジュールであるため、上述の処理により、更新ディレクトリd内に、対象となるアプリケーションの更新後の新たなバージョンのプログラムモジュール群が保存されることとなる。
Further, the
さらに、展開処理部313は、一時記憶部内に作成された更新ディレクトリdをNAS32へ反映する。NAS32への反映については後述する。
Further, the
また、リリース処理が完了したときには、展開処理部313は完了通知を作成し、作成した完了通知を、業務サーバ33と、中立サーバ21の承認処理部214とに送付する。なお、完了通知については後述する。
When the release processing is completed, the
NAS32には、一または複数のアプリケーションの各バージョンのプログラムモジュールが一元管理されている。
The
NAS32は、例えば図4のようなディレクトリ構造を有する。業務サーバ33でアプリケーションが実行される際には、点線の枠で示された部分のディレクトリ群50が業務サーバ33にマウントされる。業務サーバ33へのマウントについては後述する。
The
点線内のディレクトリ群50は、一つのアプリケーション501に対するディレクトリ群50であって、業務名を示す(App Name)ディレクトリ502と、グループを示す二つの(prod)及び(Sys ID)ディレクトリ503、504と、サブシステムを示す(www)ディレクトリ505と、アーキテクチャのハードウェアを示す(x86_6)ディレクトリ506及びOS名を示す(RHEL)ディレクトリ507と、カレントディレクトリ508とを備える。
A
OS名を示すディレクトリ507は、その下位に、ディレクトリ名がプログラムのバージョンになっている一または複数のディレクトリ509(509a、509b)を備える。各ディレクトリ509a、509bには、そのバージョンのプログラムモジュール群510が保存される。なお、カレントディレクトリ508は、仮想ディレクトリであって、カレントディレクトリ508からカレントバージョン名のディレクトリ(図4においては、バージョン2.0のディレクトリ509b)にシンボリックリンク511が貼られている。これにより、使用者はカレントディレクトリ508を指定すれば、カレントバージョンのアプリケーションを使用できる。
The
展開処理部313によって、NAS32には、所定位置に、更新ディレクトリdが反映される。ここで所定位置とは、例えば、OS名を示す(RHEL)フォルダ507の下位の位置の事である。つまり、展開処理部313によって反映された、更新ディレクトリdに対応するバージョン名のディレクトリ509に、更新ディレクトリd内の各モジュールを格納する。反映されたバージョン名のディレクトリ509には、カレントディレクトリ508のシンボリックリンク511が貼られる。
The
上述した更新ディレクトリdの反映が完了すると、業務サーバ33には、展開処理部313から完了通知が通知される。完了通知には、承認アーカイブファイルについてリリースが正常に終了したか、異常終了であったかが記載される。
When the reflection of the update directory d described above is completed, the
また、各業務サーバ33は、所定のアプリケーションを実行するために、NAS32内のディレクトリ群50をマウントする。ディレクトリ群50のマウントは、例えば業務単位に行う。各業務サーバ33には、それぞれ業務が割り当てられている。各業務サーバ33は、自らに割り当てられた業務に関連するディレクトリ群50をマウントする。
Each
例えば、図4においては、各業務サーバ33が行う業務の業務名を示すフォルダ502をマウントポイントとして、これ以下の点線枠内のディレクトリ群50が業務サーバ33にマウントされる。これにより、各業務サーバ33は、マウントポイントである業務名を示すフォルダ502以下のディレクトリをローカルディレクトリと同様にアクセスできるようになる。従って、NASに32に更新ディレクトリdを反映することで、各業務サーバ33にプログラムモジュールを個別にインストールすることと同様の効果を得られる。一方、開発者側は、開発したプログラムモジュールを、NAS32に配布するだけで、各業務サーバ33にプログラムモジュールを個別に配布したことと同様の効果を得られることとなる。
For example, in FIG. 4, the
運用監視サーバ34は、運用ネットワーク環境3内のすべての業務サーバ33について、アプリケーションの使用状況を常時監視する。例えば、運用監視サーバ34は、端末装置4からフラグファイルを受け取った業務サーバ33に、そのフラグファイルを受信ディレクトリ311に通知するタイミングを知らせる。フラグファイルを通知するタイミングは、フラグファイルに記載されたアプリケーションないしはアプリケーションが属する業務が終了したときなどが、業務サーバ33に使用されていないときである。また、オペレータが、業務処理の終了を確認してから、オペレータの手作業によりフラグファイルを受信ディレクトリに通知してもよい。
The
なお、運用ネットワーク環境3で何らかのエラーが発生した場合には、運用監視サーバ34は、例えば、エラーが発生したサーバ31、33やNAS32からアラームを受信し、アーカイブファイルのリリース処理を中断する。リリース処理の中断若しくはその他のエラーが発生した場合には、後述するアプリケーションのカレントバージョンの切り戻し処理を行う場合がある。
When an error occurs in the
以下に、本実施形態にかかるネットワークシステムの通常時のリリース処理における動作を、図5を参照して説明する。 The operation in the normal release process of the network system according to the present embodiment will be described below with reference to FIG.
まず、開発者は、対象モジュールをリリースする旨の指示を端末装置4に入力し、配信サーバ12へ送信する(S1)。 First, the developer inputs an instruction to release the target module to the terminal device 4 and transmits it to the distribution server 12 (S1).
配信サーバ12の抽出部122は、ステップS1での開発者の指示に基づき、指示された対象モジュールを開発側APサーバ11から抽出する(S2)。
The extraction unit 122 of the
配信サーバ12の転送処理部121は、抽出部122によって抽出された対象モジュールをアーカイブ処理し、これにより作成されたアーカイブファイルを中立サーバ21の移動ディレクトリ211に転送する(S3)。
The
一方、本システムとは別に、開発者は、承認者に対し、ステップS1の対象モジュールについて、運用ネットワーク環境へのリリースを承認してほしいとの要請をする(S00)。要請を受けた承認者は、リリースを承認するか否かを決定し、その承認情報を端末装置4に入力する。端末装置4はその承認情報を中立サーバ21の承認処理部214へ送信する(S4)。
On the other hand, separately from this system, the developer requests the approver to approve the release of the target module in step S1 to the operation network environment (S00). Upon receiving the request, the approver decides whether or not to approve the release, and inputs the approval information to the terminal device 4. The terminal device 4 transmits the approval information to the
承認処理部214は、承認情報に基づき、例えば図2に例示されたログファイル40に、日時41、承認者42、アーカイブファイル43、承認の有無44、リリースの種類46を追加し、ログ記憶部213に登録する(S5)。
Based on the approval information, the
ステップS3において移動ディレクトリ211が受信したアーカイブファイルについて、承認情報で承認されている場合には、承認処理部214は、移動ディレクトリ211内の承認アーカイブファイルを配布ディレクトリ212に移動する(S6)。
If the archive file received by the moving
承認処理部214は、予め設定された予約時間に、配布ディレクトリ212内の承認アーカイブファイルを受信ディレクトリ311に送信する(S7)。
The
受信ディレクトリ311が承認アーカイブファイルを受信した場合には、監視部314は、受信ディレクトリ311内の承認アーカイブファイルをプールディレクトリ312に移動する(S8)。
When the
運用ネットワーク環境3内のすべての業務サーバ33について、アプリケーションの使用状況を監視している運用監視サーバ34は、開発者からのフラグファイルを保持している業務サーバ33に対して、そのフラグファイルに記載されているアプリケーションがどの業務サーバ33でも実行されていない状態であるときに、その旨を業務サーバ33に通知する(S9)。
For all
ステップS9において、運用監視サーバ34から、フラグファイルに記載されたアプリケーションについて、どの業務サーバ33でも実行されていない状態である旨の通知を受け取った業務サーバ33は、そのフラグファイルを受信ディレクトリ311に送信する(S10)。
In step S 9, the
受信ディレクトリ311にフラグファイルが受信されたことを、運用監視サーバ34が検知すると、運用監視サーバ34は、フラグファイルに記載された承認アーカイブファイルを、プールディレクトリ312から抽出し、展開処理部313にコピーする(S11)。
When the
展開処理部313は、例えば図6に示す展開処理によって、承認アーカイブファイルから対象モジュールを取り出し、NAS32に反映する(S12)。
The
展開処理部313は、対象モジュールのNAS32への反映が、正常に終了したか若しくは異常終了であったかを検知する(S13)。
The
検知の結果に基づき、展開処理部313は完了通知を作成し、業務サーバ33へ送信する(S14)。
Based on the detection result, the
また、展開処理部313は、完了通知を中立ネットワーク環境2の承認処理部214にも通知する(S15)。
The
図6は、展開処理部313による展開処理を示すフローチャートの一例である。
FIG. 6 is an example of a flowchart showing the expansion processing by the
展開処理部313は、プールディレクトリ312から抽出した承認アーカイブファイルに含まれる対象モジュールについて、そのアプリケーション名及びバージョン名を検出する(S100)。
The
次に、展開処理部313は、一時記憶部に、検出したバージョン名を示す更新フォルダdを作成する(S101)。
Next, the
展開処理部313は、NAS32を参照して、検出したアプリケーションのカレントバージョンのバージョン名(1.0)を示すディレクトリ509aを抽出し、バージョン名(1.0)を示すディレクトリ509a内のプログラムモジュール群を、ステップS101で作成した更新フォルダd内にコピーする(S102)。
The
展開処理部313は、ステップS100でプールディレクトリ312から抽出した承認アーカイブファイルを展開し取り出した対象モジュールを、更新フォルダd内に保存する(S103)。
The
次に、展開処理部313は、更新フォルダdをNAS32へ反映する(S104)。
Next, the
ステップS13の検知の結果に基づき、展開処理部313は完了通知を作成し、業務サーバ33及び中立サーバ21の承認処理部214に送信する(S105)。
Based on the detection result of step S13, the
次に、本実施形態にかかるネットワークシステムの緊急時のリリース処理の動作を、図7を参照して以下に説明する。以下の説明では、緊急時における対象モジュールのリリース処理の動作が、通常時の対象モジュールのリリース処理の動作と異なる部分を中心に説明し、同じ動作については説明を割愛することがある。 Next, the operation of the emergency release process of the network system according to the present embodiment will be described below with reference to FIG. In the following description, the operation of the release process of the target module in an emergency will be described mainly with respect to a part different from the operation of the release process of the target module at the normal time, and the description of the same operation may be omitted.
緊急時には、フラグファイルは、リリースを要請した開発者によって業務サーバ33に登録されるのではなく、例えば、開発者から承認の要請のあった承認者などによって承認処理部214に送付される。これは例えば、ステップS4において承認情報を承認処理部214に送付する際に、承認処理部214に一緒に送付しておく。
In an emergency, the flag file is not registered in the
そして、承認処理部214は、フラグファイルを受信ディレクトリ311に送付する(S21)。このため、通常時におけるステップS9及びステップS10は省略される。
Then, the
また、ステップS7に代えて、承認処理部214は、移動ディレクトリ211から配布ディレクトリ212が承認アーカイブファイルを受信すると、すぐに受信ディレクトリ311に送信する(S22)。
Further, instead of step S7, when the
次に、本実施形態に係るネットワークシステムのリリース処理の変形例として、NAS32内に保存される所定のアプリケーションのカレントバージョンの切り戻し処理の動作を、図8を参照して説明する。通常時における対象モジュールのリリース処理の動作と同じ動作については説明を割愛することがある。
Next, as a modification of the release process of the network system according to the present embodiment, the operation of the current version switchback process for a predetermined application stored in the
アプリケーションのカレントバージョンの切り戻し処理は、主に、リリース処理の中断など、リリース処理が失敗した場合や、本システムにおいて何かしらのエラーが発生した時などに行われる。 The switch-back process for the current version of the application is performed mainly when the release process fails, such as when the release process is interrupted, or when an error occurs in this system.
まず、開発者は、ステップS1に代えて、NAS32上に記憶された、所定のアプリケーションのカレントバージョンを切り戻す旨の指示を端末装置4に入力し、指示ファイルとして配信サーバ12へ送信する(S31)。
First, instead of step S1, the developer inputs to the terminal device 4 an instruction to switch back the current version of a predetermined application stored on the
このため、ステップS2は省略される。 For this reason, step S2 is omitted.
ステップS3に代えて、配信サーバ12の転送処理部121は、指示ファイルをアーカイブ処理してアーカイブファイルを作成し、そのアーカイブファイルを移動ディレクトリ211へ転送する(S32)。
Instead of step S3, the
一方、本システムとは別に、開発者は、承認者に対し、ステップS31の切り戻し指示ついて承認してほしいとの要請をする(S99)。要請を受けた承認者は、ステップS4に代えて、その切り戻しについての承認情報を端末装置4に入力し、中立サーバ21の承認処理部214へ送信する(S33)。
On the other hand, separately from this system, the developer requests the approver to approve the switch-back instruction in step S31 (S99). In response to the request, the approver inputs approval information about the switchback to the terminal device 4 instead of step S4, and transmits it to the
切り戻し処理の際には、フラグファイルは、切り戻しを要請した開発者によって業務サーバ33に登録されるのではなく、例えば、開発者から承認の要請のあった承認者などによって承認処理部214に送付される。これは例えば、ステップS33において承認情報を承認処理部214に送付する際に、承認処理部214に一緒に送付しておく。
At the time of switchback processing, the flag file is not registered in the
そして、承認処理部214は、フラグファイルを受信ディレクトリ311に送信する(S34)。
Then, the
ステップS5及びステップS6は通常時と同様である。 Steps S5 and S6 are the same as in normal times.
ステップS7に代えて、承認処理部214は、移動ディレクトリ211から配布ディレクトリ212が承認アーカイブファイルを受信すると、すぐに受信ディレクトリ311に送信する(S35)。
Instead of step S7, when the
ステップS8は通常時と同様である。 Step S8 is the same as in normal time.
前述したように、フラグファイルはステップS4で承認処理部214に送付されるため、ステップS9及びステップS10は省略される。
As described above, since the flag file is sent to the
ステップS11は通常時と同様である。 Step S11 is the same as in normal time.
ステップS12に代えて、展開処理部313は、例えば図9に示す展開処理によって、承認アーカイブファイルから指示ファイルを取り出し、指示に基づいてNAS32内の該当バージョンの切り戻し処理を行う(S36)。
Instead of step S12, the
ステップS13に代えて、展開処理部313は、該当バージョンの切り戻し処理が、正常に終了したか若しくは異常終了であったかを検知する(S37)。
Instead of step S13, the
ステップS14及びステップS15は通常時と同様である。 Steps S14 and S15 are the same as in normal times.
図9は、カレントバージョン切り戻し処理の際の、展開処理部313による展開処理を示すフローチャートの一例である。
FIG. 9 is an example of a flowchart illustrating the expansion process performed by the
展開処理部313は、プールディレクトリ312から抽出した承認アーカイブファイルを一時記憶部313aに展開する(S200)。
The
展開処理部313は、一時記憶部313a内の指示ファイルを参照し、そこに記載されたアプリケーションのカレントバージョンをNAS32から検出し、そのカレントバージョンを切り戻す(S201)。カレントバージョンの切り戻しは、カレントフォルダ508のシンボリックリンク510貼られる位置を、現在指示しているバージョン名のフォルダ509から上位のバージョン名のフォルダ509へ変更することで行われる。
The
カレントバージョンの切り戻しが正常に行われたか否かの結果を検出した展開処理部313は、この結果に基づいて完了通知作成し、業務サーバ33及び中立サーバ21の承認処理部214に送信する(S202)。
The
本実施形態によれば、開発ネットワーク環境1と運用ネットワーク環境3の間に中立ネットワーク環境2を設け、中立ネットワーク環境2内の中立サーバ21に、プログラムモジュールの運用ネットワーク環境3へのリリース処理若しくは運用ネットワーク環境3においてのカレントバージョン切り戻し処理の際のログが記憶される。このため、中立サーバ21によって、開発ネットワーク環境1及び運用ネットワーク環境3とのやり取り、とくに上記リリース処理や上記カレントバージョン切り戻し処理によるやり取りを一元管理することができる。
According to the present embodiment, the
本実施形態によれば、一または複数のアプリケーションの各バージョンのプログラムモジュールが一元管理されている。このため、開発者側は、開発したプログラムモジュールを、各業務サーバ33を意識することなく、NAS32にのみリリースすればよい。
According to this embodiment, the program modules of each version of one or a plurality of applications are centrally managed. Therefore, the developer only has to release the developed program module only to the
また、本実施形態によれば、アプリケーションのバージョン情報が蓄積されたNAS32内部の構造が、ディレクトリ構造となっている。このため、各業務サーバ33は、必要に応じて、NAS32へアクセスすれば、NAS32内のアプリケーションのカレントバージョンを、自身にインストールされているのと同等に、使用できることとなる。
According to the present embodiment, the internal structure of the
また、アプリケーションのバージョン情報が蓄積されたNAS32内部の構造が、ディレクトリ構造となっていることによって、プログラムモジュールのNAS32へのリリースが失敗した場合であっても、上述したアプリケーションのカレントバージョンの切り戻し処理によって、容易に現状回復できる。
Further, since the internal structure of the
以上、本発明の幾つかの実施例を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこれらの実施例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。 As mentioned above, although several Example of this invention was described, these are the illustrations for description of this invention, Comprising: It is not the meaning which limits the scope of the present invention only to these Examples. The present invention can be implemented in various other forms.
1 開発ネットワーク環境
2 中立ネットワーク環境
3 運用ネットワーク環境
4 端末装置
11 開発側アプリケーションサーバ
12 配信サーバ
21 中立サーバ
31 リリースサーバ
33 業務サーバ
34 運用監視サーバ
121 転送処理部
211 移動ディレクトリ
212 配布ディレクトリ
213 ログ記憶部
214 承認処理部
311 受信ディレクトリ
312 プールディレクトリ
313 展開処理部
314 監視部
DESCRIPTION OF
Claims (5)
前記配信サーバは、
前記運用ネットワーク環境にリリースするためのプログラムモジュールを前記中立サーバへ送信して、前記プログラムモジュールのリリース依頼をするリリース依頼手段を備え、
前記中立サーバは、
所定の承認者から、前記配信サーバからのリリース依頼を受け付けたプログラムモジュールのリリースを承認したことを示す情報の入力を受け付ける受付手段と、
前記受付手段が受け付けた入力に基づく承認履歴データを記憶する承認履歴記憶手段と、
前記承認者によってリリース承認されたプログラムモジュールを、前記リリースサーバへ送信する手段と、を備え、
前記リリースサーバは、
前記中立サーバから送信されたリリース承認されたプログラムモジュールを、前記複数の業務サーバが実行可能に前記運用ネットワーク環境内の他の機器に保存するインストール手段を備えるネットワークシステム。 A development network environment for performing program development, including a distribution server, an operation network environment including a plurality of business servers for executing program modules developed in the development network environment, the development network environment, and the operation network A network system with a neutral server connected to the environment,
The distribution server
A release request means for sending a program module for releasing to the operational network environment to the neutral server and requesting release of the program module;
The neutral server is
A receiving unit that receives input of information indicating that the release of the program module that has received the release request from the distribution server is approved from a predetermined approver;
Approval history storage means for storing approval history data based on the input received by the receiving means;
Means for transmitting a program module approved for release by the approver to the release server,
The release server is
A network system comprising installation means for storing a release-approved program module transmitted from the neutral server in another device in the operation network environment so that the plurality of business servers can execute the module.
前記複数の業務サーバと接続されている共有データ記憶部をさらに有し、
前記インストール手段は、前記リリース承認されたプログラムモジュールを前記共有データ記憶部に保存し、
前記複数の業務サーバは、前記共有データ記憶部を参照して、前記承認されたプログラムモジュールを実行する、請求項1記載のネットワークシステム。 The operational network environment is:
A shared data storage unit connected to the plurality of business servers;
The installation means stores the release-approved program module in the shared data storage unit,
The network system according to claim 1, wherein the plurality of business servers execute the approved program module with reference to the shared data storage unit.
前記配信サーバが、
前記運用ネットワーク環境にリリースするためのプログラムモジュールを前記中立サーバへ送信して、前記プログラムモジュールのリリース依頼をするリリース依頼ステップを行い、
前記中立サーバが、
所定の承認者から、前記配信サーバからのリリース依頼を受け付けたプログラムモジュールのリリースを承認したことを示す情報の入力を受け付けるステップと、
前記受付手段が受け付けた入力に基づく承認履歴データを記憶する承認履歴記憶するステップと、
前記承認者によってリリース承認されたプログラムモジュールを、前記リリースサーバへ送信するステップと、を行い、
前記リリースサーバが、
前記中立サーバから送信されたリリース承認されたプログラムモジュールを、前記複数の業務サーバが実行可能に前記運用ネットワーク環境内の他の機器に保存するステップを行う方法。 A development network environment for performing program development, including a distribution server, an operation network environment including a plurality of business servers for executing program modules developed in the development network environment, the development network environment, and the operation network A method for releasing a program module in a network system with a neutral server connected to an environment, comprising:
The distribution server is
Sending a program module for release to the operational network environment to the neutral server, and performing a release request step for requesting release of the program module,
The neutral server is
A step of receiving an input of information indicating that the release of the program module that has received the release request from the distribution server is approved from a predetermined approver;
Storing approval history data for storing approval history data based on the input received by the receiving means;
Sending a program module approved for release by the approver to the release server;
The release server is
A method of performing a step of storing a release-approved program module transmitted from the neutral server in another device in the operation network environment so that the plurality of business servers can execute the module.
前記配信サーバは、
前記運用ネットワーク環境にリリースするためのプログラムモジュールを前記中立サーバへ送信して、前記プログラムモジュールのリリース依頼をするリリース依頼手段を備え、
前記中立サーバは、
所定の承認者から、前記配信サーバからのリリース依頼を受け付けたプログラムモジュールのリリースを承認したことを示す情報の入力を受け付ける受付手段と、
前記受付手段が受け付けた入力に基づく承認履歴データを記憶する承認履歴記憶手段と、
前記承認者によってリリース承認されたプログラムモジュールを、前記リリースサーバへ送信する手段と、を備え、
前記リリースサーバは、
前記中立サーバから送信されたリリース承認されたプログラムモジュールを、前記複数の業務サーバが実行可能に前記運用ネットワーク環境内の他の機器に保存するインストール手段を備える、ネットワークシステムを構築するためのコンピュータプログラム。 A development network environment for performing program development, including a distribution server, an operation network environment including a plurality of business servers for executing program modules developed in the development network environment, the development network environment, and the operation network A computer program for releasing a program module in a network system comprising a neutral server connected to an environment,
The distribution server
A release request means for sending a program module for releasing to the operational network environment to the neutral server and requesting release of the program module;
The neutral server is
A receiving unit that receives input of information indicating that the release of the program module that has received the release request from the distribution server is approved from a predetermined approver;
Approval history storage means for storing approval history data based on the input received by the receiving means;
Means for transmitting a program module approved for release by the approver to the release server,
The release server is
A computer program for constructing a network system, comprising installation means for storing a release-approved program module transmitted from the neutral server in another device in the operational network environment so that the plurality of business servers can execute the module. .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009216399A JP2011065495A (en) | 2009-09-18 | 2009-09-18 | Network system, method, and computer program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009216399A JP2011065495A (en) | 2009-09-18 | 2009-09-18 | Network system, method, and computer program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011065495A true JP2011065495A (en) | 2011-03-31 |
Family
ID=43951655
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009216399A Pending JP2011065495A (en) | 2009-09-18 | 2009-09-18 | Network system, method, and computer program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011065495A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018063520A (en) * | 2016-10-12 | 2018-04-19 | 株式会社日立製作所 | Computer system and program release management method |
JP2020149671A (en) * | 2019-03-06 | 2020-09-17 | シチズン時計株式会社 | Program management system, external device and terminal device |
JP2020204891A (en) * | 2019-06-17 | 2020-12-24 | 株式会社野村総合研究所 | System utilizing block chain |
US11375043B2 (en) | 2019-03-06 | 2022-06-28 | Citizen Watch Co., Ltd. | Program management system, external device and terminal device for controlling a program developer's ability to access, publish and manage marketing of a program |
-
2009
- 2009-09-18 JP JP2009216399A patent/JP2011065495A/en active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018063520A (en) * | 2016-10-12 | 2018-04-19 | 株式会社日立製作所 | Computer system and program release management method |
JP2020149671A (en) * | 2019-03-06 | 2020-09-17 | シチズン時計株式会社 | Program management system, external device and terminal device |
JP2021114316A (en) * | 2019-03-06 | 2021-08-05 | シチズン時計株式会社 | Program management system and external instrument |
US11375043B2 (en) | 2019-03-06 | 2022-06-28 | Citizen Watch Co., Ltd. | Program management system, external device and terminal device for controlling a program developer's ability to access, publish and manage marketing of a program |
JP2020204891A (en) * | 2019-06-17 | 2020-12-24 | 株式会社野村総合研究所 | System utilizing block chain |
WO2020255483A1 (en) * | 2019-06-17 | 2020-12-24 | 株式会社野村総合研究所 | Blockchain utilization system |
JP7297200B2 (en) | 2019-06-17 | 2023-06-26 | 株式会社野村総合研究所 | System using blockchain |
US11762643B2 (en) | 2019-06-17 | 2023-09-19 | Nomura Research Institute, Ltd. | System using blockchain |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6971095B2 (en) | Automatic firmware version upgrade system | |
KR101924746B1 (en) | english | |
EP1110148B1 (en) | Fault tolerant computer system | |
JP4422519B2 (en) | Information processing system | |
JP6784291B2 (en) | Software update control device, software update control system, software update control method, and software update control program | |
US20080244552A1 (en) | Upgrading services associated with high availability systems | |
JP7069672B2 (en) | Application update method and program | |
US20120150930A1 (en) | Cloud storage and method for managing the same | |
JP2011248683A (en) | Cloud computing system, server computer, method for connecting device and program | |
CN103930879A (en) | Shadowing storage gateway | |
JP2013545166A (en) | Cloud computing system and data synchronization method thereof | |
CN101739263A (en) | Method and device for realizing operating system update in multi-computer cluster system | |
JP6520448B2 (en) | INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING DEVICE CONTROL METHOD | |
JP4152755B2 (en) | Server device having a function of switching between old and new program modules | |
JP2011065495A (en) | Network system, method, and computer program | |
JP2008299709A (en) | Firmware updating system, network connection apparatus, firmware updating method, and program | |
JP2004086769A (en) | Application updating processing method, updating processing system, and updating processing program | |
CN101796504B (en) | Session broker extensibility application program iinterface | |
JP2010003022A (en) | File updating method | |
CN113422700B (en) | Non-inductive upgrading method and non-inductive upgrading device | |
JP2007173990A (en) | Information processing apparatus, transmission load distribution method, and transmission load distribution program | |
JP6856574B2 (en) | Service continuation system and service continuation method | |
JP6273916B2 (en) | Redundant processing method, redundant processing system, and information processing apparatus | |
JP5691248B2 (en) | Task takeover program, processing device, and computer system | |
JP2009245118A (en) | System and method for providing application service, and method for transferring application |