JP2016528621A - 関連プラグインの管理方法、装置およびシステム - Google Patents

関連プラグインの管理方法、装置およびシステム Download PDF

Info

Publication number
JP2016528621A
JP2016528621A JP2016530298A JP2016530298A JP2016528621A JP 2016528621 A JP2016528621 A JP 2016528621A JP 2016530298 A JP2016530298 A JP 2016530298A JP 2016530298 A JP2016530298 A JP 2016530298A JP 2016528621 A JP2016528621 A JP 2016528621A
Authority
JP
Japan
Prior art keywords
plug
related plug
component
information
management server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016530298A
Other languages
English (en)
Other versions
JP6217034B2 (ja
Inventor
▲僉▼ 王
▲僉▼ 王
志峰 李
志峰 李
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2016528621A publication Critical patent/JP2016528621A/ja
Application granted granted Critical
Publication of JP6217034B2 publication Critical patent/JP6217034B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer And Data Communications (AREA)

Abstract

本発明の実施形態は、関連プラグインの管理方法、装置、およびシステムを提供する。第1の関連プラグインおよび第1の関連プラグインを使用する第2のコンポーネントが、第1の関連プラグインの記述情報および関連プラグインを使用する第2のコンポーネントに関する情報を取得することによって決定され、ここで、第1の関連プラグインの記述情報および関連プラグインを使用する第2のコンポーネントに関する情報は、第1のコンポーネントによって提供され、次いで、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に基づいて、第1の関連プラグインは第2のコンポーネントが配置される装置にインストールされる。したがって、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立することができ、関連プラグインの、統一され自動化されたインストールが実行され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。

Description

本発明の実施形態は、ソフトウェア技術に関し、特に、関連プラグインの管理方法、装置およびシステムに関する。
アプリケーションは、サービスを提供するソフトウェアであり、コンポーネントは、アプリケーション内の特定機能を提供する部分であり、一般に選択的にインストールされ得る。関連プラグインは、別のコンポーネントによって画定された拡張インタフェースを介して、コンポーネントによって開発された機能モジュールである。関連プラグインを開発するコンポーネントは、関連プラグインのプロバイダと呼ばれ、拡張インタフェースを提供する別のコンポーネントは、関連プラグインのユーザと呼ばれている。一般的に、厳密なバージョンのマッチング関係が、関連プラグインと、関連プラグインのプロバイダと、関連プラグインのユーザとの間に存在し、任意に使用され得ず、そして、インストール、アップグレード、削除などの処理が、コンポーネントのインストール、アップグレードおよび削除に応じて関連プラグインのために必要とされる。
従来技術では、関連プラグインが手動または自動で配備されているかどうかに関係なく、関連プラグインの配備は、関係のあるコンポーネントの配備シーケンスに依存する。特に、複数のアプリケーションが統合されている状況では、密結合が、関係のあるコンポーネント間で必要とされる。
本発明の実施形態は、配備中に関連プラグインに関係のあるコンポーネントのデカップリングを実現させるために、関連プラグインの管理方法、装置およびシステムを提供する。
本発明の第1の態様は関連プラグインの管理方法を提供し、この方法は、
関連プラグインの管理サーバ装置によって、関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得するステップであって、第1の関連プラグインに関する情報は第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、第1の関連プラグインは第1のコンポーネントによって提供される、ステップと、
第2のコンポーネントに関する情報に従って第2のコンポーネントのインストールが完了したことを決定した後に、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、関連プラグインの管理サーバ装置によって、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップと
を含む
第1の態様を参照すると、第1の態様の第1の可能な実装方法では、第1の関連プラグインが、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納され、
この方法は、第1の関連プラグインが関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに同期されるように、関連プラグインの管理サーバ装置によって、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスおよび関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに対して同期を実行するステップをさらに含む。
第1の態様の第1の可能な実装方法を参照すると、第1の態様の第2の可能な実装方法では、関連プラグインの管理サーバ装置によって、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップが、
関連プラグインの管理サーバ装置によって、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスをポーリングするステップと、第1の関連プラグインが関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップとを含む。
第1の態様の第2の可能な実装方法を参照すると、第1の態様の第3の可能な実装方法では、この方法は、
関連プラグインの管理サーバ装置によって、第2のコンポーネントに関する情報および第1の関連プラグインが変わる場合の第1の関連プラグインの変更情報に従って、第1の関連プラグインに変更処理を実行するステップをさらに含み、ここで、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレード、または第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
第1の態様の第3の可能な実装方法を参照すると、第1の態様の第4の可能な実装方法では、第1の関連プラグインのための変更処理が、第2のコンポーネントが配置される装置上の第1の関連プラグインに対してアップグレードを実行するステップである場合、第1の関連プラグインの変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
第1の態様の第4の可能な実装方法を参照すると、第1の態様の第5の可能な実装方法では、この方法は、
関連プラグインの管理サーバ装置によって、第1の関連プラグインに対してアップグレードを実行した後に、第1の関連プラグインの変更情報を関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに格納するステップをさらに含み、変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
第1の態様の第4の可能な実装方法を参照すると、第1の態様の第6の可能な実装方法では、この方法は、
関連プラグインの管理サーバ装置によって、第1の関連プラグインに対してアップグレードを実行する前に、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに、第1の関連プラグインに対応するアップグレードパッケージを同期させるステップをさらに含む。
第1の態様の第3の可能な実装方法を参照すると、第1の態様の第7の可能な実装方法では、第1の関連プラグインのための変更処理が第1の関連プラグインを第2のコンポーネントが配置される装置から削除するステップである場合、第1の関連プラグインが第2のコンポーネントが配置される装置から削除された後に、前記方法は、
関連プラグインの管理サーバ装置によって、第1の関連プラグインを関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのリサイクルウェアハウスに移動させるステップ、および、第1の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスに移動させるために、関連プラグインのエージェント装置を制御するステップをさらに含む。
第1の態様の第1から第7の可能な実装方法のいずれか1つを参照すると、第1の態様の第8の可能な実装方法では、この方法は、
関連プラグインの管理サーバ装置によって、第2の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに同期させるステップであって、第2の関連プラグインは、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに存在するが、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに存在しない、ステップと、
関連プラグインの管理サーバ装置によって、第2の関連プラグインの記述情報および第2の関連プラグインを使用する第3のコンポーネントに関する情報に従って、第2の関連プラグインを第3のコンポーネントが配置される装置にインストールするステップと
をさらに含む。
第1の態様または第1の態様の第1から第8の可能な実装方法のいずれか1つを参照すると、第1の態様の第9の可能な実装方法では、第2のコンポーネントが配置される装置は関連プラグインのエージェント装置であり、
第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、関連プラグインの管理サーバ装置によって、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップが、
関連プラグインの管理サーバ装置によって、第2のコンポーネントに関する情報に従って、第2のコンポーネントが配置される装置が関連プラグインのエージェント装置であることを決定するステップと、第1の関連プラグインの記述情報に従って第1の関連プラグインを決定するステップと、第1の関連プラグインを関連プラグインのエージェント装置にインストールするように関連プラグインのエージェント装置に命令するために、関連プラグインの管理命令を関連プラグインのエージェント装置に送信するステップとを含む。
第1の態様または第1の態様の第1から第9の可能な実装方法のいずれか1つを参照すると、第1の態様の第10の可能な実装方法では、関連プラグインの管理サーバ装置によって、関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得するステップであって、第1の関連プラグインが第1のコンポーネントによって提供されるステップの後で、この方法は、
すべての関連プラグインに関する情報に対して集中管理を実行するために、関連プラグインの管理サーバ装置によって、第1の関連プラグインに関する情報を関連プラグインの管理サーバ装置の関連プラグインのレジストリに格納するステップをさらに含む。
第1の態様または第1の態様の第1から第10の可能な実装方法のいずれか1つを参照すると、第1の態様の第11の可能な実装方法では、関連プラグインの管理サーバ装置によって関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得するステップであって、第1の関連プラグインが第1のコンポーネントによって提供されるステップが、
関連プラグインのエージェント装置が、関連プラグインのエージェント装置上の関連プラグインのレジストリをクエリすることによって、第1のコンポーネントによって提供される第1の関連プラグインに関する情報を取得し、第1の関連プラグインに関する情報を返信するために、関連プラグインの管理サーバ装置によって関連プラグインのエージェント装置にクエリ要求を送信するステップと、
関連プラグインの管理サーバ装置によって、第1の関連プラグインに関する、関連プラグインのエージェント装置によって返信された情報を受信するステップであって、第1の関連プラグインが第1のコンポーネントによって提供されるステップと
を含む。
第1の態様または第1の態様の第1から第11の可能な実装方法のいずれか1つを参照すると、第1の態様の第12の可能な実装方法では、この方法は、
関連プラグインの管理サーバ装置によって、関連プラグインのエージェント装置を用いて、第1のコンポーネントに関する情報を取得するステップ、および第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインの管理サーバ装置にインストールするステップをさらに含む。
本発明の第2の態様が関連プラグインの管理方法を提供し、この方法は、
関連プラグインのエージェント装置によって、第1の関連プラグインに関する情報を取得するステップであって、第1の関連プラグインに関する情報は第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、第1の関連プラグインは第1のコンポーネントによって提供される、ステップと、
関連プラグインのエージェント装置によって、第1の関連プラグインに関する情報を関連プラグインの管理サーバ装置に提供するステップであって、このため関連プラグインの管理サーバ装置が、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールする、ステップと、
を含む。
第2の態様を参照すると、第2の態様の第1の可能な実装方法では、この方法は、
関連プラグインのエージェント装置によって、第1の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納するステップをさらに含む。
第2の態様または第2の態様の第1の可能な実装方法を参照すると、第2の態様の第2の可能な実装方法では、この方法は、
関連プラグインのエージェント装置によって、関連プラグインの管理サーバ装置によって送信された関連プラグインの管理命令を受信するステップであって、関連プラグインの管理命令は、第2のコンポーネントが配置される装置が関連プラグインのエージェント装置であることを決定し、第1の関連プラグインの記述情報に従って第1の関連プラグインを決定した後に、関連プラグインの管理サーバ装置によって送信され、関連プラグインのエージェント装置に第1の関連プラグインをインストールするために関連プラグインのエージェント装置を命令するために使用される、ステップと、
関連プラグインのエージェント装置によって、関連プラグインの管理命令の命令に従って第1の関連プラグインを決定し、決定された第1の関連プラグインを関連プラグインのエージェント装置にインストールするステップと
をさらに含む。
第2の態様の第1または第2の可能な実装方法を参照すると、第2の態様の第3の可能な実装方法では、この方法は、
第2のコンポーネントが配置される装置上の第1の関連プラグインがアップグレードされる必要がある場合、関連プラグインのエージェント装置によって、第1の関連プラグインのアップグレードパッケージを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納するステップをさらに含み、このため、関連プラグインの管理サーバ装置は、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに第1の関連プラグインのアップグレードパッケージを同期した後に、第1の関連プラグインに対してアップグレード処理を実行する。
第2の態様の第1または第2の可能な実装方法を参照すると、第2の態様の第4の可能な実装方法では、第1の関連プラグインが第2のコンポーネントが配置される装置から削除された後に、この方法は、
関連プラグインのエージェント装置によって、関連プラグインの管理サーバ装置の制御下で、第1の関連プラグインを、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスに移動させるステップをさらに含む。
第2の態様または第2の態様の第1から第4の可能な実装方法のいずれか1つを参照すると、第2の態様の第5の可能な実装方法では、この方法は、
関連プラグインのエージェント装置によって、第1のコンポーネントに関する情報を取得するステップ、および第1のコンポーネントに関する情報を関連プラグインの管理サーバ装置に提供するステップであって、このため関連プラグインの管理サーバ装置は、第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインの管理サーバ装置にインストールする、ステップをさらに含む。
第2の態様または第2の態様の第1から第4の可能な実装方法のいずれか1つを参照すると、第2の態様の第6の可能な実装方法では、この方法は、
関連プラグインのエージェント装置によって、第1のコンポーネントに関する情報を取得するステップ、および第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインのエージェント装置にインストールするステップをさらに含む。
本発明の第3の態様は関連プラグインの管理方法を提供し、この方法は、
ローカルに提供された登録インタフェースを用いて第1の関連プラグインに関する情報を取得するステップであって、第1の関連プラグインは第1のコンポーネントによって提供され、第1の関連プラグインに関する情報は、第1のコンポーネントが登録インタフェースを用いて登録されるときに提供され、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含む、ステップと、
第2のコンポーネントに関する情報に従って第2のコンポーネントのインストールが完了したことを決定した後に、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップであって、第1のコンポーネントおよび第2のコンポーネントが同じ装置にインストールされるステップと
を含む
第3の態様を参照すると、第3の態様の第1の可能な実装方法では、この方法は、
すべての関連プラグインに集中管理を実行するために、関連プラグインのウェアハウスに第1の関連プラグインを格納するステップと、
すべての関連プラグインに関する情報に集中管理を実行するために、関連プラグインのレジストリに第1の関連プラグインに関する情報を格納するステップと
をさらに含む。
第3の態様の第1の可能な実装方法を参照すると、第3の態様の第2の可能な実装方法では、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップが、
関連プラグインのウェアハウスをポーリングするステップと、第1の関連プラグインが関連プラグインのウェアハウスに追加されたことが発見されたときに、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップとを含む。
第3の態様の第2の可能な実装方法を参照すると、第3の態様の第3の可能な実装方法では、この方法は、
第2のコンポーネントに関する情報および第1の関連プラグインが変わる場合の第1の関連プラグインの変更情報に従って、第1の関連プラグインに変更処理を実行するステップをさらに含み、ここで、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレード、または第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
第3の態様の第3の可能な実装方法を参照すると、第3の態様の第4の可能な実装方法では、第1の関連プラグインのための変更処理が、第2のコンポーネントが配置される装置上の第1の関連プラグインに対してアップグレードを実行するステップである場合、第1の関連プラグインの変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含み、
この方法は、第1の関連プラグインに対してアップグレードを実行した後に、第1の関連プラグインの変更情報を関連プラグインのウェアハウスに格納するステップをさらに含み、ここで、変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
第3の態様または第3の態様の第1から第4の可能な実装方法のいずれか1つを参照すると、第3の態様の第5の可能な実装方法では、この方法は、
登録インタフェースを用いて第1のコンポーネントに関する情報を取得するステップであって、第1のコンポーネントに関する情報は、第1のコンポーネントが登録インタフェースを用いて登録されるときに提供されるステップと、第1のコンポーネントに関する情報に従って、第1のコンポーネントを第2のコンポーネントが配置される装置にインストールするステップと、をさらに含む。
本発明の第4の態様は関連プラグインの管理サーバ装置を提供し、この装置は、
関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得するように構成された取得モジュールであって、第1の関連プラグインに関する情報は第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、第1の関連プラグインは第1のコンポーネントによって提供される取得モジュールと、
第2のコンポーネントに関する情報に従って第2のコンポーネントのインストールが完了したことを決定した後に、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするように構成されたインストールモジュールと、
を含む
第4の態様を参照すると、第4の態様の第1の可能な実装方法では、この装置は、
関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに第1の関連プラグインを同期させるために、第1の関連プラグインが関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納されるときに、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスおよび関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに対して同期を実行するように構成された同期モジュールをさらに含む。
第4の態様の第1の可能な実装方法を参照すると、第4の態様の第2の可能な実装方法では、インストールモジュールは、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスをポーリングし、第1の関連プラグインが関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするように特定して構成されている。
第4の態様の第2の可能な実装方法を参照すると、第4の態様の第3の可能な実装方法では、この装置は、
第2のコンポーネントに関する情報および第1の関連プラグインが変わる場合の第1の関連プラグインの変更情報に従って、第1の関連プラグインに変更処理を実行するように構成された変更処理モジュールをさらに含み、ここで、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレード、または第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
第4の態様の第3の可能な実装方法を参照すると、第4の態様の第4の可能な実装方法では、第1の関連プラグインのための変更処理が、第2のコンポーネントが配置される装置上の第1の関連プラグインに対してアップグレードを実行するステップである場合、変更処理モジュールは、第1の関連プラグインの変更情報を出力するようにさらに構成され、ここで、第1の関連プラグインの変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
第4の態様の第4の可能な実装方法を参照すると、第4の態様の第5の可能な実装方法では、変更処理モジュールは、第1の関連プラグインに対してアップグレードを実行した後に、第1の関連プラグインの変更情報を関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに格納するようにさらに構成され、ここで、変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
第4の態様の第4の可能な実装方法を参照すると、第4の態様の第6の可能な実装方法では、同期モジュールは、変更処理モジュールが第1の関連プラグインに対してアップグレードを実行する前に、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに、第1の関連プラグインに対応するアップグレードパッケージを同期させるようにさらに構成されている。
第4の態様の第3の可能な実装方法を参照すると、第4の態様の第7の可能な実装方法では、この装置は、
第1の関連プラグインのための変更処理が第1の関連プラグインを第2のコンポーネントが配置される装置から削除するステップである場合、変更処理モジュールが第1の関連プラグインを第2のコンポーネントが配置される装置から削除した後に、第1の関連プラグインを関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのリサイクルウェアハウスに移動させ、そして、第1の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスに移動させるために、関連プラグインのエージェント装置を制御するように構成された除去モジュールをさらに含む。
第4の態様の第1から第7の可能な実装方法のいずれか1つを参照すると、第4の態様の第8の可能な実装方法では、同期モジュールは、第2の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに同期させるようにさらに構成され、ここで、第2の関連プラグインは、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに存在するが、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに存在せず、
インストールモジュールは、第2の関連プラグインの記述情報および第2の関連プラグインを使用する第3のコンポーネントに関する情報に従って、第2の関連プラグインを第3のコンポーネントが配置される装置にインストールするようにさらに構成されている。
第4の態様または第4の態様の第1から第8の可能な実装方法のいずれか1つを参照すると、第4の態様の第9の可能な実装方法では、第2のコンポーネントが配置される装置は関連プラグインのエージェント装置であり、
インストールモジュールは、第2のコンポーネントに関する情報に従って、第2のコンポーネントが配置される装置が関連プラグインのエージェント装置であると決定し、第1の関連プラグインの記述情報に従って、第1の関連プラグインを決定し、第1の関連プラグインを関連プラグインのエージェント装置にインストールするように、関連プラグインのエージェント装置に命令するために、関連プラグインの管理命令を関連プラグインのエージェント装置に送信するように特定して構成されている。
第4の態様または第4の態様の第1から第9の可能な実装方法のいずれか1つを参照すると、第4の態様の第10の可能な実装方法では、この装置は、
関連プラグインのレジストリを格納するように構成された格納モジュールをさらに含み、ここで、関連プラグインの管理サーバ装置がすべての関連プラグインに関する情報に対して集中管理を実行するために、関連プラグインのレジストリは、第1の関連プラグインに関する情報を記録する。
第4の態様または第4の態様の第1から第10の可能な実装方法のいずれか1つを参照すると、第4の態様の第11の可能な実装方法では、取得モジュールは、関連プラグインのエージェント装置にクエリ要求を送信し、第1の関連プラグインに関する情報を受信するように特定して構成され、ここで、第1のコンポーネントによって提供される第1の関連プラグインに関する情報は、クエリ要求に応答して関連プラグインのエージェント装置によって返信され、第1のコンポーネントによって提供される第1の関連プラグインに関する情報は、関連プラグインのエージェント装置上の関連プラグインのレジストリをクエリすることによって、関連プラグインのエージェント装置によって取得され、そして返信される。
第4の態様または第4の態様の第1から第11の可能な実装方法のいずれか1つを参照すると、第4の態様の第12の可能な実装方法では、取得モジュールは、関連プラグインのエージェント装置を用いて、第1のコンポーネントに関する情報を取得するようにさらに構成され、
インストールモジュールは、第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインの管理サーバ装置にインストールするようにさらに構成されている。
本発明の第5の態様が関連プラグインのエージェント装置を提供し、この装置は、
第1の関連プラグインに関する情報を取得するように構成された取得モジュールであって、第1の関連プラグインに関する情報は第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、第1の関連プラグインは第1のコンポーネントによって提供される、取得モジュールと、
第1の関連プラグインに関する情報を関連プラグインの管理サーバ装置に提供し、このため関連プラグインの管理サーバ装置が、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするように構成された提供モジュールと
を含む
第5の態様を参照すると、第5の態様の第1の可能な実装方法では、この装置は、
第1の関連プラグインを格納するように構成された第1の格納モジュールをさらに含み、ここで、第1の格納モジュールは、関連プラグインのエージェント装置のローカルの関連プラグインのウェアハウスとして使用される。
第4の態様または第4の態様の第1の可能な実装方法を参照すると、第4の態様の第2の可能な実装方法では、この装置は、
関連プラグインの管理サーバ装置によって送信された関連プラグインの管理命令を受信するように構成された受信モジュールであって、関連プラグインの管理命令は、第2のコンポーネントが配置される装置が関連プラグインのエージェント装置であることを決定し、第1の関連プラグインの記述情報に従って第1の関連プラグインを決定した後に、関連プラグインの管理サーバ装置によって送信され、関連プラグインのエージェント装置に第1の関連プラグインをインストールするために関連プラグインのエージェント装置を命令するために使用される受信モジュールと、
関連プラグインの管理命令の命令で示されるように第1の関連プラグインを決定し、決定された第1の関連プラグインを関連プラグインのエージェント装置にインストールするように構成された第1のインストールモジュールと
をさらに含む。
第4の態様の第1または第2の可能な実装方法を参照すると、第4の態様の第3の可能な実装方法では、第1の格納モジュールは、第1の関連プラグインのアップグレードパッケージを格納するようにさらに構成され、このため、関連プラグインの管理サーバ装置は、第2のコンポーネントが配置される装置上の第1の関連プラグインがアップグレードを必要とするときに、第1の関連プラグインの格納されたアップグレードパッケージに従って、第1の関連プラグインにアップグレード処理を実行する。
第4の態様の第1または第2の可能な実装方法を参照すると、第4の態様の第4の可能な実装方法では、この装置は、
第1の関連プラグインが第2のコンポーネントが配置される装置から削除された後に、関連プラグインの管理サーバ装置の制御下で、第1の関連プラグインを、第1の格納モジュールから関連プラグインのエージェント装置上の第2の格納モジュールに移動させるように構成された除去モジュールと、
第1の格納モジュールから移動された第1の関連プラグインを格納するように構成された第2の格納モジュールであって、第2の格納モジュールは、関連プラグインのエージェント装置のローカルの関連プラグインのリサイクルウェアハウスとして使用される、第2の格納モジュールと
をさらに含む。
第4の態様または第4の態様の第1から第4の可能な実装方法のいずれか1つを参照すると、第4の態様の第5の可能な実装方法では、取得モジュールが、第1のコンポーネントに関する情報を取得するようにさらに構成され、
提供モジュールが、第1のコンポーネントに関する情報を関連プラグインの管理サーバ装置に提供し、このため関連プラグインの管理サーバ装置が、第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインの管理サーバ装置にインストールするようにさらに構成されている。
第4の態様または第4の態様の第1から第4の可能な実装方法のいずれか1つを参照すると、第4の態様の第6の可能な実装方法では、取得モジュールは、第1のコンポーネントに関する情報を取得するようにさらに構成され、
第2のインストールモジュールは、第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインのエージェント装置にインストールするように構成されている。
本発明の第5の態様は関連プラグインの管理装置を提供し、この装置は、
ローカルに提供された登録インタフェースを用いて第1の関連プラグインに関する情報を取得するように構成された取得モジュールであって、第1の関連プラグインは第1のコンポーネントによって提供され、第1の関連プラグインに関する情報は、第1のコンポーネントが登録インタフェースを用いて登録されるときに提供され、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含む、取得モジュールと、
第2のコンポーネントに関する情報に従って第2のコンポーネントのインストールが完了したことを決定した後に、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするように構成されたインストールモジュールであって、第1のコンポーネントおよび第2のコンポーネントが同じ装置にインストールされている、インストールモジュールと
を含む
第5の態様を参照すると、第5の態様の第1の可能な実装方法では、この装置は、
関連プラグインの管理装置がすべての関連プラグインに対して集中管理を実行するために、第1の関連プラグインを格納するように構成された第3の格納モジュールであって、第3の格納モジュールは、関連プラグインの管理装置の関連プラグインのウェアハウスとして使用される、第3の格納モジュールと、
関連プラグインのレジストリを格納するように構成された第4の格納モジュールであって、関連プラグインの管理装置がすべての関連プラグインに関する情報に対して集中管理を実行するために、第1のコンポーネントによって提供される第1の関連プラグインに関する情報は、関連プラグインのレジストリに記録される、第4の格納モジュールと
をさらに含む。
第5の態様の第1の可能な実装方法を参照すると、第5の態様の第2の可能な実装方法では、インストールモジュールは、第3の格納モジュールをポーリングし、第1の関連プラグインが第3の格納モジュールに追加されたことが発見されたときに、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするように特定して構成されている。
第5の態様の第2の可能な実装方法を参照すると、第5の態様の第3の可能な実装方法では、この装置は、
第2のコンポーネントに関する情報および第1の関連プラグインが変わる場合の第1の関連プラグインの変更情報に従って、第1の関連プラグインに変更処理を実行するように構成された変更処理モジュールをさらに含み、ここで、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレード、または第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
第5の態様の第3の可能な実装方法を参照すると、第5の態様の第4の可能な実装方法では、第1の関連プラグインのための変更処理が、第2のコンポーネントが配置される装置上の第1の関連プラグインに対してアップグレードを実行するステップである場合、変更処理モジュールは、第1の関連プラグインの変更情報を出力するようにさらに構成され、ここで、第1の関連プラグインの変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含み、
第3の格納モジュールは、第1の関連プラグインの変更情報を格納するようにさらに構成され、ここで、変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
第5の態様または第5の態様の第1から第4の可能な実装方法のいずれか1つを参照すると、第5の態様の第5の可能な実装方法では、取得モジュールは、登録インタフェースを用いて第1のコンポーネントに関する情報を取得するようにさらに構成され、ここで、第1のコンポーネントに関する情報は、第1のコンポーネントが登録インタフェースを用いて登録されるときに提供され、
インストールモジュールは、第1のコンポーネントに関する情報に従って、第1のコンポーネントを第2のコンポーネントが配置される装置にインストールするようにさらに構成されている。
本発明の第6の態様はマスタサーバを提供し、マスタサーバは、少なくとも1つのスレーブサーバに通信可能に接続され、少なくとも1つのコンポーネントがマスタサーバとスレーブサーバのそれぞれに配備され、第1のコンポーネントおよび第2のコンポーネントが、マスタサーバとスレーブサーバに配備されたすべてのコンポーネントに含まれ、第1の関連プラグインが、第1のコンポーネントと第2のコンポーネントとの間に存在し、マスタサーバは、関連プラグインの管理サーバをさらに含み、関連プラグインの管理サーバは上述の関連プラグインの管理サーバ装置である。
本発明の第7の態様はスレーブサーバを提供し、このスレーブサーバは、1つのマスタサーバに通信可能に接続され、少なくとも1つのコンポーネントがスレーブサーバとマスタサーバのそれぞれに配備され、第1のコンポーネントおよび第2のコンポーネントが、スレーブサーバとマスタサーバに配備されたすべてのコンポーネントに含まれ、第1の関連プラグインが、第1のコンポーネントと第2のコンポーネントとの間に存在し、スレーブサーバは、関連プラグインのエージェントをさらに含み、関連プラグインのエージェントは上述の関連プラグインのエージェント装置である。
本発明の第8の態様はサーバを提供し、少なくとも2つのコンポーネントがサーバに配備され、少なくとも2つのコンポーネントは第1のコンポーネントおよび第2のコンポーネントを含み、第1の関連プラグインは、第1のコンポーネントと第2のコンポーネントとの間に存在し、サーバは、関連プラグインのマネージャをさらに含み、関連プラグインのマネージャは、上述の関連プラグインの管理装置である。
本発明の第9の態様は関連プラグインの管理サーバ装置および少なくとも1つの関連プラグインのエージェント装置を含む関連プラグインの管理システムを提供し、
関連プラグインの管理サーバ装置は、関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得し、第1の関連プラグインに関する情報は第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、第1の関連プラグインは第1のコンポーネントによって提供され、;第2のコンポーネントに関する情報に従って第2のコンポーネントのインストールが完了したことを決定した後に、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするように構成され、
関連プラグインのエージェント装置は、第1のコンポーネントによって提供される第1の関連プラグインに関する情報を取得し、関連プラグインの管理サーバ装置に第1の関連プラグインに関する情報を提供するように構成されている。
第9の態様を参照すると、第9の態様の第1の可能な実装方法では、関連プラグインのエージェント装置は、第1の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納するようにさらに構成され、
第1の関連プラグインを、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに同期させるために、関連プラグインの管理サーバ装置は、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスと関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスとの間で同期を実行するようにさらに構成されている。
第9の態様の第1の可能な実装方法を参照すると、第9の態様の第2の可能な実装方法では、関連プラグインの管理サーバ装置は、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスをポーリングし、第1の関連プラグインが関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするように特定して構成されている。
第9の態様の第2の可能な実装方法を参照すると、第9の態様の第3の可能な実装方法では、関連プラグインの管理サーバ装置は、第2のコンポーネントに関する情報および第1の関連プラグインが変わる場合の第1の関連プラグインの変更情報に従って、第1の関連プラグインに変更処理を実行するようにさらに構成され、ここで、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレード、または第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
第9の態様の第3の可能な実装方法を参照すると、第9の態様の第4の可能な実装方法では、第1の関連プラグインのための変更処理が、第2のコンポーネントが配置される装置上の第1の関連プラグインに対してアップグレードを実行するステップである場合、第1の関連プラグインの変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
第9の態様の第4の可能な実装方法を参照すると、第9の態様の第5の可能な実装方法では、関連プラグインの管理サーバ装置は、第1の関連プラグインに対してアップグレードを実行した後に、第1の関連プラグインの変更情報を関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに格納するようにさらに構成され、変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
第9の態様の第4の可能な実装方法を参照すると、第9の態様の第6の可能な実装方法では、関連プラグインのエージェント装置は、関連プラグインの管理サーバ装置が第1の関連プラグインに対してアップグレード処理を実行する前に、第1の関連プラグインに対応するアップグレードパッケージを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納するようにさらに構成され、
関連プラグインの管理サーバ装置は、第1の関連プラグインをアップグレードする前に、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに、第1の関連プラグインに対応するアップグレードパッケージを同期させるようにさらに構成されている。
第9の態様の第3の可能な実装方法を参照すると、第9の態様の第7の可能な実装方法では、関連プラグインの管理サーバ装置は、第1の関連プラグインのための変更処理が第1の関連プラグインを第2のコンポーネントが配置される装置から削除するステップである場合、第1の関連プラグインが第2のコンポーネントが配置される装置から削除された後に、第1の関連プラグインを関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのリサイクルウェアハウスに移動させ、そして、第1の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスに移動させるために、関連プラグインのエージェント装置を制御するようにさらに構成されている。
第9の態様または第9の態様の第1から第7の可能な実装方法を参照すると、第9の態様の第8の可能な実装方法では、関連プラグインのエージェント装置は、第1のコンポーネントに関する情報を取得し、第1のコンポーネントに関する情報を関連プラグインのエージェント装置に提供するようにさらに構成され、
関連プラグインのエージェント装置は、第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインの管理サーバ装置にインストールするようにさらに構成されている。
第9の態様または第9の態様の第1から第7の可能な実装方法を参照すると、第9の態様の第9の可能な実装方法では、関連プラグインのエージェント装置は、第1のコンポーネントに関する情報を取得し、第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインのエージェント装置にインストールするようにさらに構成されている。
本発明の第10の態様はマスタサーバおよび少なくとも1つのスレーブサーバを含む分散システムを提供し、少なくとも1つのコンポーネントがマスタサーバとスレーブサーバのそれぞれに配備され、第1のコンポーネントおよび第2のコンポーネントが、マスタサーバとスレーブサーバに配備されたすべてのコンポーネントに含まれ、第1の関連プラグインが、第1のコンポーネントと第2のコンポーネントとの間に存在し、
マスタサーバは、関連プラグインの管理サーバをさらに含み、関連プラグインの管理サーバは上述の関連プラグインの管理サーバ装置であり、
スレーブサーバは、関連プラグインのエージェントをさらに含み、関連プラグインのエージェントは上述の関連プラグインのエージェント装置である。
関連プラグインの管理方法に従って、本発明の実施形態では装置およびシステムが提供され、第1の関連プラグインおよび第1の関連プラグインを使用する第2のコンポーネントが、第1の関連プラグインの記述情報および第2のコンポーネントに関する情報を取得することによって決定され、ここで、第1の関連プラグインの記述情報および関連プラグインを使用する第2のコンポーネントに関する情報は、第1のコンポーネントによって提供され、次いで、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に基づき、第2のコンポーネントが配置される装置に第1の関連プラグインがインストールされる。本発明の本実施形態では、関連プラグインの記述情報および関連プラグインを使用するコンポーネントに関する情報を取得するステップに基づいて、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立することができ、関連プラグインの、統一され自動化されたインストールが実行され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、コンポーネントが配備されるときに、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
より明確に本発明の実施形態または従来技術における技術的解決策を説明するために、本実施形態または従来技術を説明するために必要な添付の図面を以下に簡単に紹介する。明らかに、以下の説明において添付の図面は、本発明のいくつかの実施形態を示し、当業者は、創造的な取り組みをすることなく、これらの添付図面から他の図面をさらに導き出すことが可能である。
本発明の実施形態に係る関連プラグインの管理方法のフローチャートである。 本発明の実施形態に係る別の関連プラグインの管理方法のフローチャートである。 本発明の実施形態に係るさらに別の関連プラグインの管理方法のフローチャートである。 本発明の実施形態に係るさらに別の関連プラグインの管理方法のフローチャートである。 本発明の実施形態に係るさらに別の関連プラグインの管理方法のフローチャートである。 本発明の実施形態に係るさらに別の関連プラグインの管理方法のフローチャートである。 本発明の実施形態に係る関連プラグインの管理サーバ装置の概略構成図である。 本発明の実施形態に係る別の関連プラグインの管理サーバ装置の概略構成図である。 本発明の実施形態に係るマスタサーバの概略構成図である。 本発明の実施形態に係る別のマスタサーバの概略構成図である。 本発明の実施形態に係る関連プラグインのエージェント装置の概略構成図である。 本発明の実施形態に係る別の関連プラグインのエージェント装置の概略構成図である。 本発明の実施形態に係るスレーブサーバの概略構成図である。 本発明の実施形態に係る別のスレーブサーバの概略構成図である。 本発明の実施形態に係る関連プラグインの管理装置の概略構成図である。 本発明の実施形態に係る別の関連プラグインの管理装置の概略構成図である。 本発明の実施形態に係るサーバの概略構成図である。 本発明の実施形態に係る別のサーバの概略構成図である。 本発明の実施形態に係る関連プラグインの管理システムの概略構成図である。 本発明の実施形態に係る分散システムの概略構成図である。 本発明の実施形態に係る別の分散システムの概略構成図である。
本発明の実施形態の目的、技術的解決策、および利点をより明確にするために、本夏名の実施形態における技術的解決策を、本発明の実施形態における添付の図面を参照して、より明確かつ完全に以下に説明する。明らかに、説明される実施形態は、本発明の実施形態のすべてではなく、一部である。創造的な取り組みをすることなく、本発明の実施形態に基づいて当業者によって得られる他のすべての実施形態は、本発明の保護範囲内に入るものとする。
本発明の実施形態の理解を容易にするために、本発明の実施形態を説明する際に導入され得るいくつかの要素が、最初に、本明細書中に記載されている:
アプリケーション:特定のサービスを提供するソフトウェアである、アプリケーションプログラム;
コンポーネント:アプリケーション内の特定の特殊機能を提供する部分であり、一般に、コンポーネントを選択的にインストールすることができ、コンポーネントを1つのサーバに配備するか、または分散式に異なるサーバに配備することができ、また、サービスコンポーネントと呼ぶことができる;
関連プラグイン:コンポーネントAによって画定された拡張インタフェースを介してコンポーネントBによって開発されたモジュールであって、コンポーネントAは、コンポーネントBによって提供された関連プラグインA’を利用することによって、コンポーネントBとデータ交換をし、一般に、厳密なバージョンのマッチング関係が、関連プラグインA’と、コンポーネントAと、コンポーネントBとの間に存在し、任意に使用され得ず、コンポーネントAは関連プラグインA’のユーザとして定義され、コンポーネントBは関連プラグインA’のプロバイダとして定義されている;および、
関連プラグインの同期:コンポーネントのインストール、アップグレード、および削除の状況に応じて関連プラグインのインストール、アップグレード、および削除を実行する。
図1は、本発明の実施形態に係る関連プラグインの管理方法のフローチャートである。図1に示すように、方法は以下を含んでいる。
101.関連プラグインの管理サーバ装置は、関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得し、第1の関連プラグインに関する情報は、第1の関連プラグインの記述情報と第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、第1の関連プラグインは第1のコンポーネントによって提供される。
102.第2のコンポーネントに関する情報に従って、第2のコンポーネントのインストールが完了したことが決定された後、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、関連プラグインの管理サーバ装置が、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールする。
従来技術における関連プラグインに関連のあるコンポーネントの配備中の、相互依存と密結合の問題を解決するために、関連プラグインの管理方法が、本発明の実施形態において提供される。この実施形態で提供される関連プラグインの管理方法は、関連プラグインの管理サーバ装置と関連プラグインのエージェント装置を主に含み、コンポーネントの分散配備のアプリケーションシナリオに適用可能である。コンポーネントの分散配備のアプリケーションシナリオは、同じアプリケーションシステムにおけるコンポーネントの分散配備であってもよく、または異なるアプリケーションシステムにおけるコンポーネントの分散配備であってよく、ここで、アプリケーションシステムは、警報システム、ネットワークトポロジシステム、セキュリティサブシステムなどであってもよい。関連プラグインの管理サーバ装置は、関連プラグインの管理を主に実行し、これには、関連プラグインのインストール、アップグレード、削除、分散などが主に含まれる。コンポーネントによって提供される関連ブラグインに関する情報を有する関連プラグインの管理サーバ装置を提供するために、関連プラグインのエージェント装置は、コンポーネントの登録などを主に担当する。
実際のアプリケーションでは、関連プラグインのエージェント装置は、コンポーネントによって提供された関連プラグインに関する情報を取得することができる。コンポーネントによって提供される関連プラグインに関する情報を、関連ブラグインによって取得する実装方法は、以下の方法を含むが、これに限定されるものではない。
例えば、各コンポーネントがインストールされる場合、インストールされるコンポーネントは、関連プラグインの潜在的なユーザの登録を実行すること、およびコンポーネント自体に関する情報を提供することを必要とし、インストールされるコンポーネントを登録するために提供される情報は、インストールされるコンポーネントのタイプ、インストールされるコンポーネントのバージョンなどを含むが、これに限定されるものではない。インストールされるコンポーネントのタイプは必須情報であり、インストールされるコンポーネントの名前、コンポーネントの位置、コンポーネントの特徴などから形成されてもよく、インストールされるコンポーネントが関連プラグインのユーザまたはプロバイダであるかどうかを示すことができる。
また、インストールされるコンポーネントが関連プラグインのプロバイダである場合、登録時に、インストールされるコンポーネントに関する情報だけでなく、関連ブラグインに関する情報も提供される必要がある。関連ブラグインに関する情報は、関連プラグインの記述情報および関連プラグインのユーザ(すなわち、関連プラグインを使用するコンポーネント)に関する情報を含むが、これに限定されるものではない。例えば、登録時にインストールされるコンポーネントによって提供される関連プラグインに関する情報は、関連プラグインに関するバージョン互換性情報、関連プラグインのユーザに関するバージョン互換性情報などをさらに含むことができる。
インストールされるコンポーネントが関連プラグインに関する情報を登録の方法で提供するだけでなく、インストールされたコンポーネントまたはその時点でインストールされる必要のないコンポーネントが、コンポーネント自体によって提供される関連プラグインに関する情報を、登録の方法で提供してもよい。
さらに、関連プラグインのエージェント装置は、各コンポーネントによって提供された関連プラグインに関する情報を、登録とは別の方法で取得することもできる。例えば、管理者またはオペレータが、各コンポーネントによって提供される関連プラグインに関する情報を、関連プラグインのエージェント装置に予め初期設定する。
本実施形態では、説明を簡単にするために、関連プラグインを提供するコンポーネントは、第1のコンポーネントと呼ばれ、第1のコンポーネントによって提供される関連プラグインは、第1の関連プラグインと呼ばれ、第1の関連プラグインのユーザは、第2のコンポーネントと呼ばれている。本実施形態に関与する第1のコンポーネントは、インストールされるコンポーネント、インストールされたコンポーネント、またはその時点でインストールされる必要のないコンポーネントであってもよいが、これに限定されるものではないことが、明記されている。
例えば、第1のコンポーネントがインストールされるコンポーネントであると仮定すると、第1のコンポーネントは、本実施形態で述べた関連プラグインのエージェント装置に登録し、第1のコンポーネントによって提供される第1の関連プラグインに関する情報を提供することができる。このように、関連プラグインのエージェント装置は、第1のコンポーネントによって提供された第1の関連プラグインに関する情報を学習することができる。第1のコンポーネントがインストールされるコンポーネントである場合、どの特定の装置に第1のコンポーネントがインストールされるかは、本実施形態では限定されないことが、明記されている。例えば、第1のコンポーネントは、関連プラグインの管理サーバ装置にインストールされてもよいし、関連プラグインのエージェント装置にインストールされてもよいし、または関連プラグインの管理サーバ装置や関連プラグインのエージェント装置とは別の装置にインストールされてもよい。本発明の実施形態は、第1のコンポーネントが関連プラグインの管理サーバ装置または関連プラグインのエージェント装置にインストールされる状況に焦点を当てたものであり、その具体的なプロセスは後述される。
任意の実装方法では、関連プラグインのエージェント装置は、関連プラグインに関する情報を格納するために、関連プラグインのレジストリをローカルに提供する。これに基づいて、特定の実装方法のステップ101は、関連プラグインの管理サーバ装置によってクエリ要求を関連プラグインのエージェント装置に送ることができるため、関連プラグインのエージェント装置は、関連プラグインのエージェント装置に関連プラグインのレジストリをクエリすることによって第1のコンポーネントによって提供される第1の関連プラグインに関する情報を取得し、第1の関連プラグインに関する情報を戻すこと、および、第1のプラグインが第1のコンポーネントによって提供されている場合に、関連プラグインの管理サーバ装置によって、第1のプラグインに関する、関連プラグインのエージェント装置によって戻された情報を受信することを含む。
第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を取得後、そして、第2のコンポーネントに関する情報に従って、第2のコンポーネントのインストールが完了したことが決定された後、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、関連プラグインの管理サーバ装置が、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールする。
本実施形態では、関連プラグインの管理サーバ装置は、関連プラグインのエージェント装置を用いて、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を取得することができ、ここで、第1の関連プラグインの記述情報および第2のコンポーネントに関する情報は、第1のコンポーネントによって提供され、次いで、取得した情報に基づいて、第2のコンポーネントによって使用される第1の関連プラグインのインストールの処理を別々に実行することができる。このように、第2のコンポーネントのインストールは、第2のコンポーネントによって使用される第1の関連プラグインのインストールから独立しており、関連プラグインに関係のあるコンポーネントの配備中の疎結合が実現される。
任意の実装方法では、ストレージ管理が、関連プラグインのウェアハウスを用いて関連プラグインで実行される。関連プラグインのウェアハウスは、関連プラグインのエージェント装置側に設定されるローカルの関連プラグインのウェアハウス、および関連プラグインの管理サーバ装置側に設定される中央の関連プラグインのウェアハウスを含む。第1のプラグインによって提供される第1の関連プラグインに関する情報を取得した後に、関連プラグインのエージェント装置は、第1の関連プラグインを関連プラグインのエージェント装置側のローカルの関連プラグインのウェアハウスに格納することができる。これに基づき、本実施形態で提供される関連プラグインの管理方法は、第1の関連プラグインを関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに同期させるために、関連プラグインの管理サーバ装置によって、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスと関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスの同期を実行するステップをさらに含む。
前述の説明に基づき、ステップ102の特定の実装方法は、関連プラグインの管理サーバ装置によって、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスをポーリングするステップ、および、第1の関連プラグインが関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするステップを含む。
第2のコンポーネントが配置される装置が関連プラグインのサーバ装置であってもよいし、関連プラグインのエージェント装置であってもよいし、または関連プラグインの管理サーバ装置や関連プラグインのエージェント装置とは別の装置であってもよいことが、明記されている。本発明の実施形態は、第2のコンポーネントが配置される装置が、関連プラグインの管理サーバ装置または関連プラグインのエージェント装置である状況に焦点を当てたものである。第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、関連プラグインの管理サーバ装置によって、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールする実装プロセスは、第2のコンポーネントが配置される装置によって異なる可能性がある。以下は、特定のアプリケーションシナリオを参照して説明するために例を使用している。
例えば、第2のコンポーネントが配置される装置が関連プラグインの管理サーバ装置である場合、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、関連プラグインの管理サーバ装置によって、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップは、第1の関連プラグインが関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、関連プラグインの管理サーバ装置によって、第2のコンポーネントに関する情報に従って、第2のコンポーネントが配置される装置が関連プラグインの管理サーバ装置であることを決定することができ、第1の関連プラグインの記述情報に従って第1の関連プラグインをさらに決定することができ、次いで、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスから直接第1の関連プラグインを取得することができ、次いで、関連プラグインの管理サーバ装置に直接、取得した第1の関連プラグインをインストールすることができることを含む。
別の例では、第2のコンポーネントが配置される装置が関連プラグインのエージェント装置である場合、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、関連プラグインの管理サーバ装置によって、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップは、第1の関連プラグインが関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、関連プラグインの管理サーバ装置によって、第2のコンポーネントに関する情報に従って、第2のコンポーネントが配置される装置が関連プラグインのエージェント装置であることを決定することができ、第1の関連プラグインの記述情報に従って第1の関連プラグインを決定することができ、次いで、第1の関連プラグインを関連プラグインのエージェント装置にインストールするように関連プラグインのエージェント装置に命令するために、関連プラグインの管理命令を関連プラグインのエージェント装置に送信することを含む。これに対応して、関連プラグインの管理命令を受信した後、関連プラグインのエージェント装置は、関連プラグインの管理命令の命令に従って第1の関連プラグインを決定し、次いで、第1の関連プラグインを関連プラグインのエージェント装置にインストールする。任意で、第1の関連プラグインを決定した後に、関連プラグインのエージェント装置は、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから直接に第1のプラグインを取得することができ、次いで、第1のプラグインを関連プラグインのエージェント装置にインストールする。
関連プラグインの管理命令の手段で、関連プラグインの管理サーバ装置によって第1の関連プラグインに命令する方法は、本実施形態に限定されないことが明記されている。例えば、関連プラグインの管理サーバ装置は、関連プラグインの管理命令に第1の関連プラグインの識別子を搬送させることができ、このため、関連プラグインのエージェント装置は、関連プラグインの管理命令で搬送された第1の関連プラグインの識別子に従って、第1の関連プラグインを決定することができる。別の例では、関連プラグインのエージェント装置および関連プラグインの管理サーバ装置は、関連プラグインの順序に従って処理を実行するために事前に同意することができ、すなわち、1つの関連プラグインの処理が完了した後に別の関連プラグインを処理する。この方法では、関連プラグインのエージェント装置は、関連プラグインの管理命令が受信される前に、関連プラグインの管理サーバ装置のために提供される関連プラグインに関する情報に従って、どの関連プラグインが受信した関連プラグインの管理命令に対応するかを決定することができる。後者の方法では、関連プラグインの管理サーバ装置は、関連プラグインの管理命令に任意の情報を搬送させる必要はなく、これにより、関連プラグインの管理サーバ装置の負荷を軽減することが容易になる。
別の例では、第2のコンポーネントが配置される装置が関連プラグインのエージェント装置や関連プラグインのサーバ装置と異なる別の装置であることが可能であり、この場合、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、関連プラグインの管理サーバ装置によって、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップは、第1の関連プラグインが関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、関連プラグインの管理サーバ装置によって、第2のコンポーネントに関する情報に従って、第2のコンポーネントが配置される装置を決定することができ、第1の関連プラグインの記述情報に従って第1の関連プラグインを決定することができ、次いで、関連プラグインのエージェント装置が第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするために、第2のコンポーネントが配置される装置の識別しおよび第1の関連プラグインの識別子を搬送する関連プラグインの管理命令を生成し、関連プラグインの管理命令を関連プラグインのエージェント装置に送信することを含むが、これに限定されるものではない。別の例では、第2のコンポーネントが配置される装置が関連プラグインのエージェント装置や関連プラグインの管理サーバ装置と異なる別の装置である状況において、関連プラグインの管理サーバ装置は、第2のコンポーネントが配置される装置および第1の関連プラグインを決定した後に、任意の情報を関連プラグインのエージェント装置に搬送しない関連プラグインの管理命令を送信することができ、関連プラグインのエージェント装置は、特定のルールやポリシーに従って、および関連プラグインの管理命令に従って、第2のコンポーネントが配置される装置および第1の関連プラグインを決定し、そのご第1の関連プラグインを第2のコンポーネントが配置される装置にインストールすることを担当する。この実装方法では、関連プラグインのエージェント装置は、関連プラグインの管理サーバ装置と同様の機能を有することができ、したがって、第1の関連プラグインが、第2のコンポーネントが配置される装置にインストールされることを完了する。
また、中央の関連プラグインのウェアハウスおよびローカルの関連プラグインのウェアハウスに基づいて、本実施形態で提供される関連プラグインの管理方法は、第1の関連プラグインが変わることが発見されたときに、第2のコンポーネントに関する情報に従って第1の関連プラグインでの変更処理および第1の関連プラグインの変更情報を、関連プラグインの管理サーバ装置によって実行するステップをさらに含み、ここで、第1の関連プラグインの変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレードおよび第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
関連プラグインの管理サーバ装置は、第1の関連プラグインが変わるかどうかを学習することができることが、明記されている。例えば、コンポーネントおよび/または関連プラグインがアップグレードされる必要がある場合、管理者が、関係のあるコンポーネントおよび/または関連プラグインに応じたアップグレードパッケージを関連プラグインの管理サーバ装置に格納することができる。この方法では、関連プラグインの管理サーバ装置は、第1の関連プラグインがアップグレードされる必要があるかどうかを、決定することによって学習することができる。別の例では、コンポーネントおよび/または関連プラグインが削除される必要がある場合、関連プラグインの管理サーバ装置は、関係のある削除命令を受信することができ、第2のコンポーネントが配置される装置から第1の関連プラグインが削除される必要があるかどうかを、決定することによって学習することができる。別の例では、コンポーネントおよび/または関連プラグインがアップグレードされる必要がある場合、管理者が、関係のあるコンポーネントおよび/または関連プラグインに応じたアップグレードパッケージを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納することもできる。この方法では、管理プラグインの管理サーバ装置は、中央の関連プラグインのウェアハウスおよびローカルの関連プラグインのウェアハウスで同期を実行することによって、第1の関連プラグインがアップグレードされる必要があることを発見することができる。
第1の関連プラグインのための変更処理が、第2のコンポーネントが配置される装置上の第1の関連プラグインに対してアップグレードを実行するステップである場合、第1の関連プラグインの変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含むことが明記されている。
第1の関連プラグインに対してアップグレード処理を実行することに基づく1つの状況としては、第1の関連プラグインに対応するアップグレードパッケージが関連プラグインの管理サーバ装置に格納され、したがって、関連プラグインの管理サーバ装置は、第1の関連プラグインに対応するアップグレードパッケージに従って直接に第1の関連プラグインをアップグレードすることができ、すなわち、第1の関連プラグインに対応するアップグレードパッケージを第2のコンポーネントが配置される装置にインストールする。関連プラグインの管理サーバ装置は、第1の関連プラグインに対するアップグレードを実行した後に、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに第1の関連プラグインの変更情報を格納することができ、ここで、変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含み、関連プラグインの管理サーバ装置は、中央の関連プラグインのウェアハウスを用いて関連プラグインに管理を実行する。
第1の関連プラグインに対してアップグレード処理を実行することに基づく別の状況としては、第1の関連プラグインに対応するアップグレードパッケージが関連プラグインのエージェント装置に格納され、関連プラグインのエージェント装置は、第1の関連プラグインに対応するアップグレードパッケージを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納することができる。これに基づき、関連プラグインの管理サーバ装置は、第1の関連プラグインをアップグレードする前に、第1の関連プラグインに対応するアップグレードパッケージを、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに同期し、次いで、第1の関連プラグインに対応するアップグレードパッケージに従って第1の関連プラグインをアップグレードし、すなわち、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスから第1の関連プラグインに対応するアップグレードパッケージを取得し、次いで、第1の関連プラグインに対応する取得したアップグレードパッケージを第2のコンポーネントが配置される装置にインストールする。
第1の関連プラグインに対応するアップグレードパッケージに従った、関連プラグインの管理サーバ装置のアップグレードによって、第1の関連プラグインに対してアップグレード処理を実行する処理は、第2のコンポーネントが配置される装置によって異なる可能性があることが明記されている。詳細については、関連プラグインの管理サーバ装置が、第2のコンポーネントが配置される装置の異なる状況において、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールすることに関する説明に応じて参照され得るが、このことは本明細書に詳述されていない。
任意の実装方法では、ストレージ管理が関連プラグインのウェアハウスを用いて関連プラグインに実行されるだけでなく、リサイクル管理も、関連プラグインのリサイクルウェアハウスを用いて関連プラグインに対して実行され、ここで、関連プラグインのリサイクルウェアハウスは、管理プラグインのエージェント装置側に設定されたローカルの関連プラグインのリサイクルウェアハウスおよび関連プラグインの管理サーバ装置側に設定された中央の関連プラグインのリサイクルウェアハウスを含む。これに基づき、削除処理が第1の関連プラグインに対して実行される状況では、第1の関連プラグインを第2のコンポーネントが配置される装置から削除した後に、関連プラグインの管理サーバ装置は、第1の関連プラグインを関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのリサイクルウェアハウスにさらに移動させることができ、第1の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスに移動させるために、関連プラグインのエージェント装置を制御する。例えば、関連プラグインの管理サーバ装置は、関連プラグインのエージェント装置に除去命令を送信することができ、ここで、除去命令は、第1の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスに移動させるように、関連プラグインのエージェント装置に命令するために使用される。ただし、この実装方法は、限定として解釈されるものではない。
また、任意の実装方法において、関連プラグインの管理サーバ装置は、第1の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに同期させるだけでなく、第2の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに同期させることができ、ここで、第2の関連プラグインは、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに存在するが、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに存在しない。その後、関連プラグインの管理サーバ装置は、第2の関連プラグインの記述情報および第2の関連プラグインを使用する第3のコンポーネントに関する情報に従って、第2の関連プラグインを第3のコンポーネントが配置される装置にインストールする。
任意で、関連プラグインの管理サーバ装置は、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスおよび関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスを定期的にポーリングすることができ、これにより、2つのウェアハウス間で異なる関連プラグインを発見する。
関連プラグインの管理サーバ装置によって、第3のコンポーネントが配置される装置に第2の関連プラグインをインストールする実装方法は、第3のコンポーネントが配置される装置によって異なる可能性があることが明記されている。詳細については、第1の関連プラグインを第2のコンポーネントが配置される装置にインストール実装方法を参照することができ、ここでは繰り返し説明されない。
また、任意の実装方法では、関連プラグインのレジストリも、関連プラグインの管理サーバ装置に設定することができ、関連プラグインのレジストリは、関連プラグインに関する情報を格納するため、およびすべての関連プラグインに関する情報に対して集中管理を実装するために使用される。これに基づいて、すべての関連プラグインに関する情報に対して集中管理を実行するために、第1のコンポーネントによって提供される第1の関連プラグインに関する情報を取得した後、関連プラグインの管理サーバ装置は、第1のコンポーネントによって提供される第1の関連プラグインに関する情報を関連プラグインの管理サーバ装置の関連プラグインのレジストリに格納することができる。
任意の実装方法では、第1のコンポーネントがインストールされるコンポーネントである状況において、第1のコンポーネントは、関連プラグインの管理サーバ装置にインストールされる必要がある。これに基づいて、本実施形態で提供される関連プラグインの管理方法は、関連プラグインのエージェント装置を用いて、関連プラグインの管理サーバ装置によって、第1のコンポーネントに関する情報を取得するステップ、および第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインの管理サーバ装置にインストールするステップをさらに含む。
関連プラグインの管理サーバ装置は、関連プラグインのエージェント装置を用いて第1のコンポーネントに関する情報を取得し、関連プラグインの管理サーバ装置は、関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得することが明記されており、これらは、同じプロセスで完了してもよいし、異なるプロセスで完了してもよく、第1の関連プラグインに関する情報は、第1のコンポーネントによって提供される。
また、任意で、すべてのコンポーネントに関する情報に対して集中管理を実行するために、関連プラグインの管理サーバ装置は、第1のコンポーネントに関する情報を関連プラグインの管理サーバ装置の関連プラグインのレジストリに格納することも可能である。例えば、第1のコンポーネントが関連プラグインでインストールされる必要がある場合、第1のコンポーネントが配置される装置に関係のある関連プラグインをインストールするために、関連プラグインの管理サーバ装置は、関連プラグインのレジストリに格納される第1のコンポーネントに関する情報に従って、第1のコンポーネントが配置される装置を決定することができる。第1のコンポーネントのための関係のある関連プラグインをインストールするプロセスは、第2のコンポーネントのための第1の関連プラグインをインストールするプロセスと同じであることが明記されており、ここでは繰り返し説明されない。
任意の実装方法では、第1のコンポーネントがインストールされるコンポーネントである状況において、第1のコンポーネントは、関連プラグインのエージェント装置にインストールされる必要がある。したがって、関連プラグインのエージェント装置は、第1のコンポーネントに関する情報を取得することができ、第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインのエージェント装置にインストールする。
以上の説明から分かるように、本実施形態で提供される関連プラグインの管理方法に従って、第1の関連プラグインおよび第1の関連プラグインを使用する第2のコンポーネントを決定するために、関連プラグインの管理サーバ装置は、関連プラグインのエージェント装置を用いて、第1の関連プラグインの記述情報および関連プラグインを使用する第2のコンポーネントに関する情報を取得し、ここで、第1の関連プラグインの記述情報および第2のコンポーネントに関する情報は第1のコンポーネントによって提供され、次いで、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に基づいて、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールする。本実施形態の関連プラグインの管理サーバ装置に従って、関連プラグインの記述情報および関連プラグインを使用するコンポーネントに関する情報を取得するステップに基づいて、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立することができ、関連プラグインの、統一され自動化されたインストールが実行され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
また、本実施形態で提供される関連プラグインの管理方法は、関連プラグインの管理サーバ装置を用いて、関連プラグインのための自動のインストール、アップグレードおよび削除のような関連プラグインの自動管理を実行し、関連プラグインの配備の複雑さやエラーの発生しやすさなどの関連プラグインの問題を減少させる。
図2は、本発明の実施形態に係る別の関連プラグインの管理方法のフローチャートである。図2に示すように、方法は以下を含んでいる。
201.関連プラグインのエージェント装置は、第1の関連プラグインに関する情報を取得し、第1の関連プラグインに関する情報は、第1のコンポーネントによって提供され、第1の関連プラグインの記述情報と第1の関連プラグインを使用する第2のコンポーネントに関する情報を含む。
202.関連プラグインのエージェント装置は、関連プラグインの管理サーバ装置に第1の関連プラグインに関する情報を提供し、このため第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、関連プラグインの管理サーバ装置が、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールする。
本実施形態で提供される方法は、図1に示す実施形態の方法に対応し、関連プラグインのエージェント装置の観点から説明されている。
この実施形態で提供される関連プラグインの管理方法は、関連プラグインの管理サーバ装置と関連プラグインのエージェント装置を主に含み、コンポーネントの分散配備のアプリケーションシナリオに適用可能である。コンポーネントの分散配備のアプリケーションシナリオは、同じアプリケーションシステムにおけるコンポーネントの分散配備であってもよく、または異なるアプリケーションシステムにおけるコンポーネントの分散配備であってよく、ここで、アプリケーションシステムは、警報システム、ネットワークトポロジシステム、セキュリティサブシステムなどであってもよい。関連プラグインの管理サーバ装置は、関連プラグインの管理を主に実行し、これには、関連プラグインのインストール、アップグレード、削除、分散などが主に含まれる。関連ブラグインに関する、コンポーネントによって搬送される情報を有する関連プラグインの管理サーバ装置を提供するために、関連プラグインのエージェント装置は、コンポーネントの登録などを主に担当する。
実際のアプリケーションでは、関連プラグインのエージェント装置は、コンポーネントによって提供された関連プラグインに関する情報を取得することができる。コンポーネントによって提供される関連プラグインに関する情報を、関連ブラグインを用いて取得する実装方法は、以下のタイプを含むが、これに限定されるものではない。
例えば、各コンポーネントがインストールされる場合、インストールされるコンポーネントは、関連プラグインの潜在的なユーザの登録を実行すること、およびコンポーネントに関する情報を提供することを必要とし、インストールされるコンポーネントを登録するために提供される情報は、インストールされるコンポーネントのタイプ、インストールされるコンポーネントのバージョンなどを含むが、これに限定されるものではない。インストールされるコンポーネントのタイプは必須情報であり、インストールされるコンポーネントの名前、コンポーネントの位置、コンポーネントの特徴などから形成されてもよく、インストールされるコンポーネントが関連プラグインのユーザまたはプロバイダであるかどうかを示すために使用される。
また、インストールされるコンポーネントが関連プラグインのプロバイダである場合、登録時に、インストールされるコンポーネントに関する情報だけでなく、関連ブラグインに関する情報も提供される必要がある。関連ブラグインに関する情報は、関連プラグインの記述情報および関連プラグインのユーザ(すなわち、関連プラグインを使用するコンポーネント)に関する情報を含むが、これに限定されるものではない。例えば、登録時にインストールされるコンポーネントによって提供される関連プラグインに関する情報は、関連プラグインに関するバージョン互換性情報、関連プラグインのユーザに関するバージョン互換性情報などをさらに含むことができる。
インストールされるコンポーネントが関連プラグインに関する情報を登録の方法で提供するだけでなく、インストールされたコンポーネントまたはその時点でインストールされる必要のないコンポーネントが、関連プラグインに関する、コンポーネント自体によって提供される情報を、登録の方法で提供してもよい。
さらに、関連プラグインのエージェント装置は、関連プラグインに関する、登録とは別の方法で各コンポーネントによって提供された情報を、取得することもできる。例えば、管理者またはオペレータが、関連プラグインに関する、各コンポーネントによって提供され得る情報を、関連プラグインのエージェント装置に予め初期設定する。
本実施形態では、説明を簡単にするために、関連プラグインを提供するコンポーネントは、第1のコンポーネントと呼ばれ、第1のコンポーネントによって搬送される関連プラグインは、第1の関連プラグインと呼ばれ、第1の関連プラグインのユーザは、第2のコンポーネントと呼ばれている。本実施形態に関与する第1のコンポーネントは、インストールされるコンポーネント、インストールされたコンポーネント、またはその時点でインストールされる必要のないコンポーネントであってもよいが、これに限定されるものではないことが、明記されている。
例えば、第1のコンポーネントがインストールされるコンポーネントであると仮定すると、第1のコンポーネントは、本実施形態で述べた関連プラグインのエージェント装置に登録し、第1のコンポーネントによって提供される第1の関連プラグインに関する情報を提供することができる。このように、関連プラグインのエージェント装置は、第1のコンポーネントによって提供された第1の関連プラグインに関する情報を学習することができる。第1のコンポーネントがインストールされるコンポーネントである状況において、どの特定の装置に第1のコンポーネントがインストールされるかは、本実施形態では限定されないことが、明記されている。例えば、第1のコンポーネントは、関連プラグインの管理サーバ装置にインストールされてもよいし、関連プラグインのエージェント装置にインストールされてもよいし、または関連プラグインの管理サーバ装置や関連プラグインのエージェント装置とは別の装置にインストールされてもよい。本発明の実施形態は、第1のコンポーネントが関連プラグインの管理サーバ装置または関連プラグインのエージェント装置にインストールされる状況に焦点を当てたものであり、その具体的なプロセスは後述される。
任意の実装方法では、関連プラグインのエージェント装置は、関連プラグインに関する情報を格納するために、関連プラグインのレジストリをローカルに提供する。このように、関連プラグインのエージェント装置は、第1のコンポーネントによって関連プラグインのレジストリに提供された第1の関連プラグインに関する情報を格納することができる。
第1のコンポーネントによって提供される第1の関連プラグインに関する情報を取得した後に、関連プラグインのエージェント装置は、関連プラグインの管理サーバ装置に、第1のコンポーネントによって提供される第1の関連プラグインに関する情報を提供する。例えば、関連プラグインのエージェント装置は、関連プラグインの管理サーバ装置によって送信されたクエリ要求を受信し、クエリ要求に従って関連プラグインのエージェント装置の関連プラグインのレジストリをクエリし、関連プラグインのレジストリから、第1のコンポーネントによって提供される第1の関連プラグインに関する情報を取得し、この情報を返信することができる。
任意の実装方法では、ストレージ管理が、関連プラグインのウェアハウスを用いて関連プラグインで実行される。関連プラグインのウェアハウスは、関連プラグインのエージェント装置側に設定されるローカルの関連プラグインのウェアハウス、および関連プラグインの管理サーバ装置側に設定される中央の関連プラグインのウェアハウスを含む。第1のプラグインによって提供される第1の関連プラグインに関する情報を取得した後に、関連プラグインのエージェント装置は、第1の関連プラグインを関連プラグインのエージェント装置のローカルの関連プラグインのウェアハウスに格納することができる。これに対応して、関連プラグインの管理サーバ装置は、第1の関連プラグインを関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに同期させるために、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスと関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスの同期をさらに実行することができる。
関連プラグインの管理サーバ装置は、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスをポーリングし、第1の関連プラグインが追加されたかどうかを発見することができ、さらに、第1の関連プラグインが発見された後、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第2のコンポーネントが配置される装置に第1の関連プラグインをインストールする。任意の実装方法では、第2のコンポーネントが配置される装置は、関連プラグインのエージェント装置であってもよい。これに基づき、第1の関連プラグインが関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに追加されたことを発見すると、関連プラグインの管理サーバ装置は、第2のコンポーネントに関する情報に従って、第2のコンポーネントが配置される装置が関連プラグインのエージェント装置であると決定し、第1の関連プラグインの記述情報に従って、第1の関連プラグインを決定し、次いで、第1の関連プラグインを関連プラグインのエージェント装置にインストールするように、関連プラグインのエージェント装置に命令するために、関連プラグインの管理命令を関連プラグインのエージェント装置に送信することができる。これに対応して、関連プラグインのエージェント装置は、関連プラグインの管理サーバ装置によって送信された関連プラグインの管理命令を受信することができ、ここで、関連プラグインの管理命令は、第2のコンポーネントに関する情報に従って、第2のコンポーネントが配置される装置が関連プラグインのエージェント装置であると決定し、第1の関連プラグインの記述情報に従って第1の関連プラグインを決定した後に、関連プラグインの管理サーバ装置によって送信され、関連プラグインの管理命令は、第1の関連プラグインを関連プラグインのエージェント装置にインストールするように、関連プラグインのエージェント装置を命令するために使用される。関連プラグインの管理命令を受信した後、関連プラグインのエージェント装置は、関連プラグインの管理命令の命令に従って第1の関連プラグインを決定し、次いで、第1の関連プラグインを関連プラグインのエージェント装置にインストールする。任意で、第1の関連プラグインを決定した後に、関連プラグインのエージェント装置は、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから直接に第1のプラグインを取得することができ、次いで、第1のプラグインを関連プラグインのエージェント装置にインストールする。
関連プラグインの管理命令の手段で、関連プラグインの管理サーバ装置によって第1の関連プラグインに命令する方法は、本実施形態に限定されないことが明記されている。例えば、関連プラグインの管理サーバ装置は、関連プラグインの管理命令に第1の関連プラグインの識別子を搬送させることができ、このため、関連プラグインのエージェント装置は、第1の関連プラグインに関する、関連プラグインの管理命令で搬送された識別子に従って、第1の関連プラグインを決定することができる。別の例では、関連プラグインのエージェント装置および関連プラグインの管理サーバ装置は、関連プラグインの順序に従って処理を実行するために事前に同意することができ、すなわち、1つの関連プラグインが処理された後に別の関連プラグインを処理する。この方法では、関連プラグインのエージェント装置は、関連プラグインの管理命令が受信される前に、関連プラグインの管理サーバ装置のために提供される関連プラグインに関する情報に従って、どの関連プラグインが受信した関連プラグインの管理命令に対応するかを決定することができる。後者の方法では、関連プラグインの管理サーバ装置は、関連プラグインの管理命令に任意の情報を搬送させる必要はなく、これにより、関連プラグインの管理サーバ装置の負荷を軽減することが容易になる。また、関連プラグインのエージェント装置は、関連プラグインの管理指示に対して構文解析などの処理を実行する必要がなく、これにより、関連プラグインのエージェント装置の処理負荷を軽減する。
また、中央の関連プラグインのウェアハウスおよびローカルの関連プラグインのウェアハウスに基づいて、第1の関連プラグインが変わることが発見されたときに、関連プラグインの管理サーバ装置は、第2のコンポーネントに関する情報および第1の関連プラグインの変更情報に従って、第1の関連プラグインでの変更処理を実行し、ここで、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレードおよび第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
第1の関連プラグインに対してアップグレード処理を実行するステップに基づく1つの状況としては、第1の関連プラグインに対応するアップグレードパッケージが関連プラグインのエージェント装置に格納され、関連プラグインのエージェント装置は、第1の関連プラグインに対応するアップグレードパッケージを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納することができる。これに基づき、関連プラグインの管理サーバ装置は、第1の関連プラグインをアップグレードする前に、第1の関連プラグインに対応するアップグレードパッケージを、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに同期し、次いで、第1の関連プラグインに対応するアップグレードパッケージに従って第1の関連プラグインをアップグレードし、すなわち、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスから第1の関連プラグインに対応するアップグレードパッケージを取得し、次いで、第1の関連プラグインに対応する取得したアップグレードパッケージを第2のコンポーネントが配置される装置にインストールする。
任意の実装方法では、ストレージ管理が関連プラグインのウェアハウスを用いて関連プラグインに実行されるだけでなく、リサイクル管理も、関連プラグインのリサイクルウェアハウスを用いて関連プラグインに対して実行され、ここで、関連プラグインのリサイクルウェアハウスは、管理プラグインのエージェント装置側に設定されたローカルの関連プラグインのリサイクルウェアハウスおよび関連プラグインの管理サーバ装置側に設定された中央の関連プラグインのリサイクルウェアハウスを含む。これに基づき、削除処理が第1の関連プラグインに対して実行される状況では、第1の関連プラグインを第2のコンポーネントが配置される装置から削除した後に、関連プラグインの管理サーバ装置は、第1の関連プラグインを関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのリサイクルウェアハウスにさらに移動させることができ、第1の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスに移動させるために、関連プラグインのエージェント装置を制御する。これに対応して、第1の関連プラグインが第2のコンポーネントが配置される装置から削除された後に、関連プラグインのエージェント装置は、関連プラグインの管理サーバ装置の制御下で、第1の関連プラグインを、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスに移動させることができる。例えば、関連プラグインのエージェント装置は、関連プラグインの管理サーバ装置に因って送信された除去命令を受信し、除去命令に従って、第1の関連プラグインを、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスに移動させることができる。ただし、この実装方法は、限定として解釈されるものではない。除去命令は、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスへの、第1の関連プラグインの除去を指示するために使用される。ただし、特定の命令方法に限定されない。
任意の実装方法では、第1のコンポーネントがインストールされるコンポーネントである状況において、第1のコンポーネントは、関連プラグインの管理サーバ装置にインストールされる必要がある。これに基づいて、本実施形態で提供される関連プラグインの管理方法は、関連プラグインのエージェント装置によって、第1のコンポーネントに関する情報を取得するステップ、および第1のコンポーネントに関する情報を関連プラグインの管理サーバ装置に提供するステップであって、このため、関連プラグインの管理サーバ装置は、第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインの管理サーバ装置にインストールする、ステップをさらに含む。
関連プラグインのエージェント装置によって第1のコンポーネントに関する情報を関連プラグインの管理サーバ装置に提供するステップ、および関連プラグインのエージェント装置によって、第1のコンポーネントによって関連プラグインの管理サーバ装置に提供される第1の関連プラグインに関する情報を提供するステップは、同じプロセスで完了してもよいし、異なるプロセスで完了してもよいことが明記されている。
任意の実装方法では、第1のコンポーネントがインストールされるコンポーネントである状況において、第1のコンポーネントは、関連プラグインのエージェント装置にインストールされる必要がある。これに基づいて、本実施形態で提供される関連プラグインの管理方法は、関連プラグインのエージェント装置によって、第1のコンポーネントに関する情報を取得するステップ、および第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインのエージェント装置にインストールするステップをさらに含む。
結論として、本実施形態では、関連プラグインのエージェント装置は関連プラグインの管理サーバ装置と協働し、第1のコンポーネントによって提供される、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報は、関連プラグインの管理サーバ装置に提供される。したがって、関連プラグインの管理サーバ装置は、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールすることができ、ここで、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立しており、これにより、関連プラグインの、統一され自動化されたインストールを実行する。この結果、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
実際のアプリケーションシナリオでは、分散システムが2つのマシンに配備され、分散システムはコンポーネントAおよびBを含み、コンポーネントAの関連プラグインPlugin_BforAがコンポーネントBに存在し、コンポーネントAはサーバH1に配備され、コンポーネントBはサーバH2に配備され、関連プラグインPlugin_BforAはH1に同期的に配備される必要があり、前述の実施形態の関連プラグインの管理サーバ装置はサーバH1に配備される。本明細書のコンポーネントAは、前述の実施形態の第2のコンポーネントに相当し、コンポーネントBは、前述の実施形態の第1のコンポーネントに相当し、関連プラグインPlugin_BforAは、前述の実施形態の第1の関連プラグインに相当する。このアプリケーションシナリオでは、第2のコンポーネントは、関連プラグインの管理サーバ装置にインストールされ、第1のコンポーネントは、関連プラグインのエージェント装置にインストールされる。コンポーネントがローカルに配備されたときに分散式の認識がないことを確実にするために、関連プラグインの同期化は、関連プラグインの管理サーバ装置がスレーブマシンのサーバH2として追加された場合にのみ、実行される。図3に示すように、サーバH2の追加手順は以下を含む。
301.コンポーネントAおよび関連プラグインの管理サーバ装置をサーバH1にインストールする。
302.コンポーネントBおよび関連プラグインのエージェント装置をサーバH2にインストールする。
303.関連プラグインPlugin_BforAをサーバH2上のローカルの関連プラグインのウェアハウスにコピーする。
304.マスタスレーブ関係が確立されると、関連プラグインPlugin_BforAがサーバH1上の中央の関連プラグインのウェアハウスに存在するかどうかを判断し、そして判断結果がnoの場合、ステップ305を実行し、判断結果がyesの場合、ステップ306を実行する。
305.サーバH1上の中央の関連プラグインのウェアハウスに関連プラグインPlugin_BforAを同期させ、コンポーネントAが配置されるサーバH1上に関連プラグインPlugin_BforAをインストールして、ステップ306を実行する。
306.サーバH2上のローカルの関連プラグインのウェアハウスに存在しない関連プラグインがサーバH1上の中央の関連プラグインのウェアハウスに存在するかどうかを判断し、そして判断結果がyesの場合、ステップ307を実行し、判断結果がnoの場合、ステップ308を実行する。
307.関連プラグインが、サーバH1上の中央の関連プラグインのウェアハウスに存在するが、サーバH2上のローカルの関連プラグインのウェアハウスに存在しない場合、サーバH2上のローカルの関連プラグインのウェアハウスに関連プラグインを同期させ、ステップ308を実行する。
308.操作を終了する。
また、コンポーネントおよび関連プラグインがアップグレードされる必要があると仮定し、前述の説明に基づいて、アップグレードパッケージは、コンポーネントBのアップグレードコンポーネントパッケージB_SP1および関連プラグインPlugin_BforAのアップグレードコンポーネントパッケージPlugin_BforA_SP1を含むと仮定して、サーバH1およびサーバH2でのアップグレード手順が、図4および図5にそれぞれ示されている。
図4に示すように、サーバH1でのアップグレード手順は以下を含む。
401.サーバH1にアップグレードパッケージをインストールする。
402.インストールされたコンポーネントおよび/または関連プラグインのアップグレードパッケージがアップグレードパッケージに存在するかどうかを判断し、そして判断結果がyesの場合、ステップ403を実行し、判断結果がnoの場合、ステップ405を実行する。
本実施形態では、アップグレードパッケージはコンポーネントBのアップグレードパッケージを含むものと想定されている。
403.サーバH2上にコンポーネントBのアップグレードパッケージB_SP1を配備し、サーバH1上に関連プラグインPlugin_BforAのアップグレードコンポーネントパッケージPlugin_BforA_SP1をインストールする。
404.関連プラグインPlugin_BforAのアップグレードコンポーネントパッケージPlugin_BforA_SP1を、中央の関連プラグインのウェアハウスにコピーし、ステップ405を実行する。
405.操作を終了する。
図5に示すように、サーバH2でのアップグレード手順は以下を含む。
501.サーバH2にアップグレードパッケージをインストールする。
502.サーバH2にコンポーネントBのアップグレードパッケージB_SP1を配備する。
503.アップグレードパッケージが、インストールされた関連プラグインのアップグレードパッケージを含むかどうかを判断し、そして判断結果がyesの場合、ステップ504を実行し、判断結果がnoの場合、ステップ505を実行する。
本実施形態では、アップグレードパッケージは関連プラグインPlugin_BforAのアップグレードコンポーネントパッケージPlugin_BforA_SP1を含むものと想定されている。
504.サーバH2が、関連プラグインPlugin_BforAのアップグレードコンポーネントパッケージPlugin_BforA_SP1を、ローカルの関連プラグインのウェアハウスにコピーし、ステップ505を実行する。
505.サーバH2上のローカルの関連プラグインのウェアハウスをポーリングする。
506.サーバH1上の中央の関連プラグインのウェアハウスに存在しない関連プラグインがサーバH2上のローカルの関連プラグインのウェアハウスに存在するかどうかを判断し、そして判断結果がyesの場合、ステップ507を実行し、判断結果がnoの場合、ステップ509を実行する。
507.サーバH2上のローカルの関連プラグインのウェアハウスに存在するが、サーバH1上の中央の関連プラグインのウェアハウスに存在しない関連プラグインPlugin_BforAのアップグレードコンポーネントパッケージPlugin_BforA_SP1をサーバH1上の中央の関連プラグインに同期させ、ステップ508を実行する。
508.関連プラグインPlugin_BforAのアップグレードコンポーネントパッケージPlugin_BforA_SP1をサーバH1に配備し、ステップ509を実行する。
509.操作を終了する。
図6は、本発明の実施形態に係るさらに別の関連プラグインの管理方法のフローチャートである。図6に示すように、方法は以下を含んでいる。
601.ローカルに提供された登録インタフェースを用いて、第1の関連プラグインに関する情報を取得し、第1の関連プラグインは第1のコンポーネントによって提供され、第1の関連プラグインに関する情報は、第1のコンポーネントが登録インタフェースを用いて登録されるときに提供され、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含む。
602.第2のコンポーネントに関する情報に従って、第2のコンポーネントのインストールが完了したことが決定された後、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールし、ここで、第1のコンポーネントおよび第2のコンポーネントは同じ装置にインストールされている。
従来技術における関連プラグインに関連のあるコンポーネントの配備中の、相互依存と密結合の問題を解決するために、本実施形態は関連プラグインの管理方法を提供している。本発明の実施形態で提供される関連プラグインの管理方法は、シングルポイント配備のアプリケーションシナリオに適用可能であり、すなわち、関連のあるコンポーネントが同じ装置に配備されるアプリケーションシナリオに適用可能である。例えば、関連プラグインの管理装置、すなわち、第1のコンポーネントおよび第2のコンポーネントが配置される装置によって本実施形態を実行することができ、第1のコンポーネントおよび第2のコンポーネントは関連プラグインの管理装置にインストールされることを示している。本実施形の関連プラグインの管理装置は、前述の実施形態の関連プラグインの管理サーバ装置や関連プラグインのエージェント装置とは異なる。本実施形態では、関連プラグインの管理装置は、関連プラグインの、統一され自動化されたインストールを実施するために使用される。このように、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
本実施形態では、関連プラグインの管理装置は、各コンポーネントに対して登録機能を提供し、特に登録インタフェースを提供する。これに基づき、各コンポーネントは、登録インタフェースを用いて関連プラグインの管理装置に登録し、コンポーネント自体に関する情報を提供することが可能である。コンポーネントを登録するために提供された情報は、コンポーネントのタイプ、コンポーネントのバージョンナンバーなどを含むが、これに限定されるものではない。コンポーネントのタイプは必須情報であり、コンポーネントの名前、コンポーネントの位置、コンポーネントの特徴などによって形成されてもよく、コンポーネントが関連プラグインのユーザまたはプロバイダであるかどうかを示すことができる。
また、コンポーネントが関連プラグインのプロバイダである場合、登録時に、コンポーネントに関する情報だけでなく、関連ブラグインに関する情報も提供される必要がある。関連ブラグインに関する情報は、関連プラグインの記述情報および関連プラグインのユーザ(すなわち、関連プラグインを使用するコンポーネント)に関する情報を含むが、これに限定されるものではない。例えば、登録時にコンポーネントによって提供される関連プラグインに関する情報は、関連プラグインに関するバージョン互換性情報、関連プラグインのユーザに関するバージョン互換性情報などをさらに含むことができる。
本実施形態の関連プラグインの管理装置によって提供される登録機能は、インストールされるコンポーネントの登録を可能にするだけでなく、インストールされたコンポーネントまたはその時点でインストールされる必要のないコンポーネントの登録も可能にする。すなわち、コンポーネントは、インストールされるコンポーネントであってもよいし、インストールされたコンポーネントまたはその時点でインストールされる必要のないコンポーネントなどであってもよい。
本実施形態では、説明を簡単にするために、関連プラグインを提供するコンポーネントは、第1のコンポーネントと呼ばれ、第1のコンポーネントによって提供される関連プラグインは、第1の関連プラグインと呼ばれ、第1の関連プラグインのユーザは、第2のコンポーネントと呼ばれている。本実施形態に関与する第1のコンポーネントは、インストールされるコンポーネント、インストールされたコンポーネント、またはその時点でインストールされる必要のないコンポーネントであってもよいが、これに限定されるものではないことが、明記されている。
第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を取得後、そして、第2のコンポーネントに関する情報に従って、第2のコンポーネントのインストールが完了したことが決定された後、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、関連プラグインの管理装置が、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールする。
本実施形態では、関連プラグインの管理装置は、登録インタフェースを用いて、第1のコンポーネントによって提供される第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を取得することができ、さらに、取得した情報に基づいて、第2のコンポーネントによって使用される第1の関連プラグインのインストールの処理を別々に実行することができる。このように、第2のコンポーネントのインストールは、第2のコンポーネントによって使用される第1の関連プラグインのインストールから独立しているため、関連プラグインに関係のあるコンポーネントの配備中の疎結合が実現される。
任意の実装方法では、ストレージ管理が、関連プラグインのウェアハウスを用いて関連プラグインに実行され、ストレージ管理は、関連プラグインのレジストリを用いて、コンポーネントおよび関連プラグインに関する関連のある情報に基づいて実行される。本実施形態では、関連プラグインのウェアハウスおよび関連プラグインのレジストリは、関連プラグインの管理装置にローカルに設定されてもよいし、関連プラグインの管理装置から遠く離れた別の装置に設定されてもよい。
これに基づいて、本実施形態で提供される方法は、すべての関連プラグインに集中管理を実行するために、関連プラグインのウェアハウスに第1の関連プラグインを格納するステップと、すべての関連プラグインに関する情報に集中管理を実行するために、第1のコンポーネントによって関連プラグインのレジストリに提供された第1の関連プラグインに関する情報を格納するステップとをさらに含む。
前述の説明に基づき、ステップ602の特定の実装方法は、関連プラグインのウェアハウスをポーリングするステップ、および、第1の関連プラグインが関連プラグインのウェアハウスに追加されたことが発見されたときに、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするステップを含む。
また、関連プラグインのウェアハウス基づいて、本実施形態で提供される関連プラグインの管理方法は、第2のコンポーネントに関する情報および第1の関連プラグインが変わる場合の第1の関連プラグインの変更情報に従って、第1の関連プラグインに変更処理を実行するステップをさらに含み、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレード、または第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
関連プラグインの管理装置は、第1の関連プラグインが変わるかどうかを学習することができることが、明記されている。例えば、コンポーネントおよび/または関連プラグインがアップグレードされる必要がある場合、管理者が、関係のあるコンポーネントおよび/または関連プラグインに応じたアップグレードパッケージを関連プラグインの管理装置にインストールすることができる。この方法では、関連プラグインの管理装置は、第1の関連プラグインがアップグレードされる必要があるかどうかを、決定することによって学習することができる。別の例では、コンポーネントおよび/または関連プラグインが削除される必要がある場合、関連プラグインの管理装置は、関係のある削除命令を受信することができ、第2のコンポーネントが配置される装置から第1の関連プラグインが削除される必要があるかどうかを、決定することによって学習することができる。
第1の関連プラグインのための変更処理が、第2のコンポーネントが配置される装置上の第1の関連プラグインに対してアップグレードを実行するステップである場合、第1の関連プラグインの変更情報は、第1の関連プラグインに対応するアップグレードを含む。これに基づき、本実施形態で提供される方法は、第1の関連プラグインにアップグレードを実行した後に、関連プラグインのウェアハウスに第1の関連プラグインの変更情報を格納するステップをさらに含み、変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
任意の実装方法では、ストレージ管理が、関連プラグインのウェアハウスを用いて関連プラグインに実行されるだけでなく、リサイクル管理が、関連プラグインのリサイクルウェアハウスを用いて、関連プラグインに実行される。これに基づき、削除処理が第1の関連プラグインに実行される状況において、第1の関連プラグインが、第2のコンポーネントが配置される装置から削除された後に、第1の関連プラグインは、関連プラグインのウェアハウスから関連プラグインのリサイクルウェアハウスにさらに移動され得る。関連プラグインのリサイクルウェアハウスは、関連プラグインの管理装置にローカルに設定されてもよいし、関連プラグインの管理装置から遠く離れた別の装置に設定されてもよい。
任意の実装方法では、第1のコンポーネントがインストールされるコンポーネントである状況において、第1のコンポーネントは、関連プラグインの管理装置にインストールされる必要がある。これに基づいて、本実施形態で提供される関連プラグインの管理方法は、関連プラグインの管理装置を使用することにより、第1のコンポーネントが登録インタフェースを用いて登録される場合に、第1のコンポーネントに関する情報を取得するステップ、および第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインの管理装置にインストールするステップをさらに含む。
登録インタフェースを使用することにより、関連プラグインの管理装置によって第1のコンポーネントに関する情報を取得するステップ、および登録インタフェースを使用することにより、関連プラグインの管理装置によって、第1のコンポーネント提供される第1の関連プラグインに関する情報を取得するステップは、同じプロセスで完了してもよいし、異なるプロセスで完了してもよいことが明記されている。
また、任意で、すべてのコンポーネントに関する情報に対して集中管理を実行するために、関連プラグインの管理装置は、第1のコンポーネントに関する情報を関連プラグインのレジストリにさらに格納することができる。
以上の説明から分かるように、本実施形態で提供される関連プラグインの管理方法に従って、登録インタフェースは、第1のコンポーネントによって提供される第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を取得するために提供され、ここで、第1の関連プラグインの記述情報および第2のコンポーネントに関する情報は、第1の関連プラグインおよび第1の関連プラグインを使用する第2のコンポーネントを決定するために、第1のコンポーネントが登録されるときに提供され、次いで、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に基づいて、第2のコンポーネントが配置される装置に第1の関連プラグインがインストールされる。本実施形態の関連プラグインの管理装置に従って、関連プラグインの記述情報および関連プラグインを使用するコンポーネントに関する情報を取得するステップに基づいて、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立することができ、関連プラグインの、統一され自動化されたインストールが実行され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
図7は、本発明の実施形態に係る関連プラグインの管理サーバ装置の概略構成図である。図7に示すように、装置は、取得モジュール71およびインストールモジュール72を含んでいる。
取得モジュール71は、関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得するように構成されており、第1の関連プラグインに関する情報は、第1の関連プラグインの記述情報と第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、第1の関連プラグインは第1のコンポーネントによって提供される。
インストールモジュール72は、取得モジュール71に接続され、そして、第2のコンポーネントに関する、取得モジュール71によって取得された情報に従って、第2のコンポーネントのインストールが完了したことが決定された後、第2のコンポーネントに関する、取得モジュール71によって取得された情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするように構成されている。
本実施形態に関与する第1のコンポーネントは、インストールされるコンポーネント、インストールされたコンポーネント、またはその時点でインストールされる必要のないコンポーネントであってもよいが、これに限定されるものではないことが、明記されている。
第2のコンポーネントが配置される装置が関連プラグインのサーバ装置であってもよいし、関連プラグインのエージェント装置であってもよいし、または関連プラグインの管理サーバ装置や関連プラグインのエージェント装置とは別の装置であってもよいことが、明記されている。本発明の実施形態は、第2のコンポーネントが配置される装置が、関連プラグインの管理サーバ装置または関連プラグインのエージェント装置である状況に焦点を当てたものである。
任意の実装方法では、図8に示すように、関連プラグインの管理サーバ装置は、同期モジュール73をさらに含んでいる。
同期モジュール73は、第1の関連プラグインを関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに同期させるために、第1の関連プラグインが関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納された場合に、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスと関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスの同期を実行するように構成されている。
前述の説明に基づき、インストールモジュール72は、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスをポーリングし、第1の関連プラグインが関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするように特定して構成されてもよい。
任意の実装方法では、図8に示すように、関連プラグインの管理サーバ装置は、変更処理モジュール74をさらに含んでいる。
変更処理モジュール74は、第2のコンポーネントに関する情報および第1の関連プラグインが変わる場合の第1の関連プラグインの変更情報に従って、第1の関連プラグインに変更処理を実行するように構成され、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレード、または第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
また、任意で、第1の関連プラグインのための変更処理が、第2のコンポーネントが配置される装置上の第1の関連プラグインに対してアップグレードを実行するステップである場合、変更処理モジュール74は、第1の関連プラグインの変更情報を出力するようにさらに構成され、第1の関連プラグインの変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
ある状況においては、第1の関連プラグインに対応するアップグレードパッケージは、関連プラグインの管理サーバ装置にインストールされているため、変更処理モジュール74は、第1の関連プラグインに対応するアップグレードパッケージに従って直接に、第1の関連プラグインをアップグレードすることが可能である。これに基づき、変更処理モジュール74は、第1の関連プラグインがアップグレードされた後に、第1の関連プラグインの変更情報を関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに格納するように構成され、ここで、変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
別の状況においては、変更処理モジュール74のための第1の関連プラグインに対応するアップグレードパッケージを提供するために、第1の関連プラグインに対応するアップグレードパッケージは、関連プラグインのエージェント装置にインストールされ、このため、同期モジュール73は、変更処理モジュール74が第1の関連プラグインをアップグレードする前に、第1の関連プラグインに対応するアップグレードパッケージを、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに同期させるようにさらに構成されている。
任意の実装方法では、図8に示すように、関連プラグインの管理サーバ装置は、除去モジュール75をさらに含んでいる。
除去モジュール75は、第1の関連プラグインのための変更処理が第1の関連プラグインを第2のコンポーネントが配置される装置から削除するステップである場合、変更処理モジュール74が第1の関連プラグインを第2のコンポーネントが配置される装置から削除した後に、第1の関連プラグインを関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスから関連プラグインの管理サーバ装置上の中央の関連プラグインのリサイクルウェアハウスに移動させ、そして、第1の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスから関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスに移動させるために、関連プラグインのエージェント装置を制御するように構成されている。
また、任意で、同期モジュール73は、第2の関連プラグインを関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに同期させるようにさらに構成され、ここで、第2の関連プラグインは、関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに存在するが、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスには存在しない。これに対応して、インストールモジュール72は、第2の関連プラグインの記述情報および第2の関連プラグインを使用する第3のコンポーネントに関する情報に従って、第2の関連プラグインを第3のコンポーネントが配置される装置にインストールするようにさらに構成されている。
任意の実装方法では、第2のコンポーネントが配置される装置は、関連プラグインのエージェント装置である。これに基づき、インストールモジュール72は、第2のコンポーネントに関する情報に従って、第2のコンポーネントが配置される装置が関連プラグインのエージェント装置であると決定し、第1の関連プラグインの記述情報に従って、第1の関連プラグインを決定し、第1の関連プラグインを関連プラグインのエージェント装置にインストールするように、関連プラグインのエージェント装置に命令するために、関連プラグインの管理命令を関連プラグインのエージェント装置に送信するように特定して構成されてもよい。
任意の実装方法では、図8に示すように、関連プラグインの管理サーバ装置は、格納モジュール76をさらに含んでいる。
格納モジュール76は、関連プラグインのレジストリを格納するように構成されており、ここで、関連プラグインの管理サーバ装置によってすべての関連プラグインに関する情報に対して集中管理を実行するために、第1のコンポーネントによって提供される第1の関連プラグインに関する情報は、関連プラグインのレジストリに記録される。格納モジュール76は、取得モジュール71に接続され、第1のコンポーネントによって提供される第1の関連プラグインの情報を格納するように構成され、第1の関連プラグインに関する情報は、取得モジュール71によって取得される。
任意の実装方法では、取得モジュール71は、関連プラグインのエージェント装置にクエリ要求を送信し、第1のコンポーネントによって提供される第1の関連プラグインに関する情報を受信するように特定して構成されることが可能であり、第1の関連プラグインに関する情報は、クエリ要求に応答して関連プラグインのエージェント装置によって返信され、第1のコンポーネントによって提供される第1の関連プラグインに関する情報は、関連プラグインのエージェント装置上の関連プラグインのレジストリをクエリすることによって、関連プラグインのエージェント装置によって取得され、そして返信される。
任意の実装方法では、第1のコンポーネントはインストールされるコンポーネントであり、関連プラグインの管理サーバ装置にインストールされる必要がある。これに基づいて、取得モジュール71は、関連プラグインのエージェント装置を用いて第1のコンポーネントに関する情報を取得するようにさらに構成されてもよい。これに対応して、インストールモジュール72は、第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインの管理サーバ装置にインストールするようにさらに構成されてもよい。
また、関連プラグインの管理サーバ装置によってすべてのコンポーネントに関する情報に対して集中管理を実行するために、格納モジュール76によって格納される関連プラグインのレジストリは、第1のコンポーネントに関する情報を記録するためにさらに使用されてもよい。
図8に示すように、関連プラグインの管理サーバ装置は、中央の関連プラグインのウェアハウスおよび中央の関連プラグインのリサイクルウェアハウスをさらに含み、中央の関連プラグインのウェアハウスは関連プラグインを格納するように構成され、中央の関連プラグインのリサイクルウェアハウスは削除された関連プラグインを格納するように構成されている。中央の関連プラグインのウェアハウスと中央の関連プラグインのリサイクルウェアハウスと各モジュールとの接続関係は、図8に示されている。
本実施形態で提供される関連プラグインの管理サーバ装置を、図1に示す方法の実施形態の手順を実行するために使用することができ、その詳細な動作原理は、ここでは繰り返されない。詳細については、本方法の実施形態の説明に参照され得る。
第1の関連プラグインおよび第1の関連プラグインを使用する第2のコンポーネントを決定するために、本実施形態で提供される関連プラグインの管理サーバ装置は、関連プラグインのエージェント装置を用いて、第1の関連プラグインの記述情報および関連プラグインを使用する第2のコンポーネントに関する情報を取得し、ここで、第1の関連プラグインの記述情報および第2のコンポーネントに関する情報は第1のコンポーネントによって提供され、次いで、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に基づいて、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールする。本実施形態の関連プラグインの管理サーバ装置に従って、関連プラグインの記述情報および関連プラグインを使用するコンポーネントに関する情報が取得されることに基づいて、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立することができ、関連プラグインの、統一され自動化されたインストールが実行され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
また、本実施形態で提供される関連プラグインの管理サーバ装置は、関連プラグインの自動のインストール、アップグレードおよび削除のような関連プラグインの自動管理を実行し、配備の複雑さやエラーの発生しやすさなどの関連プラグインの問題を減少させる。
図9は、本発明の実施形態に係るマスタサーバの概略構成図である。マスタサーバは少なくとも1つのスレーブサーバに通信可能に接続され、少なくとも1つのコンポーネントはマスタサーバとスレーブサーバのそれぞれに配備され、第1のコンポーネントおよび第2のコンポーネントは、マスタサーバとスレーブサーバに配備されたすべてのコンポーネントに含まれ、第1の関連プラグインは、第1のコンポーネントと第2のコンポーネントとの間に存在する。第1のコンポーネントおよび第2のコンポーネントは、マスタサーバとスレーブサーバ上のすべてのコンポーネントに含まれることが明記されており、これは、第1のコンポーネントがマスタサーバに配備され、第2のコンポーネントがスレーブサーバに配備される状況、または、第1のコンポーネントがスレーブサーバに配備され、第2のコンポーネントがマスタサーバに配備される状況、または、第1のコンポーネントおよび第2のコンポーネントの両方がマスタサーバに配備される状況、または、第1のコンポーネントおよび第2のコンポーネントの両方がスレーブサーバに配備される状況を含んでいる。図9の説明を容易にするために、第1のコンポーネントおよび第2のコンポーネントがマスタサーバとスレーブサーバにそれぞれ配置されているものが、例として使用されており、第1のコンポーネントおよび第2のコンポーネント以外のコンポーネントは、別のコンポーネントとして示され、第1の関連プラグイン以外の関連プラグインは、別の関連プラグインとして示されている。図9に示すように、マスタサーバは、関連プラグインの管理サーバをさらに含み、関連プラグインの管理サーバは、図7または図8に示す実施形態で提供されている関連プラグインの管理サーバ装置であってもよい。関連プラグインの管理サーバ装置の実装構造および動作原理は、ここでは繰り返されない。詳細については、前述の実施形態の説明に参照され得る。
第1の関連プラグインおよび第1の関連プラグインを使用する第2のコンポーネントを決定するために、本実施形態で提供されるマスタサーバは、関連プラグインのエージェント装置を用いて、第1の関連プラグインの記述情報および関連プラグインを使用する第2のコンポーネントに関する情報を取得し、ここで、第1の関連プラグインの記述情報および第2のコンポーネントに関する情報は第1のコンポーネントによって提供され、次いで、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に基づいて、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールする。本実施形態で提供されるマスタサーバに従って、関連プラグインに関する記述情報および関連プラグインを使用するコンポーネントに関する情報を取得するステップに基づいて、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立することができ、関連プラグインの、統一され自動化されたインストールが実行され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
また、本実施形態で提供されるマスタサーバは、関連プラグインの自動のインストール、アップグレードおよび削除のような関連プラグインの自動管理を実行し、配備の複雑さやエラーの発生しやすさなどの関連プラグインの問題を減少させる。
図10は、本発明の実施形態に係る別のマスタサーバの概略構成図である。マスタサーバは少なくとも1つのスレーブサーバに通信可能に接続され、少なくとも1つのコンポーネントはマスタサーバとスレーブサーバのそれぞれに配備され、第1のコンポーネントおよび第2のコンポーネントは、マスタサーバとスレーブサーバに配備されたすべてのコンポーネントに含まれ、第1の関連プラグインは、第1のコンポーネントと第2のコンポーネントとの間に存在する。第1のコンポーネントおよび第2のコンポーネントは、マスタサーバとスレーブサーバに配備されたすべてのコンポーネントに含まれることが本明細書に明記されており、これは、第1のコンポーネントがマスタサーバに配備され、第2のコンポーネントがスレーブサーバに配備される状況、または、第1のコンポーネントがスレーブサーバに配備され、第2のコンポーネントがマスタサーバに配備される状況、または、第1のコンポーネントおよび第2のコンポーネントの両方がマスタサーバに配備される状況、または、第1のコンポーネントおよび第2のコンポーネントの両方がスレーブサーバに配備される状況を含んでいる。図10に示すように、マスタサーバ100は、メモリ1001およびプロセッサ1002をさらに含んでいる。
メモリ1001は、読み出し専用メモリおよびランダムアクセスメモリを含み、プロセッサ1002に命令とデータを提供することができる。メモリ1001の一部は、不揮発性ランダムアクセスメモリ(NVRAM)をさらに含むことができる。
メモリ1001は、実行可能モジュールやデータ構造、またはこれらのサブセット、またはこれらの拡張セット:各種の演算命令を含み、各種演算を実行するために使用される演算命令;および、各種のシステムプログラムを含み、さまざまな基本的なサービスを実現し、ハードウェアベースのタスクを処理するように構成されたオペレーティングシステムである要素を格納する。
本発明の実施形態では、プロセッサ1002は、スレーブサーバを用いて第1の関連プラグインに関する情報を取得するステップであって、第1の関連プラグインに関する情報は、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、第1の関連プラグインは第1のコンポーネントによって提供される、ステップと、第2のコンポーネントに関する情報に従って第2のコンポーネントのインストールが完了したことを決定した後に、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップとを、メモリ1001に格納された演算命令(演算命令はオペレーティングシステムに格納され得る)を呼び出すことによって実行する。
本実施形態に関与する第1のコンポーネントは、インストールされるコンポーネント、インストールされたコンポーネント、またはその時点でインストールされる必要のないコンポーネントであってもよいが、これに限定されるものではないことが、明記されている。
第2のコンポーネントが配置される装置はマスタサーバ100であってもよいし、スレーブサーバであってもよいし、またはマスタサーバ100やスレーブサーバとは異なる別の装置であってもよいことが明記されている。本発明の実施形態は、第2のコンポーネントが配置される装置が、マスタサーバ100またはスレーブサーバである状況に焦点を当てたものである。
本実施形態では、第1の関連プラグインおよび第1の関連プラグインを使用する第2のコンポーネントを決定するために、プロセッサ1002は、スレーブサーバを用いて、第1のコンポーネントによって提供される、第1の関連プラグインの記述情報および関連プラグインを使用する第2のコンポーネントに関する情報を取得し、次いで、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に基づいて、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールする。関連プラグインの記述情報および関連プラグインを使用するコンポーネントに関する情報を取得するステップに基づいて、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立することができ、関連プラグインの、統一され自動化されたインストールが実行され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
また、プロセッサ1002を、中央処理装置(Central Processing Unit:略してCPU)と呼ぶことができる。メモリ1001は、読み出し専用メモリおよびランダムアクセスメモリを含み、プロセッサ1002に命令とデータを提供することができる。メモリ1001の一部は、不揮発性ランダムアクセスメモリ(NVRAM)をさらに含むことができる。特定のアプリケーションでは、マスタサーバ100のすべてのコンポーネントは、バスシステム1005を用いて連結され、ここで、バスシステム1005は、データバスに加えて、電力バス、制御バス、状態信号バスなどを含む。ただし、明確な説明のために、図中のすべてのバスは、バスシステム1005によって示されている。
図1、図3、または図4に示す実施形態に開示されている方法は、プロセッサ1002に適用されてもよいし、プロセッサ1002によって実装されてもよい。プロセッサ1002は、信号を処理することが可能な集積回路チップであってもよい。実装プロセスにおいて、前述の方法のステップを、プロセッサ1002のハードウェアの集積論理回路を用いて、またはソフトウェアの形態での命令の手段によって行うことができる。プロセッサ1002は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理装置、ディスクリートゲートもしくはトランジスタ論理装置、またはディスクリートハードウェアアセンブリであってもよい。汎用プロセッサはマイクロプロセッサであってもよいし、プロセッサは任意の従来のプロセッサであってもよい。図1、図3、または図5に示す実施形態に開示されている方法のステップは、ハードウェア復号化プロセッサによって直接実行されてもよいし、復号化プロセッサのハードウェアとソフトウェアのモジュールの組合せによって実行されてもよい。ソフトウェアモジュールを、ランダムアクセスメモリ、フラッシュメモリ、読み出し専用メモリ、プログラマブル読み出し専用メモリもしくは電気的消去可能プログラマブルメモリ、またはレジスタなどの、当該技術分野で成熟した記憶媒体に配置することができる。記憶媒体はメモリ1001に配置され、プロセッサ1002はメモリ1001の情報を読み出し、プロセッサ1002のハードウェアと組み合わせて、図1、図3、または図5に示す方法のステップを完了する。
任意で、メモリ1001の一部が、マスタサーバ100上の中央の関連プラグインのウェアハウスとして使用されてもよいし、関連プラグインを格納するために使用されてもよい。また、これに基づき、マスタサーバ100上の中央の関連プラグインのウェアハウスに第1の関連プラグインを同期させるために、プロセッサ1002は、第1の関連プラグインがスレーブサーバ上のローカルの関連プラグインのウェアハウスに格納される場合に、マスタサーバ100上の中央の関連プラグインのウェアハウスに同期を実行することができる。
任意で、プロセッサ1002は、マスタサーバ100上の中央の関連プラグインのウェアハウスをポーリングし、第1の関連プラグインがマスタサーバ100上の中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするように特定して構成されている。
また、任意で、プロセッサ1002は、第2のコンポーネントに関する情報および第1の関連プラグインが変わる場合の第1の関連プラグインの変更情報に従って、第1の関連プラグインに変更処理を実行することができ、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレード、または第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
任意で、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインに対してアップグレードを実行するステップである場合、プロセッサ1002は、第1の関連プラグインの変更情報を出力するようにさらに構成され、第1の関連プラグインの変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
ある状況においては、第1の関連プラグインに対応するアップグレードパッケージは、マスタサーバ100にインストールされているため、プロセッサ1002は、第1の関連プラグインに対応するアップグレードパッケージに従って直接に、第1の関連プラグインをアップグレードすることが可能である。これに基づき、本プロセッサ1002は、第1の関連プラグインにアップグレードを実行した後に、マスタサーバ100上の中央の関連プラグインのウェアハウスに第1の関連プラグインの変更情報を格納するようにさらに構成され、変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
別の状況においては、第1の関連プラグインに対応するアップグレードパッケージは、スレーブサーバにインストールされ、したがって、プロセッサ1002は、第1の関連プラグインをアップグレードする前に、第1の関連プラグインに対応するアップグレードパッケージを、スレーブサーバ上のローカルの関連プラグインのウェアハウスからマスタサーバ100上の中央の関連プラグインに同期し、次いで、第1の関連プラグインに対応するアップグレードパッケージに従って第1の関連プラグインをアップグレードするようにさらに構成されている。
また、任意で、メモリ1001の一部が、マスタサーバ100上の関連プラグインの中央のサイクルウェアハウスとして使用されてもよいし、削除された関連プラグインを格納するために使用されてもよい。これに基づき、プロセッサ1002は、第1の関連プラグインのための変更処理が第1の関連プラグインを第2のコンポーネントが配置される装置から削除するステップである場合、第1の関連プラグインが第2のコンポーネントが配置される装置から削除された後に、第1の関連プラグインをマスタサーバ100上の中央の関連プラグインのウェアハウスからマスタサーバ100上の中央の関連プラグインのリサイクルウェアハウスに移動させ、そして、第1の関連プラグインをスレーブサーバ上のローカルの関連プラグインのウェアハウスからスレーブサーバ上のローカルの関連プラグインのリサイクルウェアハウスに移動させるために、スレーブサーバを制御するようにさらに構成されている。
任意で、プロセッサ1002は、第1の関連プラグインをスレーブサーバ上のローカルの関連プラグインのウェアハウスからマスタサーバ100上の中央の関連プラグインのウェアハウスに同期させるだけでなく、マスタサーバ100上の中央の関連プラグインのウェアハウスに存在するが、スレーブサーバ上のローカルの関連プラグインのウェアハウスに存在しない第2の関連プラグインをスレーブサーバ上のローカルの関連プラグインのウェアハウスに同期させることができ、第2の関連プラグインの記述情報および第2の関連プラグインを使用する第3のコンポーネントに関する情報に従って、第3のコンポーネントが配置される装置に第2の関連プラグインをインストールすることができる。
任意の実装方法では、第2のコンポーネントが配置される装置は、スレーブサーバである。図10に示すように、マスタサーバ100は、出力装置1003をさらに含んでいる。出力装置1003を、プロセッサ1002によって生成された関連プラグインの管理命令をスレーブサーバに送信するように構成することができ、このため、スレーブサーバは、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールする。具体的には、プロセッサ1002は、第2のコンポーネントに関する情報に従って、第2のコンポーネントが配置される装置がスレーブサーバであることを判断し、第1の関連プラグインの記述情報に従って第1の関連プラグインを決定し、次いで、出力装置1003を用いて関連プラグインの管理命令をスレーブサーバに送信する。
任意の実装方法では、メモリ1001の一部を、マスタサーバ100の関連プラグインのレジストリとして使用することもでき、または、メモリ1001は関連プラグインのレジストリを格納することもでき、ここで、マスタサーバ100がすべての関連プラグインに関する情報に対して集中管理を実行するために、第1の関連プラグインに関する、第1のコンポーネントによって提供された情報は、関連プラグインのレジストリに記録される。
任意の実装方法では、図10に示すように、マスタサーバ100は、入力装置1004をさらに含んでいる。これに基づき、プロセッサ1001は、第1の関連プラグインに関する、第1のコンポーネントによって提供される情報を取得し、プロセッサ1001は、出力装置1003を用いてクエリ要求をスレーブサーバに送信するように特定して構成され、このため、スレーブサーバは、スレーブサーバ上の関連プラグインのレジストリをクエリすることによって、第1のコンポーネントによって提供される第1の関連プラグインに関する情報を取得し、第1の関連プラグインに関する情報を返信する。入力装置1004を用いて、プロセッサ1001は、第1の関連プラグインに関する情報を取得し、この情報は、第1のコンポーネントによって提供され、スレーブサーバによって返信される。第1のコンポーネントによって提供される第1の関連プラグインに関する情報は、スレーブサーバ上の関連プラグインのレジストリをクエリすることによって、スレーブサーバによって取得され、返信される。
任意の実装方法では、第1のコンポーネントはインストールされるコンポーネントであり、マスタサーバ100にインストールされる必要がある。これに基づいて、プロセッサ1002は、スレーブサーバを用いて第1のコンポーネントに関する情報を取得し、第1のコンポーネントに関する情報に従って、第1のコンポーネントをマスタサーバ100にインストールするように構成されてもよい。
また、マスタサーバ100がすべてのコンポーネントに関する情報に対して集中管理を実行するために、マスタサーバ100の関連プラグインのレジストリは、第1のコンポーネントに関する情報を記録するために使用されてもよい。
第1の関連プラグインおよび第1の関連プラグインを使用する第2のコンポーネントを決定するために、本実施形態で提供されるマスタサーバは、スレーブサーバを用いて、第1の関連プラグインの記述情報および関連プラグインを使用する第2のコンポーネントに関する情報を取得し、ここで、第1の関連プラグインの記述情報および第2のコンポーネントに関する情報は第1のコンポーネントによって提供され、次いで、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に基づいて、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールする。本実施形態で提供されるマスタサーバに従って、関連プラグインの記述情報および関連プラグインを使用するコンポーネントに関する情報が取得されること基づいて、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立することができ、関連プラグインの、統一され自動化されたインストールが実行され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
また、本実施形態で提供されるマスタサーバは、関連プラグインの自動のインストール、アップグレードおよび削除のような関連プラグインのための自動管理を実行し、配備の複雑さやエラーの発生しやすさなどの関連プラグインの問題を減少させる。
図11は、本発明の実施形態に係る関連プラグインのエージェント装置の概略構成図である。図11に示すように、装置は、取得モジュール1101および提供モジュール1102を含んでいる。
取得モジュール1101は、第1の関連プラグインに関する情報を取得するように構成されており、第1の関連プラグインに関する情報は、第1の関連プラグインの記述情報と第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、第1の関連プラグインは第1のコンポーネントによって提供される。
提供モジュール1102は、取得モジュール1101に接続され、関連プラグインの管理サーバ装置に第1の関連プラグインに関する情報を提供し、このため、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、関連プラグインの管理サーバ装置が、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするように構成される。
本実施形態に関与する第1のコンポーネントは、インストールされるコンポーネント、インストールされたコンポーネント、またはその時点でインストールされる必要のないコンポーネントであってもよいが、これに限定されるものではないことが、明記されている。
第2のコンポーネントが配置される装置が関連プラグインのサーバ装置であってもよいし、関連プラグインのエージェント装置であってもよいし、または関連プラグインの管理サーバ装置や関連プラグインのエージェント装置とは別の装置であってもよいことが、明記されている。本発明の実施形態は、第2のコンポーネントが配置される装置が、関連プラグインの管理サーバ装置または関連プラグインのエージェント装置である状況に焦点を当てたものである。
任意の実装方法では、図12に示すように、関連プラグインのエージェント装置は、第1の格納モジュール1103をさらに含んでいる。
第1の格納モジュール1103は、関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスとして使用されてもよいし、第1の関連プラグインを格納するために使用されてもよい。任意で、第1の格納モジュール1103は、取得モジュール1101に接続され、取得モジュール1101が第1の関連プラグインに関する情報を取得した後に、第1の関連プラグインを格納するように構成されている。
任意の実装方法では、図12に示すように、関連プラグインのエージェント装置は、受信モジュール1104および第1のインストールモジュール1105をさらに含んでいる。
受信モジュール1104は、関連プラグインの管理サーバ装置によって送信された関連プラグインの管理命令を受信するように構成され、ここで、関連プラグインの管理命令は、第2のコンポーネントが配置される装置が関連プラグインのエージェント装置であると決定し、第1の関連プラグインの記述情報に従って第1の関連プラグインを決定した後に、関連プラグインの管理サーバ装置によって送信され、第1の関連プラグインを関連プラグインのエージェント装置にインストールするように、関連プラグインのエージェント装置を命令するために使用される。
第1のインストールモジュール1105は、受信モジュール1104に接続され、受信モジュール1104によって受信された関連プラグインの管理命令の命令に従って、第1の関連プラグインを決定し、決定された第1の関連プラグインを関連プラグインのエージェント装置にインストールするように構成されている。第1のインストールモジュール1105は、第1の格納モジュール1103に接続され、第1の格納モジュール1103から第1の関連プラグインを取得するように構成されている。
任意で、第1の格納モジュール1103は、第1の関連プラグインのアップグレードパッケージを格納するようにさらに構成されてもよく、このため、第2のコンポーネントが配置される装置上の第1の関連プラグインがアップグレードされる必要がある場合に、関連プラグインの管理サーバ装置は、第1の関連プラグインに対応する格納されたアップグレードパッケージに従って、第1の関連プラグインをアップグレードする。具体的には、第2のコンポーネントが配置される装置上の第1の関連プラグインがアップグレードされる必要がある場合に、関連プラグインの管理サーバ装置は、第1の格納モジュール1103から第1の関連プラグインのアップグレードパッケージを取得し、次いで、第1の関連プラグインのアップグレードパッケージに従って第1の関連プラグインをアップグレードする。
任意の実装方法では、図12に示すように、関連プラグインのエージェント装置は、除去モジュール1106および第2の格納モジュール1107をさらに含んでいる。
除去モジュール1106は、第1の関連プラグインが第2のコンポーネントが配置される装置から削除された後に、関連プラグインの管理サーバ装置の制御下で、第1の関連プラグインを第1の格納モジュール1103から関連プラグインのエージェント装置上の第2の格納モジュール1107に移動させるように構成されている。
第2の格納モジュール1107は、関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスとして使用されてもよいし、第1の格納モジュール1103から移動された第1の関連プラグインを格納するために使用されてもよい。
任意の実装方法では、第1のコンポーネントはインストールされるコンポーネントであり、関連プラグインの管理サーバ装置にインストールされる必要がある。これに基づいて、取得モジュール1101は、第1のコンポーネントに関する情報を取得するようにさらに構成されている。これに対応して、提供モジュール1102は、第1のコンポーネントに関する情報を関連プラグインの管理サーバ装置に提供し、このため、関連プラグインの管理サーバ装置は、第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインの管理サーバ装置にインストールするようにさらに構成される。
任意の実装方法では、第1のコンポーネントはインストールされるコンポーネントであり、関連プラグインのエージェント装置にインストールされる必要がある。これに基づいて、取得モジュール1101は、第1のコンポーネントに関する情報を取得するようにさらに構成されている。図12に示すように、装置は、第2のインストールモジュール1108をさらに含んでいる。第2のインストールモジュール1108は、第1のコンポーネントに関する、取得モジュール1101によって取得された情報に従って、第1のコンポーネントを関連プラグインのエージェント装置にインストールするようにさらに構成されている。
本実施形態で提供される関連プラグインのエージェント装置の機能モジュールを、図2に示す方法の実施形態の手順を実行するために使用することができ、機能モジュールの詳細な動作原理は、ここでは繰り返されない。詳細については、本方法の実施形態の説明に参照され得る。
本実施形態で提供される関連プラグインのエージェント装置は、前述の実施形態で提供されている関連プラグインの管理サーバ装置と協働し、第1のコンポーネントによって提供される、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報は、関連プラグインの管理サーバ装置に提供される。このように、関連プラグインの管理サーバ装置は、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールすることができ、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立しており、関連プラグインの、統一され自動化されたインストールが実行され、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
図13は、本発明の実施形態に係るスレーブサーバの概略構成図である。スレーブサーバはマスタサーバに通信可能に接続され、少なくとも1つのコンポーネントはスレーブサーバとマスタサーバのそれぞれに配備され、第1のコンポーネントおよび第2のコンポーネントは、スレーブサーバとマスタサーバに配備されたすべてのコンポーネントに含まれ、第1の関連プラグインは、第1のコンポーネントと第2のコンポーネントとの間に存在する。第1のコンポーネントおよび第2のコンポーネントは、スレーブサーバとマスタサーバに配備されたすべてのコンポーネントに含まれることが本明細書に明記されており、これは、第1のコンポーネントがマスタサーバに配備され、第2のコンポーネントがスレーブサーバに配備される状況、または、第1のコンポーネントがスレーブサーバに配備され、第2のコンポーネントがマスタサーバに配備される状況、または、第1のコンポーネントおよび第2のコンポーネントの両方がマスタサーバに配備される状況、または、第1のコンポーネントおよび第2のコンポーネントの両方がスレーブサーバに配備される状況を含んでいる。図13の説明を容易にするために、第1のコンポーネントおよび第2のコンポーネントがマスタサーバとスレーブサーバにそれぞれ配置されているものが、例として使用されており、第1のコンポーネントおよび第2のコンポーネント以外のコンポーネントは、別のコンポーネントとして示され、第1の関連プラグイン以外の関連プラグインは、別の関連プラグインとして示されている。図13に示すように、スレーブサーバは、関連プラグインのエージェントをさらに含み、関連プラグインのエージェントは、図11または図12に示す実施形態で提供されている関連プラグインのエージェント装置であってもよい。関連プラグインのエージェント装置の実装構造および動作原理は、ここでは繰り返されない。詳細については、前述の実施形態の説明に参照され得る。
本実施形態で提供されるスレーブサーバは、前述の実施形態で提供されているマスタサーバと協働し、第1のコンポーネントによって提供される、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報は、マスタサーバに提供される。このように、マスタサーバは、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールすることができ、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立しており、関連プラグインの、統一され自動化されたインストールが実行され、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
図14は、本発明の実施形態に係る別のスレーブサーバの概略構成図である。スレーブサーバはマスタサーバに通信可能に接続され、少なくとも1つのコンポーネントはスレーブサーバとマスタサーバのそれぞれに配備され、第1のコンポーネントおよび第2のコンポーネントは、スレーブサーバとマスタサーバに配備されたすべてのコンポーネントに含まれ、第1の関連プラグインは、第1のコンポーネントと第2のコンポーネントとの間に存在する。第1のコンポーネントおよび第2のコンポーネントは、スレーブサーバとマスタサーバ上のすべてのコンポーネントに含まれることが明記されており、これは、第1のコンポーネントがマスタサーバに配備され、第2のコンポーネントがスレーブサーバに配備される状況、または、第1のコンポーネントがスレーブサーバに配備され、第2のコンポーネントがマスタサーバに配備される状況、または、第1のコンポーネントおよび第2のコンポーネントの両方がマスタサーバに配備される状況、または、第1のコンポーネントおよび第2のコンポーネントの両方がスレーブサーバに配備される状況を含んでいる。図14に示すように、スレーブサーバ140は、メモリ1401、プロセッサ1402、および出力装置1403をさらに含んでいる。
メモリ1401は、読み出し専用メモリおよびランダムアクセスメモリを含み、プロセッサ1402に命令とデータを提供することができる。メモリ1401の一部は、不揮発性ランダムアクセスメモリ(NVRAM)をさらに含むことができる。
メモリ1401は、実行可能モジュールやデータ構造、またはこれらのサブセット、またはこれらの拡張セット:各種の演算命令を含み、各種演算を実行するように構成された演算命令;および、各種のシステムプログラムを含み、さまざまな基本的なサービスを実現し、ハードウェアベースのタスクを処理するように構成されたオペレーティングシステムである要素を格納する。
本発明の実施形態では、プロセッサ1402は、第1の関連プラグインに関する情報を取得するステップをメモリ1401に格納された演算命令(演算命令はオペレーティングシステムに格納され得る)を呼び出すことによって実行し、ここで、第1の関連プラグインに関する情報は、第1のコンポーネントによって提供され、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含む。
マスタサーバが、出力装置1403は、マスタサーバに第1の関連プラグインに関する、プロセッサ1402によって取得された情報を提供し、そのため第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするように構成されている。
本実施形態に関与する第1のコンポーネントは、インストールされるコンポーネント、インストールされたコンポーネント、またはその時点でインストールされる必要のないコンポーネントであってもよいが、これに限定されるものではないことが、明記されている。
第2のコンポーネントが配置される装置はマスタサーバであってもよいし、スレーブサーバ140であってもよいし、またはマスタサーバやスレーブサーバ140とは異なる別の装置であってもよいことが明記されている。本発明の実施形態は、第2のコンポーネントが配置される装置が、マスタサーバまたはスレーブサーバ140である状況に焦点を当てたものである。
本実施形態では、プロセッサ1402は、第1の関連プラグインに関する、第1のコンポーネントによって提供された情報を取得し、出力装置1403を用いて、マスタサーバにこの情報を提供する。このように、マスタサーバは、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールし、このため、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立しており、関連プラグインの、統一され自動化されたインストールが実行され、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
また、プロセッサ1402をCPUと呼ぶことができる。メモリ1401は、読み出し専用メモリおよびランダムアクセスメモリを含み、プロセッサ1402に命令とデータを提供することができる。メモリ1401の一部は、不揮発性ランダムアクセスメモリ(NVRAM)をさらに含むことができる。特定のアプリケーションでは、スレーブサーバ140のすべてのコンポーネントは、バスシステム1405を用いて連結され、ここで、バスシステム1405は、データバスに加えて、電力バス、制御バス、状態信号バスなどを含む。ただし、明確な説明のために、図中のすべてのバスは、バスシステム1405によって示されている。
図2、図3、または図5に示す実施形態に開示されている方法は、プロセッサ1402に適用されてもよいし、プロセッサ1402によって実装されてもよい。プロセッサ1402は、信号を処理することが可能な集積回路チップであってもよい。実装プロセスにおいて、方法のステップを、プロセッサ1402のハードウェアの集積論理回路によって、またはソフトウェアの形態での命令の手段によって完了することができる。プロセッサ1402は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理装置、ディスクリートゲートもしくはトランジスタ論理装置、またはディスクリートハードウェアアセンブリであってもよい。汎用プロセッサはマイクロプロセッサであってもよいし、プロセッサは任意の従来のプロセッサなどであってもよい。本発明の図2、図3、または図5に示す実施形態に開示されている方法のステップは、ハードウェア復号化プロセッサによって直接実行されてもよいし、復号化プロセッサのハードウェアとソフトウェアのモジュールの組合せによって実行されてもよい。ソフトウェアモジュールを、ランダムアクセスメモリ、フラッシュメモリ、読み出し専用メモリ、プログラマブル読み出し専用メモリもしくは電気的消去可能プログラマブルメモリ、またはレジスタなどの、当該技術分野で成熟した記憶媒体に配置することができる。記憶媒体はメモリ1401に配置され、プロセッサ1402はメモリ1401の情報を読み出し、プロセッサ1402のハードウェアと組み合わせて、方法のステップを完了する。
任意で、メモリ1401の一部が、スレーブサーバ140上のローカルの関連プラグインのウェアハウスとして使用されてもよいし、第1の関連プラグインを格納するために使用されてもよい。
任意の実装方法では、図14に示すように、スレーブサーバ140は、入力装置1404をさらに含んでいる。
入力装置1404は、マスタサーバによって送信された関連プラグインの管理命令を受信するように構成され、ここで、関連プラグインの管理命令は、第2のコンポーネントが配置される装置がスレーブサーバ140であると決定し、第1の関連プラグインの記述情報に従って第1の関連プラグインを決定した後に、マスタサーバによって送信され、第1の関連プラグインをスレーブサーバ140にインストールするように、スレーブサーバ140を命令するために使用される。
プロセッサ1402は、入力装置1404によって受信された関連プラグインの管理命令の命令に従って、第2のコンポーネントが配置される装置を決定し、第1の関連プラグインを決定し、そして、決定された第1の関連プラグインをスレーブサーバ140にインストールするように構成されている。
任意で、スレーブサーバ上のローカルの関連プラグインのウェアハウスとして使用されるメモリ1401の一部が、第1の関連プラグインのアップグレードパッケージを格納するために使用されてもよい。したがって、マスタサーバは、第1の関連プラグインに対応する格納されたアップグレードパッケージに従って、第2のコンポーネントが配置される装置上の第1の関連プラグインがアップグレードされる必要がある場合に、第1の関連プラグインをアップグレードする。具体的には、第2のコンポーネントが配置される装置上の第1の関連プラグインがアップグレードされる必要がある場合に、マスタサーバは、メモリ1401から第1の関連プラグインのアップグレードパッケージを取得し、次いで、第1の関連プラグインのアップグレードパッケージに従って第1の関連プラグインをアップグレードする。
任意で、メモリ1401の一部が、スレーブサーバ140上のローカルの関連プラグインリのサイクルウェアハウスとして使用されてもよいし、削除された関連プラグインを格納するために使用されてもよい。これに基づき、プロセッサ1402は、第1の関連プラグインが第2のコンポーネントが配置される装置から削除された後にマスタサーバの制御下で、メモリ1401のローカルの関連プラグインのウェアハウスとして使用された部分からメモリ1401のローカルの関連プラグインのリサイクルウェアハウスとして使用される部分に第1の関連プラグインを移動させることができる。
任意の実装方法では、第1のコンポーネントはインストールされるコンポーネントであり、マスタサーバにインストールされる必要がある。これに基づき、プロセッサ1402は、第1のコンポーネントに関する情報を取得し、出力装置1403を用いることによってマスタサーバに第1のコンポーネントに関する情報を提供するようにさらに構成され、このため、マスタサーバは、第1のコンポーネントに関する情報に従って第1のコンポーネントをマスタサーバにインストールする。
任意の実装方法では、第1のコンポーネントはインストールされるコンポーネントであり、スレーブサーバ140にインストールされる必要がある。これに基づいて、プロセッサ1402は、第1のコンポーネントに関する情報を取得し、第1のコンポーネントに関する取得した情報に従って、第1のコンポーネントをスレーブサーバ140にインストールするようにさらに構成される。
本実施形態で提供されるスレーブサーバは、前述の実施形態で提供されているマスタサーバと協働し、第1のコンポーネントによって提供される、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報は、マスタサーバに提供される。このように、マスタサーバは、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールすることができ、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立しており、関連プラグインの、統一され自動化されたインストールが実行され、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
図15は、本発明の実施形態に係る関連プラグインの管理装置の概略構成図である。図15に示すように、装置は、取得モジュール1501およびインストールモジュール1502を含んでいる。
取得モジュール1501は、ローカルに提供された登録インタフェースを用いて、第1の関連プラグインに関する情報を取得するように構成され、ここで、第1の関連プラグインは第1のコンポーネントによって提供され、第1の関連プラグインに関する情報は、第1のコンポーネントが登録インタフェースを用いて登録されるときに提供され、そして、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含む。
インストールモジュール1502は、取得モジュール1501に接続され、そして、第2のコンポーネントに関する、取得モジュール1501によって取得された情報に従って、第2のコンポーネントのインストールが完了したことが決定された後、第2のコンポーネントに関する情報および取得モジュール1501によって取得された情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするように構成され、ここで、第1のコンポーネントおよび第2のコンポーネントは同じ装置にインストールされている。
本実施形態の関連プラグインの管理装置は、第1のコンポーネントおよび第2のコンポーネントが配置される装置であり、すなわち、第1のコンポーネントおよび第2のコンポーネントの両方が、関連プラグインの管理装置にインストールされることが明記されている。
本実施形態に関与する第1のコンポーネントは、インストールされるコンポーネント、インストールされたコンポーネント、またはその時点でインストールされる必要のないコンポーネントであるが最終的に関連プラグインの管理装置にインストールされる必要があることが、明記されている。
任意の実装方法では、図16に示すように、関連プラグインの管理装置は、第3の格納モジュール1503および第4の格納モジュール1504をさらに含んでいる。
第3の格納モジュール1503は、関連プラグインの管理装置上の関連プラグインのウェアハウスとして使用されてもよく、関連プラグインの管理装置がすべての関連プラグインに集中管理を実行するために、第1の関連プラグインを格納するように構成されている。任意で、第3の取得モジュール1503は、取得モジュール1501に接続され、取得モジュール1501が第1の関連プラグインに関する情報を取得した後に、第1の関連プラグインを格納するように構成されている。
第4の格納モジュール1504は、関連プラグインのレジストリを格納するように構成されており、ここで、関連プラグインの管理装置がすべての関連プラグインに関する情報に対して集中管理を実行するために、第1の関連プラグインに関する、第1のコンポーネントによって提供される情報は、関連プラグインのレジストリに記録される。第4の格納モジュール1504は、取得モジュール1501に接続されている。
前述の説明に基づき、インストールモジュール1502は、第3の格納モジュール1503をポーリングし、第1の関連プラグインが第3の格納モジュール1503に追加されたことが発見されたときに、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするように特定して構成されている。
また、任意は、図16に示すように、関連プラグインの管理装置は、変更処理モジュール1505をさらに含んでいる。
変更処理モジュール1505は、第2のコンポーネントに関する情報および第1の関連プラグインが変わる場合の第1の関連プラグインの変更情報に従って、第1の関連プラグインに変更処理を実行するように構成され、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレード、または第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
任意で、第1の関連プラグインのための変更処理が、第2のコンポーネントが配置される装置上の第1の関連プラグインに対してアップグレードを実行するステップである場合、変更処理モジュール1505は、第1の関連プラグインの変更情報を出力するようにさらに構成され、第1の関連プラグインの変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。これに対応して、第3の格納モジュール1503は、第1の関連プラグインの変更情報を格納するようにさらに構成され、ここで、変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。第1の格納モジュール1503は、変更処理モジュール1505に接続され、第1の関連プラグインの変更情報を格納するように構成され、ここで、変更情報は、変更処理モジュール1505によって出力され、第1の関連プラグインに対応するアップグレードパッケージを含む。
任意の実装方法では、第1のコンポーネントはインストールされるコンポーネントであり、関連プラグインの管理装置にインストールされる必要がある。したがって、取得モジュール1501は、登録インタフェースを用いて第1のコンポーネントに関する情報を取得するようにさらに構成され、ここで、第1のコンポーネントに関する情報は、第1のコンポーネントが登録インタフェースを用いて登録されるときに提供される。これに対応して、インストールモジュール1502は、第1のコンポーネントに関する、取得モジュール1501によって取得された情報に従って、第1のコンポーネントを第2のコンポーネントが配置される装置にインストールするようにさらに構成されている。
本実施形態で提供される関連プラグインの管理装置の機能モジュールを、図6に示す方法の実施形態の手順を実行するために使用することができ、機能モジュールの詳細な動作原理は、ここでは繰り返されない。詳細については、本方法の実施形態の説明に参照され得る。
本実施形態で提供される関連プラグインの管理装置に従って、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報は、登録インタフェースを用いて取得され、ここで、第1の関連プラグインの記述情報および第2のコンポーネントに関する情報は、第1の関連プラグインおよび第1の関連プラグインを使用する第2のコンポーネントを決定するために、第1のコンポーネントによって、第1のコンポーネントが登録されるときに提供され、次いで、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に基づいて、第2のコンポーネントが配置される装置に第1の関連プラグインがインストールされる。本実施形態の関連プラグインの管理装置に従って、関連プラグインの記述情報および関連プラグインを使用するコンポーネントに関する情報を取得するステップに基づいて、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立することができ、関連プラグインの、統一され自動化されたインストールが実行され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
図17は、本発明の実施形態に係るサーバの概略構成図である。少なくとも2つのコンポーネントがサーバに配備され、ここで、少なくとも2つのコンポーネントは第1のコンポーネントおよび第2のコンポーネントを含み、第1の関連プラグインは、第1のコンポーネントと第2のコンポーネントとの間に存在する。図17の説明を容易にするために、第1のコンポーネントおよび第2のコンポーネント以外のコンポーネントは、別のコンポーネントとして示され、第1の関連プラグイン以外の関連プラグインは、別の関連プラグインとして示されている。図17に示すように、サーバは、関連プラグインのマネージャをさらに含み、関連プラグインのマネージャは、図15または図16に示す実施形態で提供されている関連プラグインの管理装置であってもよい。関連プラグインの管理装置の実装構造および動作原理に対して、前述の実施形態の説明が参照され得るが、ここではさらには説明されない。
本実施形態で提供されるサーバに従って、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報は、登録インタフェースを用いて取得され、ここで、第1の関連プラグインの記述情報および第2のコンポーネントに関する情報は、第1の関連プラグインおよび第1の関連プラグインを使用する第2のコンポーネントを決定するために、第1のコンポーネントによって、第1のコンポーネントが登録されるときに提供され、次いで、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に基づいて、第2のコンポーネントが配置される装置に第1の関連プラグインがインストールされる。本実施形態のサーバに従って、関連プラグインの記述情報および関連プラグインを使用するコンポーネントに関する情報を取得するステップに基づいて、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立することができ、関連プラグインの、統一され自動化されたインストールが実行され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
図18は、本発明の実施形態に係る別のサーバの概略構成図である。少なくとも2つのコンポーネントがサーバに配備され、ここで、少なくとも2つのコンポーネントは第1のコンポーネントおよび第2のコンポーネントを含み、第1の関連プラグインは、第1のコンポーネントと第2のコンポーネントとの間に存在する。図18に示すように、サーバ180は、メモリ1801およびプロセッサ1802をさらに含んでいる。
メモリ1801は、読み出し専用メモリおよびランダムアクセスメモリを含み、プロセッサ1802に命令とデータを提供することができる。メモリ1801の一部は、不揮発性ランダムアクセスメモリ(NVRAM)をさらに含むことができる。
メモリ1801は、実行可能モジュールやデータ構造、またはこれらのサブセット、またはこれらの拡張セット:各種の演算命令を含み、各種演算を実行するように構成された演算命令;および、各種のシステムプログラムを含み、さまざまな基本的なサービスを実現し、ハードウェアベースのタスクを処理するように構成されたオペレーティングシステムである要素を格納する。
本発明の実施形態では、プロセッサ1802は、ローカルに提供された登録インタフェースを用いて第1の関連プラグインに関する情報を取得するステップであって、第1の関連プラグインは第1のコンポーネントによって提供され、第1の関連プラグインに関する情報は、第1のコンポーネントが登録インタフェースを用いて登録されるときに提供され、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含む、ステップと、第2のコンポーネントに関する情報に従って第2のコンポーネントのインストールが完了したことを決定した後に、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップであって、第1のコンポーネントおよび第2のコンポーネントが同じ装置にインストールされるステップとを、メモリ1801に格納された演算命令(演算命令はオペレーティングシステムに格納され得る)を呼び出すことによって実行する。
本実施形態のサーバ180は、第1のコンポーネントおよび第2のコンポーネントが配置される装置であり、すなわち、第1のコンポーネントおよび第2のコンポーネントの両方が、サーバ180にインストールされることが明記されている。
本実施形態に関与する第1のコンポーネントは、インストールされるコンポーネント、インストールされたコンポーネント、またはその時点でインストールされる必要のないコンポーネントであるが最終的にサーバ180にインストールされる必要があることが明記されているが、これに限定されるものではない。
本実施形態では、登録インタフェースが提供されている。プロセッサ1802は、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を、登録インタフェースを用いて取得し、ここで、第1の関連プラグインの記述情報および第2のコンポーネントに関する情報は、第1のコンポーネントによって提供され、第1の関連プラグインおよび第1の関連プラグインを使用する第2のコンポーネントを決定するために、第1のコンポーネントが登録されるときに提供され、次いで、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に基づいて、プロセッサは、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールする。したがって、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立することができ、関連プラグインの、統一され自動化されたインストールが実行され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
また、プロセッサ1802をCPUと呼ぶことができる。メモリ1801は、読み出し専用メモリおよびランダムアクセスメモリを含み、プロセッサ1802に命令とデータを提供することができる。メモリ1801の一部は、不揮発性ランダムアクセスメモリ(NVRAM)をさらに含むことができる。特定のアプリケーションでは、サーバ180のコンポーネントは、バスシステム1805を用いて連結され、ここで、バスシステム1805は、データバスに加えて、電力バス、制御バス、状態信号バスなどを含む。ただし、明確な説明のために、図中のバスは、バスシステム1805によってすべて示されている。
図6に示す実施形態に開示されている方法は、プロセッサ1802に適用されてもよいし、プロセッサ1802によって実装されてもよい。プロセッサ1802は、信号を処理することが可能な集積回路チップであってもよい。実装プロセスにおいて、方法のステップを、ハードウェアの集積論理回路を用いて、またはプロセッサ1802のソフトウェアの形態での命令の手段によって完了することができる。プロセッサ1802は、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラマブル論理装置、ディスクリートゲートもしくはトランジスタ論理装置、またはディスクリートハードウェアアセンブリであってもよい。汎用プロセッサはマイクロプロセッサであってもよいし、プロセッサは任意の従来のプロセッサなどであってもよい。本発明の図6に示す実施形態に開示されている方法のステップは、ハードウェア復号化プロセッサによって直接実行されてもよいし、復号化プロセッサのハードウェアとソフトウェアのモジュールの組合せによって実行されてもよい。ソフトウェアモジュールを、ランダムアクセスメモリ、フラッシュメモリ、読み出し専用メモリ、プログラマブル読み出し専用メモリもしくは電気的消去可能プログラマブルメモリ、またはレジスタなどの、当該技術分野で成熟した記憶媒体に配置することができる。記憶媒体はメモリ1801に配置され、プロセッサ1802はメモリ1801の情報を読み出し、プロセッサ1802のハードウェアと組み合わせて、方法のステップを完了する。
任意で、サーバ180がすべての関連プラグインに対して集中管理を実行するために、メモリ1801の一部が、サーバ180上の関連プラグインのウェアハウスとして使用されてもよいし、第1の関連プラグインを格納するために使用されてもよい。
任意で、メモリ1801は、関連プラグインのレジストリをさらに格納することができ、ここで、サーバ180がすべての関連プラグインに関する情報に対して集中管理を実行するために、第1の関連プラグインに関する、第1のコンポーネントによって提供される情報は、関連プラグインのレジストリに記録される。
任意で、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールするステップにおいて、プロセッサ1802は、メモリ1801の関連プラグインのウェアハウスとして使用される一部をポーリングし、第1の関連プラグインがメモリ1801に追加されたことが発見されたときに、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするように特定して構成されている。
任意で、プロセッサ1802は、第2のコンポーネントに関する情報および第1の関連プラグインが変わる場合の第1の関連プラグインの変更情報に従って、第1の関連プラグインに変更処理を実行するようにさらに構成され、ここで、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレード、または第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
任意で、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインに対してアップグレードを実行するステップである場合、プロセッサ1802は、第1の関連プラグインの変更情報を出力するようにさらに構成され、第1の関連プラグインの変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。これに対応して、メモリ1801の関連プラグインのウェアハウスとして使用される部分は、第1の関連プラグインの変更情報を格納するようにさらに構成され、ここで、変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
また、図18に示すように、サーバ180は、出力装置1803および入力装置1804をさらに含み、これらは、サーバ180と別の装置との間の通信を完了することを担当している。
任意の実装方法では、第1のコンポーネントはインストールされるコンポーネントであり、サーバ180にインストールされる必要がある。これに応じて、プロセッサ1802は、登録インタフェースを用いて第1のコンポーネントに関する情報を取得するようにさらに構成され、ここで、第1のコンポーネントに関する情報は、第1のコンポーネントが登録インタフェースを用いて登録されるときに提供され、第1のコンポーネントに関する取得された情報に従って、第1のコンポーネントをサーバ180(すなわち、第2のコンポーネントが配置される装置)にインストールする。
本実施形態で提供されるサーバは、第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を、登録インタフェースを用いて取得し、ここで、第1の関連プラグインの記述情報および第2のコンポーネントに関する情報は、第1の関連プラグインおよび第1の関連プラグインを使用する第2のコンポーネントを決定するために、第1のコンポーネントによって、第1のコンポーネントが登録されるときに提供され、次いで、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に基づいて、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールする。本実施形態のサーバに従って、関連プラグインの記述情報および関連プラグインを使用するコンポーネントに関する情報を取得するステップに基づいて、関連プラグインのインストールプロセスは、関連プラグインを使用するコンポーネントのインストールプロセスから独立することができ、関連プラグインの、統一され自動化されたインストールが実行され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
図19は、本発明の実施形態に係る関連プラグインの管理システムの概略構成図である。図19に示すように、システムは、関連プラグインの管理サーバ装置1901および少なくとも1つの関連プラグインのエージェント装置1902を含んでいる。
関連プラグインの管理サーバ装置1901は、関連プラグインのエージェント装置1902を用いて第1の関連プラグインに関する情報を取得するように構成され、第1の関連プラグインに関する情報は第1の関連プラグインの記述情報および第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、第1の関連プラグインは、第1のコンポーネントによって提供され、そして、第2のコンポーネントに関する情報に従って第2のコンポーネントのインストールが完了したことを決定した後に、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを第2のコンポーネントが配置される装置にインストールする。
関連プラグインのエージェント装置1902は、第1の関連プラグインに関する、第1のコンポーネントによって提供される情報を取得し、第1の関連プラグインに関する、第1のコンポーネントによって提供される情報を、関連プラグインの管理サーバ装置1901に提供するように構成されている。
本実施形態に関与する第1のコンポーネントは、インストールされるコンポーネント、インストールされたコンポーネント、またはその時点でインストールされる必要のないコンポーネントであってもよいが、これに限定されるものではないことが、明記されている。
第2のコンポーネントが配置される装置が関連プラグインの管理サーバ装置1901であってもよいし、関連プラグインのエージェント装置1902であってもよいし、または関連プラグインの管理サーバ装置1901や関連プラグインのエージェント装置1902とは別の装置であってもよいことが、明記されている。本発明の実施形態は、第2のコンポーネントが配置される装置が、関連プラグインの管理サーバ装置1901または関連プラグインのエージェント装置1902である状況に焦点を当てたものである。
任意の実装方法では、関連プラグインのエージェント装置1902は、第1の関連プラグインを関連プラグインのエージェント装置1902上のローカルの関連プラグインのウェアハウスに格納するようにさらに構成され、関連プラグインの管理サーバ装置1901は、関連プラグインの管理サーバ装置1901上の中央の関連プラグインのウェアハウスに第1の関連プラグインを同期させるために、関連プラグインの管理サーバ装置1901上の中央の関連プラグインのウェアハウスおよび関連プラグインのエージェント装置1902上のローカルの関連プラグインのウェアハウスに対して同期を実行するようにさらに構成されている。
任意の実装方法では、関連プラグインの管理サーバ装置1901は、関連プラグインの管理サーバ装置1901上の中央の関連プラグインのウェアハウスをポーリングし、第1の関連プラグインが関連プラグインの管理サーバ装置1901上の中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、第2のコンポーネントに関する情報および第1の関連プラグインの記述情報に従って、第1の関連プラグインを、第2のコンポーネントが配置される装置にインストールするように特定して構成される。
任意の実装方法では、関連プラグインの管理サーバ装置1901は、第2のコンポーネントに関する情報および第1の関連プラグインが変わる場合の第1の関連プラグインの変更情報に従って、第1の関連プラグインに変更処理を実行するようにさらに構成され、ここで、第1の関連プラグインのための変更処理は、第2のコンポーネントが配置される装置上の第1の関連プラグインのアップグレード、または第2のコンポーネントが配置される装置上の第1の関連プラグインの削除を実行するステップを含む。
第1の関連プラグインのための変更処理が、第2のコンポーネントが配置される装置上の第1の関連プラグインに対してアップグレードを実行するステップである場合、第1の関連プラグインの変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
任意の実装方法では、第1の関連プラグインに対応するアップグレードパッケージは、関連プラグインの管理サーバ装置1901にインストールされる。したがって、関連プラグインの管理サーバ装置1901は、第1の関連プラグインに対応するアップグレードパッケージに従って直接に、第1の関連プラグインをアップグレードすることができる。これに基づき、関連プラグインの管理サーバ装置1901は、第1の関連プラグインに対してアップグレードを実行した後に、第1の関連プラグインの変更情報を関連プラグインの管理サーバ装置1901上の中央の関連プラグインのウェアハウスに格納するようにさらに構成され、ここで、変更情報は、第1の関連プラグインに対応するアップグレードパッケージを含む。
任意の実装方法では、第1の関連プラグインに対応するアップグレードパッケージは、関連プラグインのエージェント装置にインストールされる。関連プラグインのエージェント装置1902は、関連プラグインの管理サーバ装置1901が第1の関連プラグインをアップグレードする前に、第1の関連プラグインに対応するアップグレードパッケージを関連プラグインのエージェント装置1902上のローカルの関連プラグインのウェアハウスに格納するようにさらに構成され、これに対応して、関連プラグインの管理サーバ装置1901は、第1の関連プラグインをアップグレードする前に、関連プラグインのエージェント装置1902上のローカルの関連プラグインのウェアハウスから関連プラグインの管理サーバ装置1901上の中央の関連プラグインのウェアハウスに、第1の関連プラグインに対応するアップグレードパッケージを同期させるようにさらに構成されている。
任意の実装方法では、関連プラグインの管理サーバ装置1901は、第1の関連プラグインのための変更処理が第1の関連プラグインを第2のコンポーネントが配置される装置から削除するステップである場合、第1の関連プラグインを第2のコンポーネントが配置される装置から削除した後に、第1の関連プラグインを関連プラグインの管理サーバ装置1901上の中央の関連プラグインのウェアハウスから関連プラグインの管理サーバ装置1901上の中央の関連プラグインのリサイクルウェアハウスに移動させ、そして、第1の関連プラグインを関連プラグインのエージェント装置1902上のローカルの関連プラグインのウェアハウスから関連プラグインのエージェント装置1902上のローカルの関連プラグインのリサイクルウェアハウスに移動させるために、関連プラグインのエージェント装置1902を制御するように構成される。
任意の実装方法では、関連プラグインのエージェント装置1902は、第1のコンポーネントに関する情報を取得し、第1のコンポーネントに関する情報を関連プラグインのエージェント装置1901に提供するようにさらに構成される。これに対応して、関連プラグインのエージェント装置1901は、第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインの管理サーバ装置にインストールするようにさらに構成されている。
任意の実装方法では、関連プラグインのエージェント装置1902は、第1のコンポーネントに関する情報を取得し、第1のコンポーネントに関する情報に従って、第1のコンポーネントを関連プラグインのエージェント装置1902にインストールするようにさらに構成される。
本実施形態の関連プラグインの管理サーバ装置1901は、図7または図8に示す実施形態の関連プラグインの管理サーバ装置であってもよいことが明記されている。その特定の実装構造に対し、図7または図8が参照され得るが、ここではさらには説明されない。本実施形態の関連プラグインのエージェント装置1902は、図11または図12に示す実施形態の関連プラグインのエージェント装置であってもよい。その特定の実装構造に対し、図11または図12が参照され得るが、ここではさらには説明されない。
本実施形態で提供される関連プラグインの管理システムは、同じアプリケーションシステムに分散式に配備されたコンポーネント間の関連プラグインを管理するか、または異なるアプリケーションシステムに分散式に配備されたコンポーネント間の関連プラグインを管理することが明記されている。アプリケーションシステムは、警報システム、ネットワークトポロジシステム、またはセキュリティサブシステムなどであってもよい。
本実形態で提供される関連プラグインの管理システムでは、関連プラグインの管理サーバ装置および関連プラグインのエージェント装置は、関連プラグインに対して統一され自動化された管理および分散を実施するために使用され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
図20は、本発明の実施形態に係る分散システムの概略構成図である。図20に示すように、システムは、マスタサーバ2001および少なくとも1つのスレーブサーバ2002を含み、ここで、少なくとも1つのコンポーネントはマスタサーバ2001とスレーブサーバ2002のそれぞれに配備され、第1のコンポーネントおよび第2のコンポーネントは、マスタサーバ2001とスレーブサーバ2002に配備されたすべてのコンポーネントに含まれ、第1の関連プラグインは、第1のコンポーネントと第2のコンポーネントとの間に存在する。第1のコンポーネントおよび第2のコンポーネントは、マスタサーバ2001とスレーブサーバ2002上のすべてのコンポーネントに含まれることが明記されており、これは、第1のコンポーネントがマスタサーバ2001に配備され、第2のコンポーネントがスレーブサーバ2002に配備される状況、または、第1のコンポーネントがスレーブサーバ2002に配備され、第2のコンポーネントがマスタサーバ2001に配備される状況、または、第1のコンポーネントおよび第2のコンポーネントの両方がマスタサーバ2001に配備される状況、または、第1のコンポーネントおよび第2のコンポーネントの両方がスレーブサーバに2002配備される状況を含み、ここで、マスタサーバ2001は関連プラグインの管理サーバをさらに含み、関連プラグインの管理サーバは、図7または図8に示す実施形態で提供されている関連プラグインの管理サーバ装置であってもよい。関連プラグインの管理サーバ装置の実装構造および動作原理は、ここでは繰り返されない。詳細については、前述の実施形態の説明に参照され得る。
スレーブサーバ2002は、関連プラグインのエージェントをさらに含み、関連プラグインのエージェントは、図11または図12に示す実施形態で提供されている関連プラグインのエージェント装置であってもよい。関連プラグインのエージェント装置の実装構造および動作原理は、ここでは繰り返されない。詳細については、前述の実施形態の説明に参照され得る。
本実施形態で提供される分散システムは、同じアプリケーションシステムに分散式に配備されたコンポーネントによって形成されるか、または異なるアプリケーションシステムに分散式に配備されたコンポーネントによって形成され得ることが明記されている。アプリケーションシステムは、警報システム、ネットワークトポロジシステム、またはセキュリティサブシステムなどであってもよい。
本実形態で提供される分散システムでは、関連プラグインの管理サーバおよび関連プラグインのエージェントは、関連プラグインに対して統一され自動化された管理および分散を実施するために使用され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
図21は、本発明の実施形態に係る別の分散システムの概略構成図である。図21に示すように、システムは、マスタサーバ2101および少なくとも1つのスレーブサーバ2102を含み、ここで、少なくとも1つのコンポーネントはマスタサーバ2101とスレーブサーバ2102のそれぞれに配備され、第1のコンポーネントおよび第2のコンポーネントは、マスタサーバ2101とスレーブサーバ2102に配備されたすべてのコンポーネントに含まれ、第1の関連プラグインは、第1のコンポーネントと第2のコンポーネントとの間に存在する。第1のコンポーネントおよび第2のコンポーネントは、マスタサーバ2101とスレーブサーバ2102上のすべてのコンポーネントに含まれることが明記されており、これは、第1のコンポーネントがマスタサーバ2101に配備され、第2のコンポーネントがスレーブサーバ2102に配備される状況、または、第1のコンポーネントがスレーブサーバ2102に配備され、第2のコンポーネントがマスタサーバ2101に配備される状況、または、第1のコンポーネントおよび第2のコンポーネントの両方がマスタサーバ2101に配備される状況、または、第1のコンポーネントおよび第2のコンポーネントの両方がスレーブサーバに2102配備される状況を含み、ここで、マスタサーバ2101は、図10に示す実施形態で提供されているマスタサーバであってもよい。マスタサーバ2101の実装構造および動作原理は、ここでは繰り返されない。詳細については、前述の実施形態の説明に参照され得る。
スレーブサーバ2102は、図14に示す実施形態で提供されているスレーブサーバであってもよい。スレーブサーバ2102の実装構造および動作原理は、ここでは繰り返されない。詳細については、前述の実施形態の説明に参照され得る。
本実施形態で提供される分散システムは、同じアプリケーションシステムに分散式に配備されたコンポーネントによって形成されるか、または異なるアプリケーションシステムに分散式に配備されたコンポーネントによって形成され得ることが明記されている。アプリケーションシステムは、警報システム、ネットワークトポロジシステム、またはセキュリティサブシステムなどであってもよい。
本実形態で提供される分散システムでは、マスタサーバおよびスレーブサーバは、関連プラグインに対して統一され自動化された管理および分散を実施するために使用され、このため、関連プラグインに関係のあるコンポーネントの配備が、互いにもはや依存せず、関連プラグインに関係のあるコンポーネントの配備中のデカップリングが実現される。
当業者は、方法の実施形態のステップのすべてまたは一部が、プログラムによって、関連するハードウェア(例えば、プロセッサ)を指示することにより実現されてもよいことを理解することができる。前述のプログラムは、コンピュータ読み取り可能な記憶媒体に格納されてもよい。プログラムが実行されると、前述の方法の実施形態のステップが実行される。前述の記憶媒体は、ROM、RAM、磁気ディスク、または光ディスクのようなプログラムコードを格納することができる任意の媒体を含む。
最後に、前述の実施例は、本発明を制限する以外に本発明の技術的解決策を説明するためのものにすぎないことに留意すべきである。本発明を前述の実施形態を参照して詳細に説明したが、当業者は、本発明の実施形態の技術的解決策の範囲から逸脱することなく、それらが依然として前述の実施形態で説明した技術的解決策に変更を加えるか、一部またはすべてのその技術的特徴に同等の置換を行うことができることを理解すべきである。
71 取得モジュール
72 インストールモジュール
73 同期モジュール
74 変更処理モジュール
75 除去モジュール
76 格納モジュール
100 マスタサーバ
140 スレーブサーバ
180 サーバ
1001 メモリ
1002 プロセッサ
1003 出力装置
1004 入力装置
1005 バスシステム
1101 取得モジュール
1102 提供モジュール
1103 第1の格納モジュール
1104 受信モジュール
1105 第1のインストールモジュール
1106 除去モジュール
1107 第2の格納モジュール
1108 第2のインストールモジュール
1401 メモリ
1402 プロセッサ
1403 出力装置
1404 入力装置
1405 バスシステム
1501 取得モジュール
1502 インストールモジュール
1503 第3の格納モジュール
1504 第4の格納モジュール
1505 変更処理モジュール
1801 メモリ
1802 プロセッサ
1803 出力装置
1804 入力装置
1805 バスシステム
1901 管理サーバ装置
1902 エージェント装置
2001 マスタサーバ
2002 スレーブサーバ
2101 マスタサーバ
2102 スレーブサーバ

Claims (66)

  1. 関連プラグインの管理サーバ装置によって、関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得するステップであって、前記第1の関連プラグインに関する前記情報が前記第1の関連プラグインの記述情報および前記第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、前記第1の関連プラグインが第1のコンポーネントによって提供される、ステップと、
    前記第2のコンポーネントに関する前記情報に従って前記第2のコンポーネントのインストールが完了したことを決定した後に、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記関連プラグインの管理サーバ装置によって、前記第2のコンポーネントが配置される装置に前記第1の関連プラグインをインストールするステップと
    を含む、関連プラグインの管理方法。
  2. 前記第1の関連プラグインが、前記関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納され、
    前記方法が、
    前記第1の関連プラグインが前記関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに同期されるように、前記関連プラグインの管理サーバ装置によって、前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスおよび前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスに対して同期を実行するステップをさらに含む、
    請求項1に記載の方法。
  3. 前記関連プラグインの管理サーバ装置によって、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記第1の関連プラグインを前記第2のコンポーネントが配置される装置にインストールするステップが、
    前記関連プラグインの管理サーバ装置によって、前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスをポーリングするステップと、前記第1の関連プラグインが前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記第2のコンポーネントが配置される前記装置に前記第1の関連プラグインをインストールするステップと、
    を含む、請求項2に記載の方法。
  4. 前記関連プラグインの管理サーバ装置によって、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインが変わる場合の前記第1の関連プラグインの変更情報に従って、前記第1の関連プラグインに変更処理を実行するステップをさらに含み、前記第1の関連プラグインのための前記変更処理が、前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインのアップグレード、または前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインの削除を実行するステップを含む、請求項3に記載の方法。
  5. 前記第1の関連プラグインのための前記変更処理が、前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインに対してアップグレードを実行するステップである場合、前記第1の関連プラグインの前記変更情報が、前記第1の関連プラグインに対応するアップグレードパッケージを含む、請求項4に記載の方法。
  6. 前記方法が、前記関連プラグインの管理サーバ装置によって、前記第1の関連プラグインに対してアップグレードを実行した後に、前記第1の関連プラグインの前記変更情報を前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスに格納するステップをさらに含み、前記変更情報が、前記第1の関連プラグインに対応する前記アップグレードパッケージを含む、請求項5に記載の方法。
  7. 前記方法が、前記関連プラグインの管理サーバ装置によって、前記第1の関連プラグインに対してアップグレードを実行する前に、前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスから前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスに、前記第1の関連プラグインに対応する前記アップグレードパッケージを同期させるステップをさらに含む、請求項5に記載の方法。
  8. 前記第1の関連プラグインのための前記変更処理が前記第1の関連プラグインを前記第2のコンポーネントが配置される前記装置から削除するステップである場合、前記第1の関連プラグインが前記第2のコンポーネントが配置される前記装置から削除された後に、前記方法が、
    前記関連プラグインの管理サーバ装置によって、前記第1の関連プラグインを前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスから前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのリサイクルウェアハウスに移動させるステップ、および、前記第1の関連プラグインを前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスから前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのリサイクルウェアハウスに移動させるために、前記関連プラグインのエージェント装置を制御するステップをさらに含む、
    請求項4に記載の方法。
  9. 前記関連プラグインの管理サーバ装置によって、第2の関連プラグインを前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスに同期させるステップであって、前記第2の関連プラグインが、前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスに存在するが、前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスに存在しない、ステップと、
    前記関連プラグインの管理サーバ装置によって、前記第2の関連プラグインの記述情報および前記第2の関連プラグインを使用する第3のコンポーネントに関する情報に従って、前記第2の関連プラグインを前記第3のコンポーネントが配置される装置にインストールするステップと
    をさらに含む、請求項2から8のいずれか一項に記載の方法。
  10. 前記第2のコンポーネントが配置される前記装置が、前記関連プラグインのエージェント装置であり、
    前記第2のコンポーネントに関する情報および前記第1の関連プラグインの前記記述情報に従って、前記関連プラグインの管理サーバ装置によって、前記第1の関連プラグインを前記第2のコンポーネントが配置される装置にインストールするステップが、
    前記関連プラグインの管理サーバ装置によって、前記第2のコンポーネントに関する前記情報に従って、前記第2のコンポーネントが配置される前記装置が前記関連プラグインのエージェント装置であることを決定するステップと、前記第1の関連プラグインの前記記述情報に従って前記第1の関連プラグインを決定するステップと、前記第1の関連プラグインを前記関連プラグインのエージェント装置にインストールすることを前記関連プラグインのエージェント装置に命令するために、前記関連プラグインの管理命令を前記関連プラグインのエージェント装置に送信するステップとを含む、
    請求項1から9のいずれか一項に記載の方法。
  11. 関連プラグインの管理サーバ装置によって関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得するステップであって、前記第1の関連プラグインが第1のコンポーネントによって提供されるステップの後に、前記方法が、
    すべての関連プラグインに関する情報に対して集中管理を実行するために、前記関連プラグインの管理サーバ装置によって、前記第1の関連プラグインに関する前記情報を前記関連プラグインの管理サーバ装置の関連プラグインのレジストリに格納するステップをさらに含む、
    請求項1から10のいずれか一項に記載の方法。
  12. 関連プラグインの管理サーバ装置によって関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得するステップであって、前記第1の関連プラグインが第1のコンポーネントによって提供されるステップが、
    前記関連プラグインのエージェント装置が、前記関連プラグインのエージェント装置上の前記関連プラグインのレジストリをクエリすることによって、前記第1のコンポーネントによって提供される前記第1の関連プラグインに関する情報を取得し、前記第1の関連プラグインに関する情報を返信するために、前記関連プラグインの管理サーバ装置によって前記関連プラグインのエージェント装置にクエリ要求を送信するステップと、
    前記関連プラグインの管理サーバ装置によって、前記第1の関連プラグインに関する前記情報を受信するステップであって、前記第1の関連プラグインに関する前記情報は前記関連プラグインのエージェント装置によって返信され、前記第1の関連プラグインは前記第1のコンポーネントによって提供されるステップと
    を含む、請求項1から11のいずれか一項に記載の方法。
  13. 前記関連プラグインのエージェント装置を用いて、前記関連プラグインの管理サーバ装置によって、前記第1のコンポーネントに関する情報を取得するステップ、および前記第1のコンポーネントに関する前記情報に従って、前記第1のコンポーネントを前記関連プラグインの管理サーバ装置にインストールするステップをさらに含む、請求項1から12のいずれか一項に記載の方法。
  14. 関連プラグインのエージェント装置によって、第1の関連プラグインに関する情報を取得するステップであって、前記第1の関連プラグインに関する前記情報が前記第1の関連プラグインの記述情報および前記第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、前記第1の関連プラグインが第1のコンポーネントによって提供される、ステップと、
    前記関連プラグインのエージェント装置によって、前記第1の関連プラグインに関する前記情報を関連プラグインの管理サーバ装置に提供するステップであって、このため前記関連プラグインの管理サーバ装置が、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記第1の関連プラグインを前記第2のコンポーネントが配置される装置にインストールする、ステップと、
    を含む、関連プラグインの管理方法。
  15. 前記関連プラグインのエージェント装置によって、前記第1の関連プラグインを前記関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納するステップをさらに含む、請求項14に記載の方法。
  16. 前記関連プラグインのエージェント装置によって、前記関連プラグインの管理サーバ装置によって送信された関連プラグインの管理命令を受信するステップであって、前記関連プラグインの管理命令が、前記第2のコンポーネントが配置される前記装置が前記関連プラグインのエージェント装置であることを決定し、前記第1の関連プラグインの前記記述情報に従って前記第1の関連プラグインを決定した後に、前記関連プラグインの管理サーバ装置によって送信され、前記関連プラグインのエージェント装置に前記第1の関連プラグインをインストールするように前記関連プラグインのエージェント装置を命令するために使用される、ステップと、
    前記関連プラグインのエージェント装置によって、前記関連プラグインの管理命令の命令に従って前記第1の関連プラグインを決定し、前記決定された第1の関連プラグインを前記関連プラグインのエージェント装置にインストールするステップと
    をさらに含む、請求項14または15に記載の方法。
  17. 前記方法が、前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインがアップグレードされる必要がある場合、前記関連プラグインのエージェント装置によって、前記第1の関連プラグインのアップグレードパッケージを前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスに格納するステップをさらに含み、このため、前記関連プラグインの管理サーバ装置が、前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスから前記関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに前記第1の関連プラグインの前記アップグレードパッケージを同期した後に、前記第1の関連プラグインに対してアップグレードを実行する、請求項15または16に記載の方法。
  18. 前記第1の関連プラグインが前記第2のコンポーネントが配置される前記装置から削除された後に、前記方法が、
    前記関連プラグインのエージェント装置によって、前記関連プラグインの管理サーバ装置の制御下で、前記第1の関連プラグインを、前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスから前記関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスに移動させるステップをさらに含む、
    請求項15または16に記載の方法。
  19. 前記関連プラグインのエージェント装置によって、前記第1のコンポーネントに関する情報を取得するステップ、および前記第1のコンポーネントに関する前記情報を前記関連プラグインの管理サーバ装置に提供するステップであって、このため、前記関連プラグインの管理サーバ装置が、前記第1のコンポーネントに関する前記情報に従って、前記第1のコンポーネントを前記関連プラグインの管理サーバ装置にインストールする、ステップをさらに含む、請求項14から18のいずれか一項に記載の方法。
  20. 前記関連プラグインのエージェント装置によって、前記第1のコンポーネントに関する情報を取得するステップ、および前記第1のコンポーネントに関する前記情報に従って、前記第1のコンポーネントを前記関連プラグインのエージェント装置にインストールするステップをさらに含む、請求項14から18のいずれか一項に記載の方法。
  21. ローカルに提供された登録インタフェースを用いて第1の関連プラグインに関する情報を取得するステップであって、前記第1の関連プラグインが第1のコンポーネントによって提供され、前記第1の関連プラグインに関する前記情報が、前記第1のコンポーネントが前記登録インタフェースを用いて登録されるときに提供され、前記第1の関連プラグインに関する前記情報が、前記第1の関連プラグインの記述情報および前記第1の関連プラグインを使用する第2のコンポーネントに関する情報を含む、ステップと、
    前記第2のコンポーネントに関する前記情報に従って前記第2のコンポーネントのインストールが完了したことを決定した後に、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記第1の関連プラグインを前記第2のコンポーネントが配置される装置にインストールするステップであって、前記第1のコンポーネントおよび前記第2のコンポーネントが同じ装置にインストールされるステップと
    を含む、関連プラグインの管理方法。
  22. すべての関連プラグインに集中管理を実行するために、関連プラグインのウェアハウスに前記第1の関連プラグインを格納するステップと、
    すべての前記関連プラグインに関する情報に集中管理を実行するために、関連プラグインのレジストリに前記第1の関連プラグインに関する前記情報を格納するステップと
    をさらに含む、請求項21に記載の方法。
  23. 前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記第1の関連プラグインを前記第2のコンポーネントが配置される装置にインストールするステップが、
    前記関連プラグインのウェアハウスをポーリングするステップ、および、前記第1の関連プラグインが前記関連プラグインのウェアハウスに追加されたことが発見されたときに、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記第1の関連プラグインを、前記第2のコンポーネントが配置される前記装置にインストールするステップを含む、
    請求項22に記載の方法。
  24. 前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインが変わる場合の前記第1の関連プラグインの変更情報に従って、前記第1の関連プラグインに変更処理を実行するステップをさらに含み、前記第1の関連プラグインのための前記変更処理が、前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインのアップグレード、または前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインの削除を実行するステップを含む、請求項23に記載の方法。
  25. 前記第1の関連プラグインのための前記変更処理が、前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインに対してアップグレードを実行するステップである場合、前記第1の関連プラグインの前記変更情報が、前記第1の関連プラグインに対応するアップグレードパッケージを含み、
    前記方法が、
    前記第1の関連プラグインに対してアップグレードを実行した後に、前記第1の関連プラグインの前記変更情報を前記関連プラグインのウェアハウスに格納するステップであって、前記変更情報が、前記第1の関連プラグインに対応する前記アップグレードパッケージを含むステップをさらに含む、
    請求項24に記載の方法。
  26. 前記登録インタフェースを用いて前記第1のコンポーネントに関する情報を取得するステップであって、前記第1のコンポーネントに関する前記情報が、前記第1のコンポーネントが前記登録インタフェースを用いて登録されるときに提供されるステップと、前記第1のコンポーネントに関する前記情報に従って、前記第1のコンポーネントを前記第2のコンポーネントが配置される前記装置にインストールするステップとをさらに含む、請求項21から25のいずれか一項に記載の方法。
  27. 関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得する取得モジュールであって、前記第1の関連プラグインに関する前記情報が前記第1の関連プラグインの記述情報および前記第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、前記第1の関連プラグインが第1のコンポーネントによって提供される、取得モジュールと、
    前記第2のコンポーネントに関する情報に従って第2のコンポーネントのインストールが完了したことを決定した後に、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って前記第1の関連プラグインを前記第2のコンポーネントが配置される装置にインストールするインストールモジュールと
    を含む、関連プラグインの管理サーバ装置。
  28. 前記第1の関連プラグインが前記関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに同期されるように、前記第1の関連プラグインが前記関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納された場合に、前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスと前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスの同期を実行する同期モジュールをさらに含む、請求項27に記載の装置。
  29. 前記インストールモジュールが、前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスをポーリングし、前記第1の関連プラグインが前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記第1の関連プラグインを、前記第2のコンポーネントが配置される前記装置にインストールするように特定して構成されている、請求項28に記載の装置。
  30. 前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインが変わる場合の前記第1の関連プラグインの変更情報に従って、前記第1の関連プラグインに変更処理を実行する変更処理モジュールをさらに含み、前記第1の関連プラグインのための前記変更処理が、前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインのアップグレード、または前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインの削除を実行するステップを含む、請求項29に記載の装置。
  31. 前記第1の関連プラグインのための前記変更処理が、前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインに対してアップグレードを実行するステップである場合、前記変更処理モジュールが、前記第1の関連プラグインの前記変更情報を出力するようにさらに構成され、前記第1の関連プラグインの前記変更情報が、前記第1の関連プラグインに対応するアップグレードパッケージを含む、請求項30に記載の装置。
  32. 前記変更処理モジュールが、前記第1の関連プラグインに対してアップグレードを実行した後に、前記第1の関連プラグインの前記変更情報を前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスに格納するようにさらに構成され、前記変更情報が、前記第1の関連プラグインに対応する前記アップグレードパッケージを含む、請求項31に記載の装置。
  33. 前記同期モジュールが、前記変更処理モジュールが前記第1の関連プラグインに対してアップグレードを実行する前に、前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスから前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスに、前記第1の関連プラグインに対応する前記アップグレードパッケージを同期させるようにさらに構成されている、請求項31に記載の装置。
  34. 前記第1の関連プラグインのための前記変更処理が前記第1の関連プラグインを前記第2のコンポーネントが配置される前記装置から削除するステップである場合、前記変更処理モジュールが前記第1の関連プラグインを前記第2のコンポーネントが配置される前記装置から削除した後に、前記第1の関連プラグインを前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスから前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのリサイクルウェアハウスに移動させ、そして、前記第1の関連プラグインを前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスから前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのリサイクルウェアハウスに移動させるために、前記関連プラグインのエージェント装置を制御する除去モジュールをさらに含む、請求項30に記載の装置。
  35. 前記同期モジュールが、第2の関連プラグインを前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスに同期させるようにさらに構成され、前記第2の関連プラグインが、前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスに存在するが、前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスに存在せず、
    前記インストールモジュールが、前記第2の関連プラグインの記述情報および前記第2の関連プラグインを使用する第3のコンポーネントに関する情報に従って、前記第2の関連プラグインを前記第3のコンポーネントが配置される装置にインストールするようにさらに構成されている、
    請求項28から34のいずれか一項に記載の装置。
  36. 前記第2のコンポーネントが配置される前記装置が前記関連プラグインのエージェント装置であり、
    前記インストールモジュールが、前記第2のコンポーネントに関する前記情報に従って、前記第2のコンポーネントが配置される前記装置が前記関連プラグインのエージェント装置であると決定し、前記第1の関連プラグインの前記記述情報に従って、前記第1の関連プラグインを決定し、前記第1の関連プラグインを前記関連プラグインのエージェント装置にインストールするように、前記関連プラグインのエージェント装置に命令するために、関連プラグインの管理命令を前記関連プラグインのエージェント装置に送信するように特定して構成されている、
    請求項27から35のいずれか一項に記載の装置。
  37. 関連プラグインのレジストリを格納する格納モジュールをさらに含み、前記関連プラグインの管理サーバ装置がすべての関連プラグインに関する情報に対して集中管理を実行するように、前記第1の関連プラグインに関する前記情報が、前記関連プラグインのレジストリ記録に記録される、請求項27から36のいずれか一項に記載の装置。
  38. 取得モジュールが、前記関連プラグインのエージェント装置にクエリ要求を送信し、前記第1の関連プラグインに関する前記情報を受信するように特定して構成され、前記第1の関連プラグインに関する前記情報が、前記クエリ要求に応答して前記関連プラグインのエージェント装置によって返信され、前記第1の関連プラグインに関する前記情報が、前記関連プラグインのエージェント装置上の前記関連プラグインのレジストリをクエリすることによって、前記関連プラグインのエージェント装置によって取得され、前記関連プラグインのエージェント装置によって返信され、前記第1の関連プラグインが前記第1のコンポーネントによって提供される、請求項27から37のいずれか一項に記載の装置。
  39. 前記取得モジュールが、前記関連プラグインのエージェント装置を用いて、前記第1のコンポーネントに関する情報を取得するようにさらに構成され、
    前記インストールモジュールが、前記第1のコンポーネントに関する前記情報に従って、前記第1のコンポーネントを前記関連プラグインの管理サーバ装置にインストールするようにさらに構成されている、
    請求項27から38のいずれか一項に記載の装置。
  40. 第1の関連プラグインに関する情報を取得する取得モジュールであって、前記第1の関連プラグインに関する前記情報が前記第1の関連プラグインの記述情報および前記第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、前記第1の関連プラグインが第1のコンポーネントによって提供される、取得モジュールと、
    前記第1の関連プラグインに関する前記情報を関連プラグインの管理サーバ装置に提供する提供モジュールであって、このため前記関連プラグインの管理サーバ装置が、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記第1の関連プラグインを前記第2のコンポーネントが配置される装置にインストールする、提供モジュールと、
    を含む、関連プラグインのエージェント装置。
  41. 前記第1の関連プラグインを格納する第1の格納モジュールをさらに含み、前記第1の格納モジュールが、前記関連プラグインのエージェント装置のローカルの関連プラグインのウェアハウスとして使用される、請求項40に記載の装置。
  42. 前記関連プラグインの管理サーバ装置によって送信された関連プラグインの管理命令を受信する受信モジュールであって、前記前記関連プラグインの管理命令が、前記第2のコンポーネントが配置される前記装置が前記関連プラグインのエージェント装置であることを決定し、前記第1の関連プラグインの前記記述情報に従って前記第1の関連プラグインを決定した後に、前記関連プラグインの管理サーバ装置によって送信され、前記関連プラグインのエージェント装置に前記第1の関連プラグインをインストールするように前記関連プラグインのエージェント装置を命令するために使用される、受信モジュールと、
    前記関連プラグインの管理命令の命令に従って前記第1の関連プラグインを決定し、前記決定された第1の関連プラグインを前記関連プラグインのエージェント装置にインストールする第1のインストールモジュールと
    をさらに含む、請求項40または41に記載の装置。
  43. 前記第1の格納モジュールが、第1の関連プラグインのアップグレードパッケージを格納するようにさらに構成され、このため、前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインがアップグレードされる必要がある場合に、前記関連プラグインの管理サーバ装置が、前記第1の関連プラグインの格納されたアップグレードパッケージに従って、前記第1の関連プラグインにアップグレード処理を実行する、請求項41または42に記載の装置。
  44. 前記第1の関連プラグインが前記第2のコンポーネントが配置される前記装置から削除された後に、前記関連プラグインの管理サーバ装置の制御下で、前記第1の関連プラグインを、前記第1の格納モジュールから前記関連プラグインのエージェント装置上の第2の格納モジュールに移動させる除去モジュールと、
    前記第1の格納モジュールから移動された前記第1の関連プラグインを格納する前記第2の格納モジュールであって、前記第2の格納モジュールが、前記関連プラグインのエージェント装置のローカルの関連プラグインのリサイクルウェアハウスとして使用される、第2の格納モジュールと
    をさらに含む、請求項41または42に記載の装置。
  45. 前記取得モジュールが、前記第1のコンポーネントに関する情報を取得するようにさらに構成され、
    前記提供モジュールが、前記第1のコンポーネントに関する前記情報を前記関連プラグインの管理サーバ装置に提供し、このため、前記関連プラグインの管理サーバ装置が、前記第1のコンポーネントに関する前記情報に従って、前記第1のコンポーネントを前記関連プラグインの管理サーバ装置にインストールする、ようにさらに構成される、
    請求項40から44のいずれか一項に記載の装置。
  46. 前記取得モジュールが、前記第1のコンポーネントに関する情報を取得するようにさらに構成され、
    前記第2のインストールモジュールが、前記第1のコンポーネントに関する前記情報に従って、前記第1のコンポーネントを前記関連プラグインのエージェント装置にインストールするように構成されている、
    請求項40から44のいずれか一項に記載の装置。
  47. ローカルに提供された登録インタフェースを用いて第1の関連プラグインに関する情報を取得する取得モジュールであって、前記第1の関連プラグインが第1のコンポーネントによって提供され、前記第1の関連プラグインに関する前記情報が、前記第1のコンポーネントが前記登録インタフェースを用いて登録されるときに提供され、前記第1の関連プラグインに関する前記情報が、前記第1の関連プラグインの記述情報および前記第1の関連プラグインを使用する第2のコンポーネントに関する情報を含む、取得モジュールと、
    前記第2のコンポーネントに関する前記情報に従って前記第2のコンポーネントのインストールが完了したことを決定した後に、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記第1の関連プラグインを前記第2のコンポーネントが配置される装置にインストールするインストールモジュールであって、前記第1のコンポーネントおよび前記第2のコンポーネントが同じ装置にインストールされるインストールモジュールと
    を含む、関連プラグインの管理装置。
  48. 関連プラグインの管理装置がすべての関連プラグインに対して集中管理を実行するために、前記第1の関連プラグインを格納する第3の格納モジュールであって、前記第3の格納モジュールが、前記関連プラグインの管理装置の関連プラグインのウェアハウスとして使用される、第3の格納モジュールと、
    関連プラグインのレジストリを格納する第4の格納モジュールであって、前記関連プラグインの管理装置がすべての前記関連プラグインに関する情報に対して集中管理を実行するために、前記第1のコンポーネントによって提供される前記第1の関連プラグインに関する前記情報が、前記関連プラグインのレジストリに記録される、第4の格納モジュールと
    をさらに含む、請求項47に記載の装置。
  49. 前記インストールモジュールが、前記第3の格納モジュールをポーリングし、前記第1の関連プラグインが前記第3の格納モジュールに追加されたことが発見されたときに、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記第1の関連プラグインを、前記第2のコンポーネントが配置される前記装置にインストールするように特定して構成されている、請求項48に記載の装置。
  50. 前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインが変わる場合の前記第1の関連プラグインの変更情報に従って、前記第1の関連プラグインに変更処理を実行する変更処理モジュールをさらに含み、前記第1の関連プラグインのための前記変更処理が、前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインのアップグレード、または前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインの削除を実行するステップを含む、請求項49に記載の装置。
  51. 前記第1の関連プラグインのための前記変更処理が、前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインに対してアップグレードを実行するステップである場合、前記変更処理モジュールが、前記第1の関連プラグインの前記変更情報を出力するようにさらに構成され、前記第1の関連プラグインの前記変更情報が、前記第1の関連プラグインに対応するアップグレードパッケージを含み、
    前記第3の格納モジュールが、前記第1の関連プラグインの前記変更情報を格納するようにさらに構成され、前記変更情報が、前記第1の関連プラグインに対応する前記アップグレードパッケージを含む、
    請求項50に記載の装置。
  52. 前記取得モジュールが、前記登録インタフェースを用いて前記第1のコンポーネントに関する情報を取得するようにさらに構成され、前記第1のコンポーネントに関する前記情報が、前記第1のコンポーネントが前記登録インタフェースを用いて登録されるときに提供され、
    前記インストールモジュールが、前記第1のコンポーネントに関する前記情報に従って、前記第1のコンポーネントを前記第2のコンポーネントが配置される前記装置にインストールするようにさらに構成されている、
    請求項47から51のいずれか一項に記載の装置。
  53. マスタサーバが、少なくとも1つのスレーブサーバに通信可能に接続され、少なくとも1つのコンポーネントが前記マスタサーバと前記スレーブサーバのそれぞれに配備され、第1のコンポーネントおよび第2のコンポーネントが、前記マスタサーバと前記スレーブサーバに配備されたすべてのコンポーネントに含まれ、第1の関連プラグインが、前記第1のコンポーネントと前記第2のコンポーネントとの間に存在し、前記マスタサーバが、関連プラグインの管理サーバをさらに含み、前記関連プラグインの管理サーバが、請求項27から39のいずれか一項に記載の関連プラグインの管理サーバ装置である、マスタサーバ。
  54. スレーブサーバが、マスタサーバに通信可能に接続され、少なくとも1つのコンポーネントが前記スレーブサーバと前記マスタサーバのそれぞれに配備され、第1のコンポーネントおよび第2のコンポーネントが、前記スレーブサーバと前記マスタサーバに配備されたすべてのコンポーネントに含まれ、第1の関連プラグインが、前記第1のコンポーネントと前記第2のコンポーネントとの間に存在し、前記スレーブサーバが、関連プラグインのエージェントをさらに含み、前記関連プラグインのエージェントが、請求項40から46のいずれか一項に記載の関連プラグインのエージェント装置である、スレーブサーバ。
  55. 少なくとも2つのコンポーネントがサーバに配備され、前記少なくとも2つのコンポーネントが第1のコンポーネントおよび第2のコンポーネントを含み、第1の関連プラグインが、前記第1のコンポーネントと前記第2のコンポーネントとの間に存在し、前記サーバが、関連プラグインのマネージャをさらに含み、前記関連プラグインのマネージャが、請求項47から52のいずれか一項に記載の関連プラグインの管理装置である、サーバ。
  56. 関連プラグインの管理サーバ装置および少なくとも1つの関連プラグインのエージェント装置を含む関連プラグインの管理システムであって、
    前記関連プラグインの管理サーバ装置が、前記関連プラグインのエージェント装置を用いて第1の関連プラグインに関する情報を取得し、ここで、前記第1の関連プラグインに関する前記情報が前記第1の関連プラグインの記述情報および前記第1の関連プラグインを使用する第2のコンポーネントに関する情報を含み、前記第1の関連プラグインは第1のコンポーネントによって提供され、;前記第2のコンポーネントに関する前記情報に従って前記第2のコンポーネントのインストールが完了したことを決定した後に、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記第1の関連プラグインを前記第2のコンポーネントが配置される装置にインストールするように構成され、
    前記関連プラグインのエージェント装置が、前記第1のコンポーネントによって提供される前記第1の関連プラグインに関する前記情報を取得し、前記関連プラグインの管理サーバ装置に前記第1の関連プラグインに関する前記情報を提供するように構成されている、
    関連プラグインの管理システム。
  57. 前記関連プラグインのエージェント装置が、前記第1の関連プラグインを前記関連プラグインのエージェント装置上のローカルの関連プラグインのウェアハウスに格納するようにさらに構成され、
    前記関連プラグインの管理サーバ装置上の中央の関連プラグインのウェアハウスに第1の関連プラグインを同期させるために、前記関連プラグインの管理サーバ装置が、前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスおよび前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスに対して同期を実行するようにさらに構成されている
    請求項56に記載のシステム。
  58. 前記関連プラグインの管理サーバ装置が、前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスをポーリングし、前記第1の関連プラグインが前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスに追加されたことが発見されたときに、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインの前記記述情報に従って、前記第1の関連プラグインを、前記第2のコンポーネントが配置される前記装置にインストールするように特定して構成されている、請求項57に記載のシステム。
  59. 前記関連プラグインの管理サーバ装置が、前記第2のコンポーネントに関する前記情報および前記第1の関連プラグインが変わる場合の前記第1の関連プラグインの変更情報に従って、前記第1の関連プラグインに変更処理を実行するようにさらに構成され、前記第1の関連プラグインのための前記変更処理が、前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインのアップグレード、または前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインの削除を実行するステップを含む、請求項58に記載のシステム。
  60. 前記第1の関連プラグインのための前記変更処理が、前記第2のコンポーネントが配置される前記装置上の前記第1の関連プラグインに対してアップグレードを実行するステップである場合、前記第1の関連プラグインの前記変更情報が、前記第1の関連プラグインに対応するアップグレードパッケージを含む、請求項59に記載のシステム。
  61. 前記関連プラグインの管理サーバ装置が、前記第1の関連プラグインに対してアップグレードを実行した後に、前記第1の関連プラグインの前記変更情報を前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスに格納するようにさらに構成され、前記変更情報が、前記第1の関連プラグインに対応する前記アップグレードパッケージを含む、請求項60に記載のシステム。
  62. 前記関連プラグインのエージェント装置が、前記関連プラグインの管理サーバ装置が前記第1の関連プラグインにアップグレードを実行する前に、前記第1の関連プラグインに対応する前記アップグレードパッケージを前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスに格納するようにさらに構成され、
    前記関連プラグインの管理サーバ装置が、前記第1の関連プラグインにアップグレードを実行する前に、前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスから前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスに、前記第1の関連プラグインに対応する前記アップグレードパッケージを同期させるようにさらに構成されている、
    請求項60に記載のシステム。
  63. 前記関連プラグインの管理サーバ装置が、前記第1の関連プラグインのための前記変更処理が前記第1の関連プラグインを前記第2のコンポーネントが配置される前記装置から削除するステップである場合、前記第1の関連プラグインが前記第2のコンポーネントが配置される前記装置から削除された後に、前記第1の関連プラグインを前記関連プラグインの管理サーバ装置上の前記中央の関連プラグインのウェアハウスから前記関連プラグインの管理サーバ装置上の中央の関連プラグインのリサイクルウェアハウスに移動させ、そして、前記第1の関連プラグインを前記関連プラグインのエージェント装置上の前記ローカルの関連プラグインのウェアハウスから前記関連プラグインのエージェント装置上のローカルの関連プラグインのリサイクルウェアハウスに移動させるために、前記関連プラグインのエージェント装置を制御するようにさらに構成されている、請求項59に記載のシステム。
  64. 前記関連プラグインのエージェント装置が、前記第1のコンポーネントに関する情報を取得し、前記第1のコンポーネントに関する前記情報を前記関連プラグインのエージェント装置に提供するようにさらに構成され、
    前記関連プラグインのエージェント装置が、前記第1のコンポーネントに関する前記情報に従って、前記第1のコンポーネントを前記関連プラグインの管理サーバ装置にインストールするようにさらに構成されている、
    請求項56から63のいずれか一項に記載のシステム。
  65. 前記関連プラグインのエージェント装置が、前記第1のコンポーネントに関する情報を取得し、前記第1のコンポーネントに関する前記情報に従って、前記第1のコンポーネントを前記関連プラグインのエージェント装置にインストールするようにさらに構成されている、請求項56から63のいずれか一項に記載のシステム。
  66. マスタサーバおよび少なくとも1つのスレーブサーバを含む分散システムであって、少なくとも1つのコンポーネントが前記マスタサーバと前記スレーブサーバのそれぞれに配備され、第1のコンポーネントおよび第2のコンポーネントが、前記マスタサーバと前記スレーブサーバに配備されたすべてのコンポーネントに含まれ、前記第1の関連プラグインが、前記第1のコンポーネントと前記第2のコンポーネントとの間に存在し、
    前記マスタサーバが、関連プラグインの管理サーバをさらに含み、前記関連プラグインの管理サーバが、請求項27から39のいずれか一項に記載の関連プラグインの管理サーバ装置であり、
    前記スレーブサーバが、関連プラグインのエージェントをさらに含み、前記関連プラグインのエージェントが、請求項40から46のいずれか一項に記載の関連プラグインのエージェント装置である、
    分散システム。
JP2016530298A 2013-07-31 2013-07-31 関連プラグインの管理方法、装置およびシステム Active JP6217034B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/080571 WO2015013936A1 (zh) 2013-07-31 2013-07-31 关联插件管理方法、设备及系统

Publications (2)

Publication Number Publication Date
JP2016528621A true JP2016528621A (ja) 2016-09-15
JP6217034B2 JP6217034B2 (ja) 2017-10-25

Family

ID=50253406

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016530298A Active JP6217034B2 (ja) 2013-07-31 2013-07-31 関連プラグインの管理方法、装置およびシステム

Country Status (5)

Country Link
US (1) US9195480B2 (ja)
EP (1) EP2854028A4 (ja)
JP (1) JP6217034B2 (ja)
CN (1) CN103649915B (ja)
WO (1) WO2015013936A1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103309700B (zh) * 2012-03-16 2016-05-18 腾讯科技(深圳)有限公司 一种插件管理控制方法及装置
US10257017B2 (en) 2014-06-03 2019-04-09 JumpCloud, Inc. Autonomous server agents
JPWO2015194139A1 (ja) * 2014-06-17 2017-04-20 日本電気株式会社 情報処理装置、配備方法、及び、プログラム
US9836315B1 (en) * 2014-06-25 2017-12-05 Amazon Technologies, Inc. De-referenced package execution
US11507663B2 (en) 2014-08-11 2022-11-22 Sentinel Labs Israel Ltd. Method of remediating operations performed by a program and system thereof
US9710648B2 (en) 2014-08-11 2017-07-18 Sentinel Labs Israel Ltd. Method of malware detection and system thereof
CN105335187B (zh) 2014-08-14 2019-12-13 阿里巴巴集团控股有限公司 一种应用的处理方法及装置
CN105991687B (zh) * 2015-02-03 2019-09-17 阿里巴巴集团控股有限公司 一种服务管理方法和装置
CN104932887B (zh) * 2015-06-12 2018-02-02 北京京东尚科信息技术有限公司 一种平台系统的插件管理方法和平台系统
CN105119790B (zh) * 2015-09-09 2019-02-19 小米科技有限责任公司 设备控制方法及装置
CN115051884A (zh) * 2016-12-27 2022-09-13 英特尔公司 用于iot协议标识和管理的方法和装置
WO2019032728A1 (en) 2017-08-08 2019-02-14 Sentinel Labs, Inc. METHODS, SYSTEMS AND DEVICES FOR DYNAMICALLY MODELING AND REGROUPING END POINTS FOR ONBOARD NETWORKING
CN108681491B (zh) * 2018-05-04 2021-03-02 武汉极意网络科技有限公司 一种文件解耦方法及系统
EP3973427A4 (en) 2019-05-20 2023-06-21 Sentinel Labs Israel Ltd. SYSTEMS AND METHODS FOR EXECUTABLE CODE DETECTION, AUTOMATIC FEATURE EXTRACTION, AND POSITION-INDEPENDENT CODE DETECTION
US11321101B2 (en) * 2019-07-10 2022-05-03 Vmware, Inc. Deployment and isolation of plugins in a virtualized computing environment
CN112433776B (zh) * 2020-10-16 2022-06-28 广东电力信息科技有限公司 电网业务处理系统
US11579857B2 (en) * 2020-12-16 2023-02-14 Sentinel Labs Israel Ltd. Systems, methods and devices for device fingerprinting and automatic deployment of software in a computing network using a peer-to-peer approach
CN113239328B (zh) * 2021-05-20 2023-06-06 瀚云科技有限公司 一种业务功能获取方法、装置、电子设备和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10154078A (ja) * 1996-10-07 1998-06-09 Internatl Business Mach Corp <Ibm> ネットワーク・サービスへのアクセス提供方法
JP2000353093A (ja) * 1999-06-11 2000-12-19 Hitachi Ltd スタブ、スケルトンの配信方法

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6493871B1 (en) * 1999-09-16 2002-12-10 Microsoft Corporation Method and system for downloading updates for software installation
US6871345B1 (en) * 2000-04-04 2005-03-22 Motive, Inc. Self managing software agents with introspection
US7526775B2 (en) * 2000-05-17 2009-04-28 Aol Llc, A Delaware Limited Liability Company Component installation tool
US20030172135A1 (en) * 2000-09-01 2003-09-11 Mark Bobick System, method, and data structure for packaging assets for processing and distribution on multi-tiered networks
US7254814B1 (en) * 2001-09-28 2007-08-07 Emc Corporation Methods and apparatus for managing plug-in services
US7853933B2 (en) * 2001-09-29 2010-12-14 Siebel Systems, Inc. Computing system and method to perform compile-time extension for world wide web application
US7146609B2 (en) * 2002-05-17 2006-12-05 Sun Microsystems, Inc. Method, system and article of manufacture for a firmware image
AUPS241702A0 (en) * 2002-05-20 2002-06-13 Cytek Pty Ltd An electronic commerce portal
US7478395B2 (en) * 2002-09-23 2009-01-13 Telefonaktiebolaget L M Ericsson (Publ) Middleware application message/event model
CN1527232A (zh) * 2002-10-16 2004-09-08 �ֹ��� 实现分布预定服务、自动供应维护和与设备无关的服务实现的方法和装置
US8443036B2 (en) * 2002-11-18 2013-05-14 Siebel Systems, Inc. Exchanging project-related data in a client-server architecture
US7412686B2 (en) * 2003-02-10 2008-08-12 Microsoft Corporation Integrated development environment access to remotely located components
US7069553B2 (en) * 2003-03-03 2006-06-27 Computer Associates Think, Inc. Universal deployment tool
US7493614B2 (en) * 2003-03-31 2009-02-17 Microsoft Corporation System architecture and related methods for dynamically adding software components to extend functionality of system processes
US7356562B2 (en) * 2003-04-30 2008-04-08 International Business Machines Corporation Dynamic generator for fast-client static proxy from service interface definition document
US7861243B2 (en) * 2003-07-11 2010-12-28 Computer Associates Think, Inc. Automatically deploying program units to a cluster of networked servers
US7814470B2 (en) * 2003-08-27 2010-10-12 International Business Machines Corporation Multiple service bindings for a real time data integration service
US20050097545A1 (en) * 2003-09-29 2005-05-05 Lawrence Tarbox System and method for deployment of configuration and analysis software
US7350201B2 (en) * 2003-10-23 2008-03-25 International Business Machines Corporation Software distribution application supporting operating system installations
CN1879081B (zh) * 2003-11-04 2011-07-13 汤姆森许可贸易公司 用于下载服务的热点处的高速缓存服务器
US7469402B2 (en) * 2004-12-28 2008-12-23 Sap Aktiengesellschaft Pluggable model framework
US7987444B2 (en) * 2005-01-13 2011-07-26 National Instruments Corporation Determining and merging differences between configuration diagrams
US8601475B2 (en) * 2005-08-02 2013-12-03 Aol Inc. Download and upload of email messages using control commands in a client/server web application
US7698685B2 (en) * 2005-10-12 2010-04-13 Microsoft Corporation Discovery, qualification, and activation of software add-in components
US8561048B2 (en) * 2005-12-29 2013-10-15 Sap Ag Late and dynamic binding of pattern components
US7617224B2 (en) * 2006-01-30 2009-11-10 International Business Machines Corporation System and method for managing hierarchically related software components
US8726267B2 (en) * 2006-03-24 2014-05-13 Red Hat, Inc. Sharing software certification and process metadata
CN1920775A (zh) 2006-07-19 2007-02-28 珠海金山软件股份有限公司 一种软件同步更新装置和同步更新方法
CN100461704C (zh) 2006-12-02 2009-02-11 华为技术有限公司 数据同步的方法
US20090044183A1 (en) * 2007-08-09 2009-02-12 Spencer Quin Method and apparatus for updating the state of a computing device
CN101387956B (zh) * 2007-09-14 2012-08-29 国际商业机器公司 可扩展地实现非功能逻辑的方法和设备及其系统
US8849987B2 (en) * 2008-07-29 2014-09-30 International Business Machines Corporation Automated discovery of a topology of a distributed computing environment
US20100125839A1 (en) * 2008-11-20 2010-05-20 Gebis Michael J Specifying, Determining and Overriding Software Dependencies
US20100312879A1 (en) * 2009-06-09 2010-12-09 International Business Machines Corporation Plug-in provisioning integration in a clustered environment
US20110126192A1 (en) * 2009-10-26 2011-05-26 Simon Frost Systems and methods for providing and updating a unified client
US8850423B2 (en) * 2009-10-29 2014-09-30 International Business Machines Corporation Assisting server migration
US8667605B2 (en) * 2009-11-19 2014-03-04 Adobe Systems Incorporated Method and system for determining the eligibility for deploying protected content
US9886253B2 (en) * 2009-12-29 2018-02-06 Oracle International Corporation Techniques for managing functional service definitions in an SOA development lifecycle
US20110202909A1 (en) * 2010-02-12 2011-08-18 Microsoft Corporation Tier splitting for occasionally connected distributed applications
US8930942B2 (en) * 2010-05-26 2015-01-06 Tibco Software Inc. Capability model for deploying componentized applications
US9098370B2 (en) * 2010-11-08 2015-08-04 Cbs Interactive, Inc. Apparatus and methods for improving uninstall process
CN102073520A (zh) * 2010-12-30 2011-05-25 中国民航信息网络股份有限公司 一种c++应用程序版本动态管理系统和方法
US8930685B2 (en) * 2011-12-13 2015-01-06 International Business Machines Corporation Deployment of a software image on multiple targets with streaming technique
US9038053B2 (en) * 2012-08-27 2015-05-19 Lenovo Enterprise Solutions (Singapore) Pte. Ltd Non-disruptive software updates for servers processing network traffic

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10154078A (ja) * 1996-10-07 1998-06-09 Internatl Business Mach Corp <Ibm> ネットワーク・サービスへのアクセス提供方法
JP2000353093A (ja) * 1999-06-11 2000-12-19 Hitachi Ltd スタブ、スケルトンの配信方法

Also Published As

Publication number Publication date
WO2015013936A1 (zh) 2015-02-05
EP2854028A4 (en) 2015-06-24
US20150052509A1 (en) 2015-02-19
EP2854028A1 (en) 2015-04-01
CN103649915B (zh) 2016-11-02
JP6217034B2 (ja) 2017-10-25
US9195480B2 (en) 2015-11-24
CN103649915A (zh) 2014-03-19

Similar Documents

Publication Publication Date Title
JP6217034B2 (ja) 関連プラグインの管理方法、装置およびシステム
KR100963709B1 (ko) 용량 관리 객체 유지 및 관리를 위한 방법, 시스템 및터미널
US20180011730A1 (en) Management of network functions virtualization and orchestration apparatus, system, management method, and program
US20060230128A1 (en) Method and apparatus interfacing for controlling a device between an application and a library of a master on home network
WO2017121153A1 (zh) 软件升级方法及装置
US20100042991A1 (en) Business-in-a-box integration server and integration method
WO2017066931A1 (zh) 网络功能虚拟化架构中证书的管理方法及装置
WO2015196654A1 (zh) 网管的分布式管理方法及装置
WO2021057605A1 (zh) 设备管理方法、装置、系统、设备及存储介质
AU2015201637B2 (en) Device management system, relay apparatus, relay method, and program
CN107395385A (zh) 软件升级方法及装置
WO2016026329A1 (zh) 终端的升级方法及装置
CN112688794A (zh) Yang模型的管理方法、装置、系统、设备及存储介质
CN113268257A (zh) 车载应用升级系统、方法及计算机存储介质
CN109992295B (zh) 一种版本管理方法和服务器
EP4162649B1 (en) Stable references for network function life cycle management automation
CN107968725B (zh) 家庭网关单元型终端设备配置信息返回及配置方法、设备
US9588947B1 (en) Integrated administrative interface for open network programming applications
JP2013068987A (ja) ゲートウェイ装置、ファームウェア配信システム、及び情報配信方法
KR20210075898A (ko) 효율적인 opc ua 서버의 데이터 접근 및 통합을 위한 통합 게이트웨이
CN109495298B (zh) 在OpenStack系统中管理节点的方法和装置
CN102415051A (zh) 通过管理服务器远程管理设备上的应用
KR20150088462A (ko) 클라우드 환경에서 네트워크 장치의 연동 방법 및 장치
WO2016206437A1 (zh) Rom包生成方法及装置
CN108551405B (zh) 设备操作方法及装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170131

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170425

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170907

R150 Certificate of patent or registration of utility model

Ref document number: 6217034

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250