JP3864253B2 - リモート・ソフトウェア配布及びインストールのための方法及びシステム - Google Patents

リモート・ソフトウェア配布及びインストールのための方法及びシステム Download PDF

Info

Publication number
JP3864253B2
JP3864253B2 JP2002551689A JP2002551689A JP3864253B2 JP 3864253 B2 JP3864253 B2 JP 3864253B2 JP 2002551689 A JP2002551689 A JP 2002551689A JP 2002551689 A JP2002551689 A JP 2002551689A JP 3864253 B2 JP3864253 B2 JP 3864253B2
Authority
JP
Japan
Prior art keywords
distribution
installation
data processing
request
mode
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002551689A
Other languages
English (en)
Other versions
JP2004535609A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2004535609A publication Critical patent/JP2004535609A/ja
Application granted granted Critical
Publication of JP3864253B2 publication Critical patent/JP3864253B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、一般に、ディジタル・コンピュータ・ネットワークにおけるソフトウェア配布の分野に関し、より具体的には、ソース・データ処理システムから少なくとも1つのターゲット・データ処理システムへのディジタル・コンピュータ・プログラムのリモート配布及びインストールのための方法及びシステムに関し、特にコンピュータ・プログラムは、パッケージ・リストに指定されたパッケージとして転送される。
【0002】
【従来の技術】
ディジタル・コンピュータ・ネットワークにおけるソフトウェア及びデータの配布のための方法及びシステムは米国特許第5845090号に開示されている。ソフトウェア及びデータは、「パッケージ」と呼ばれる単一エンティティにまとめられている。ソフトウェア・パッケージは中央パッケージ・アーカイブに記憶され、転送プログラムが中央パッケージ・アーカイブにアクセスして、1つまたは複数のソフトウェア・パッケージの転送をスケジュール設定する。転送プログラムにより、ユーザは、他の属性に加えて、パッケージの伝送及びインストールの日時を指定することができる。ターゲット・コンピュータに伝送するためにソフトウェア・パッケージがスケジュール設定されると、アウトバウンド・パッケージ待ち行列に指示が記憶される。パッケージ転送エージェント・プログラムは、この指示に基づいて動作し、中央パッケージ・アーカイブからターゲット・システムにパッケージを転送する。ターゲット・システム上の対応するパッケージ転送エージェントは、インバウンド・パッケージ待ち行列にパッケージを入れる。最後に、転送デーモンはパッケージ・タイプを決定し、それに応じて動作する。パッケージ・タイプが「配布」である場合、インストールを開始するようパッケージにメッセージを送る。
【0003】
さらに、IBMのTivoli Software Destribution製品などの既知のソフトウェア配布/インストール手法には、一般に、ソフトウェア・リポジトリから特定のターゲット・コンピュータ・システムへソフトウェアを運ぶための概念が2通りある。これらの概念は、「プッシュ」モード配布及び「プル」モード配布と呼ばれる。
【0004】
プッシュ・モード配布は、所望の範囲のすべての到達可能ターゲット・システム上でソフトウェア・インストールを強要することを目的として、オペレータまたは中央点からの自動プロセスによって開始される。このプッシュ・モード配布には、大規模コンピュータ環境、特に複数の大陸に及ぶ環境において、到達可能ターゲット・システムの数がかなり少なくなる可能性があるという欠点がある。これは、標準的なエンドユーザ・ワークステーションがオンラインになっている時間が1日12時間未満である可能性があり、配布が行われるちょうどその時に1組のターゲットがオンラインになっていることを確認するために大量のオーバヘッドが計画されていることによる。時間帯、勤務時間、休日を考慮しなければならず、営業時間中のソフトウェア・インストールは歓迎されない場合が多い。最後の点は、実は、一般に1日24時間作動しているサーバ・システムの問題ではなく、この場合もエンドユーザ・システムの問題であり、ユーザは、仕事の後で自分のマシンをそのまま作動させておくか、またはWake−On−LANなどのハードウェア機構によってシステムをウェイクアップすることを強要されるはずであり、その機構は範囲内のすべてのターゲット・システムに使用可能であるわけではないだろう。
【0005】
上記のプッシュ・モード配布とは対照的に、プル・モード配布は、ターゲット・コンピュータ・システムのユーザまたはターゲット・システム自体によって開始される。インストールの活動化は、静止モードで、すなわち、ユーザの付添なしにシステムまたはユーザ・ログオン中に自動的に開始するか、またはユーザ・インタフェースでインストールのために選択するための使用可能なパッケージのリストを示すことにより開始することができる。
【0006】
このプル・モード配布技法は、配布を開始するときにターゲット・システムがすでにオンラインになっているという点で、上記のプッシュ・モード技法より有利である。
【0007】
しかし、プル・モード配布の欠点は、配布/インストールの正確な時間をあらかじめ決定できないことである。このため、ターゲット・システムのログインが何時に行われるかが予見できないので、適切な時間にターゲット・システムが更新されない可能性がある。
【0008】
さらに、たとえば、多数のユーザがそれぞれのシステムにログインしている場合などのソース・システム側の配布及びネットワーク環境のピーク負荷により、配布/インストールを開始する際に時間遅延が発生するかまたは全体的なスループットの低下が発生し、その結果、配布/インストールのパフォーマンスが低下することになる。
【0009】
【発明が解決しようとする課題】
したがって、本発明の一目的は、コンピュータ・プログラムのリモート配布/インストールのための改良された方法及びシステムを提供することにある。
【0010】
他の目的は、多数のリモート・コンピュータ・システム上でのコンピュータ・プログラムの自動配布/インストールを可能にすることにある。
【0011】
上記の目的は独立請求項の特徴により達成される。有利な実施形態は従属請求項の主題になっている。
【0012】
【課題を解決するための手段】
本発明の根底にある概念は、パッケージの配布を試みる前に、予定のターゲット・コンピュータ・システムの可用性次第で特定の配布モードを選択することである。ターゲット・システムが使用不能である場合、上記のプル・モードまたはプッシュ・モードへの自動切替えを包含する自動モード切替えが実行される。ターゲット・システムが到達可能である場合、提案した配布プロセスはパッケージ・リストにより段階的に実行され、パッケージを1つずつインストールする。
【0013】
本発明では特に、達成不能ターゲット・システムがウェイクアップするのを配布プロセスが待てるようにする組込み待ち行列メカニズムを提案する。この場合、配布は、次のプルまたはプッシュ動作をレジュームしてスケジュール変更する。スケジュール変更が成功しなかった場合、提案したメカニズムは正式プル・モードに切り替わり、それぞれのターゲット・システム(複数も可)は、いわゆる「正式プル・モード」であるプル・モード配布が強要される。
【0014】
次に、それにより他の特徴及び利点が明らかになる好ましい実施形態として以下に本発明をより詳細に説明するが、それにより添付図面が参照される。添付図面では、同様の特徴または機能的に同一の特徴は同一の参照符号で参照する。
【0015】
【発明の実施の形態】
提案したソフトウェア配布(SWD)メカニズムは、種々のシステム上に位置する一連の各種プロセスにより実行される。図1に示すように、このメカニズムの根底には3通りの配布モードがある。
承認プル・モード(初期プル)
標準プッシュ・モード
正式プル・モード
この場合、「承認プル・モード」と「正式プル・モード」はどちらも従来技術に比べ新規なものと見なされる。
【0016】
図1には、すべてのプロセスについて、対応するホスト・システムを背景フレームとして示す。
【0017】
承認プル・モード・プロセス102では、エンドポイント(EP)104、すなわち、ソフトウェア(SW)の配布/インストール用のターゲット・コンピュータ・システムは、106で要求されたパッケージのリストを提供する。次のステップでEPは、108でSW配布/インストールを求める要求をTivoli Enterprise Consoleサーバ(T/EC)110に送る。T/EC110は、112で2つのタスク114、118を開始するスクリプトをトリガし、一方のタスクがもう一方のタスクを呼び出す。「SWD要求を作成する」という第1のタスク114は、ゲートウェイ(GW)116、すなわち、この実施形態ではローカル・ソース・コード・サーバ上で立ち上げられる。「EPからのSWD要求を挿入する」という第2のタスク118は、ターゲット・システム上のパッケージ・リストの内容を読み取り、120で要求待ち行列ディレクトリ内に要求ファイルを作成する。
【0018】
次に、SWD要求120は、GW124上に位置する待ち行列マネージャ(QMGR)122によって処理される。QMGR122はループ126を実行するが、その第1のステップは128で要求待ち行列ディレクトリに記憶された次の要求を読み取ることである。次のステップとして、QMGR122は、130でトリガ・スクリプトを生成し、最後に132で生成したトリガ・スクリプトを立ち上げ、要求待ち行列からアクティブ待ち行列に要求を移動することにより要求を活動化する。要求待ち行列に記憶されたすべての要求を片付けるまで、上記のループを連続的に実行する。
【0019】
トリガ・スクリプトを立ち上げ、要求を活動化するたびに、134でEP上でFilePackageBlockを配布/インストールする。インストール中は、136で転送しインストールしたパッケージごとにインストール状況をチェックし、そのチェックの結果次第で、本発明では、138でプル・モードまたはプッシュ・モードへのモード切替えを開始する。このような配布モードについては以下により詳細に説明する。モード切替えが行われた後で、140で次のプル要求またはプッシュ要求を待ち行列に付加することになる(図2も参照)。
【0020】
標準プッシュ・モード142の場合、SW配布プロセスは、Tivoli Management Frameworkサーバ(TMR)144上で始動する。最初に、TMR上で実行されるタスクは、146で配布/インストール用のSWパッケージを選択し、148で該パッケージが決定される各種エンドポイントまたはターゲット・コンピュータ用のターゲット・リストを作成する。その後、TMRは、150で一致した要求を挿入し、152でその要求を配布し、154でGW156上に位置する上記の要求待ち行列にその要求を転送し、それを前述のQMGR122によってさらに処理する。
【0021】
さらに、正式プル・モード158の場合、最初の4つのステップである「パッケージを選択する」146から「要求を配布する」152までは、標準プッシュ・モード142の対応する最初の4つのステップと同一であり、したがって、もう一度説明することはしない。しかし、標準プッシュ・モード142とは対照的に、この要求はEP160から直接送られ、そこで「正式」EPログイン162が実行される。他の配布モードと同様に、次に154でGW156上に位置する要求待ち行列にその要求を入れ、それを前述のようにQMGR122によってさらに処理する。
【0022】
したがって、3通りのモード102、142、158は、新しい配布要求を要求待ち行列に挿入する方法が異なっている。基本配布プロセスは上記のQMGRである中央スクリプトによって制御され、そのスクリプトには、SWD要求ファイル用の前述の「要求待ち行列」と呼ばれる特殊ディレクトリをモニターし、各要求ごとに基本配布スクリプトを1回立ち上げることによりそれを活動化する責任がある。そのうえ、それは、同時にアクティブな配布の数をモニターし、システムが過負荷になるのを防止するための単純なスロットル・メカニズムを提供する。
【0023】
提案した配布メカニズムの重要な特徴は、パッケージの配布を試みる前に、エンドポイント(EP)の可用性によって決定される特定の配布モードを選択する基本配布スクリプトである。EPが使用不能である場合、自動モード切替えは、プル・モードまたはプッシュ・モードへの自動切替え、自動スケジュール変更、Wake−on LAN、自動レジューム、または打切りにより、この状況を処理する。EPが到達可能である場合、基本配布スクリプトはパッケージ・リストにより段階的に実行され、パッケージを1つずつインストールする。これらのインストール・ステップの進捗状況は、T/EC上でモニターすることができる。
【0024】
図2は、SWDプロセス中に前述の基本配布スクリプトが実行する基本ステップを流れ図として示している。これらのステップは自動的に実行可能であることを強調しておく。
【0025】
200でSWDプロセスを始動すると、要求待ち行列を読み取り、検出中の第1の要求を202でアクティブ待ち行列に設定することになる。
【0026】
以降のステップ中に特定の要求に関するパッケージ・リストを片付ける。最初に、204で何らかの項目がパッケージ・リストに残っているかどうかをチェックする。少なくとも1つの項目が残っている場合、206でその項目を次の項目として読み取る。残っていない場合、プロセスは208で正常に終了する。次に、210で現在アドレス指定しているEP(ターゲット・システム)が使用可能であるかどうか、すなわち、オンラインになっていてアクセス可能であるかどうかをチェックする。使用可能である場合、212でそのEP上でパッケージ・リストの現行項目のインストールを開始する。そのEPが使用不能である場合、ステップ216にジャンプし、以下に記載するようにモード切替えを開始する。214でインストールが成功した場合、ジャンプしてステップ204に戻り、そこで次の項目がパッケージ・リストに残っているかどうかをチェックする。1つの項目が残っている場合、前述のステップ206〜212をもう一度実行する。214のチェックにより、インストールが失敗したことが明らかになった場合、以下に記載するようにモード切替えを試みる。
【0027】
最初に、216でどのモード・フラグが設定されているかをチェックする。プッシュ・モード・フラグが設定されている場合、218で少なくとも1回のプッシュ試行が残っているかどうかをさらにチェックする。これにより、試行の回数があらかじめ指定されていることに留意されたい。プッシュ試行が残っている場合、220で配布/インストールをレジュームし、次のプッシュ・モード配布/インストールをスケジュール変更する。プッシュ試行がまったく残っていない場合、222でプル・モードに切り替え、224で少なくとも1回のプル・モード試行が残っているかどうかをさらにチェックする。残っている場合、226でインストールをレジュームし、次のプル・モード配布/インストールをスケジュール変更する。そうではない場合、プロセスは228で終了する。
【0028】
プッシュ試行がまったく残っていない場合に上記のプル・モードへの切替えが行われると、ターゲット・システムでのプル・モードが強要され、その範囲では「正式プル・モード」と見なされることを強調しておく。
【0029】
図4は、本発明による待ち行列マネージャ(QMGR)メカニズムを流れ図として示している。最初に、300でいずれかの要求が要求待ち行列に含まれているかどうかをチェックする。この実施形態では、たとえば、要求の作成時間によって決定される順序で要求を要求待ち行列に記憶する。この時間は、要求を処理する優先順位を決定する。以下の説明では、1〜nの数字で順序づけを表すものと想定する。302で要求待ち行列が少なくとも1つの要求、この例ではn=1が割り当てられている要求を含む場合、304で待ち行列マネージャがこの要求を処理することになる。次に、306であらかじめ指定したタイム・スタンプ(しきい値)を超えているかどうかをチェックする。後者のチェックでは、QMGRの一部として、要求処理のスケジュール設定を可能にする。タイム・スタンプを超えていない場合、ジャンプしてステップ304に戻り、その結果、待ち状態を定義する。タイム・スタンプを超えている場合、次に308でアクティブ待ち行列が現在過負荷になっているかどうかをチェックする。過負荷になっている場合、ジャンプしてステップ302に戻る。アクティブ待ち行列の過負荷がまったく発生していない場合、次に310で現行ターゲット・システムがすでにアクティブになっているかどうかをチェックする。アクティブになっている場合、ジャンプしてステップ304に戻る。そうではない場合、312でアクティブ待ち行列にその要求を設定する。後半の2つのステップは、点線が示すように、QMGRに組み込まれたスロットル・メカニズムを表している。
【0030】
さらに、SWDプロセスは、所与の前提条件を満たした場合のみ配布プロセスを開始することを確認するための制御及びエラー処理機能を含むことができる。
【0031】
次に図5を参照し、このような機能を含むSWDプロセスの好ましい実施形態についてより詳細に説明する。前提条件の1つは、エンドポイント(=ターゲット・コンピュータ・システム)がオンラインになっているかどうかを400でエンドポイント・マネージャがチェックすることである。数回のチェック402〜404の後でも依然としてそれが使用不能である場合、それ以上のアクションは、構成中に渡される再試行設定と再試行状況によって決まる。
‐ 406で要求構成中にWake−On−LANオプションが選択されている場合、外部スクリプトを呼び出すことになる。ウェイクアップ・アクションを開始する方法に違いがある可能性があるので、このスクリプトにはローカル管理者(複数も可)によるアクションを記入する必要がある。この場合も、ブート遅延期間408の後に、404でエンドポイント状況をもう一度チェックする。ここでそれがオンラインになっている場合、手順は次のチェック410に切り替わる。オンラインになっていない場合、以下に説明するスケジュール変更オプション412が適用される。
‐ プッシュ再試行(試行)の回数が0より大きい場合、その要求を保留待ち行列に移動する。配布プロセスを生成し、その要求を要求待ち行列に再挿入する。そのプロセスは、「配布要求を挿入する」というプロセス・ステップに構成された現行時間より数分前に自動的にスケジュール設定される。この後、重大度を警告にしてT/ECメッセージを生成し、配布をスケジュール変更することを示す。
‐ プッシュ再試行の回数が0に等しく、414でプル再試行の回数が0より大きい場合、416でその要求をプル待ち行列に移動する。そのエンドポイントが次にログインしたときにそれを再始動することになる。
‐ プッシュ再試行の回数が0に等しく、プル再試行の回数が0に等しい場合、418でその要求を打切り待ち行列に移動し、420で重大度を軽度にしてT/ECメッセージを送り、パッケージ・リスト処理が失敗したことを示し、最後に試行したファイル・パッケージをメッセージ・フィールドに示す。
【0032】
上記のすべてのテストに合格した後、422でSWD_StartクラスのT/ECメッセージを送り、「wdistfpblock」呼出しを立ち上げることによって配布プロセスを始動し、424で現行ファイル・パッケージ・ブロックをターゲットに配布する。426でこのプログラムが「0」以外の戻りコードを返す場合、その配布は失敗し、リスト処理が取り消されることになる。配布が実際にアクティブ・エンドポイントで失敗した場合、任意選択で再試行機能が使用可能になっていることに留意されたい。2つのT/ECメッセージを送るが、SWD_Failedクラスで重大度が軽度で、現行パッケージ配布が失敗したことを示すメッセージ428と、SWD_List_Failedクラスで重大度が軽度で、パッケージ・リスト処理が失敗したことを示し、最後に試行したファイル・パッケージをメッセージ・フィールドに示すメッセージ420である。「wdistfpblock」が0を返す場合、430でSWD_SuccessクラスのT/ECメッセージを送り、リスト処理は次のパッケージに継続する。すべてのパッケージを正常に配布し終わると、リスト処理は、432でSWD_List_Successクラスで重大度が無害のT/ECメッセージで終わり、参照のため、その要求を完了待ち行列に移動する。
【0033】
処理中にいくつかのT/ECメッセージを生成し、進行中の配布を容易にモニターできる可能性をオペレータに示す。重大度を警告にして、要求リスト処理の開始と全単一配布の開始を送り、何らかのプロセスが作業中であることを信号で知らせる。それぞれの配布及びリスト処理は対応する終了メッセージを有し、一般にそれによって開始事象を閉じる。プロセスが成功すると、終了メッセージも閉じる。この場合、オペレータ・アクションが必須なので、エラー条件のみがオープン状態のままになる。エラーがまったくない場合、リストを処理した後でいかなるメッセージもオープンにならない。
【図面の簡単な説明】
【図1】 本発明による種々のソフトウェア配布(SWD)モードの概要を流れ図として示す図である。
【図2】本発明による種々のソフトウェア配布(SWD)モードの概要を流れ図として示す図である。
【図3】 本発明のSWDプロセスの基本ステップを示す、より詳細な流れ図である。
【図4】 本発明が提案する待ち行列マネージャ・メカニズムを示す流れ図である。
【図5】 SWDプロセスの好ましい実施形態をより詳細に示す流れ図である。

Claims (8)

  1. ターゲット・データ処理システムからの要求に応じてターゲット・データ処理システムにコンピュータ・プログラムを配布/インストールするプル・モードと、アクセス可能なターゲット・データ処理システムに強制的にコンピュータ・プログラムを配布/インストールするプッシュ・モードとに基づく、ソース・データ処理システムから少なくとも1つのターゲット・データ処理システムへのコンピュータ・プログラムのリモート配布/インストールのための方法において、前記コンピュータ・プログラムは、パッケージ・リストで識別されるパッケージとして転送され、前記プッシュ・モード及び前記プル・モードによる配布を再試行するための試行回数があらかじめ指定されており、
    少なくとも1つのターゲット・データ処理システムが使用可能であるかどうかをチェックし、前記少なくとも1つのターゲット・データ処理システムが使用可能である場合に配布/インストールを実行するステップと、
    前記配布/インストールが実行された前記少なくとも1つのターゲット・データ処理システムからの戻り値に応答して、配布/インストールが成功したかどうかを示すメッセージを生成するステップと、
    配布/インストールが失敗したことを示す前記メッセージに応答して、現行配布/インストール・モードが前記プッシュ・モードであって、少なくとも1回のプッシュ・モード試行が残っている場合には、次のプッシュ・モード配布/インストールをレジュームしてスケジュール変更し、プッシュ・モード試行がまったく残っていないが、少なくとも1回のプル・モード試行が残っている場合には、前記プッシュ・モードから前記プル・モードに切り替え、次のプル・モード配布/インストールをレジュームしてスケジュール変更するステップとを具備する方法。
  2. 配布/インストールが成功したことを示す前記メッセージに応答して、前記パッケージ・リストで識別される次のパッケージを取り出すステップと、
    少なくとも1つのターゲット・データ処理システムが使用可能であるかどうかをチェックし、少なくとも1つのターゲット・データ処理・システムが使用可能である場合に、当該ターゲット・データ処理システムでのパッケージのインストールを開始するステップと を具備する、請求項1に記載の方法。
  3. 数回の再試行後にターゲット・データ処理システムが使用不能になっており、
    プッシュ再試行の回数が0より大きい場合、配布/インストール要求を保留待ち行列に挿入し、スケジュール設定された時間に前記要求待ち行列に前記要求を再挿入するステップと、
    プッシュ再試行の回数が0に等しく、プル再試行の回数が0より大きい場合、前記要求をプル待ち行列に挿入し、前記ターゲット・データ処理システムがログインしたときに前記要求待ち行列に前記要求を挿入し再始動するステップと、
    プッシュ再試行の回数が0に等しく、プル再試行の回数が0に等しい場合、前記要求を打切り待ち行列に挿入するステップとを実行する、請求項2に記載の方法。
  4. 配布/インストール要求を要求待ち行列に挿入し、あらかじめ指定した時間を超えるかどうかをチェックし、超えない場合には前記配布/インストール要求の処理を実行し、超える場合にはアクティブ待ち行列が待ち行列マネージャによって監視されるアクティブな配布の数を超えて過負荷になっているかどうかをチェックし、前記過負荷になっている場合には前記配布/インストール要求の処理を実行し、前記過負荷になっていない場合には現在選択しているターゲット・データ処理システムがすでにアクティブになっているかどうかをチェックし、前記アクティブになっている場合には前記配布/インストール要求の処理を実行し、前記アクティブになっていない場合には前記アクティブ待ち行列に前記配布/インストール要求を挿入する、請求項1ないし3のいずれかに記載の方法。
  5. データ処理システムに請求項1ないしのいずれかに記載の方法を実行させるデータ処理プログラム。
  6. データ処理システムに請求項1ないしのいずれかに記載の方法を実行させるためのコンピュータ可読プログラムが記録された記録媒体。
  7. ターゲット・データ処理システムからの要求に応じてターゲット・データ処理システムにコンピュータ・プログラムを配布/インストールするプル・モードと、アクセス可能なターゲット・データ処理システムに強制的にコンピュータ・プログラムを配布/インストールするプッシュ・モードとに基づく、ソース・データ処理システムから少なくとも1つのターゲット・データ処理システムへのコンピュータ・プログラムのリモート配布/インストールのためのソフトウェア配布システムにおいて、前記コンピュータ・プログラムは、パッケージ・リストで識別されるパッケージとして転送され、前記プッシュ・モード及び前記プル・モードによる配布を再試行するための試行回数があらかじめ指定されており、
    少なくとも1つのターゲット・データ処理システムが使用可能であるかどうかをチェックし、前記少なくとも1つのターゲット・データ処理システムが使用可能である場合に配布/インストールを実行する手段と、
    前記配布/インストールが実行された前記少なくとも1つのターゲット・データ処理システムからの戻り値に応答して、配布/インストールが成功したかどうかを示すメッセージを生成する手段と、
    配布/インストールが失敗したことを示す前記メッセージに応答して、現行配布/インストール・モードが前記プッシュ・モードであって、少なくとも1回のプッシュ・モード試行が残っている場合には、次のプッシュ・モード配布/インストールをレジュームしてスケジュール変更し、プッシュ・モード試行がまったく残っていないが、少なくとも1回のプル・モード試行が残っている場合には、前記プッシュ・モードから前記プル・モードに切り替え、次のプル・モード配布/インストールをレジュームしてスケジュール変更する手段とを具備するシステム。
  8. 前記コンピュータ・プログラムは、パッケージ・リストで識別されるパッケージとして転送され、前記システムは、リモート配布を処理するためのアクティブ待ち行列と要求待ち行列とを含む待ち行列マネージャを具備し、
    前記待ち行列マネージャが、
    配布/インストール要求が前記要求待ち行列に含まれているかどうかをチェックする手段と、
    前記配布/インストール要求の処理を実行する手段と、
    あらかじめ指定した時間を超えるかどうかをチェックする手段と、
    前記あらかじめ指定した時間を超える場合、アクティブ待ち行列が前記待ち行列マネージャによって監視されるアクティブな配布の数を超えて過負荷になっているかどうかをチェックし、過負荷になっていない場合に現行ターゲット・データ処理システムがすでにアクティブになっているかどうかをチェックし、アクティブになっていない場合に前記要求を前記アクティブ待ち行列に挿入する手段を具備する、請求項に記載のシステム。
JP2002551689A 2000-12-20 2001-12-06 リモート・ソフトウェア配布及びインストールのための方法及びシステム Expired - Fee Related JP3864253B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP00128018 2000-12-20
PCT/EP2001/014326 WO2002050660A2 (en) 2000-12-20 2001-12-06 Method and system for remote software distribution and installation

Publications (2)

Publication Number Publication Date
JP2004535609A JP2004535609A (ja) 2004-11-25
JP3864253B2 true JP3864253B2 (ja) 2006-12-27

Family

ID=8170739

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002551689A Expired - Fee Related JP3864253B2 (ja) 2000-12-20 2001-12-06 リモート・ソフトウェア配布及びインストールのための方法及びシステム

Country Status (11)

Country Link
US (1) US7130896B2 (ja)
EP (1) EP1415223B1 (ja)
JP (1) JP3864253B2 (ja)
KR (1) KR100546931B1 (ja)
CN (1) CN1272707C (ja)
AT (1) ATE319132T1 (ja)
AU (1) AU2002229623A1 (ja)
CA (1) CA2430099A1 (ja)
DE (1) DE60117604T2 (ja)
IL (1) IL156521A0 (ja)
WO (1) WO2002050660A2 (ja)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7409685B2 (en) 2002-04-12 2008-08-05 Hewlett-Packard Development Company, L.P. Initialization and update of software and/or firmware in electronic devices
US8479189B2 (en) 2000-11-17 2013-07-02 Hewlett-Packard Development Company, L.P. Pattern detection preprocessor in an electronic device update generation system
US8028077B1 (en) * 2002-07-12 2011-09-27 Apple Inc. Managing distributed computers
US8555273B1 (en) 2003-09-17 2013-10-08 Palm. Inc. Network for updating electronic devices
US7904895B1 (en) 2004-04-21 2011-03-08 Hewlett-Packard Develpment Company, L.P. Firmware update in electronic devices employing update agent in a flash memory card
US8898256B2 (en) 2004-07-13 2014-11-25 International Business Machines Corporation Prioritization of application component distribution
US8526940B1 (en) 2004-08-17 2013-09-03 Palm, Inc. Centralized rules repository for smart phone customer care
US7571464B2 (en) * 2004-08-27 2009-08-04 International Business Machines Corporation Secure bidirectional cross-system communications framework
US8719815B1 (en) 2005-12-09 2014-05-06 Crimson Corporation Systems and methods for distributing a computer software package using a pre-requisite query
EP2025095A2 (en) 2006-06-08 2009-02-18 Hewlett-Packard Development Company, L.P. Device management in a network
US8752044B2 (en) 2006-07-27 2014-06-10 Qualcomm Incorporated User experience and dependency management in a mobile device
EP1944944A1 (en) * 2007-01-12 2008-07-16 Thomson Licensing System and method for combining pull and push modes
US8185891B2 (en) 2007-05-14 2012-05-22 Red Hat, Inc. Methods and systems for provisioning software
US8561058B2 (en) * 2007-06-20 2013-10-15 Red Hat, Inc. Methods and systems for dynamically generating installation configuration files for software
US8464247B2 (en) 2007-06-21 2013-06-11 Red Hat, Inc. Methods and systems for dynamically generating installation configuration files for software
US7857222B2 (en) 2007-08-16 2010-12-28 Hand Held Products, Inc. Data collection system having EIR terminal interface node
US8209678B2 (en) * 2007-09-17 2012-06-26 Sony Corporation System, apparatus, and method for an upgrader module
US8713177B2 (en) 2008-05-30 2014-04-29 Red Hat, Inc. Remote management of networked systems using secure modular platform
US9100297B2 (en) * 2008-08-20 2015-08-04 Red Hat, Inc. Registering new machines in a software provisioning environment
US8930512B2 (en) 2008-08-21 2015-01-06 Red Hat, Inc. Providing remote software provisioning to machines
US8838827B2 (en) * 2008-08-26 2014-09-16 Red Hat, Inc. Locating a provisioning server
US9477570B2 (en) 2008-08-26 2016-10-25 Red Hat, Inc. Monitoring software provisioning
US8793683B2 (en) 2008-08-28 2014-07-29 Red Hat, Inc. Importing software distributions in a software provisioning environment
US9164749B2 (en) * 2008-08-29 2015-10-20 Red Hat, Inc. Differential software provisioning on virtual machines having different configurations
US9952845B2 (en) * 2008-08-29 2018-04-24 Red Hat, Inc. Provisioning machines having virtual storage resources
US8244836B2 (en) 2008-08-29 2012-08-14 Red Hat, Inc. Methods and systems for assigning provisioning servers in a software provisioning environment
US8527578B2 (en) * 2008-08-29 2013-09-03 Red Hat, Inc. Methods and systems for centrally managing multiple provisioning servers
US9111118B2 (en) 2008-08-29 2015-08-18 Red Hat, Inc. Managing access in a software provisioning environment
US9021470B2 (en) 2008-08-29 2015-04-28 Red Hat, Inc. Software provisioning in multiple network configuration environment
US8103776B2 (en) 2008-08-29 2012-01-24 Red Hat, Inc. Systems and methods for storage allocation in provisioning of virtual machines
US8612968B2 (en) * 2008-09-26 2013-12-17 Red Hat, Inc. Methods and systems for managing network connections associated with provisioning objects in a software provisioning environment
US8326972B2 (en) 2008-09-26 2012-12-04 Red Hat, Inc. Methods and systems for managing network connections in a software provisioning environment
US8898305B2 (en) 2008-11-25 2014-11-25 Red Hat, Inc. Providing power management services in a software provisioning environment
US9124497B2 (en) * 2008-11-26 2015-09-01 Red Hat, Inc. Supporting multiple name servers in a software provisioning environment
US8832256B2 (en) * 2008-11-28 2014-09-09 Red Hat, Inc. Providing a rescue Environment in a software provisioning environment
US8782204B2 (en) 2008-11-28 2014-07-15 Red Hat, Inc. Monitoring hardware resources in a software provisioning environment
US8775578B2 (en) * 2008-11-28 2014-07-08 Red Hat, Inc. Providing hardware updates in a software environment
US8402123B2 (en) 2009-02-24 2013-03-19 Red Hat, Inc. Systems and methods for inventorying un-provisioned systems in a software provisioning environment
US9727320B2 (en) 2009-02-25 2017-08-08 Red Hat, Inc. Configuration of provisioning servers in virtualized systems
US20100217944A1 (en) * 2009-02-26 2010-08-26 Dehaan Michael Paul Systems and methods for managing configurations of storage devices in a software provisioning environment
US8892700B2 (en) * 2009-02-26 2014-11-18 Red Hat, Inc. Collecting and altering firmware configurations of target machines in a software provisioning environment
US8413259B2 (en) * 2009-02-26 2013-04-02 Red Hat, Inc. Methods and systems for secure gated file deployment associated with provisioning
US8572587B2 (en) * 2009-02-27 2013-10-29 Red Hat, Inc. Systems and methods for providing a library of virtual images in a software provisioning environment
US9558195B2 (en) * 2009-02-27 2017-01-31 Red Hat, Inc. Depopulation of user data from network
US8135989B2 (en) * 2009-02-27 2012-03-13 Red Hat, Inc. Systems and methods for interrogating diagnostic target using remotely loaded image
US9940208B2 (en) * 2009-02-27 2018-04-10 Red Hat, Inc. Generating reverse installation file for network restoration
US8990368B2 (en) 2009-02-27 2015-03-24 Red Hat, Inc. Discovery of network software relationships
US8640122B2 (en) * 2009-02-27 2014-01-28 Red Hat, Inc. Systems and methods for abstracting software content management in a software provisioning environment
US9411570B2 (en) * 2009-02-27 2016-08-09 Red Hat, Inc. Integrating software provisioning and configuration management
US8667096B2 (en) 2009-02-27 2014-03-04 Red Hat, Inc. Automatically generating system restoration order for network recovery
US8417926B2 (en) 2009-03-31 2013-04-09 Red Hat, Inc. Systems and methods for providing configuration management services from a provisioning server
US9250672B2 (en) 2009-05-27 2016-02-02 Red Hat, Inc. Cloning target machines in a software provisioning environment
US9134987B2 (en) 2009-05-29 2015-09-15 Red Hat, Inc. Retiring target machines by a provisioning server
US9047155B2 (en) * 2009-06-30 2015-06-02 Red Hat, Inc. Message-based installation management using message bus
US10133485B2 (en) 2009-11-30 2018-11-20 Red Hat, Inc. Integrating storage resources from storage area network in machine provisioning platform
US8825819B2 (en) 2009-11-30 2014-09-02 Red Hat, Inc. Mounting specified storage resources from storage area network in machine provisioning platform
US9497092B2 (en) 2009-12-08 2016-11-15 Hand Held Products, Inc. Remote device management interface
US20110307933A1 (en) * 2010-06-15 2011-12-15 Telefonaktiebolaget L M Ericsson (Publ) Systems and methods for implementing server side push mechanisms for internet protocol television (iptv) updates
RS60728B1 (sr) 2011-04-12 2020-09-30 Applied Science Inc Postupak za upravljanje donacijama krvi
US8539123B2 (en) 2011-10-06 2013-09-17 Honeywell International, Inc. Device management using a dedicated management interface
US8621123B2 (en) 2011-10-06 2013-12-31 Honeywell International Inc. Device management using virtual interfaces
US8954985B2 (en) * 2012-06-05 2015-02-10 International Business Machines Corporation Dependency management in task scheduling
US20150074659A1 (en) * 2013-09-06 2015-03-12 Vmware, Inc. Methods and Apparatus to Perform Web-Based Installations and/or Upgrade Architectures for Enterprise Software
US11426498B2 (en) 2014-05-30 2022-08-30 Applied Science, Inc. Systems and methods for managing blood donations
JP2016139322A (ja) 2015-01-28 2016-08-04 株式会社リコー 画像処理装置及びそれを備えた電子黒板
US10649766B2 (en) * 2015-06-05 2020-05-12 Unisys Corporation Dynamic replacement of software components
US9880825B1 (en) * 2015-08-06 2018-01-30 Mesosphere, Inc. Distributed package management using meta-scheduling
KR101981520B1 (ko) * 2017-10-25 2019-05-24 효성중공업 주식회사 스마트그리드를 위한 통신 방식 채택 방법 및 이를 이용한 통신 정책 서버

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5845090A (en) * 1994-02-14 1998-12-01 Platinium Technology, Inc. System for software distribution in a digital computer network
US5694546A (en) * 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
JPH09160858A (ja) 1995-12-08 1997-06-20 Nippon Telegr & Teleph Corp <Ntt> データ再送方法及びサーバ
US6049671A (en) * 1996-04-18 2000-04-11 Microsoft Corporation Method for identifying and obtaining computer software from a network computer
US6259442B1 (en) * 1996-06-03 2001-07-10 Webtv Networks, Inc. Downloading software from a server to a client
US6473099B1 (en) * 1996-06-03 2002-10-29 Webtv Networks, Inc. Automatically upgrading software over a satellite link
US6009274A (en) * 1996-12-13 1999-12-28 3Com Corporation Method and apparatus for automatically updating software components on end systems over a network
US6049892C1 (en) * 1997-02-24 2002-06-04 Ethos Software Corp Process and apparatus for downloading data from a server computer to a client computer
US6070184A (en) * 1997-08-28 2000-05-30 International Business Machines Corporation Server-side asynchronous form management
JP2000106559A (ja) 1998-09-28 2000-04-11 Fujitsu Ltd 同報通信方法、同報通信装置、及び記録媒体
US6289511B1 (en) * 1998-09-29 2001-09-11 Telephonaktiebolaget Lm Ericsson Method and system for distributing software in a telecommunications network
US6351761B1 (en) * 1998-12-18 2002-02-26 At&T Corporation Information stream management push-pull based server for gathering and distributing articles and messages specified by the user
JP2000293452A (ja) 1999-04-01 2000-10-20 Ntt Data Corp データ中継装置、データ通信システム、データ通信方法及び記録媒体
US6966060B1 (en) * 1999-07-02 2005-11-15 Microsoft Corporation Method and system for remote client installation
US6640238B1 (en) * 1999-08-31 2003-10-28 Accenture Llp Activity component in a presentation services patterns environment
CA2423175A1 (en) * 2000-09-22 2002-03-28 Patchlink.Com Corporation Non-invasive automatic offsite patch fingerprinting and updating system and method

Also Published As

Publication number Publication date
WO2002050660A3 (en) 2004-02-19
EP1415223B1 (en) 2006-03-01
KR100546931B1 (ko) 2006-01-26
DE60117604T2 (de) 2006-10-05
ATE319132T1 (de) 2006-03-15
KR20030063426A (ko) 2003-07-28
US7130896B2 (en) 2006-10-31
CN1518692A (zh) 2004-08-04
CA2430099A1 (en) 2002-06-27
DE60117604D1 (de) 2006-04-27
US20020078186A1 (en) 2002-06-20
WO2002050660A2 (en) 2002-06-27
AU2002229623A1 (en) 2002-07-01
EP1415223A2 (en) 2004-05-06
IL156521A0 (en) 2004-01-04
JP2004535609A (ja) 2004-11-25
CN1272707C (zh) 2006-08-30

Similar Documents

Publication Publication Date Title
JP3864253B2 (ja) リモート・ソフトウェア配布及びインストールのための方法及びシステム
KR100382851B1 (ko) 분산형 데이터 처리 시스템에서 클라이언트 컴퓨터를관리하기 위한 방법 및 장치
US7206852B2 (en) System and method for upgrading software in a distributed computer system
US6694345B1 (en) External job scheduling within a distributed processing system having a local job control system
JP4440107B2 (ja) ネットワーク内の共用資源を使用する方法および構成
US6868442B1 (en) Methods and apparatus for processing administrative requests of a distributed network application executing in a clustered computing environment
US5872966A (en) System and method for logging and enabling further manipulation of system state information
US7873957B2 (en) Minimizing user disruption during modification operations
JP4616423B2 (ja) 遠隔データ回復用の装置及び方法
RU2192039C2 (ru) Исполнительная программа регенерации для вспомогательной программы резервного копирования
JPH10143381A (ja) 遊休ワークステーションを共用するための装置および方法
US20010018710A1 (en) System and method for improved automation of a computer network
US6266697B1 (en) System automatically maintaining client under control of client, and a recording medium therefor
US20030158939A1 (en) Control device for file resources in a network
JP3636012B2 (ja) 情報処理システム、情報処理装置およびソフトウェアのインストール方法
US7240043B2 (en) Method of controlling storage control apparatus, storage control apparatus, and computer readable program for controlling the same
US20030009600A1 (en) Program execution service providing system, server program execution service providing method and storage medium storing program therefor
US20030149850A1 (en) Control device for file resources in a network
JP3738701B2 (ja) トランザクション処理システムにおけるシステム設定方法
JP2004046420A (ja) 最新リソースの整合方法及びその方式
JP2000112807A (ja) ローカルデータベース遅延更新システム及びローカルデータベース遅延更新方法
JP2001142856A (ja) ネットワークシステム及びそのクライアント機へのプログラムリリース方法
JPH0497449A (ja) コンソール出力制御方式

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051129

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20060113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060227

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060328

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060619

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060818

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

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20060905

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060912

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20091013

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101013

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101013

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111013

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121013

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121013

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20131013

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees