JP2006127001A - 業務システムの運用方法、運用管理システムおよび運用プログラム - Google Patents

業務システムの運用方法、運用管理システムおよび運用プログラム Download PDF

Info

Publication number
JP2006127001A
JP2006127001A JP2004311959A JP2004311959A JP2006127001A JP 2006127001 A JP2006127001 A JP 2006127001A JP 2004311959 A JP2004311959 A JP 2004311959A JP 2004311959 A JP2004311959 A JP 2004311959A JP 2006127001 A JP2006127001 A JP 2006127001A
Authority
JP
Japan
Prior art keywords
unit
business system
business
service
executing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004311959A
Other languages
English (en)
Other versions
JP4167643B2 (ja
Inventor
Yuji Mizote
裕二 溝手
Tetsuya Hashimoto
哲也 橋本
Kenta Takahashi
健太 高橋
Hisanori Igawa
尚紀 井川
Kiichi Ishida
貴一 石田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004311959A priority Critical patent/JP4167643B2/ja
Priority to US11/070,886 priority patent/US20060101059A1/en
Publication of JP2006127001A publication Critical patent/JP2006127001A/ja
Application granted granted Critical
Publication of JP4167643B2 publication Critical patent/JP4167643B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】 複数のシステム装置、ソフトウエアからなるWebベースの業務システムにおいて、業務システムの構築作業および運用作業の負担を軽減することを課題とする。
【解決手段】 複数のシステム装置を有する業務システムに対する運用管理システムにおいて、記憶手段が、ユニット構成情報、共通インターフェースを構成する複数のメソッド、および、各メソッドに対応するプログラムとを記憶する。また、共通インターフェースは、少なくとも、前記ユニットに対して前記業務システムとしての動作を停止させる部分停止メソッドと、前記ユニットに対して前記業務システムとしての動作を再開させる部分再開メソッドとを有している。そして、演算処理手段が、所定システム装置に対して前記業務システムとしての動作を停止させて運用操作を行う場合に、所定システム装置を含むユニットに対して、部分停止させ、運用操作を行い、その後、部分再開させること。
【選択図】 図1

Description

本発明は、複数の装置やソフトウェアを組み合わせたスケーラブルで24時間無停止の業務システムに対する運用方法、運用管理システムおよび運用プログラムに関する。
近年のWebベースの業務システムは、高度化・複雑化が進み、そのシステム設計、キャパシティプランニング、構築、運用の負担が多大なものとなっている。一方、オンラインサービスなどに対する24時間サービス提供の要求がますます高まっており、24時間無停止でのメンテナンスのニーズが大きい。
Webベースの業務システムは、多数のシステム装置、ネットワークおよびソフトウエアからなり、そのトポロジあるいは構成は多種多様である。そのため、システム構成設計、システム運用設計、システム構築およびシステム自動運用プログラムの開発を、案件毎に特注で実施する必要がある。
たとえば、特許文献1では、プロセッサ装置、ストレージ装置およびネットワーク装置からなる業務システム(特許文献1では仮想サーバファームと記載)の構築運用作業のうち、初期構築作業および装置構成変更(プロセッサ装置の追加削除など)の自動化を実現する技術が開示されている。これらの自動化には、VLAN(Virtual Local Area Network)、SAN(Strage Area Network)の設定、プロセッサ装置とオペレーティングシステム(OS、含むミドルウエア)ブートイメージとの関連付け、プロセッサ装置と負荷分散装置との関連付けが含まれるが、プロセッサ装置上で動作するミドルウエアの設定〔装置のトポロジに応じたJ2EE(Java(登録商標) 2 Enterprise Edition:R)サーバおよびHTTP(Hypre Text Transfer Protcol)サーバの設定、アプリケーションの配備〕は含まれていない。さらに、24時間無停止での業務サービスの運用に関しては、仮想サーバファーム上で従来と同じように個別に運用設計し、運用プログラムを特注で開発する必要がある。
また、ティア横断的な運用管理の自動化という観点では、特許文献2において、マルチティアで構成される業務システムの、無停止でのソフトウエアバージョンアップの方法が開示されている。なお、ティアとは、物理層あるいは論理層という意味であり、以下、単に層と記載する場合も同義である。しかし、特許文献2では、Webベースの業務システムにおける、システム構成上の多様性という課題に対する解決法は示されておらず、ソフトウエアバージョンアップ以外の運用操作に対する24時間無停止対応に関しても記載がない。
以上のように、特許文献1および特許文献2の課題は、多様なシステム構成のバリエーションを持つWebベースの業務システムに対して、多様な運用シナリオでの運用プログラムの設計・開発のフレームワーク化ができていない点である。
また、このフレームワークに関する課題に関して、非特許文献1では、システム構成のバリエーション毎に異なる運用操作ロジックと、汎用的に処理できるフレームワーク部分とを分離し、構成毎に異なる運用操作ロジック部分は、Configuration Provider Interfaceと呼ばれる共通インターフェースをサポートするプラグインプログラムとしてシステム構成のバリエーション毎に実装する技術が開示されている。そして、このフレームワークにより、運用操作のGUI(Graphical User Interface)部分の共通化がなされているが、GUIを除く大部分の処理は構成のバリエーション毎に特別に開発する必要があり、フレームワークにおける処理の共通化が不十分なままである。
特表2003−507817号公報(段落0017〜0019、図2) 米国特許出願公開第2003/0005426号明細書 オファーバイラン外(Ofer Biran et al),「マルチティア・クラスタ・システムにおけるアプリケーション集合の管理(Management of Application Complexes in Multi-tier Clustered Systems)」,IBMシステムジャーナル(IBM System Journal),(米国),2003,第42巻(Vol.42),第1号(No.1)
したがって、本発明は、複数のシステム装置、ソフトウエアからなるWebベースの業務システムにおいて、業務システムの構築作業および運用作業の負担を軽減すること、特に、24時間無停止での業務システム運用に関する運用設計や運用プログラムの開発を軽減することを課題とする。
前記課題を解決するために、本発明は、複数のシステム装置を有する業務システムに対する運用管理システムにおいて、記憶手段が、ユニット構成情報、共通インターフェースを構成する複数のメソッド、および、各メソッドに対応するプログラムとを記憶する。また、共通インターフェースは、メソッドとして、少なくとも、前記ユニットに対して前記業務システムとしての動作を停止させる部分停止メソッドと、前記ユニットに対して前記業務システムとしての動作を再開させる部分再開メソッドとを有している。そして、演算処理手段が、所定システム装置に対して前記業務システムとしての動作を停止させて運用操作を行う場合に、所定システム装置を含むユニットに対して、部分停止させ、運用操作を行い、その後、部分再開させる。
本発明によれば、多数のシステム装置、ソフトウエアからなるWebベースの業務システムにおいて、業務システムの構築作業および運用作業の負担を軽減すること、特に、24時間無停止での業務システム運用に関する運用設計や運用プログラムの開発を軽減することができる。
本発明に係る業務システムに対する運用管理システムの実施形態について、まず、図1〜図3を参照しながら全体の構成や業務システムの構成について説明し、次に、図4〜図26を参照しながら業務システムの構築と運用について説明する。なお、業務システムにおいて、構築とは、エンドユーザなどへのサービス提供の開始までに行われる作業や処理のことを指す。また、運用とは、狭義にはそのサービス提供開始以降の作業や処理のことを指すが、広義には構築も含めた概念を表わすものとする。
〔全体構成〕
図1に、業務システムと該業務システムを管理する運用管理システムを含む全体の構成を示す。運用管理者は、管理用端末システム装置101を利用して、運用管理システム102に接続し、業務システム100を管理する。運用管理システム102は、プロセッサ、記憶部、通信部などから構成され、モジュールであるユーザインターフェース部111、プラグインファイルロード処理部116、システム構築運用制御処理部117などを用いることで、様々な処理や定義付けなどを行う。
管理用端末システム装置101、運用管理システム102および業務システム100は、運用管理ネットワーク104で接続されている。業務システム100は、業務トランザクション実行ネットワーク105にも接続され、業務トランザクションのデータは業務トランザクション実行ネットワーク105上で送受信される。業務トランザクション実行ネットワーク105はインターネット108とも接続され、エンドユーザの業務トランザクションをインターネット経由で受け付ける。
業務システム100は、負荷分散装置107および複数の管理対象システム装置106(以下、単に「システム装置106」と記載)から構成される。なお、本実施形態ではネットワーク装置として負荷分散装置107を例にとって説明するが、他ネットワーク装置であるキャッシュサーバ、ファイアウォールなども本発明に適用可能である。負荷分散装置107は、インターネット108から送信されてくるデータを複数のシステム装置106に振り分ける機能を有しており、プロセッサ、記憶部、通信部などから構成される。なお、負荷分散装置107の負荷分散機能は、各システム装置106にソフトウェアとして組み込まれるようにしてもよい。
また、業務システム100の多くはDBサーバを利用するが、本実施形態においては、運用管理システム102は業務システム100のDBサーバを管理対象として含んでいない。しかし、業務システム100におけるDBサーバの構成は、パラレルサーバ構成により複数システム装置から構成することができ、そして、その構築運用の簡略化には本発明の運用管理手法を適用することができる。さらに、本実施形態では、業務システム100を、J2EEベースのシステムであることを想定するが、本発明はJ2EEに限定されるものではない。
プラグインファイル103は、業務システム100のシステム装置106の構成パターンの定義情報および運用プログラム(運用手順をプログラム化したもの)を保持するファイルであり、運用管理システム102を経由して管理対象システム装置106と接続された記憶手段131に格納されているものとする。なお、記憶手段131としては、磁気ディスク、光ディスクなどがあるが、記憶できる手段であれば他のものであってもよい。また、記憶手段131は、運用管理システム102の一部として一体に構成されていてもよい。
そして、プラグインファイルロード処理部116が、適切なタイミング(たとえば、運用管理システム102の起動時)に、プラグインファイル103を読み込み、読み込んだ内容を構成パターン定義テーブル113およびプラグインプログラムコード115として展開する。また、運用管理システム102の機能をJava(登録商標)を用いて実現した場合、プラグインプログラムコード115は、Java(登録商標)仮想マシン上のバイトコードとして実現され、Java(登録商標)仮想マシン内のヒープ(メモリ)に格納される。プラグインファイル103は構成パターン毎に存在し、プラグインファイル103毎にプラグインプログラムコード115が存在する。
なお、業務システム100を構成するシステム装置106のトポロジは多種多様であるが、その多様性は典型的な構成パターンに類型化することができる。そして、ユニット内のシステム装置106のトポロジおよびシステム装置106で稼働させるソフトウェアの配置構成は、構成パターンに応じた規則性を持つのである。そこで、ユニットに対してその構成パターンによらない基本的な運用操作の共通インターフェースを事前に定めておき、ユニット内の構成パターンに応じて作成された共通インターフェースの実装プログラムをユニットの定義情報と関連付けて管理することにより、業務システム100の効率のよい構築や運用を行うことができるのである。
全体構成の説明に戻り、システム装置106は、プロセッサ、メモリ、ディスクストレージ、ネットワークインターフェースなどからなる装置であり、オペレーティングシステム(OS)およびOS上の各種サービス(プロセス)である管理サービス対象群110が稼動する。なお、本実施形態において、「システム装置」とは、いわゆるサーバとほぼ同義であり、また同じ意味で「ホスト」、「サーバマシン」という表現も使用する。
本実施形態では、サービスとして、HTTPプロトコルを処理するHTTPサービス、J2EEの機能を実現するJ2EEサービス、サービス実行中のエラー情報や性能情報を収集するロギングサービスなどを想定する。システム装置106においては、業務用の管理対象サービス群110に加えて、管理エージェントサービス119も稼動している。管理エージェントサービス119は、運用管理システム102が業務システム100を管理するときに機能するソフトウェアである。
業務システム100に対する運用管理作業には多種多様な作業が存在するが、大きく、初期構築作業(初期構築後のシステム装置の追加と削除も含む)と日常運用作業の2つに分類できる。
初期構築作業はさらに、業務システム100のインフラストラクチャレベルの構築作業と業務レベルの構築作業の2つに分類することができる。前者のインフラストラクチャレベルの構築作業には、ネットワーク環境の設定(IPアドレス、VLAN、SANの設定など)や、オペレーティングシステムやミドルウエアなどのソフトウエアのインストールなどがあり、インフラストラクチャレベルの構築作業の終了後に、業務レベルの構築作業を実施する。業務レベルの構築作業には、管理対象サービス(以下、単に「サービス」と記載)のセットアップ、設定情報の配布、業務アプリケーション(以下、単に「アプリケーション」と記載)のデプロイなどがある。日常運用作業には、サービスの設定変更、アプリケーションのバージョンアップ、システムの計画停止/起動などがある。
本実施形態は、初期構築作業の業務レベルの構築部分と日常運用作業の簡略化/セミ自動化を実現する。インフラストラクチャレベルの構築作業に関しては、特許文献1などに開示された従来技術あるいはマニュアル作業で事前に実施されていることを想定している。
管理者による、運用管理システム102を利用した、業務システム100の構築運用の大きな流れは、次のようになる。
まず、管理者はユーザインターフェース部111を介して、業務システム100に対するシステム構成定義を行い、定義情報をシステム構成定義テーブル群114に格納する。次に、管理者は、業務システム100の環境構築および運用の実行を、ユーザインターフェース部111に命令する。ユーザインターフェース部111は該命令をシステム構築運用制御処理部117に伝え、システム構築運用制御処理部117は、システム構成定義テーブル群114の情報に基づいてプラグインプログラムコード115を制御し、環境構築および運用に必要な命令列および設定ファイルを、負荷分散装置107あるいはシステム装置106に送信する。
システム装置106において、管理エージェントサービス119が該命令列および設定ファイルを受信し、システム装置106上の各種管理対象サービス群110に対する環境構築および運用操作命令を実行する。たとえば、サービスがHTTPサービスの場合、設定ファイルとしてhttpd.confがあり、運用操作命令としてHTTPサービスの起動停止用のコマンドがある。
管理エージェントサービス119の好適な実現方法としては、設定ファイルの送受信にはFTP(File Transfer Protocol)を、運用操作の命令列の発行には、Telnetなどを利用する方法がある。
負荷分散装置107の好適な例としては、Telnetなどによる命令列の送受信や、FTPあるいはTFTP(Trivial File Transfer Protocol)などにより設定ファイルの送受信を行うものがある。
システム構成定義テーブル群114は、基本情報テーブル1300(図13)、負荷分散装置定義テーブル1400(図14)、ティア共通サービス環境定義テーブル1500(図15)、ユニット構成定義テーブル1600(図16)、サーバマシン定義テーブル1700(図17)およびサービスインスタンス定義テーブル1800(図18)からなる。
〔構成パターンとユニットの概念〕
本実施形態で想定する、業務システム100の構成パターンのバリエーションと、閉塞可能な単位であるユニットの概念を、図2および図3を参照しながら説明する。
図2は、業務システム100の基本的な構成パターンであり、2層構造になっている。第1の層201は、HTTPサービス、J2EEサービスおよびロギングサービスを稼動させたシステム装置205をクラスタ構成としたものである。
第2の層202はデータ層でありDBMS用のシステム装置206からなる。DBMSも複数システム装置を用いてクラスタ構成としてもよい。負荷分散装置107は第1の層201に対して負荷分散を行う。なお、システム装置205、206は、図1のシステム装置106に対応する。
層(ティア)の定義はすでに前記したが、さらに加えて説明すると、層とは、同種の機能を有するシステム装置の集合であり、特定の層に属するシステム装置上には、同一種類のサービスを同じコンフィグレーション(設定)で稼動させる。
この層の概念に対して、システム装置205およびその上で稼動する管理対象サービス群210、211、212のまとまりをユニットと呼ぶ。ユニットの特徴は、特定のユニットを停止しても、業務システム100全体としては停止せずに縮退モードで動作することができることである。24時間無停止で、図2の構成の業務システム100をメンテナンスする場合、ユニット単位で、停止、メンテナンス、再開を繰り返し実行すればよい。したがって、ユニットを、業務システム100を構成する部分であり、業務システム100全体を停止することなく停止・再開できる単位と定義する。
図3は、図2の第1の層201を2つに分離することにより3層構造とし、第1層301と第2層302の装置間の接続関係を1:1とした構成である。第1層301はHTTPサービスおよびロギングサービスを稼動させたシステム装置311、313の集合(HTTPティアと呼ぶ)である。第2層302はJ2EEサービスおよびロギングサービスを稼動させたシステム装置312、314の集合(J2EEティアと呼ぶ)である。なお、システム装置311〜314は、図1のシステム装置106に対応する。
第3層202は、図2の場合と同様にDBMS用のシステム装置206からなる。システム装置311、システム装置312およびそれら上で稼動する管理対象サービス群321〜324が、部分縮退可能な単位であるユニット304を形成する。図2の構成と比べ、図3の構成の特徴的な点は、ユニットがティア横断的である、つまり、ユニットが第1層301および第2層302のシステム装置の両方を含んでいる点である。図3の業務システム100は、ユニット304とユニット305の2ユニットから構成される。
なお、第1層301と第2層302の装置間の接続関係には1:1(図3の場合)以外に、N:1、1:N、M:Nの3つのバリエーションがある。
N:1の場合、第2層302のシステム装置1つに対して、第1層301のシステム装置が複数接続され、接続関係にある第1層301の複数のシステム装置と第2層302のシステム装置1つがユニットを形成し、さらにユニットが複数集まって業務システム100を構成する。
1:Nの場合、第1層301のシステム装置1つに対して、第2層302のシステム装置が複数接続され、接続関係にある第1層301の単一システム装置と第2層302の複数システム装置がユニットを形成する。第1層301のシステム装置1つが第2層302の複数のシステム装置に対して負荷分散を行う必要があり、N:1の場合と異なる設定・運用が必要となる。
M:Nの場合は、第1層301の任意のシステム装置は第2層302のシステム装置すべてと接続関係にあり、第1層301の任意のシステム装置は第2層302のシステム装置すべてに対して負荷分散を行う。第1層301と第2層302がメッシュで接続されるため、第1層301および第2層302に含まれるシステム装置は各々独立に停止し、業務システム100全体として部分縮退可能である。したがって、第1層および第2層のシステム装置の各々をユニットとする。
第1層301と第2層302のシステム装置に対するサービスの配置にもバリエーションがある。J2EEサービスは、一般にWebコンテナ機能とEJB(Enterprise Java(登録商標) Beans)コンテナ機能という2つの機能からなることから、第1層301のシステム装置にHTTPサービスおよびWebコンテナとしてのJ2EEサービスを稼動させ、第2層302のシステム装置にHTTPサービスおよびEJBコンテナとしてのJ2EEサービスを稼動させるバリエーションがある。
また、より可用性を高めた構成として、たとえば、図2の符号205のシステム装置を単一の装置で実現するのではなく、現用系と待機系の2系統のシステム装置から実現する構成(フェイルオーバー構成)がある。図2の拡張であるフェイルオーバー構成のバリエーションでは、各ユニット203、204は各々現用系と待機系の2つのシステム装置からなる。
以上のように、ユニットという管理単位を規定することで、業務システム100の多様な構成のいずれにおいても、複数のユニットからなる集合として正規化することができる。ユニットとは部分閉塞再開可能な業務システムの一部分を抽象化したものであるので、特定のユニットを停止した場合、業務システム100は停止したユニットを除く残りのユニットで縮退動作を行い、業務システム100全体としては停止しない。また、ユニット内の構成は業務システム100の取りうる構成パターンにより異なる。
本実施形態の説明では、業務システム100の構成パターンのバリエーションとして、システム装置の多層構成、多層構成における層間の接続トポロジ、システム装置上のサービスの配置および装置のフェイルオーバー構成に関するバリエーションを取り上げ説明した。その他考えられるバリエーションとして、負荷分散装置107のフェイルオーバー構成、DBのパーティションニング構成、DBのパーティションニング構成に即したJ2EEサーバ用装置の構成などがあり、ユニットの考え方はこれらのバリエーションにも適用可能である。
本発明の特徴は、ユニットと呼ぶティア横断的な管理単位を設け、また各メソッドから構成される共通インターフェース501を利用することにより、業務システム100の多様な構成パターンにおいて、24時間無停止運用の運用プログラムをシステム構築運用制御処理部117として共通化し、ユニット内の構成パターンに依存する部分はプラグインファイル103として局所化することが可能となっている点である。このシステムレベル(ユニット以上の単位)の運用ロジックの共通化とユニット内の動作の局所化により、新規構成パターンへの対応は局所化された運用ロジックの部分的な追加で対応することが可能となる。
以降において、図3の業務システム100の構成を例にとって、プラグインファイル103の構造(図4)、システム構成定義の構造と定義手順(図5〜図18)、システムレベルの運用ロジックの構成パターンによらない共通処理フロー(図19〜図21)、構成パターンに依存する運用ロジックの処理フロー(図22〜図26:プラグインプログラムの実装部分)の順で説明する。
〔プラグインファイルの構造とそのロード処理〕
図4は、プラグインファイル103のファイル構成と構成パターン定義例を示したものである。
プラグインファイル103は、構成パターンのメタ情報を保持する構成パターン定義部401と、構成パターンに即したユニットの運用動作を実装したプログラム部402からなる。構成パターン定義部401はXML(Extensible Markup Language)に基づくテキストファイルで、その具体的な例が構成パターン定義410であり、構成パターン定義410の左側の数字は定義ファイル内の行番号を示す。プログラム部402の好適な実現例は、図5に示すJava(登録商標)インターフェースを実装したJava(登録商標)ソースプログラムをJava(登録商標)コンパラによりコンパイルした結果出力されるJava(登録商標)クラスファイルである。プラグインファイル103は、構成パターン定義部401のテキストファイルとプログラム部402のクラスファイルをJava(登録商標) Archive形式でアーカイブ化したファイル(Jarファイル)である。
次に、構成パターン定義410について説明する。1行目(412)で本構成パターンの構成パターン名を指定し、2行目から5行目(413)にかけて構成パターンの特徴を自然言語で説明している。6行目(414)には、GUIツールと連動する際、GUIツール上で構成パターンの特徴を画像表示する際に利用する画像ファイルのパス情報が指定されている。なお、画像ファイルはプラグインファイル103に同梱されており、パス情報により画像ファイルが存在するアーカイブファイル内の位置を指定する。
7行目から17行目(415)にかけて、層(ティア)の構造が定義され、図3の構成パターンは“HTTPティア”と呼ばれる第1層301と“J2EEティア”と呼ばれる第2の層302からなり、HTTPティア301に属するシステム装置上にはHTTPサービスとロギングサービスを稼動させることを定義し(416)、J2EEティア302に属するシステム装置上にはJ2EEサービスとロギングサービスを稼動させることを定義している(417)。
図5は、前記したようにプログラム部402の実現例であり、ユニット運用操作のJava(登録商標)インターフェースである共通インターフェース501を示す図である。共通インターフェース501の左側の数字は、インターフェース定義の行番号を示す。共通インターフェース501は、図2および図3で説明した業務システム100の多様な構成パターンに対して、共通に定義される運用操作インターフェースである。ただし、共通インターフェース501の実装は構成パターン毎に異なる。また、基本的にすべてのオペレーションは操作対象のシステム名とユニット名を引数として指定する。システム名は第1引数のsystem-idで、ユニット名は第2引数のunit-idで指定する。
共通インターフェース501の各メソッドの機能について簡単に説明する。2行目のcreateServiceDefintionsは、業務システム100の構成パターンに即してユニット内のサービスの定義情報を自動生成するメソッドである。3行目のsetupServicesは、構成パターンのサービス構成に即してサービス群をセットアップするメソッドである。4行目のunsetupServicesは、3行目のsetupServicesでセットアップされたサービスを削除するメソッドである。5行目のstartServicesは、ユニット内のサービス群を開始するメソッドである。6行目のstopServicesは、ユニット内のサービス群を停止するメソッドである。7行目のdistributeConfigurationは、設定ファイルをシステム装置106に配布するメソッドである。8行目のdeployApplicationsは、ユニット内のサービスにアプリケーションを配備するメソッドである。9行目のredeployApplicationsは、ユニット内のサービスにアプリケーションを再配備するメソッドである。
10行目のundeployApplicationsは、ユニット内のサービスからアプリケーションを削除するメソッドである。11行目のstartApplicationsは、ユニットに配備したアプリケーションを開始するメソッドである。12行目のstopApplicationsは、ユニットに配備したアプリケーションを停止するメソッドである。13行目のjoinVirtualServerは、ユニットを負荷分散装置107の振り分け対象に追加するメソッドである。14行目のleaveVirtualServerは、ユニットを負荷分散装置107の振り分け対象から削除するメソッドである。また、15行目のacceptRequestは、負荷分散装置107がインターネット108経由で受信するユーザトランザクションをユニット内のシステム装置106にルーティングするメソッドである。16行目のblockRequestは、負荷分散装置107がインターネット108経由で受信するユーザトランザクションに対するユニット内のシステム装置106へのルーティングを停止するメソッドである。
このように、各メソッドにより共通インターフェース501が構成され、それが記憶手段131に記憶されている。
図6に、構成パターン定義テーブル113の詳細を示す。構成パターン定義テーブル113は、構成パターン名フィールド601、クラスアドレスフィールド602、説明用テキストフィールド603、画像用URLフィールド604、ティア名フィールド605およびサービス種別名フィールド606の6つフィールド(カラム)からなるテーブルである。
構成パターン名フィールド601は、図4の符号412に対応する。クラスアドレスフィールド602は、プラグインプログラムコード115のJava(登録商標)仮想マシン(VM)ヒープ上のアドレス情報を保持する。説明用テキストフィールド603は、図4の符号413に対応する。画像用URLフィールド604は、図4の符号414に対応する。ティア名フィールド605は、図4の符号415に対応する。定義フラグメントである415の部分は2つのティアから構成されることを示しており、それぞれレコード611とレコード612のように展開される。サービス種別フィールド606は、図4の符号416および符号417に対応し、それぞれ、レコード621、622およびレコード623、624のように展開される。
プラグインファイルロード処理部116によるプラグインファイル103のロード手順は、次のとおりである。まず、記憶手段131上の特定のディレクトリ下にあるファイル一覧を取得する。次に、取得したファイル一覧の各ファイルに対して、プラグインファイル103を読み込み、構成パターン定義410を構成パターン定義テーブル113に展開し、プログラム部402のクラスファイルをJava(登録商標)VMのヒープ上にバイトコード(クラス)として展開し、そのアドレス情報を構成パターン定義テーブル113のクラスアドレスフィールド602に設定する。
〔管理者によるシステム構成定義の画面と手順〕
図7から図12は、管理者によるシステム構成定義の手順を示したものである。管理者が定義した情報は、図13から図17に示すテーブル群に格納される。これらの画面は、ユーザインターフェース部111が制御し、表示する。
図7に、システム構成パターン選択画面700を示す。運用管理システム102が構成パターン定義テーブル113に格納されているパターン名(フィールド601)の一覧をプルダウンメニュー701として表示する。管理者は、プルダウンメニュー701から適切な構成パターン名を選択し、テキストフィールド705にシステム名を入力し、ボタン702をクリックし、次画面である負荷分散装置定義画面800(図8)に遷移する。図3の業務システム100の場合、プルダウンメニュー701から選択すべき適切な構成パターンは“HTTP分離2ティア構成”である。符号703の画像および符号704の説明文は、それぞれ構成パターン定義テーブル113の画像用URLフィールド604および説明用テキストフィールド603に対応する。
システム構成パターン選択画面700でのユーザ入力情報は、図13に示す基本情報テーブル1300に格納される。テキストフィールド705の値はテーブル1300のシステム名フィールド1301に格納され、プルダウンメニュー701で選択された構成パターン名はパターン名フィールド1302に格納される。
レコード1311は、図3に示す業務システム100のシステム名が“システム1”であり、それが構成パターン“HTTP分離2ティア構成”に属していることを示している。構成パターン名1302の値をキーに、構成パターン定義テーブル113を検索することにより、構成パターンのメタ情報を参照することができる。
図8に、負荷分散装置107の負荷分散装置定義画面800を示す。管理者は、負荷分散装置107の論理名称801、運用管理IPアドレス802、仮想サーバのIPアドレス803、ポート番号804を入力し、ボタン805をクリックすることにより次画面であるサービス環境定義画面900(図9)に遷移する。運用管理IPアドレス802は、運用管理システム102が負荷分散装置107に運用管理命令列を発行する際、負荷分散装置107に接続するのに利用するIPアドレスである。仮想サーバのIPアドレス803は、いわゆるVIP(Virtual IP)と呼ばれるアドレスであり、エンドユーザがインターネット108を介して業務システム100に接続する際に利用するIPアドレスである。
負荷分散装置定義画面800でのユーザ入力情報は、図14に示す負荷分散装置定義テーブル1400に格納される。論理名称801、運用管理IPアドレス802、仮想サーバのIPアドレス803、ポート番号804はそれぞれ、テーブル1400の負荷分散装置名フィールド1401、運用管理IPアドレスフィールド1403、仮想IPアドレスフィールド1404、ポート番号フィールド1405に格納される。システム名フィールド1402には、そのとき定義中のシステムの名称(705の値)が格納される。図8の負荷分散装置定義画面800での入力例が、レコード1411として格納されている。
図9に、ティア共通のサービス環境定義(パラメータ定義)画面900を示す。図3に示すように、異なるユニットのサービスにおいても、それぞれのユニットに属するサービスが同一層(ティア)に属する場合、これらサービスのパラメータ定義は基本的に同じとなる。たとえば、図3の第2層302に属するJ2EEサービス323の場合、ユニット304とユニット305のそれぞれに対してJ2EEサービスを定義する必要があるが、これら2つのサービスは共通の環境定義(パラメータ定義)を持つため、サービス種別単位で一括して定義する。ただし、すべてのパラメータがサービス種別単位で一括して定義できるわけではなく、トポロジや構成により定まり個別サービスインスタンス毎に値が異なるパラメータもある。トポロジや構成により定まるパラメータの解決方法は、図22のcreateServiceDefinitionsで説明する。
図9のサービス環境定義画面900で、メニュー901、902から定義対象の層(ティア)とサービス種別を選択し、サービス種別毎の環境定義を一括して行う。図9は、J2EEティア上のJ2EEサービスに共通な環境定義を行う(フィールド903部分に対応)場面を示している。環境定義は、各種パラメータに対して適切な値を入力あるいは選択することにより行う。環境定義対象のサービス種別がJ2EEサービスの場合、さらに、J2EEアプリケーションの指定も必要であり、フィールド911にて、J2EEアプリケーションのファイルパスを指定する。すべての層(ティア)のサービスの環境定義が終了した場合、ボタン905をクリックして、次画面であるユニット構成定義画面1000(図10)に遷移する。
サービス環境定義画面900でのユーザ入力情報は、図15に示すティア共通サービス環境定義テーブル1500に格納される。そのとき定義中のシステムのシステム名705がティア共通サービス環境定義テーブル1500のシステム名フィールド1501に格納される。メニュー901および902で選択した環境定義対象のティアとサービス種別の情報を、それぞれ、ティア名フィールド1502およびサービス種別名フィールド1503に格納する。フィールド903で定義したパラメータ定義情報は、パラメータ名と入力値からなる名前値ペアのリストとして環境定義フィールド1504に格納される。フィールド911で定義したアプリケーション情報はアプリケーション情報フィールド1505に格納される。
図9のサービス環境定義画面900での入力例が、上から3つめのレコード1511として格納されている。なお、レコード1511の定義は、J2EEティア302上の任意のユニット内のJ2EEサービスに対する共通の定義に関してのみであり、個別サービスインスタンスに関する環境定義(たとえばJ2EEサービス323に対する個別の環境定義)は、レコード1511の内容に基づいて、図22で説明するcreateServiceDefintionsで生成する。
図10、図11は、ユニットの構成とシステム装置の配置を定義する画面である。図10のユニット構成定義画面1000において、ユニットの追加の場合、ボタン1011をクリックすることにより新規ユニットが追加され、ユニットの削除の場合、ボタン1012をクリックすることにより削除を行う。
ユニット追加時には、符号1020の行が新たに追加される。図10は、ユニットがまったく定義されていない状態からボタン1011をクリックした直後の画面イメージである。
1020の行が追加されたのち、新規ユニットのユニット名フィールド1001にユニット名を入力し、システム装置選択プルダウンメニュー1002および1003から、システム装置を1つずつ選択し、それぞれをHTTPティアおよびJ2EEティアのシステム装置とする。以上の操作により、図3のユニット304がユニット名“ユニット1”として定義され、ユニット305も同様にして定義する。
ユニット構成定義画面1000でのユーザ入力情報は、図16に示すユニット構成定義テーブル1600に格納される。
ユニット名の指定(1001)と新規ユニット内に配置するサーバマシンを2つ選択(1002、1003)したことにより、ユニット構成定義テーブル1600に対して新規レコードが2つ追加される。追加された2つのレコードの各々に対して、そのとき定義対象となっているシステムのシステム名705の値がシステム名フィールド1601に、ユニット構成定義画面1000のユニット名1001で指定した値がユニット名フィールド1602に、選択したサーバマシン名(1002の値あるいは1003の値)がサーバマシン名フィールド1603に、サーバマシンが属するティア名(1002の場合は“HTTPティア”、1003の場合“J2EEティア”となる)がティア名フィールド1604に格納される。図10のユニット構成定義画面1000での入力例で生成された新規レコードは、レコード1611、レコード1612に対応している。
プルダウンメニュー1002あるいは1003に所望のシステム装置が事前に定義されていない場合は、プルダウンメニューから新規1004を選択し、サーバマシン定義画面1100(図11)に遷移し、システム装置を定義する。システム装置の定義は、システム装置の論理名であるサーバマシン名1101、業務トランザクション実行ネットワーク105上のIPアドレスである業務実行IPアドレス1102、運用管理ネットワーク104上のIPアドレスである運用管理IPアドレス1103および管理エージェントサービス119のポート番号である運用サービスポート番号1104からなる。
サーバマシン定義画面1100でのユーザ入力情報は、図17に示すサーバマシン定義テーブル1700に格納される。図11のサーバマシン定義画面1100のサーバマシン名1101、業務実行IPアドレス1102、運用管理IPアドレス1103、運用サービスポート番号1104を、それぞれ、サーバマシン定義テーブル1700のサーバマシン名フィールド1701、実行IPフィールド1702、管理IPフィールド1703、管理ポートフィールド1704に格納する。図11のサーバマシン定義画面1100での入力例が、レコード1711として格納されている。以上の操作により、業務システム100を、図3に示す構成の業務システム100として定義できた。次に、これらの定義を元に、業務システム100の構築、運用の処理について説明する。
〔システムレベルの構築運用ロジック:システム構築運用制御処理部117の処理フロー〕
共通インターフェース501を利用した、業務システム100の構成に依存しない汎用的な、業務システム100の構築、運用の手順(システム構築運用制御処理部117による処理)を、図19〜図21に示す。図19および図20は業務システム100の構築に関しての処理であり、図21は業務システム100の運用に関しての処理である。そして、図19〜図21の手順中の各メソッド(図5)の処理については、図22〜図26を参照しながら説明する。
図19から図21において、システム構築運用制御処理部117が共通インターフェース501のメソッドを起動する。その起動手順は、操作対象の業務システム100が属するパターン名を基本情報テーブル1300のパターン名フィールド1302から取得し、パターン名に対応する共通インターフェース501の実装クラスのクラスアドレスを構成パターン定義テーブル600のクラスアドレスフィールド602から取得する。そして、Java(登録商標)言語のReflection機能を利用することにより、実装クラスのメソッドを呼び出す。
図19は、システム構築運用制御処理部117による業務システム100の構築手順を示したフローチャートである。本手順は図10のボタン1005のクリックを契機に実行される。本手順の実行により、システム装置内の各種サービスのセットアップと環境設定が終了し、業務システム100が起動可能な状態となる。
まず、構築対象のシステム装置(311〜314)の名称をキーに負荷分散装置定義テーブル1400から定義情報を取得し、負荷分散装置定義に基いて、負荷分散装置107に接続し、仮想サーバとポートの定義を実行する、つまり、仮想サーバと仮想サーバ上のポートの定義を指示する命令列を、運用管理IPアドレス(1403)を介して接続した負荷分散装置107に対して送信する(ステップ1901)。負荷分散装置107の好適な例は、仮想サーバ定義として、仮想IPアドレス(1404)とポート番号(1405)を引数として仮想サーバを定義する手段を有する。次に、構築対象のシステム名をキーにユニット構成定義テーブル1600からユニットを検索し(ステップ1902)、検索結果の各ユニットに対して(ステップ1903で「はい」の場合、図16の場合“ユニット1”と“ユニット2”の各々に対して)、ステップ1904、1905、1906、1907を実行する。
前記各ユニットに対して、共通インターフェース501のcreateServiceDefinitionsを実行し(ステップ1904)、サービスインスタンス定義テーブルを生成する。次に、共通インターフェース501のsetupServicesを実行し(ステップ1905)、ステップ1904で生成した定義に基づいてシステム装置106上にサービスをセットアップする。次に、共通インターフェース501のjoinVirtualServerを実行し(ステップ1906)、ステップ1905で生成したサービスのうち、負荷分散装置107の振り分け対象となるサービスに対して、負荷分散装置107の振り分け対象として追加する。最後に、共通インターフェース501のdistributeConfigurationを実行し(ステップ1907)、ステップ1904で生成した環境定義情報からコンフィグレーションファイルを生成し、ステップ1905でセットアップしたサービスに対して前記ファイルを送付する。
図20は、システム構築運用制御処理部117が実行する業務システム100の起動手順を示すフローチャートである。本手順は、図12のボタン1205のクリックを契機に実行される。本手順の実行により、システム装置内の各種サービスの起動とアプリケーションのデプロイが実行され、業務システム100がエンドユーザからの要求を受け付ける。
まず、起動対象のシステム名をキーにユニット構成定義テーブル1600からユニットを検索し(ステップ2001)、検索結果の各ユニットに対して(ステップ2002で「はい」の場合、図16の場合“ユニット1”と“ユニット2”の各々に対して)、ステップ2003、2004、2005、2006を実行する。
前記各ユニットに対して、共通インターフェース501のstartServicesを実行し(ステップ2003)、ユニット内のサービスを起動する。次に、共通インターフェース501のdeployApplicationsを実行し(ステップ2004)、ユニット内のサービスに対して、アプリケーションをデプロイする。次に、共通インターフェース501のstartApplicationsを実行し(ステップ2005)、ユニット内のサービスに対してアプリケーションを開始する。最後に、共通インターフェース501のacceptRequestを実行し(ステップ2006)、エンドユーザのリクエストの受付を開始する。
図20では業務システム100の起動手順を示したが、業務システム100の停止手順は図20の場合とほぼ同様である。業務システム100を停止する場合、図12のボタン1206をクリックすることでシステム構築運用制御処理部117が処理を開始し、図20におけるステップ2003、2004、2005、2006の代わりに、起動と逆の順番で各ステップの逆オペレーション、つまり、blockRequest、 stopApplications、 stopServicesを実行すればよい。ただし、deployApplicationsの逆オペレーションであるundeployApplicationsは実行しない。
以上で業務システム100の構築処理が終了し、その後、画面がシステム運用画面1200(図12、説明は後記)に遷移して、システム構築運用制御処理部117による運用処理が開始されることになる。運用操作としては、ユニット単位の部分停止(ボタン1202あるいは1204)、部分再開(ボタン1201あるいは1203)、システム全起動(ボタン1205)、システム全停止(ボタン1206)がある。それぞれのボタンをクリックすることにより、システム構築運用制御処理部117がそれぞれの処理を開始する。
前記の基本運用操作に加えて、パラメータの変更、業務アプリケーションの変更(バージョンアップを含む入れ替え)およびユニット構成変更(ユニットの追加と削除)などがあり、それぞれボタン1207、1208、1209をクリックして、図9あるいは図10に示す画面に遷移して変更定義を行い、システム構築運用制御処理部117が変更処理を実行する。
次に、業務システム100の運用に関する処理について、業務アプリケーションを変更する場合を例にとって、その手順について説明する。図21は、システム構築運用制御処理部117が実行する業務アプリケーションのバージョンアップ(入れ替え)手順を示すフローチャートである。本手順は、業務システム100の運用中に、図12のAP変更用のボタン1208のクリックから遷移する環境定義画面900(図9)のフィールド911の変更後開始され、業務システム100を全停止することなく、業務アプリケーションの入れ替えを実行する。
まず、構築対象のシステム名をキーにユニット構成定義テーブル1600からユニットを検索し(ステップ2101)、検索結果の各ユニットに対して(ステップ2102で「はい」の場合、図16の場合“ユニット1”と“ユニット2”の各々に対して)、ステップ2103、2104、2105、2106、2107を実行する。
前記各ユニットに対して、共通インターフェース501のblockRequestを実行し(ステップ2103)、業務アプリケーションを変更するユニットへの負荷分散装置107によるエンドユーザからのリクエストの振り分けを停止する。次に、共通インターフェース501のstopApplicationsを実行し(ステップ2104)、当該ユニット内のサービスに対して業務アプリケーションの実行を停止する。次に、共通インターフェース501のredeployApplicationsを実行し(ステップ2105)、当該ユニット内のサービスに対してアプリケーションを入れ替える。次に、共通インターフェース501のstartApplicationsを実行し(ステップ2106)、業務アプリケーションを開始する。最後に、共通インターフェース501のacceptRequestを実行し(ステップ2107)、負荷分散装置107による当該ユニットへのエンドユーザからのリクエストの振り分けを再開する。
このように、前記手順のステップ2103〜2107において、特定のユニットのみを停止して業務アプリケーションを入れ替えることで、業務システム100全体としてはサービスを停止させず、エンドユーザからの要求を残りのユニットで処理することができる。
次に、運用操作の他の例として、24時間無停止でのパラメータ定義更新手順について述べる。パラメータ定義の変更方法は、図9のフィールド903にパラメータの変更値を入力し、ティア共通サービス環境定義テーブル1500の更新後、システム構築運用制御処理部117がパラメータ定義更新手順を開始する。処理フローは図21とほぼ同様であり、順次ユニットを閉塞して業務システム100を部分縮退させながら、停止中のユニットに対して環境定義の再配布処理を実行していく。具体的には、ステップ2104、2105、2106の代わりに、 stopServicesを実行してユニットのサービスを停止するステップ、setupServicesのステップ1905およびステップ1907と同じ手順を実行し、環境定義の再設定と設定ファイルの再配布を行うステップ、および、startServicesによりサービスを開始するステップ、に差し替えればよい。
なお、図21の処理フローおよび前記した24時間無停止でのパラメータ定義更新手順は、24時間無停止運用時の典型的な処理パターンを示している。特定のユニットを停止し(blockRequest、stopServices、stopApplicationsのいずれかあるいは組み合わせの実行)、ユニット停止中に運用の目的に応じたメンテナンス操作を実行し、ユニットを再開させる(acceptRequest、startServices、startApplicationsのいずれかあるいは組み合わせの実行)処理を、業務システム100を構成するユニットに対して繰り返し実行する。
また、図21の処理フローで示されるメンテナンス操作は、アプリケーションの再配備(redeployApplications)であり、前記した24時間無停止でのパラメータ定義更新手順では設定ファイルの再配布である。その他想定される運用操作として、OSのパッチを適用する処理、記憶手段のバックアップなどがあり、それぞれの24時間無停止運用時には、それぞれの目的に応じたユニット単位での運用操作を実装したプログラムを事前に準備し、図21の処理フローと同様の手順で呼び出せばよい。
さらに、図19、図20は業務システム100を最初に構築する際の手順である。これらの手順は、業務システム100構築後にユニットの構成を変更(追加および削除)する場合にも適用できる。その場合、図19、図20が示すように業務システム100を構成する全てのユニットに対して実行する必要はなく、特定ユニットに対してのみ処理するようにすればよい。また、業務システム100の負荷が、それが想定する処理能力を超える場合、新規ユニットを追加することにより、処理能力を超えた部分の負荷に対応することができる。逆に、想定より負荷が大幅に低い場合は、稼動中のユニットの停止後にそのユニットを削除すればよい。ユニットの追加削除は、図12のユニット構成変更ボタン1209により遷移する図10の画面1000で行う。
〔構成パターンに依存する運用ロジックの処理フロー〕
続いて、図3の業務システム100が属する構成パターンに対する共通インターフェース501の実装例の処理フローについて、図22〜図26のフローチャートを参照しながら説明する。これらは、前記したように、業務システム100の構成に依存しない構築や運用の手順(図19〜図21)における、各メソッドの処理である。各メソッドの処理内容は、システム装置106の構成パターンにより、変化することもある。
各メソッドの概要は、createServiceDefinitions(図5)が、図7から図12で行った構成定義情報からサービスインスタンス定義情報テーブル1800を生成するものであり、その他のメソッドは、テーブル1800を利用して負荷分散装置107あるいはシステム装置106に各種構築運用命令や設定ファイルなどを送信するものである。
図22は、createServiceDefinitionsメソッド実装の処理手順を示すフローチャートである。本手順が生成するサービスインスタンス定義情報は、図18に示すサービスインスタンス定義テーブル1800に格納される。図7から図12で行った構成定義では、装置のトポロジとシステム装置情報、ティア共通に設定するサービス種別毎のパラメータを定義しているが、各装置上に稼動させる個別サービスのインスタンス定義はまだ実施していない。本処理フローは、ユニット構成定義テーブル1600、サービス構成を保持する構成パターン定義テーブル113、ティア共通サービス環境定義テーブル1500およびサーバマシン定義テーブル1700を利用して、これら個別サービスのインスタンス定義を生成するものである。
まず、メソッドの引数であるシステム名とユニット名をキーにユニット構成定義テーブル1600を検索し(ステップ2201)、検索結果の各レコードに対して(ステップ2202、“ユニット1”の場合、レコード1611とレコード1612の2つ)、ステップ2203からステップ2207を実行する。
ステップ2203において、基本情報テーブル1300から引数のシステム名に対応する構成パターン名フィールド1302の値を取得し、取得した該パターン名(“システム1”の場合“HTTP分離2ティア構成”)と現在処理中のレコードのティア名(ティア名フィールド1604の値)をキーにティアがホスティングするサービス種別(サービス種別名フィールド606の値)の一覧を構成パターン定義テーブル113から取得する。
取得した各サービス種別に対して(ステップ2204)、サービスインスタンス定義を行う(ステップ2205〜2207)。たとえば、図6では、HTTPティア(611)の場合、サービス種別としてHTTPサービス(621)とロギングサービス(622)の2種類があることから、HTTPティアに属する各サーバマシンに対して、HTTPサービスとロギングサービスの2つのサービスインスタンス定義を行う。J2EEティア(612)も同様であり、図3の業務システム100の場合、全体としてシステム装置が4つ(311〜314)あり、それぞれにサービスを2つ稼動させることから、計8つのサービスインスタンス定義を生成する(図18)。
サービスインスタンス定義は、ステップ2205、ステップ2206、ステップ2207からなる。まず、サービスインスタンス定義テーブル1800に新規サービスインスタンス定義レコードを生成する。該新規サービスインスタンス定義レコードのサービス名フィールド1801には、サービスインスタンス定義テーブル1800で一意性が保証できる名前を自動生成し、格納する。該新規サービスインスタンス定義レコードのシステム名フィールド1802、ユニット名フィールド1803、サーバマシン名フィールド1804およびティア名フィールド1805には、それぞれ引数で指定されたシステム名、引数で指定されたユニット名、現在処理中のサーバマシンの名前(サーバマシン名フィールド1603の値に対応)およびティアの名前(ティア名フィールド1604の値に対応)を設定する。サービス種別1808には現在処理中のサービス種別の名前(サービス種別名フィールド606の値に対応)を格納する(ステップ2205)。
次に、引数で指定されたシステム名、現在処理中のサービス種別名および現在処理中のティアの名前(ティア名フィールド1604の値に対応)をキーに、ティア共通サービス環境定義テーブル1500を検索し、環境定義(1504)とアプリケーション情報(1505)を取得し、前記新規サービスインスタンス定義レコードの環境定義フィールド1806とアプリケーション情報フィールド1807に格納する(ステップ2206)。なお、前記ステップ2206では、ティア共通に定義したパラメータ定義およびアプリケーション情報を同一ティアに属する個別サービスインスタンス定義に展開(コピー)している。
最後に、システム装置の情報(サーバマシン定義テーブル1700)と構成パターンのトポロジから定まるパラメータを、前記新規サービスインスタンス定義レコードの環境定義フィールド1806のリストに追加する(ステップ2207)。たとえば、図3の例では、ホスト1(311)上のHTTPサービス321が接続するJ2EEサービスは、同一ユニット304内のホスト2(312)上のJ2EEサービス323である。したがって、HTTPサービス321の設定パラメータである“接続するJ2EEサービスのアドレス情報”パラメータの値は、サーバマシン定義テーブル1700からそのネットワークアドレスは“192.1.1.2”であることが定まる。このような構成に応じたパラメータ解決手順は、Java(登録商標)言語と各種テーブル(113、114)を参照する処理を構成毎のプラグインファイル103にハードコードすることにより実現できる。
図23は、setupServicesメソッド実装の処理手順を示したフローチャートである。まず、引数であるシステム名とユニット名をキーにサービスインスタンス定義テーブル1800を検索し(ステップ2301)、検索結果の各サービスインスタンス定義に対して(ステップ2302)サービスセットアップを実行する。サービスセットアップは、以降のステップからなり、まず、サービスインスタンス定義のサーバマシン名(1804)に対するネットワーク情報(管理IPアドレス(1703)とポート番号(1704))を、サーバマシン定義テーブル1700から取得する(ステップ2303)。次に、前記管理IPアドレスと前記ポート番号を用いて、サーバマシン上の管理エージェントサービス119に接続し、サービス種別に応じたサービスのセットアップの命令列を送付し、管理エージェントサービス119がその命令列を実行する(ステップ2304)。
なお、unsetupServicesの手順は図23とほぼ同様であり、ステップ2304の代わりに、システム装置106上のサービスにかかわる各種ファイルおよび設定を削除することを指示する命令列を管理エージェントサービス119に送信し、負荷分散装置107に対しても図19のステップ1901で行った仮想サーバに関する定義とjoinVirtualServerで行ったリアルサーバに関する定義を削除する命令列を送信する。
また、distributeConfigurationの手順は図23とほぼ同様であり、ステップ2304の代わりに、各種設定パラメータの名前値ペアのリストである環境定義(1806)からサービス種別に応じた設定ファイルを生成し、管理エージェントサービス119に対して生成した前記設定ファイルを配布すればよい。生成されるファイルの例として、サービス種別がHTTPサービスの場合、httpd.confと呼ばれるファイルなどがある。
さらに、startServicesの手順は図23とほぼ同様であり、ステップ2304の代わりに、管理エージェントサービス119に対してサービス種別に応じたサービス起動処理の命令列を送信すればよい。
また、stopServicesの手順は図23とほぼ同様であり、ステップ2304の代わりに、管理エージェントサービス119に対してサービス種別に応じたサービス停止処理の命令列を送信すればよい。
続いて、図24は、deployApplicationsメソッド実装の処理手順を示すフローチャートである。まず、引数であるシステム名とユニット名をキーにサービスインスタンス定義テーブル1800を検索し(ステップ2401)、検索結果の各サービスインスタンス定義に対して(ステップ2402)、アプリケーション情報フィールド1807がnullでない場合(ステップ2403)、アプリケーションのデプロイ処理を実行する。アプリケーションのデプロイ処理は、以降のステップからなり、まず、サービスインスタンス定義のサーバマシン(1804)に関するネットワーク情報(管理IPアドレス(1703)とポート番号(1704))をサーバマシン定義テーブル1700から取得する(ステップ2404)。次に、ステップ2404で取得した情報に基づいて、管理エージェントサービス119に接続し、サービスインスタンス定義テーブル1800のアプリケーション情報フィールド1807で指定されるアプリケーションのファイルの送信後、サービス種別に応じたアプリケーションのデプロイ処理の命令列を送信する(ステップ2405)。
なお、undeployApplicationsの手順は図24とほぼ同様であり、ステップ2405において、アプリケーションのアンデプロイ命令を、管理エージェントサービス119に送信する。
また、startApplicationsの手順は図24とほぼ同様であり、ステップ2405において、アプリケーションの開始命令を、管理エージェントサービス119に送信する。
さらに、stopApplicationsの手順は図24とほぼ同様であり、ステップ2405において、アプリケーションの停止命令を、管理エージェントサービス119に送信する。
次に、図25は、redeployApplicationsメソッド実装の処理手順に示すフローチャートである。まず、undeployApplicationメソッドを実行し、ユニット内のアプリケーションをアンデプロイする(ステップ2501)。そして、引数であるシステム名とユニット名をキーにサービスインスタンス定義テーブル1800を検索し(ステップ2502)、検索結果の各サービスインスタンス定義に対して(ステップ2503)、サービスインスタンス定義のティア名(1804)およびサービス種別(1808)をキーにティア共通サービス環境定義テーブル1500からアプリケーション情報(1505)を取得し(ステップ2504)、取得したアプリケーション情報を、サービスインスタンス定義テーブルのアプリケーション情報フィールド1804に上書きする(ステップ2505)。最後に、deployApplicationsを起動する(ステップ2506)。
図26は、joinVirtualServerメソッド実装の手順を示すフローチャートである。図3の業務システム100の場合は、ユニット中のHTTPサービスが負荷分散の対象(振り分け対象のことをリアルサーバと呼ぶ)であることを負荷分散装置107に指示し(リアルサーバ定義)、仮想サーバとリアルサーバの振り分け定義を行う。たとえば、図3のユニット304を仮想サーバに追記する場合、ホスト1のHTTPサービス321に対してリアルサーバ定義を行い、“192.1.100”をVIPに持つ仮想サーバに対して前記リアルサーバを振り分けるよう定義する。
図26の処理フローは、次のとおりである。まず、引数のシステム名をキーに負荷分散装置定義情報テーブル1400から負荷分散装置107の運用管理IPアドレス(1403)と仮想サーバ情報(仮想IPアドレス(1404)とポート番号(1405))を取得する(ステップ2601)。次に、引数であるシステム名、ユニット名および負荷分散の対象となるティア名(図3の構成の場合、HTTPティアが負荷分散の対象となる)をキーにサービスインスタンス定義テーブル1800を検索する(ステップ2602)。検索結果の各サービスインスタンス定義に対して(ステップ2603)、仮想サーバの振り分け対象への参加処理を実行する。振り分け対象への参加処理は、以降のステップからなる。まず、サービスが稼動するサーバマシン(1804)の実行IPアドレス(1702)をサーバマシン定義テーブル1700から取得する(ステップ2604)。つまり、この実行IPアドレスがリアルサーバのIPアドレスとなる。なお、本実施形態では、リアルサーバのポート番号は仮想サーバのポート番号と同じ値を利用することを想定する。
図26の処理フローに戻ると、次に、先に取得した負荷分散装置定義情報のポート情報(1405)とサーバマシンの実行IPアドレス(1702)から、負荷分散装置107への振り分け対象定義(リアルサーバ定義)の命令列を生成し、負荷分散装置107に送信する(ステップ2605)。なお、負荷分散装置107の好適な例としては、振り分け対象のIPアドレスおよびポート番号を引数にリアルサーバを定義する手段を有している。最後に、仮想サーバがリアルサーバの振り分けを行うことを指示する命令列を生成し、負荷分散装置107に送信する(ステップ2606)。前記手順において、負荷分散装置107との通信には、負荷分散装置定義情報テーブル1400の運用管理IPアドレス(1403)を用いる。
なお、leaveVirtualServerの処理手順は図26の手順とほぼ同様であり、ステップ2605とステップ2606に代わりに、負荷分散装置107への振り分け対象定義を削除する命令列を、負荷分散装置107に送信する。
また、acceptRequestの処理手順は図26の手順とほぼ同様であり、ステップ2605とステップ2606に代わりに、リアルサーバへの振り分けを有効化する命令列を、負荷分散装置107に送信する。
さらに、blockRequestの処理手順は図26の手順とほぼ同様であり、ステップ2605とステップ2606の代わりに、リアルサーバへの振り分けを無効化する命令列を、負荷分散装置107に送信する。
このように、本実施形態に係る業務システムに対する運用管理システムよれば、業務システム100において、ユニットという部分閉塞再開可能な管理単位を規定することで、業務システム100全体としては停止することなく、システム装置106における運用操作(アプリケーションの入れ替えなど)を行うことができる。
また、共通インターフェース501を利用することで、システムレベルにおいては、業務システム100の構成パターンに依存しない汎用的な構築および運用を行うことができる。そして、それぞれの構成パターンに対しては、ユニット内の構成パターンに応じて作成された共通インターフェース501の実装プログラムをユニットの定義情報と関連付けることで対応でき、業務システム100の構築や運用の際の作業が局所化され、開発者や運用者の負担を低減することができる。
以上で実施形態の説明を終えるが、本発明の態様はこれらに限定されるものではない。たとえば、エンドユーザとの接続は、インターネットでなくても、LAN(Local Area Network)や専用線などの他の通信回線であってもよい。その他、具体的な構成について、本発明の主旨を逸脱しない範囲で適宜変更が可能である。
本発明の実施形態の全体構成を示したブロック図である。 図1のシステム装置構成が2層からなる場合の構成図である。 図2のシステム装置の第1の層を2つに分離した3層構造の場合の構成図である。 プラグインプログラムファイルの構造を示した図である。 プラグインプログラムが持つ共通インターフェースを示した図である。 構成パターン定義テーブルの構成図である。 システム構成パターン選択画面を示す画面図である。 負荷分散装置定義画面を示す画面図である。 サービス環境定義画面を示す画面図である。 ユニット構成定義画面を示す画面図である。 サーバマシン定義画面を示す画面図である。 日常運用の操作を行うシステム運用画面を示す画面図である。 基本情報テーブルを示した図である。 負荷分散装置定義テーブルを示した図である。 ティア共通サービス環境定義テーブルを示した図である。 ユニット構成定義テーブルを示した図である。 サーバマシン定義テーブルを示した図である。 サービスインスタンス定義テーブルを示した図である。 システム構築運用制御処理部117によるシステム構築の流れを示すフローチャートである。 システム構築運用制御処理部117によるシステム起動の流れを示すフローチャートである。 システム構築運用制御処理部117による業務入れ替えの流れを示すフローチャートである。 図3の構成パターンに対するプラグインプログラム共通インターフェースのメソッドcreateServiceDefinitions実装の処理フローを示すフローチャートである。 図3の構成パターンに対するプラグインプログラム共通インターフェースのメソッドsetupServices実装の処理フローを示すフローチャートである。 図3の構成パターンに対するプラグインプログラム共通インターフェースのメソッドdeployApplications実装の処理フローを示すフローチャートである。 図3の構成パターンに対するプラグインプログラム共通インターフェースのメソッドredeployApplications実装の処理フローを示すフローチャートである。 図3の構成パターンに対するプラグインプログラム共通インターフェースのメソッドjoinVirtualServer実装の処理フローを示すフローチャートである。
符号の説明
100 業務システム
101 管理用端末システム装置
102 運用管理システム
106 管理対象システム装置
107 負荷分散装置
131 記憶手段
201 第1の層
202 第2の層
301 第1層
302 第2層
501 共通インターフェース
1300 基本情報テーブル
1400 負荷分散装置定義テーブル
1500 ティア共通サービス環境定義テーブル
1600 ユニット構成定義テーブル
1700 サーバマシン定義テーブル
1800 サービスインスタンス定義テーブル

Claims (11)

  1. 複数のシステム装置を有する業務システムを運用管理システムにより運用する業務システムの運用方法であって、
    前記運用管理システムは、演算処理手段と記憶手段を有し、
    前記記憶手段は、前記複数のシステム装置を所定数毎にそれぞれユニットとして関連付けて定義したユニット構成情報と、前記ユニットの構成パターンに関係なく不変な構築運用操作の共通インターフェースを構成する複数のメソッドと、その各メソッドに対応して実行され前記ユニットの構成パターンに依存して決定するプログラムとを記憶し、
    前記共通インターフェースは、前記メソッドとして、少なくとも、前記ユニットに対して前記業務システムとしての動作を停止させる部分停止メソッドと、前記ユニットに対して前記業務システムとしての動作を再開させる部分再開メソッドとを有しており、
    前記演算処理手段は、所定システム装置に対して前記業務システムとしての動作を停止させて運用操作を行う場合に、前記ユニット構成情報を参照して特定した所定システム装置を含む前記ユニットに対して、前記部分停止メソッドを実行することにより前記業務システムとしての動作を停止させる第1のステップと、前記運用操作を行う第2のステップと、前記運用操作終了後に前記部分再開メソッドを実行することにより前記業務システムとしての動作を再開させる第3のステップとを実行することを特徴とする業務システムの運用方法。
  2. 前記業務システムは、外部通信装置からのアクセスを複数の前記ユニットに対して振り分ける負荷分散装置を含んで構成され、
    前記共通インターフェースは、前記メソッドとして、さらに、前記負荷分散装置に対して所定ユニットへのアクセスの振り分けを停止させる振分停止メソッドと、前記負荷分散装置に対して所定ユニットへのアクセスの振り分けを再開させる振分再開メソッドとを有し、
    前記演算処理手段は、所定システム装置に対して前記業務システムとしての動作を停止させて運用操作を行う場合に、前記ユニット構成情報を参照して特定した所定システム装置を含む前記ユニットに対して、前記第1のステップの前に、前記振分停止メソッドを実行することにより前記負荷分散装置に当該ユニットへのアクセスの振り分けを停止させる第4のステップを実行し、前記第3のステップの後に、前記振分再開メソッドを実行することにより前記負荷分散装置に当該ユニットへのアクセスの振り分けを再開させる第5のステップを実行することを特徴とする請求項1に記載の業務システムの運用方法。
  3. 前記共通インターフェースは、前記メソッドとして、さらに、前記ユニット内のシステム装置が前記業務システムの一部としてサービスを提供するために必要なサービス定義情報を前記ユニット構成情報に基づいて作成するサービス定義メソッドと、前記サービス定義情報に基づいて各システム装置においてサービスをセットアップするセットアップメソッドと、前記サービス定義情報から各システム装置に関するコンフィグレーションファイルを作成および配布する設定メソッドとを有し、
    前記演算処理手段は、前記業務システムの構築時に、前記ユニット構成情報を参照することで各ユニットに対してそれぞれ順番に、前記サービス定義メソッドを実行することにより前記サービス定義情報を作成する第6のステップと、前記セットアップメソッドを実行することにより各システム装置のセットアップを行う第7のステップと、前記設定メソッドを実行することにより各システム装置のコンフィグレーションファイルの作成および配布を行う第8のステップを実行することを特徴とする請求項1または請求項2に記載の業務システムの運用方法。
  4. 前記共通インターフェースは、前記メソッドとして、さらに、前記ユニット内のシステム装置のアプリケーションを入れ替えるアプリケーション入替メソッドを有し、
    前記演算処理手段は、所定システム装置に対する運用操作としてアプリケーションの入れ替えを行う場合に、前記ユニット構成情報を参照して特定した所定システム装置を含む前記ユニットに対して、前記第2のステップとして、前記アプリケーション入替メソッドを実行することにより所定システム装置に対してアプリケーションの入れ替えを行うことを特徴とする請求項1または請求項2に記載の業務システムの運用方法。
  5. 前記演算処理手段は、所定システム装置に対する運用操作として環境データであるパラメータの更新を行う場合に、前記ユニット構成情報を参照して特定した所定システム装置を含む前記ユニットに対して、前記第2のステップとして、予め変更されたパラメータを前記セットアップメソッドを実行することにより所定システム装置に反映させるステップと、前記設定メソッドを実行することにより所定システム装置のコンフィグレーションファイルの作成および配布を行うステップとを実行することを特徴とする請求項1または請求項2に記載の業務システムの運用方法。
  6. 複数のシステム装置を有する業務システムに対する運用管理システムであって、
    前記運用管理システムは、演算処理手段と記憶手段を有し、
    前記記憶手段は、前記複数のシステム装置を所定数毎にそれぞれユニットとして関連付けて定義したユニット構成情報と、前記ユニットの構成パターンに関係なく不変な構築運用操作の共通インターフェースを構成する複数のメソッドと、その各メソッドに対応して実行され前記ユニットの構成パターンに依存して決定するプログラムとを記憶し、
    前記共通インターフェースは、前記メソッドとして、少なくとも、前記ユニットに対して前記業務システムとしての動作を停止させる部分停止メソッドと、前記ユニットに対して前記業務システムとしての動作を再開させる部分再開メソッドとを有しており、
    前記演算処理手段は、所定システム装置に対して前記業務システムとしての動作を停止させて運用操作を行う場合に、前記ユニット構成情報を参照して特定した所定システム装置を含む前記ユニットに対して、前記部分停止メソッドを実行することにより前記業務システムとしての動作を停止させ、前記運用操作を行い、前記運用操作終了後に前記部分再開メソッドを実行することにより前記業務システムとしての動作を再開させることを特徴とする運用管理システム。
  7. 前記業務システムは、外部通信装置からのアクセスを複数の前記ユニットに対して振り分ける負荷分散装置を含んで構成され、
    前記共通インターフェースは、前記メソッドとして、さらに、前記負荷分散装置に対して所定ユニットへのアクセスの振り分けを停止させる振分停止メソッドと、前記負荷分散装置に対して所定ユニットへのアクセスの振り分けを再開させる振分再開メソッドとを有し、
    前記演算処理手段は、所定システム装置に対して前記業務システムとしての動作を停止させて運用操作を行う場合に、前記ユニット構成情報を参照して特定した所定システム装置を含む前記ユニットに対して、前記部分停止メソッドを実行することにより前記業務システムとしての動作を停止させる前に、前記振分停止メソッドを実行することにより前記負荷分散装置に当該ユニットへのアクセスの振り分けを停止させ、前記部分再開メソッドを実行することにより前記業務システムとしての動作を再開させた後に、前記振分再開メソッドを実行することにより前記負荷分散装置に当該ユニットへのアクセスの振り分けを再開させることを特徴とする請求項6に記載の運用管理システム。
  8. 前記共通インターフェースは、前記メソッドとして、さらに、前記ユニット内のシステム装置が前記業務システムの一部としてサービスを提供するために必要なサービス定義情報を前記ユニット構成情報に基づいて作成するサービス定義メソッドと、前記サービス定義情報に基づいて各システム装置においてサービスをセットアップするセットアップメソッドと、前記サービス定義情報から各システム装置に関するコンフィグレーションファイルを作成および配布する設定メソッドとを有し、
    前記演算処理手段は、前記業務システムの構築時に、前記ユニット構成情報を参照することで各ユニットに対してそれぞれ順番に、前記サービス定義メソッドを実行することにより前記サービス定義情報を作成し、前記セットアップメソッドを実行することにより各システム装置のセットアップを行い、前記設定メソッドを実行することにより各システム装置のコンフィグレーションファイルの作成および配布を行うことを特徴とする請求項6または請求項7に記載の運用管理システム。
  9. 前記共通インターフェースは、前記メソッドとして、さらに、前記ユニット内のシステム装置のアプリケーションを入れ替えるアプリケーション入替メソッドを有し、
    前記演算処理手段は、所定システム装置に対する運用操作としてアプリケーションの入れ替えを行う場合に、前記ユニット構成情報を参照して特定した所定システム装置を含む前記ユニットに対して、前記運用操作として、前記アプリケーション入替メソッドを実行することにより所定システム装置に対してアプリケーションの入れ替えを行うことを特徴とする請求項6または請求項7に記載の運用管理システム。
  10. 前記演算処理手段は、所定システム装置に対する運用操作として環境データであるパラメータの更新を行う場合に、前記ユニット構成情報を参照して特定した所定システム装置を含む前記ユニットに対して、前記運用操作として、予め変更されたパラメータを前記セットアップメソッドを実行することにより所定システム装置に反映させ、前記設定メソッドを実行することにより所定システム装置のコンフィグレーションファイルの作成および配布を行うことを特徴とする請求項6または請求項7に記載の運用管理システム。
  11. 請求項1から請求項5までのいずれか1項に記載の業務システムの運用方法をコンピュータに実行させることを特徴とする運用プログラム。
JP2004311959A 2004-10-27 2004-10-27 業務システムの運用方法、運用管理システムおよび運用プログラム Expired - Fee Related JP4167643B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004311959A JP4167643B2 (ja) 2004-10-27 2004-10-27 業務システムの運用方法、運用管理システムおよび運用プログラム
US11/070,886 US20060101059A1 (en) 2004-10-27 2005-03-03 Employment method, an employment management system and an employment program for business system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004311959A JP4167643B2 (ja) 2004-10-27 2004-10-27 業務システムの運用方法、運用管理システムおよび運用プログラム

Publications (2)

Publication Number Publication Date
JP2006127001A true JP2006127001A (ja) 2006-05-18
JP4167643B2 JP4167643B2 (ja) 2008-10-15

Family

ID=36317589

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004311959A Expired - Fee Related JP4167643B2 (ja) 2004-10-27 2004-10-27 業務システムの運用方法、運用管理システムおよび運用プログラム

Country Status (2)

Country Link
US (1) US20060101059A1 (ja)
JP (1) JP4167643B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008176759A (ja) * 2006-12-22 2008-07-31 Hitachi Ltd 運用整合性維持方法、システム及びプログラム
JP2015162061A (ja) * 2014-02-27 2015-09-07 日本電信電話株式会社 分散処理システム
CN105653359A (zh) * 2014-11-28 2016-06-08 金蝶软件(中国)有限公司 生成操作说明书的方法和应用系统

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8239505B2 (en) * 2007-06-29 2012-08-07 Microsoft Corporation Progressively implementing declarative models in distributed systems
US8230386B2 (en) 2007-08-23 2012-07-24 Microsoft Corporation Monitoring distributed applications
US8191084B1 (en) * 2007-09-28 2012-05-29 Emc Corporation Techniques for supporting application operation
US20090112932A1 (en) * 2007-10-26 2009-04-30 Microsoft Corporation Visualizing key performance indicators for model-based applications
US20090113292A1 (en) * 2007-10-26 2009-04-30 Microsoft Corporation Flexibly editing heterogeneous documents
US8099720B2 (en) 2007-10-26 2012-01-17 Microsoft Corporation Translating declarative models
US7974939B2 (en) * 2007-10-26 2011-07-05 Microsoft Corporation Processing model-based commands for distributed applications
US8654659B2 (en) * 2009-12-23 2014-02-18 Citrix Systems, Inc. Systems and methods for listening policies for virtual servers of appliance

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7093005B2 (en) * 2000-02-11 2006-08-15 Terraspring, Inc. Graphical editor for defining and creating a computer system
US7296268B2 (en) * 2000-12-18 2007-11-13 Microsoft Corporation Dynamic monitor and controller of availability of a load-balancing cluster
US20030005426A1 (en) * 2001-06-08 2003-01-02 Scholtens Dale A. Methods and apparatus for upgrading software without affecting system service
US6823382B2 (en) * 2001-08-20 2004-11-23 Altaworks Corporation Monitoring and control engine for multi-tiered service-level management of distributed web-application servers
US7350186B2 (en) * 2003-03-10 2008-03-25 International Business Machines Corporation Methods and apparatus for managing computing deployment in presence of variable workload
US8180864B2 (en) * 2004-05-21 2012-05-15 Oracle International Corporation System and method for scripting tool for server configuration
US7702779B1 (en) * 2004-06-30 2010-04-20 Symantec Operating Corporation System and method for metering of application services in utility computing environments

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008176759A (ja) * 2006-12-22 2008-07-31 Hitachi Ltd 運用整合性維持方法、システム及びプログラム
JP2015162061A (ja) * 2014-02-27 2015-09-07 日本電信電話株式会社 分散処理システム
CN105653359A (zh) * 2014-11-28 2016-06-08 金蝶软件(中国)有限公司 生成操作说明书的方法和应用系统

Also Published As

Publication number Publication date
JP4167643B2 (ja) 2008-10-15
US20060101059A1 (en) 2006-05-11

Similar Documents

Publication Publication Date Title
KR102628362B1 (ko) 컨테이너화된 환경에서 클러스터의 라이브 마이그레이션
JP7391862B2 (ja) 自動的に配備される情報技術(it)システム及び方法
US10042628B2 (en) Automated upgrade system for a service-based distributed computer system
US6772178B2 (en) Method and apparatus for managing remote data replication in a distributed computer system
US9442813B2 (en) Replaying jobs at a secondary location of a service
US8898620B2 (en) System and method for application process automation over a computer network
US8296267B2 (en) Upgrade of highly available farm server groups
JP5513997B2 (ja) 通信システムおよび通信システム更新方法
US7000235B2 (en) Method and apparatus for managing data services in a distributed computer system
US20060101059A1 (en) Employment method, an employment management system and an employment program for business system
EP2944070B1 (en) Service migration across cluster boundaries
US20070258388A1 (en) Virtual server cloning
WO2016183556A1 (en) Dynamic code loading
US20060259594A1 (en) Progressive deployment and maintenance of applications on a set of peer nodes
CN104040525B (zh) 通过网络连接访问覆盖介质
US20100058319A1 (en) Agile deployment of server
US7043738B2 (en) Method and apparatus for managing a data imaging system using CIM providers in a distributed computer system
US7054890B2 (en) Method and apparatus for managing data imaging in a distributed computer system
SG189899A1 (en) Machine manager service fabric
US20020191014A1 (en) Graphical user interfaces for software management in an automated provisioning environment
JP2022013831A (ja) データベースに基づく管理方法、プラットフォーム、電子デバイス及び記憶媒体
JP6993577B2 (ja) インタフェース変換プログラム、インタフェース変換方法および情報処理装置
US11630697B2 (en) System and method of dynamic context workflow automation
AU2021240195A1 (en) Data processing method, apparatus, system and device and computer-readable storage medium
KR102622170B1 (ko) Ai 모델 서빙 시스템 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060728

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080313

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080325

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080526

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080801

R150 Certificate of patent or registration of utility model

Ref document number: 4167643

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110808

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120808

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120808

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130808

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees