(57)【要約】  【課題】  サーバからクライアントへプログラムをリモートインストールするにあたり、インストール作業をクライアント側の制御に任せ、インストール実行結果の成否に応じた操作を自動実行する機能を提供すること。  【解決手段】  ネットワーク接続されたクライアントサーバシステムにおいて、サーバからクライアントへプログラムをリモートインストールするにあたり、インストールプログラムをサーバからクライアントへ送信する際、インストールプログラムの実行結果に応じた操作を記憶したモジュールを転送することにより、クライアント側でインストール実行結果を自動判別し、記憶した操作を自動実行する。【選択図】      図１
2016062283.tif 000002
【特許請求の範囲】
【請求項１】
クライアントサーバシステムにおいて、プログラムをリモートインストールするためのモジュールであって、
クライアントに、
インストールプログラムの実行を要求するステップと、
インストールプログラム実行後に終了コードを取得するステップと、
前記終了コードと、予め定めた正常閾値とに基づいて、インストールプログラム実行結果の成否を判別するステップと、
前記判別結果が正常の場合には、予め定めた正常閾値内実行コマンドを実行し、また前記判別結果が異常の場合には、予め定めた正常閾値外実行コマンドを実行するステップと、を実行させるためのモジュール。
【請求項２】
クライアントサーバシステムにおいて、プログラムをリモートインストールする方法であって、
クライアントが、
インストールプログラムの実行を要求するステップと、
インストールプログラム実行後に終了コードを取得するステップと、
前記終了コードと、予め定めた正常閾値とに基づいて、インストールプログラム実行結果の成否を判別するステップと、
前記判別結果が正常の場合には、予め定めた正常閾値内実行コマンドを実行し、また前記判別結果が異常の場合には、予め定めた正常閾値外実行コマンドを実行するステップと、を備えることを特徴とするリモートインストール方法。
【請求項３】
操作端末と、クライアントと、前記操作端末及び前記クライアントと相互に通信可能に接続されたサーバとを含む、プログラムのリモートインストールシステムであって、
前記操作端末が、
前記サーバに対し、インストールプログラム情報、正常閾値、正常閾値内実行コマンド及び正常閾値外実行コマンドを含むインストール要求情報を送信するインストール要求情報送信手段を備え、
前記サーバが、
前記インストール要求情報を受信する実行要求取得手段と、
前記実行要求取得手段から前記インストール要求情報を取得し、取得したインストール要求情報を元にモジュールを生成するとともに、インストールプログラムファイルを取得するモジュール生成手段と、
前記モジュール生成手段から前記モジュール及び前記インストールプログラムファイルを取得し、前記取得したモジュール及びインストールプログラムファイルを前記クライアントに送信する転送手段と、を備え、
前記クライアントが、
前記モジュール及び前記インストールプログラムファイルを受信するモジュール実行要求受信手段と、
前記インストールプログラムの実行を要求するインストール実行要求手段と、
前記インストールプログラム実行後に終了コードを取得する終了コード取得手段と、
前記終了コードと前記正常閾値に基づいてインストールプログラムの実行結果の成否を判別する判別手段と、
前記判別結果に応じて、前記正常閾値内実行コマンド又は正常閾値外実行コマンドに基づいて、コマンドを実行するコマンド実行手段と、
を備えたことを特徴とする、リモートインストールシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サーバクライアントシステムにおいて、任意のソフトウェアをサーバからクライアントへリモートインストールする際、インストール実行結果を自動判別することで、クライアント側で実行結果に応じた操作を自動実行するリモートインストールモジュール、リモートインストール方法及びリモートインストールシステムに関するものである。
【背景技術】
【０００２】
サーバクライアントシステムにおいて、複数クライアントへ任意のソフトウェアをインストールする際、サーバからクライアントへインストールプログラムを転送し、そのインストールプログラムをリモートから直接実行する方式は多く導入されている。また、クライアント側に専用のソフトウェアを用いた場合の技術も導入されている。
なお、本発明に関連する公知技術文献としては下記の特許文献１がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−３０９２７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
専用のソフトウェアをクライアント側に導入しないケースにおいて、従来のリモートインストールの手段では、サーバ側はいつインストール完了したか分からないため、定期的にクライアント側に接続し、実行状態を確認する作業が必要となる。またインストール失敗時は、インストール失敗時における再操作（再実行等）を手動により行う必要があるため、作業者に係る負担が大きい。
【０００５】
そこで、本発明は、リモートインストールによるプログラムのインストールにおいて、インストールの成否を自動判別するとともに、インストールの成否に応じた操作を自動的に実行することを可能にする、リモートインストールモジュール、リモートインストール方法及びリモートインストールシステムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明のリモートインストールモジュールは、クライアントサーバシステムにおいて、プログラムをリモートインストールするためのモジュールであって、クライアントに、インストールプログラムの実行を要求するステップと、インストールプログラム実行後に終了コードを取得するステップと、前記終了コードと、予め定めた正常閾値とに基づいて、インストールプログラム実行結果の成否を判別するステップと、前記判別結果が正常の場合には、予め定めた正常閾値内実行コマンドを実行し、また前記判別結果が異常の場合には、予め定めた正常閾値外実行コマンドを実行するステップと、を実行させることを特徴とする。
【０００７】
また、本発明のリモートインストール方法は、クライアントサーバシステムにおいて、プログラムをリモートインストールする方法であって、クライアントが、インストールプログラムの実行を要求するステップと、インストールプログラム実行後に終了コードを取得するステップと、前記終了コードと、予め定めた正常閾値とに基づいて、インストールプログラム実行結果の成否を判別するステップと、前記判別結果が正常の場合には、予め定めた正常閾値内実行コマンドを実行し、また前記判別結果が異常の場合には、予め定めた正常閾値外実行コマンドを実行するステップと、を備えることを特徴とする。
【０００８】
また、本発明のリモートインストールシステムは、操作端末と、クライアントと、前記操作端末及び前記クライアントと相互に通信可能に接続されたサーバとを含む、プログラムのリモートインストールシステムであって、前記操作端末が、前記サーバに対し、インストールプログラム情報、正常閾値、正常閾値内実行コマンド及び正常閾値外実行コマンドを含むインストール要求情報を送信するインストール要求情報送信手段を備え、前記サーバが、前記インストール要求情報を受信する実行要求取得手段と、前記実行要求取得手段から前記インストール要求情報を取得し、取得したインストール要求情報を元にモジュールを生成するとともに、インストールプログラムファイルを取得するモジュール生成手段と、前記モジュール生成手段から前記モジュール及び前記インストールプログラムファイルを取得し、前記取得したモジュール及びインストールプログラムファイルを前記クライアントに送信する転送手段と、を備え、前記クライアントが、前記モジュール及び前記インストールプログラムファイルを受信するモジュール実行要求受信手段と、前記インストールプログラムの実行を要求するインストール実行要求手段と、前記インストールプログラム実行後に終了コードを取得する終了コード取得手段と、前記終了コードと前記正常閾値に基づいてインストールプログラムの実行結果の成否を判別する判別手段と、前記判別結果に応じて、前記正常閾値内実行コマンド又は正常閾値外実行コマンドに基づいて、コマンドを実行するコマンド実行手段と、を備えたことを特徴とする。
【発明の効果】
【０００９】
本発明によれば、リモートインストールをクライアント側で自動制御させることにより、次のような効果がある。
（１）インストール成功可否を自動判別し、結果に応じた作業を自動実行させるため、手動作業を自動化させることができ、作業工数を軽減することができる。具体的には、例えば、インストール成功時はインストールプログラムのファイルを自動削除し、また失敗時はインストールプログラムを自動再実行させること等が可能となる。
（２）インストール実行から実行後作業までをクライアント側の制御で完結させるため、ネットワーク通信の負荷を軽減させることができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態の一例を示すシステム構成図である。
【図２】インストール要求情報及びインストール先クライアント情報のデータ構造図の一例である。
【図３】クライアント情報のデータ構成図の一例である。
【図４】リモートインストール処理概要を示すフローチャートの一例である。
【図５】モジュール生成処理概要を示すフローチャートの一例である。
【図６】モジュール実行処理概要を示すフローチャートの一例である。
【発明を実施するための形態】
【００１１】
本発明を適用したリモートインストールをする際の一実施形態について説明する。図１は、本発明の実施形態の一例を示すシステム構成図であり、本発明のリモートインストールシステムは、サーバ１０１と、それに相互に通信可能にネットワーク接続された操作端末１０２、及び同じくサーバ１０１と相互に通信可能にネットワーク接続された複数のインストール先クライアント１０３ａ、１０３ｎとから構成される。
【００１２】
操作端末１０２は、インストールするプログラム情報であるインストールプログラム情報と、インストール実行結果の成否を判別するための正常閾値と、インストールの実行結果が正常閾値内であった場合（インストール実行結果が正常、つまり成功の場合）に実行されるコマンドに関する情報である正常閾値内実行コマンド情報と、インストールの実行結果が正常閾値外であった場合（インストール実行結果が異常、つまり失敗の場合）に実行されるコマンドに関する情報である正常閾値外実行コマンド情報とを含むインストール要求情報１１１と、作業ディレクトリとクライアントＩＤとを含むインストール先クライアント情報１１０を、サーバ１０１に対して送信するインストール要求情報送信部を備えている。
【００１３】
操作端末１０２は、例えば、コンピュータであり、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成されるメモリと、ハードディスク等で構成される記憶装置と、キーボードやマウス等で構成される入力装置と、ディスプレイ等で構成される出力装置とを有する。操作端末１０２のＣＰＵが、メモリに記憶されているインストール要求プログラムを実行することにより、インストール要求情報送信部の機能が実現される。
【００１４】
サーバ１０１は、実行要求取得部１０４と、転送部１０５と、モジュール生成部１０６とを備え、クライアント情報１０９と、インストールプログラムファイル１０８とを保持している。
【００１５】
サーバ１０１は、例えば、コンピュータであり、ＣＰＵと、ＲＡＭ等で構成されるメモリと、ハードディスク等で構成される記憶装置とを有する。サーバ１０１のＣＰＵが、メモリに記憶されているリモートインストールプログラムを実行することにより、実行要求取得部１０４、転送部１０５及びモジュール生成部１０６の各機能が実現される。
【００１６】
実行要求取得部１０４は、サーバ１０１から送られてきたインストール要求情報１１１及びインストール先クライアント情報１１０を受信する。そして、受け取ったインストール要求情報１１１、即ち、インストールプログラム情報、正常閾値、正常閾値内実行コマンド情報及び正常閾値外実行コマンド情報をモジュール生成部１０６へ渡し、インストール先クライアント情報１１０を転送部１０５へ渡す。
【００１７】
モジュール生成部１０６は受け取ったインストール要求情報１１１を元にインストールプログラムファイルを管理するモジュール１０７を生成し、また、イントールプログラムファイル１０８を取得し、モジュール１０７とインストールプログラムファイル１０８とを併せて、転送部１０５へ渡す。
【００１８】
転送部１０５は、実行要求取得部１０４からインストール先クライアント情報１１０を取得し、モジュール生成部１０６からモジュール１０７とインストールプログラムファイル１０８を取得する。転送部１０５は実行要求取得部１０４から受け取ったインストール先クライアント情報１１０をクライアント情報１０９と照合し、照合が一致した場合、クライアント情報１０９からクライアント先のホスト名・ＩＰアドレスおよびクライアントＯＳユーザ情報を取得し、クライアント１０３と通信接続を行う。転送部１０５が通信コネクション確立後、モジュール１０７とインストールプログラムファイル１０８をクライアント１０３に送信する。
なお、転送部１０５で使用する通信プロトコルは既存の通信技術（ＪＰ１／Ａｕｔｏｍａｔｉｃ  Ｊｏｂ  Ｍａｎａｇｅｍｅｎｔ  Ｓｙｓｔｅｍ、またはＳＳＨ（Ｓｅｃｕｒｅ  Ｓｈｅｌｌ）によって通信可能な状態であるものとする。
【００１９】
クライアント１０３ａ〜１０３ｎは、モジュール実行要求受信部と、インストール実行要求部と、終了コード取得部と、判別部と、コマンド実行部とを備え、サーバ１０１から受信したモジュール１０７とインストールプログラムファイル１０８とを保持する。
【００２０】
クライアント１０３は、例えば、コンピュータであり、ＣＰＵと、ＲＡＭ等で構成されるメモリと、ハードディスク等で構成される記憶装置と、キーボードやマウス等で構成される入力装置と、ディスプレイ等で構成される出力装置とを有する。クライアント１０３のＣＰＵは、モジュール１０７やインストールプログラムファイル１０８に格納されたインストールプログラム（インストールプログラムファイルに格納されたインストールプログラムを、本発明では単にインストールプログラムと呼ぶ場合がある。）を実行する。クライアント１０３のＣＰＵが、モジュール１０７を実行することにより、インストール実行要求部、終了コード取得部、判別部及びコマンド実行部の各機能が実現される。また、クライアント１０３のＣＰＵが、メモリに記憶されている通信プログラムを読み出して実行することにより、モジュール実行要求受信部の機能が実現される。
【００２１】
モジュール実行要求受信部は、サーバ１０１から送られてきたモジュール１０７とインストールプログラムファイル１０８を受信する。なお、モジュール１０７はサーバ１０１で生成されたプログラムを示す。
【００２２】
インストール実行要求部は、インストールプログラム１０８の実行の指示をする。
【００２３】
終了コード取得部は、インストールプログラム１０８の実行終了時に発行された終了コードを取得する。
【００２４】
判別部は、終了コード取得部が取得した終了コードと正常閾値とに基づいて、即ち、終了コードが正常閾値の範囲内であるか否かによって、インストールプログラム１０８の実行結果の成否を判別する。
【００２５】
コマンド実行部は、判別結果、即ち、インストールプログラム１０８の実行結果の成否に応じて、正常閾値内実行コマンド又は正常閾値外実行コマンドに基づいて、インストールプログラム実行後のコマンドを実行する。
【００２６】
ここで、クライアント１０３における各部の作業の概要を示す。まず、モジュール実行要求受信部がモジュール１０７を受信するとモジュール１０７が実行される。モジュール１０７が実行されると、インストール実行要求部によりインストールプログラム１０８が呼び出され、実行される。モジュール１０７はインストールプログラム実行終了まで待機する。イントールプログラム１０８の実行が終了すると、モジュール１０７は待機状態から復帰し、終了コード取得部が、インストールプログラム実行終了時に発行された終了コードを取得する。次に、判定部が、発行された終了コードと正常閾値に基づいてインストールプログラムの実行結果の成否を判別する。判別の結果、インストールプログラムの実行結果が正常閾値内であれば正常閾値内実行コマンドを実行し、インストールプログラムの実行結果が正常閾値外であれば正常閾値外実行コマンドを実行する。
【００２７】
本発明のモジュール１０７は、サーバ１０１からのモジュール実行要求１１２により、インストールプログラム１０８とともに、クライアント１０３に送信され、クライアント１０３により実行されるプログラムであり、インストールプログラム１０８の実行結果に応じた操作（コマンド）を記憶しており、上述したクライアント１０３の各部の機能を実現する。具体的には、クライアント１０３に、インストールプログラム１０８の実行を要求するステップと、インストールプログラム１０８の実行後に終了コードを取得するステップと、終了コードと予め定めた正常閾値とに基づいて、インストールプログラム実行の成否を判別するステップと、判別結果が正常の場合には、予め定めた正常閾値内実行コマンドを実行し、また前記判別結果が異常の場合には、予め定めた正常閾値外実行コマンドを実行するステップと、を実行させる。
【００２８】
また、本発明のリモートインストール方法は、クライアント１０３が、インストールプログラム１０８の実行を要求するステップと、インストールプログラム１０８の実行後に終了コードを取得するステップと、終了コードと予め定めた正常閾値とに基づいて、インストールプログラム実行の成否を判別するステップと、判別結果が正常の場合には、予め定めた正常閾値内実行コマンドを実行し、また前記判別結果が異常の場合には、予め定めた正常閾値外実行コマンドを実行するステップと、を備える方法である。
【００２９】
図２は、作業者が要求する、操作端末１０２からサーバ１０１へ送信されるインストール要求情報１１１とインストール先クライアント情報１１０に含まれる情報を表しており、具体的には、インストールプログラム名２０１と、作業ディレクトリ２０２と、インストール実行コマンド２０３と、クライアントＩＤ２０４と、正常閾値２０５と、正常閾値実行コマンド２０６と、正常閾値外実行コマンド２０７とを含んでいることを示している。
【００３０】
ここでインストールプログラム名２０１はインストールプログラムファイル１０８のファイル名であり、作業ディレクトリ２０２はインストールプログラムファイル１０８の転送先および実行先ディレクトリであり、インストール実行コマンド２０３はインストールプログラム１０８を実行する際のコマンドであり、クライアントＩＤ２０４はクライアントを一意に割り振る識別子である。
【００３１】
正常閾値２０５は、予め定めたインストールプログラム１０８実行結果の成功条件を示すもので、インストールプログラム１０８の終了コードの正常範囲内の値を示している。
【００３２】
正常閾値内実行コマンド２０６は、終了コードが正常閾値２０５の範囲内であった場合（正常、即ち、インストールが成功した場合）に実行されるコマンドであり、例えば、正常閾値内実行コマンド２０６が実行されるとインストールプログラムファイル１０８がクライアント１０３から消去されるように設定することができる。
【００３３】
正常閾外実行コマンド２０７は、終了コードが正常閾値２０５の範囲外であった場合（異常、即ち、インストールが失敗した場合）に実行されるコマンドであり、例えば、正常閾値外実行コマンド２０７が実行されると、再度インストールプログラム１０８が呼び出され、インストールプログラム１０８が再度実行されるように設定することができる。
【００３４】
図３は、サーバ１０１が保持する、クライアント１０３へ接続するための情報であるクライアント情報１０９に含まれる項目を表しており、具体的には、クライアント識別子のクライアントＩＤ３０１と、ホスト名／ＩＰアドレス３０２と、クライアントＯＳユーザ３０３と、クライアントＯＳパスワード３０４とを含んでいることを示している。クライアント情報１０９の内容は、実行要求取得部１０４から送信されたインストール先クライアント情報１１０と照合され、一致した場合、転送部１０５によりクライアントとの接続を試みる。
【００３５】
図４は、操作端末１０２のインストール要求に対するモジュール生成からインストール完了までのフローチャートを示している。サーバ１０１はインストール要求１１１を受信すると、モジュール生成部１０６のモジュール生成処理４０１を呼び出す。サーバ１０１は、モジュール生成処理４０１によりモジュール１０７を生成後、モジュール生成部１０６によりインストールプログラム１０８を取得し、モジュール１０７とインストールプログラム１０８とを併せて転送部１０５に渡し、転送部１０５からクライアント１０３へ転送し、モジュールの実行要求４０２を行う。
【００３６】
クライアント１０３はモジュール実行要求４０２を受け、モジュール１０７を実行し、モジュール１０７からインストールプログラム１０８に対して実行要求を行う。インストールプログラム１０８が実行終了後、モジュール１０７はインストールプログラム１０８の終了コードを取得し、サーバ１０１へ終了結果４０３を送信し、処理を終了する。
【００３７】
サーバ１０１は受信した終了結果４０３を受信し、操作端末１０２へ送信する。このように、インストールプログラム１０８の実行結果がモジュール１０７から通知されるため、作業者は、インストールプログラム１０８の実行結果をリアルタイムに知ることができる。
【００３８】
図５は、モジュール生成部１０６のモジュール生成処理呼出４０１により呼び出されるモジュール生成のフローチャートを示している。モジュール生成処理は、モジュールファイル作成５０１によりモジュールファイルを作成し、宣言部書込み５０２によりヘッダ定義および変数定義を行い、インストール要求情報１１１を元に処理部書込み５０３により、正常閾値、正常閾値内実行コマンド、正常閾値外実行コマンド等について、条件処理、分岐命令、各分岐における実行処理をモジュール１０７に書き込む。処理部書込み５０３終了後、処理を終了する。
【００３９】
図６は、モジュール１０７の実行から完了までのフローチャートを示している。モジュール１０７は、インストールプログラム１０８に対してインストールプログラム実行要求６０１を送信する。インストールプログラム１０８はインストールプログラム実行要求６０１を受信し、インストールプログラムファイル１０８を実行する。実行終了するとインストールプログラム終了コード６０２をモジュール１０７へ返信する。モジュール１０７は取得したインストールプログラム終了コード６０２を正常閾値の条件と比較して判別し、正常閾値内であれば正常閾値内コマンドを実行し、正常閾値外であれば、正常値外コマンドを実行する。
【符号の説明】
【００４０】
１０１…サーバ、１０２…操作端末、１０３…インストール先クライアント、１０４…実行要求取得部、１０５…転送部、１０６…モジュール生成部、１０７…モジュール、１０８…インストールプログラム、１０９…クライアント情報、１１０…インストール先クライアント情報、１１１…インストール要求情報、１１２…モジュール実行要求、２０１…インストールプログラム名、２０２…作業ディレクトリ、２０３…インストール実行コマンド、２０４…クライアントＩＤ、２０５…正常閾値、２０６…正常閾値内実行コマンド、２０７…正常閾値外実行コマンド、３０１…クライアントＩＤ、３０２…ホスト名／ＩＰアドレス、３０３…クライアントＯＳユーザ、３０４…クライアントＯＳパスワード、４０１…モジュール生成処理、４０２…モジュールの実行要求、４０３…終了結果、５０１…モジュールファイル作成、５０２…宣言部書込み、５０３…処理部書込み、６０１…インストールプログラム実行要求、６０２…インストールプログラム終了コード
【図１】
2016062283.tif 000003
【図２】
2016062283.tif 000004
【図３】
2016062283.tif 000005
【図４】
2016062283.tif 000006
【図５】
2016062283.tif 000007
【図６】
2016062283.tif 000008