(57)【要約】【課題】ソフトウェアのインストールを容易にする。【解決手段】コンピュータに、ソフトウェアのインストール手順を定義する第１情報１６１と、ソフトウェアのインストールのために求められるハードウェア構成を定義する第２情報１６２とを取得し、取得した第１情報１６１と第２情報１６２とに基づき、プロキシサーバ５を介さずにインターネット４に接続される第１環境２と、プロキシサーバ５を介してインターネット４に接続される第２環境３とを構築し、取得した第１情報１６１に基づき、構築した第１環境２と第２環境３とのそれぞれにおいてソフトウェアをインストールし、第１環境２におけるインストール結果と第２環境３におけるインストール結果とが一致しない場合に、インストール結果の不一致を通知する、処理を実行させる。【選択図】図１
2019200468.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
ソフトウェアのインストール手順を定義する第１情報と、前記ソフトウェアのインストールのために求められるハードウェア構成を定義する第２情報とを取得し、
取得した前記第１情報と前記第２情報とに基づき、プロキシサーバを介さずにインターネットに接続される第１環境と、プロキシサーバを介してインターネットに接続される第２環境とを構築し、
取得した前記第１情報に基づき、構築した前記第１環境と前記第２環境とのそれぞれにおいて前記ソフトウェアをインストールし、
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致しない場合に、インストール結果の不一致を通知する、
処理を実行させる、インストール補助プログラム。
【請求項２】
前記第１環境と前記第２環境とにおいて同期して、前記ソフトウェアのインストールを実行する、
処理を前記コンピュータに実行させる、請求項１に記載のインストール補助プログラム。
【請求項３】
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致しない場合に、前記プロキシサーバの設定に誤りがあること、又は、前記ソフトウェアが前記第２環境での利用に対応していないことを通知する、
処理を前記コンピュータに実行させる、請求項１又は２に記載のインストール補助プログラム。
【請求項４】
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致しない場合に、構築した前記第１環境と前記第２環境とを削除する、
処理を前記コンピュータに実行させる、請求項１〜３のいずれか１項に記載のインストール補助プログラム。
【請求項５】
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致する場合に、構築した前記第１環境を削除する、
処理を前記コンピュータに実行させる、請求項１〜４のいずれか１項に記載のインストール補助プログラム。
【請求項６】
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致する場合に、前記第２環境へアクセスするための第３情報を通知する、
処理を前記コンピュータに実行させる、請求項１〜５のいずれか１項に記載のインストール補助プログラム。
【請求項７】
ソフトウェアのインストール手順を定義する第１情報と、前記ソフトウェアのインストールのために求められるハードウェア構成を定義する第２情報とを取得し、
取得した前記第１情報と前記第２情報とに基づき、プロキシサーバを介さずにインターネットに接続される第１環境と、プロキシサーバを介してインターネットに接続される第２環境とを構築し、
取得した前記第１情報に基づき、構築した前記第１環境と前記第２環境とのそれぞれにおいて前記ソフトウェアをインストールし、
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致しない場合に、インストール結果の不一致を通知する、
インストール方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インストール補助プログラム及びインストール方法に関する。
【背景技術】
【０００２】
Open Source Software（ＯＳＳ）が普及している。ＯＳＳを利用するソフトウェアの開発者は、例えば企業に属していない場合に、インターネットに直接に接続可能な環境でソフトウェアを開発することがあり、開発したソフトウェアがプロキシ環境で利用されることを想定していない場合がある。
【０００３】
また、巨大な仮想化基盤ソフトウェアは、複数のＯＳＳを組み合わせて構築され、プロキシ環境で利用されるために複数のＯＳＳの全てに対してプロキシの設定がされる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−９４７３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、開発者が複数のＯＳＳの全ての構成を理解しているとは限らない。また、仮に、開発者がプロキシ環境を考慮した開発を行なっていたとしても、開発したソフトウェアが利用されるプロキシ環境を網羅していない場合には、開発されたソフトウェアをインストールするユーザが環境設定を完了できないおそれがある。
【０００６】
ユーザが実際に開発されたソフトウェアをインストールした後に環境設定に関する問題が発覚した場合には、問題の原因を特定するために多くの工数が必要となるおそれがある。
【０００７】
例えば、ユーザは、エラーメッセージやトレースログの情報を手掛かりに、インターネットにおいてＦＡＱやバグ情報を検索したり、ソフトウェアのソースコードを解析したりして、どの環境設定で誤りが発生しているかを調査する。そして、ユーザは、手作業により、ソフトウェアの設定ファイルやネットワーク設定を適宜修正した後、ソフトウェアのインストールを再度実行する。なお、ＦＡＱは、Frequently Asked Questionsの略称である。
【０００８】
１つの側面では、ソフトウェアのインストールを容易にすることを目的とする。
【課題を解決するための手段】
【０００９】
インストール補助プログラムは、コンピュータに、ソフトウェアのインストール手順を定義する第１情報と、前記ソフトウェアのインストールのために求められるハードウェア構成を定義する第２情報とを取得し、取得した前記第１情報と前記第２情報とに基づき、プロキシサーバを介さずにインターネットに接続される第１環境と、プロキシサーバを介してインターネットに接続される第２環境とを構築し、取得した前記第１情報に基づき、構築した前記第１環境と前記第２環境とのそれぞれにおいて前記ソフトウェアをインストールし、前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致しない場合に、インストール結果の不一致を通知する、処理を実行させる。
【発明の効果】
【００１０】
１つの側面では、ソフトウェアのインストールを容易にすることができる。
【図面の簡単な説明】
【００１１】
【図１】実施形態の一例としての情報処理システムの構成を模式的に示すブロック図である。
【図２】図１に示した情報処理システムにおける制御ノードのハードウェア構成を模式的に示すブロック図である。
【図３】図１に示したハードウェア構成情報テーブル及びインストール先サーバ情報テーブルの一例を示す図である。
【図４】図１に示したインストール実行結果テーブルにおける初期状態を示す図である。
【図５】図１に示したインストール実行結果テーブルにおける第１のエラー例を示す図である。
【図６】図１に示したインストール実行結果テーブルにおける第２のエラー例を示す図である。
【図７】図１に示した制御ノードにおいて出力されるインストール結果メッセージを例示する図である。
【図８】図１に示したインストール手順定義ファイル及びハードウェア情報定義ファイルの一例を示す図である。
【図９】図１に示した制御ノードにおけるソフトウェアのインストール処理の概要を示すフローチャートである。
【図１０】図９に示したテーブル初期化処理の詳細を示すフローチャートである。
【図１１】図９に示したプロキシ環境ノードの構築処理の詳細を示すフローチャートである。
【図１２】図９に示した環境誤り箇所の検出処理の詳細を示すフローチャートである。
【図１３】図９に示した環境誤り箇所の検出処理の詳細を示すシーケンス図である。
【図１４】図９に示したインストール環境の削除処理の詳細を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面を参照して一実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。
【００１３】
また、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【００１４】
以下、図中において、同一の各符号は同様の部分を示しているので、その説明は省略する。
【００１５】
〔Ａ〕実施形態の一例
〔Ａ−１〕システム構成例
図１は、実施形態の一例としての情報処理システム１００の構成を模式的に示すブロック図である。
【００１６】
情報処理システム１００は、制御ノード１とダイレクト環境ノード２とプロキシ環境ノード３とを備える。
【００１７】
ダイレクト環境ノード２は、制御ノード１からの指示に応じてダイレクト環境管理サービス２０において構築され、インターネット４と直接に接続される。ダイレクト環境ノード２は、ダイレクトインストール部２１１として機能する。
【００１８】
ダイレクトインストール部２１１は、制御ノード１からの指示に応じて、インストール手順毎に、ダイレクト環境ノード２においてソフトウェアをインストールする。
【００１９】
プロキシ環境ノード３は、制御ノード１からの指示に応じてプロキシ環境管理サービス３０において構築され、プロキシサーバ５を介してインターネット４と接続される。プロキシ環境ノード３は、プロキシインストール部３１１として機能する。
【００２０】
プロキシインストール部３１１は、制御ノード１からの指示に応じて、インストール手順毎に、プロキシ環境ノード３においてソフトウェアをインストールする。
【００２１】
制御ノード１は、ダイレクト環境ノード２及びプロキシ環境ノード３における同一のソフトウェアのインストールを制御する。制御ノード１は、インストール手順作成部１１１，ハードウェア情報取得部１１２，インストール制御部１１３，ダイレクト環境構築部１１４，ダイレクト環境削除部１１５，プロキシ環境構築部１１６及びプロキシ環境削除部１１７として機能する。また、制御ノード１は、図２を用いて後述する記憶装置１４において、インストール実行結果テーブル１４１，ハードウェア構成情報テーブル１４２及びインストール先サーバ情報テーブル１４３を保持する。
【００２２】
インストール手順作成部１１１は、ソフトウェアのインストール手順を定義するインストール手順定義ファイル１６１（「第１情報」と称されてもよい。）を取得する。そして、インストール手順作成部１１１は、取得したインストール手順定義ファイル１６１から抽出した情報を、インストール実行結果テーブル１４１に格納する。
【００２３】
なお、インストール実行結果テーブル１４１の詳細については図４〜図６を用いて後述すると共に、インストール手順定義ファイル１６１の詳細については図８の（１）を用いて後述する。
【００２４】
ハードウェア情報取得部１１２は、ソフトウェアのインストールのために求められるハードウェア構成を定義するハードウェア情報定義ファイル１６２（「第２情報」と称されてもよい。）を取得する。そして、ハードウェア情報取得部１１２は、取得したハードウェア情報定義ファイル１６２から抽出した情報を、ハードウェア構成情報テーブル１４２に格納する。
【００２５】
なお、ハードウェア構成情報テーブル１４２の詳細については図３の（１）を用いて後述すると共に、ハードウェア情報定義ファイル１６２の詳細については図８の（２）を用いて後述する。
【００２６】
インストール制御部１１３は、取得されたインストール手順定義ファイル１６１とハードウェア情報定義ファイル１６２とに基づき、ダイレクト環境構築部１１４に対して、ダイレクト環境ノード２の構築を指示する。また、インストール制御部１１３は、取得されたインストール手順定義ファイル１６１とハードウェア情報定義ファイル１６２とに基づき、プロキシ環境構築部１１６に対して、プロキシ環境ノード３の構築を指示する。
【００２７】
インストール制御部１１３は、構築されたダイレクト環境ノード２において、ダイレクトインストール部２１１を配備する。そして、インストール制御部１１３は、取得したインストール手順定義ファイル１６１に基づき、ダイレクトインストール部２１１に対して、ソフトウェアのインストールを指示する。また、インストール制御部１１３は、構築されたプロキシ環境ノード３において、プロキシインストール部３１１を配備する。そして、インストール制御部１１３は、取得したインストール手順定義ファイル１６１に基づき、プロキシインストール部３１１に対して、ソフトウェアのインストールを指示する。ソフトウェアのインストールは、ダイレクト環境ノード２とプロキシ環境ノード３とにおいて同期して実行されてよい。
【００２８】
インストール制御部１１３は、ダイレクト環境ノード２及びプロキシ環境ノード３におけるソフトウェアのインストール結果を、インストール手順毎に、インストール実行結果テーブル１４１に格納する。
【００２９】
インストール制御部１１３は、インストール実行結果テーブル１４１を参照し、各インストール手順について、ダイレクト環境ノード２におけるインストール結果とプロキシ環境ノード３におけるインストール結果との間で、不一致が発生しているかを判定する。
【００３０】
インストール制御部１１３は、インストール結果の不一致が発生している手順が存在する場合に、制御ノード１の利用者（「ユーザ」と称されてもよい。）に対して、インストール結果の不一致を通知する。また、インストール制御部１１３は、インストール結果の不一致が発生している手順が存在する場合に、ユーザに対して、プロキシサーバ５の設定に誤りがあること、又は、ソフトウェアがプロキシ環境ノード３での利用に対応していないことを通知してもよい。更に、インストール制御部１１３は、インストール結果の不一致が発生している手順が存在する場合に、ダイレクト環境削除部１１５に対してダイレクト環境ノード２の削除を指示すると共に、プロキシ環境削除部１１７に対してプロキシ環境ノード３の削除を指示してよい。
【００３１】
なお、インストール結果の不一致が発生している手順が存在する場合におけるユーザへの通知の詳細については、図７の（１）を用いて後述する。
【００３２】
インストール制御部１１３は、インストール結果の不一致が発生している手順が存在しない場合に、制御ノード１のユーザに対して、インストール結果の一致を通知する。また、インストール制御部１１３は、インストール結果の不一致が発生している手順が存在しない場合に、インストール先サーバ情報テーブル１４３に対して、プロキシ環境ノード３にアクセスするための情報（「第３情報」や「アクセス情報」と称されてもよい。）を格納してよい。そして、インストール制御部１１３は、ユーザに対して、プロキシ環境ノード３にアクセスするための情報を通知してよい。更に、インストール制御部１１３は、インストール結果の不一致が発生している手順が存在しない場合に、ダイレクト環境削除部１１５に対して、ダイレクト環境ノード２の削除を指示してよい。
【００３３】
なお、インストール先サーバ情報テーブル１４３の詳細については図３の（２）を用いて後述する。また、インストール結果の不一致が発生している手順が存在しない場合におけるユーザへの通知の詳細については、図７の（２）を用いて後述する。
【００３４】
ダイレクト環境構築部１１４は、インストール制御部１１３からの指示に応じて、ダイレクト環境ノード２を構築する。
【００３５】
ダイレクト環境削除部１１５は、インストール制御部１１３からの指示に応じて、ダイレクト環境ノード２を削除する。
【００３６】
プロキシ環境構築部１１６は、インストール制御部１１３からの指示に応じて、プロキシ環境ノード３を構築する。
【００３７】
プロキシ環境削除部１１７は、インストール制御部１１３からの指示に応じて、プロキシ環境ノード３を削除する。
【００３８】
図２は、図１に示した情報処理システム１００における制御ノード１のハードウェア構成を模式的に示すブロック図である。
【００３９】
制御ノード１は、Central Processing Unit（ＣＰＵ）１１，メモリ１２，表示制御部１３，記憶装置１４，入力Interface（Ｉ／Ｆ）１５，読み書き処理部１６及び通信Ｉ／Ｆ１７を備える。
【００４０】
メモリ１２は、例示的に、Read Only Memory（ＲＯＭ）及びRandom Access Memory（ＲＡＭ）を含む記憶装置である。メモリ１２のＲＯＭには、Basic Input/Output System（ＢＩＯＳ）等のプログラムが書き込まれてよい。メモリ１２のソフトウェアプログラムは、ＣＰＵ１１に適宜に読み込まれて実行されてよい。また、メモリ１２のＲＡＭは、一次記録メモリあるいはワーキングメモリとして利用されてよい。
【００４１】
表示制御部１３は、表示装置１３０と接続され、表示装置１３０を制御する。表示装置１３０は、液晶ディスプレイやOrganic Light-Emitting Diode（ＯＬＥＤ）ディスプレイ，Cathode Ray Tube（ＣＲＴ），電子ペーパーディスプレイ等であり、オペレータ等に対する各種情報を表示する。表示装置１３０は、入力装置と組み合わされたものでもよく、例えば、タッチパネルでもよい。制御ノード１の表示装置１３０には、図７を用いて後述されるインストール結果メッセージが表示される。
【００４２】
記憶装置１４は、例示的に、データを読み書き可能に記憶する装置であり、例えば、Hard Disk Drive（ＨＤＤ）やSolid State Drive（ＳＳＤ），Storage Class Memory（ＳＣＭ）が用いられてよい。制御ノード１の記憶装置１４は、図１に示したインストール実行結果テーブル１４１，ハードウェア構成情報テーブル１４２及びインストール先サーバ情報テーブル１４３に関する情報を記憶する。
【００４３】
入力Ｉ／Ｆ１５は、マウス１５１やキーボード１５２等の入力装置と接続され、マウス１５１やキーボード１５２等の入力装置を制御する。マウス１５１やキーボード１５２は、入力装置の一例であり、これらの入力装置を介して、オペレータが各種の入力操作を行なう。
【００４４】
読み書き処理部１６は、記録媒体１６０が装着可能に構成される。読み書き処理部１６は、記録媒体１６０が装着された状態において、記録媒体１６０に記録されている情報を読み取り可能に構成される。本例では、記録媒体１６０は、可搬性を有する。例えば、記録媒体１６０は、フレキシブルディスク、光ディスク、磁気ディスク、光磁気ディスク、又は、半導体メモリ等である。
【００４５】
通信Ｉ／Ｆ１７は、外部装置との通信を可能にするためのインタフェースである。制御ノード１は、通信Ｉ／Ｆ１７を介して、ダイレクト環境ノード２及びプロキシ環境ノード３と通信可能に接続される。
【００４６】
ＣＰＵ１１は、種々の制御や演算を行なう処理装置であり、メモリ１２に格納されたOperating System（ＯＳ）やプログラムを実行することにより、種々の機能を実現する。すなわち、制御ノード１のＣＰＵ１１は、図１に示したように、インストール手順作成部１１１，ハードウェア情報取得部１１２，インストール制御部１１３，ダイレクト環境構築部１１４，ダイレクト環境削除部１１５，プロキシ環境構築部１１６及びプロキシ環境削除部１１７として機能する。
【００４７】
なお、これらのインストール手順作成部１１１，ハードウェア情報取得部１１２，インストール制御部１１３，ダイレクト環境構築部１１４，ダイレクト環境削除部１１５，プロキシ環境構築部１１６及びプロキシ環境削除部１１７としての機能を実現するためのプログラムは、例えば前述した記録媒体１６０に記録された形態で提供される。そして、コンピュータは読み書き処理部１６を介してその記録媒体１６０からプログラムを読み取って内部記憶装置または外部記憶装置に転送し格納して用いる。また、そのプログラムを、例えば磁気ディスク，光ディスク，光磁気ディスク等の記憶装置（記録媒体）に記録しておき、その記憶装置から通信経路を介してコンピュータに提供してもよい。
【００４８】
インストール手順作成部１１１，ハードウェア情報取得部１１２，インストール制御部１１３，ダイレクト環境構築部１１４，ダイレクト環境削除部１１５，プロキシ環境構築部１１６及びプロキシ環境削除部１１７としての機能を実現する際には、内部記憶装置に格納されたプログラムがコンピュータのマイクロプロセッサによって実行される。このとき、記録媒体１６０に記録されたプログラムをコンピュータが読み取って実行してもよい。なお、本実施形態において、内部記憶装置はメモリ１２であり、マイクロプロセッサはＣＰＵ１１である。
【００４９】
ＣＰＵ１１は、例示的に、制御ノード１全体の動作を制御する。制御ノード１全体の動作を制御するための装置は、ＣＰＵ１１に限定されず、例えば、ＭＰＵやＤＳＰ，ＡＳＩＣ，ＰＬＤ，ＦＰＧＡのいずれか１つであってもよい。また、制御ノード１全体の動作を制御するための装置は、ＣＰＵ，ＭＰＵ，ＤＳＰ，ＡＳＩＣ，ＰＬＤ及びＦＰＧＡのうちの２種類以上の組み合わせであってもよい。なお、ＭＰＵはMicro Processing Unitの略称であり、ＤＳＰはDigital Signal Processorの略称であり、ＡＳＩＣはApplication Specific Integrated Circuitの略称である。また、ＰＬＤはProgrammable Logic Deviceの略称であり、ＦＰＧＡはField Programmable Gate Arrayの略称である。
【００５０】
図３の（１）は、図１に示したハードウェア構成情報テーブル１４２の一例を示す図である。
【００５１】
ハードウェア構成情報テーブル１４２は、ソフトウェアのインストールのために求められるハードウェアの構成情報を保持する。
【００５２】
図示する例において、ハードウェア構成情報テーブル１４２には、ハードウェア構成の要件として、ＣＰＵが“２ＣＰＵ”であり、メモリが“８ＧＢ”であり、ディスクが“４０ＧＢ”であることが登録されている。
【００５３】
図３の（２）は、図１に示したインストール先サーバ情報テーブル１４３の一例を示す図である。
【００５４】
インストール先サーバ情報テーブル１４３は、構築したプロキシ環境ノード３及びダイレクト環境ノード２へのアクセスのための接続先情報を保持する。
【００５５】
図示する例において、インストール先サーバ情報テーブル１４３には、プロキシ環境ノード３のInternet Protocol（ＩＰ）アドレスが“１９２．１６８．０．１”であり、ダイレクト環境ノード２のＩＰアドレスが“２．２．２．２”であることが登録されている。
【００５６】
図４は、図１に示したインストール実行結果テーブル１４１における初期状態を示す図である。
【００５７】
インストール実行結果テーブル１４１には、ソフトウェアをインストールするための手順が登録されており、また、ソフトウェアのインストール結果が登録される。インストール制御部１１３は、インストール実行結果テーブル１４１を参照して、ダイレクトインストール部２１１及びプロキシインストール部３１１に対して、次にどのインストール手順を実行させるかを判断する。
【００５８】
図示する例において、インストール実行結果テーブル１４１は、インストール手順，プロキシ環境復帰コード，プロキシ環境実行ログ，ダイレクト環境復帰コード及びダイレクト環境実行ログのカラムを有する。インストール手順のカラムには、“手順＃１”，“手順＃２”，“手順＃３”及び“手順＃４”が登録されている。また、ソフトウェアのインストール前の初期状態においては、プロキシ環境復帰コード，プロキシ環境実行ログ，ダイレクト環境復帰コード及びダイレクト環境実行ログのカラムには、情報が登録されていない。
【００５９】
図５は、図１に示したインストール実行結果テーブル１４１における第１のエラー例を示す図である。
【００６０】
図示する例では、“手順＃３”において、ダイレクト環境復帰コードは“０”であり、ダイレクト環境実行ログは“Install was finished.”である。すなわち、“手順＃３”におけるダイレクト環境ノード２に対するインストールは成功している。しかしながら、“手順＃３”において、プロキシ環境復帰コードは“１”であり、プロキシ環境実行ログは“SSL certificate problem, certificate verify failed. SSL certificate problem, certificate verify failed.”である。すなわち、“手順＃３”におけるプロキシ環境ノード３に対するインストールは失敗している。
【００６１】
図６は、図１に示したインストール実行結果テーブル１４１における第２のエラー例を示す図である。
【００６２】
図示する例では、“手順＃３”において、ダイレクト環境復帰コードは“０”であり、ダイレクト環境実行ログは“Install was finished. Installed plugin: A,B”である。すなわち、“手順＃３”におけるダイレクト環境ノード２に対するインストールは成功している。しかしながら、“手順＃３”において、プロキシ環境復帰コードは“０”であり、プロキシ環境実行ログは“Install was finished. WARN: plugin was not installed due to inaccessible to http://example.com”である。すなわち、“手順＃３”におけるプロキシ環境ノード３に対するインストールは失敗している。
【００６３】
図７の（１）は、図１に示した制御ノード１において出力されるインストール失敗時におけるインストール結果メッセージを例示する図である。
【００６４】
インストール失敗時におけるインストール結果メッセージでは、ダイレクト環境ノード２におけるインストール結果とプロキシ環境ノード３におけるインストール結果とが不一致であることが表示される。また、インストール失敗時におけるインストール結果メッセージでは、不一致が発生した手順におけるダイレクト環境ノード２及びプロキシ環境ノード３における復帰コードと実行ログとが表示される。
【００６５】
図７の（１）に示す例では、図６に示したインストール実行結果テーブル１４１の“手順＃３”におけるインストール結果が表示されている。
【００６６】
図７の（２）は、図１に示した制御ノード１において出力されるインストール成功時におけるインストール結果メッセージを例示する図である。
【００６７】
インストール成功時におけるインストール結果メッセージでは、インストールが成功したこと、及び、プロキシ環境ノード３へのアクセス情報が表示される。
【００６８】
図７の（２）に示す例では、プロキシ環境ノード３へのアクセス情報として、ＩＰアドレスが“１９２．１６８．０．１”であり、ユーザ名が“ｔｅｓｔｅｒ”であり、パスワードが“ｓｅｃｕｒｅ−ｐａｓｓｗｏｒｄ”であることが表示されている。
【００６９】
図８の（１）は、図１に示したインストール手順定義ファイル１６１の一例を示す図である。
【００７０】
インストール手順定義ファイル１６１は、ソフトウェアのインストール手順を定義し、ソフトウェアの開発者によって定義されてよい。
【００７１】
図８の（１）に示す例において、インストール手順定義ファイル１６１には、ソフトウェアのインストール手順として、手順＃１〜＃４が定義されている。
【００７２】
図８の（２）は、図１に示したハードウェア情報定義ファイル１６２の一例を示す図である。
【００７３】
ハードウェア情報定義ファイル１６２は、ソフトウェアのインストールのために求められるハードウェア構成を定義し、ソフトウェアの開発者によって定義されてよい。
【００７４】
図８の（２）に示す例において、ハードウェア情報定義ファイル１６２には、ハードウェア構成の要件として、ＣＰＵが“２ＣＰＵ”であり、メモリが“８［ＧＢ］”であり、ディスクが“４０［ＧＢ］”であることが登録されている。
【００７５】
〔Ａ−２〕動作例
図１に示した制御ノード１におけるソフトウェアのインストール処理の概要を、図９に示すフローチャート（ステップＳ１〜Ｓ４）に従って説明する。
【００７６】
インストール手順作成部１１１はインストール手順定義ファイル１６１によりインストール実行結果テーブル１４１を初期化すると共に、ハードウェア情報取得部１１２はハードウェア情報定義ファイル１６２によりハードウェア構成情報テーブル１４２を初期化する（ステップＳ１）。なお、ステップＳ１における処理の詳細は、図１０を用いて後述する。
【００７７】
インストール制御部１１３からの指示に応じて、プロキシ環境構築部１１６はプロキシ環境ノード３を構築すると共に、ダイレクト環境構築部１１４はダイレクト環境ノード２を構築する（ステップＳ２）。なお、ステップＳ２における処理の詳細は、図１１を用いて後述する。
【００７８】
インストール制御部１１３は、ダイレクト環境ノード２及びプロキシ環境ノード３に対するソフトウェアのインストールを実行し、プロキシ環境ノード３における設定の誤り箇所を検出する（ステップＳ３）。なお、ステップＳ３における処理の詳細は、図１２及び図１３を用いて後述する。
【００７９】
インストール制御部１１３からの指示に応じて、プロキシ環境削除部１１７はプロキシ環境ノード３を削除すると共に、ダイレクト環境削除部１１５はダイレクト環境ノード２を削除する（ステップＳ４）。そして、制御ノード１におけるソフトウェアのインストール処理は終了する。なお、ステップＳ４における処理の詳細は、図１４を用いて後述する。
【００８０】
次に、図９に示したテーブル初期化処理（ステップＳ１）の詳細を、図１０に示すフローチャート（ステップＳ１１〜Ｓ１４）に従って説明する。
【００８１】
インストール手順作成部１１１は、インストール実行結果テーブル１４１の全データを削除する（ステップＳ１１）。
【００８２】
インストール手順作成部１１１は、インストール手順定義ファイル１６１から、インストール手順を読み込む（ステップＳ１２）。
【００８３】
インストール手順作成部１１１は、インストール実行結果テーブル１４１において、行を追加する（ステップＳ１３）。
【００８４】
なお、ステップＳ１２及びＳ１３における処理は、インストール手順定義ファイル１６１に含まれる手順の数だけ繰り返される。
【００８５】
ハードウェア情報取得部１１２は、ハードウェア情報定義ファイル１６２を参照し、ハードウェア情報定義ファイル１６２から抽出した情報をハードウェア構成情報テーブル１４２に格納する（ステップＳ１４）。そして、テーブル初期化処理は終了する。
【００８６】
次に、図９に示したプロキシ環境ノード３の構築処理（ステップＳ２）の詳細を、図１１に示すフローチャート（ステップＳ２１〜Ｓ２４）に従って説明する。
【００８７】
インストール制御部１１３は、ハードウェア構成情報テーブル１４２から、ハードウェア構成に関する情報を取得する（ステップＳ２１）。
【００８８】
プロキシ環境構築部１１６は、インストール制御部１１３からの指示に基づき、プロキシ環境ノード３の作成をプロキシ環境管理サービス３０へ依頼する（ステップＳ２２）。
【００８９】
インストール制御部１１３は、プロキシ環境管理サービス３０から、プロキシ環境ノード３へのアクセス情報を取得する（ステップＳ２３）。
【００９０】
インストール制御部１１３は、取得したアクセス情報をインストール先サーバ情報テーブル１４３に格納する（ステップＳ２４）。そして、プロキシ環境ノード３の構築処理は終了する。
【００９１】
なお、ダイレクト環境ノード２の構築処理も、ステップＳ２１〜Ｓ２４に示したプロキシ環境ノード３の構築処理と同様に実行される。
【００９２】
次に、図９に示した環境誤り箇所の検出処理（ステップＳ３）の詳細を、図１２に示すフローチャート（ステップＳ３０１〜Ｓ３１３）に従って説明する。
【００９３】
インストール制御部１１３は、インストール先サーバ情報テーブル１４３から、プロキシ環境ノード３及びダイレクト環境ノード２へのアクセス情報を取得する（ステップＳ３０１）。
【００９４】
インストール制御部１１３は、プロキシ環境ノード３において、プロキシインストール部３１１を配備する（ステップＳ３０２）。
【００９５】
インストール制御部１１３は、ダイレクト環境ノード２において、ダイレクトインストール部２１１を配備する（ステップＳ３０３）。
【００９６】
インストール制御部１１３は、変数ｉを“１”に設定する（ステップＳ３０４）。
【００９７】
インストール制御部１１３は、インストール実行結果テーブル１４１から、ｉ行目の手順内容を取得する（ステップＳ３０５）。
【００９８】
インストール制御部１１３は、プロキシインストール部３１１及びダイレクトインストール部２１１に対して、取得した手順内容を送信する（ステップＳ３０６）。
【００９９】
インストール制御部１１３は、プロキシインストール部３１１及びダイレクトインストール部２１１から、インストール実行結果（別言すれば、「復帰コード及び実行ログ」）を受信する（ステップＳ３０７）。
【０１００】
インストール制御部１１３は、インストール実行結果テーブル１４１に、受信した実行結果を格納する（ステップＳ３０８）。
【０１０１】
インストール制御部１１３は、プロキシ環境ノード３における実行結果とダイレクト環境ノード２における実行結果とが一致するかを判定する（ステップＳ３０９）。
【０１０２】
実行結果が一致しない場合には（ステップＳ３０９のＮｏルート参照）、インストール制御部１１３は、ユーザに対して、失敗したインストール手順を通知する（ステップＳ３１０）。
【０１０３】
一方、実行結果が一致する場合には（ステップＳ３０９のＹｅｓルート参照）、インストール制御部１１３は、インストール実行結果テーブル１４１において、ｉ行目が最後のインストール手順であるかを判定する（ステップＳ３１１）。
【０１０４】
ｉ行目が最後のインストール手順でない場合には（ステップＳ３１１のＮｏルート参照）、インストール制御部１１３は、変数ｉを“１”インクリメントする（ステップＳ３１２）。そして、処理はステップＳ３０５へ戻る。
【０１０５】
一方、ｉ行目が最後のインストール手順である場合には（ステップＳ３１１のＹｅｓルート参照）、インストール制御部１１３は、ユーザに対して、インストール手順の成功及びプロキシ環境ノード３へのアクセス情報を通知する（ステップＳ３１３）。そして、環境誤り箇所の検出処理は終了する。
【０１０６】
次に、図９に示した環境誤り箇所の検出処理（ステップＳ３）の詳細を、図１３に示すシーケンス図（ステップＳ３２１〜Ｓ３３３）に従って説明する。
【０１０７】
インストール制御部１１３は、インストール実行結果テーブル１４１から、実行するインストール手順を決定する（ステップＳ３２１）。
【０１０８】
インストール制御部１１３は、プロキシインストール部３１１及びダイレクトインストール部２１１に対して、実行するインストール手順を通知する（ステップＳ３２２及びＳ３２３）。
【０１０９】
プロキシインストール部３１１及びダイレクトインストール部２１１は、インストール制御部１１３から指示されたインストール手順を実行する（ステップＳ３２４及びＳ３２５）。
【０１１０】
プロキシインストール部３１１及びダイレクトインストール部２１１は、インストール制御部１１３に対して、インストール実行結果を通知する（ステップＳ３２６及びＳ３２７）。
【０１１１】
インストール制御部１１３は、インストール実行結果テーブル１４１に、インストール実行結果を格納する（ステップＳ３２８）。
【０１１２】
インストール制御部１１３は、プロキシインストール部３１１によるインストール実行結果とダイレクトインストール部２１１によるインストール実行結果とを比較する（ステップＳ３２９）。
【０１１３】
インストール制御部１１３は、インストール実行結果が等しいかを判定する（ステップＳ３３０）。
【０１１４】
インストール実行結果が等しくない場合には（ステップＳ３３０のＮｏルート参照）、インストール制御部１１３は、ユーザに対して、インストール失敗を通知する（ステップＳ３３１）。そして、環境誤り箇所の検出処理は終了する。
【０１１５】
一方、インストール実行結果が等しい場合には（ステップＳ３３０のＹｅｓルート参照）、インストール制御部１１３は、インストール実行結果テーブル１４１における最後のインストール手順についてインストール結果の比較をしたかを判定する（ステップＳ３３２）。
【０１１６】
最後のインストール手順について比較をしていない場合には（ステップＳ３３２のＮｏルート参照）、処理はステップＳ３２１へ戻る。
【０１１７】
一方、最後のインストール手順について比較をした場合には（ステップＳ３３２のＹｅｓルート参照）、インストール制御部１１３は、ユーザに対して、インストール成功を通知する（ステップＳ３３３）。そして、環境誤り箇所の検出処理は終了する。
【０１１８】
次に、図９に示したインストール環境の削除処理（ステップＳ４）の詳細を、図１４に示すフローチャート（ステップＳ４１〜Ｓ４５）に従って説明する。
【０１１９】
インストール制御部１１３は、インストール先サーバ情報テーブル１４３から、ダイレクト環境ノード２のアクセス情報を取得する（ステップＳ４１）。
【０１２０】
ダイレクト環境削除部１１５は、インストール制御部１１３からの指示に応じて、取得されたアクセス情報に基づき、ダイレクト環境管理サービス２０に対して、ダイレクト環境ノード２の削除を依頼する（ステップＳ４２）。
【０１２１】
インストール制御部１１３は、全てのインストール手順が成功したかを判定する（ステップＳ４３）。
【０１２２】
全てのインストール手順が成功した場合には（ステップＳ４３のＹｅｓルート参照）、インストール環境の削除処理は終了する。
【０１２３】
一方、成功していないインストール手順がある場合には（ステップＳ４３のＮｏルート参照）、インストール制御部１１３は、インストール先サーバ情報テーブル１４３から、プロキシ環境ノード３のアクセス情報を取得する（ステップＳ４４）。
【０１２４】
プロキシ環境削除部１１７は、インストール制御部１１３からの指示に応じて、取得されたアクセス情報に基づき、プロキシ環境管理サービス３０に対して、プロキシ環境ノード３の削除を依頼する（ステップＳ４５）。そして、インストール環境の削除処理は終了する。
【０１２５】
〔Ａ−３〕効果
上述した実施形態の一例における制御ノード１によれば、例えば、以下の作用効果を奏することができる。
【０１２６】
インストール手順作成部１１１は、ソフトウェアのインストール手順を定義するインストール手順定義ファイル１６１を取得する。ハードウェア情報取得部１１２は、ソフトウェアのインストールのために求められるハードウェア情報定義ファイル１６２を取得する。
【０１２７】
ダイレクト環境構築部１１４は、取得されたインストール手順定義ファイル１６１及びハードウェア情報定義ファイル１６２に基づき、プロキシサーバ５を介さずにインターネット４に接続されるダイレクト環境ノード２を構築する。プロキシ環境構築部１１６は、取得されたインストール手順定義ファイル１６１及びハードウェア情報定義ファイル１６２に基づき、プロキシサーバ５を介してインターネット４に接続されるプロキシ環境ノード３を構築する。
【０１２８】
インストール制御部１１３は、取得されたインストール手順定義ファイル１６１に基づき、構築されたダイレクト環境ノード２とプロキシ環境ノード３とのそれぞれにおいて、ソフトウェアをインストールする。
【０１２９】
インストール制御部１１３は、ダイレクト環境ノード２におけるインストール結果とプロキシ環境ノード３におけるインストール結果とが一致しない場合に、インストール結果の不一致を通知する。
【０１３０】
これらにより、ソフトウェアのインストールを容易にすることができる。具体的には、ソフトウェアをプロキシ環境でインストールして利用しようとするユーザは、ダイレクト環境におけるインストール結果とプロキシ環境におけるインストール結果とに差異が発生したことを認識できる。
【０１３１】
インストール制御部１１３は、ダイレクト環境ノード２とプロキシ環境ノード３とにおいて同期して、ソフトウェアのインストールを実行する。
【０１３２】
これにより、ダイレクト環境におけるインストール結果とプロキシ環境におけるインストール結果とにおいて不一致の手順が発見された場合には、ソフトウェアのインストール処理を停止し、インストール結果の不一致を早期に通知できる。
【０１３３】
インストール制御部１１３は、ダイレクト環境におけるインストール結果とプロキシ環境におけるインストール結果とが一致しない場合に、プロキシサーバ５の設定に誤りがあること、又は、ソフトウェアがプロキシ環境ノード３での利用に対応していないことを通知する。
【０１３４】
これにより、ユーザは、プロキシサーバ５の設定の見直しや、ソフトウェアの開発者へのソフトウェアの修正依頼を行なうことができる。
【０１３５】
ダイレクト環境におけるインストール結果とプロキシ環境におけるインストール結果とが一致しない場合に、ダイレクト環境削除部１１５はダイレクト環境ノード２を削除すると共に、プロキシ環境削除部１１７はプロキシ環境ノード３を削除する。
【０１３６】
これにより、実運用では利用されないダイレクト環境ノード２を削除できると共に、インストール結果の不一致により利用できないプロキシ環境ノード３を削除できるため、情報処理システム１００のハードウェア資源を有効に利用できる。
【０１３７】
ダイレクト環境削除部１１５は、ダイレクト環境におけるインストール結果とプロキシ環境におけるインストール結果とが一致する場合に、ダイレクト環境ノード２を削除する。
【０１３８】
これにより、実運用では利用されないダイレクト環境ノード２を削除できるため、情報処理システム１００のハードウェア資源を有効に利用できる。また、ソフトウェアのインストールに成功したプロキシ環境ノード３は削除されないため、プロキシ環境ノード３を実運用において利用することができる。
【０１３９】
インストール制御部１１３は、ダイレクト環境におけるインストール結果とプロキシ環境におけるインストール結果とが一致する場合に、プロキシ環境ノード３へアクセスするためのアクセス情報を通知する。
【０１４０】
これにより、ユーザは、通知されたアクセス情報を用いて、プロキシ環境ノード３へアクセスすることができる。
【０１４１】
〔Ｂ〕その他
開示の技術は上述した実施形態に限定されるものではなく、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。本実施形態の各構成及び各処理は、必要に応じて取捨選択することができ、あるいは適宜組み合わせてもよい。
【０１４２】
〔Ｃ〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
【０１４３】
（付記１）
コンピュータに、
ソフトウェアのインストール手順を定義する第１情報と、前記ソフトウェアのインストールのために求められるハードウェア構成を定義する第２情報とを取得し、
取得した前記第１情報と前記第２情報とに基づき、プロキシサーバを介さずにインターネットに接続される第１環境と、プロキシサーバを介してインターネットに接続される第２環境とを構築し、
取得した前記第１情報に基づき、構築した前記第１環境と前記第２環境とのそれぞれにおいて前記ソフトウェアをインストールし、
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致しない場合に、インストール結果の不一致を通知する、
処理を実行させる、インストール補助プログラム。
【０１４４】
（付記２）
前記第１環境と前記第２環境とにおいて同期して、前記ソフトウェアのインストールを実行する、
処理を前記コンピュータに実行させる、付記１に記載のインストール補助プログラム。
【０１４５】
（付記３）
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致しない場合に、前記プロキシサーバの設定に誤りがあること、又は、前記ソフトウェアが前記第２環境での利用に対応していないことを通知する、
処理を前記コンピュータに実行させる、付記１又は２に記載のインストール補助プログラム。
【０１４６】
（付記４）
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致しない場合に、構築した前記第１環境と前記第２環境とを削除する、
処理を前記コンピュータに実行させる、付記１〜３のいずれか１項に記載のインストール補助プログラム。
【０１４７】
（付記５）
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致する場合に、構築した前記第１環境を削除する、
処理を前記コンピュータに実行させる、付記１〜４のいずれか１項に記載のインストール補助プログラム。
【０１４８】
（付記６）
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致する場合に、前記第２環境へアクセスするための第３情報を通知する、
処理を前記コンピュータに実行させる、付記１〜５のいずれか１項に記載のインストール補助プログラム。
【０１４９】
（付記７）
ソフトウェアのインストール手順を定義する第１情報と、前記ソフトウェアのインストールのために求められるハードウェア構成を定義する第２情報とを取得し、
取得した前記第１情報と前記第２情報とに基づき、プロキシサーバを介さずにインターネットに接続される第１環境と、プロキシサーバを介してインターネットに接続される第２環境とを構築し、
取得した前記第１情報に基づき、構築した前記第１環境と前記第２環境とのそれぞれにおいて前記ソフトウェアをインストールし、
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致しない場合に、インストール結果の不一致を通知する、
インストール方法。
【０１５０】
（付記８）
前記第１環境と前記第２環境とにおいて同期して、前記ソフトウェアのインストールを実行する、
付記７に記載のインストール方法。
【０１５１】
（付記９）
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致しない場合に、前記プロキシサーバの設定に誤りがあること、又は、前記ソフトウェアが前記第２環境での利用に対応していないことを通知する、
付記７又は８に記載のインストール方法。
【０１５２】
（付記１０）
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致しない場合に、構築した前記第１環境と前記第２環境とを削除する、
付記７〜９のいずれか１項に記載のインストール方法。
【０１５３】
（付記１１）
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致する場合に、構築した前記第１環境を削除する、
付記７〜１０のいずれか１項に記載のインストール方法。
【０１５４】
（付記１２）
前記第１環境におけるインストール結果と前記第２環境におけるインストール結果とが一致する場合に、前記第２環境へアクセスするための第３情報を通知する、
付記７〜１１のいずれか１項に記載のインストール方法。
【符号の説明】
【０１５５】
１００    ：情報処理システム
１        ：制御ノード
１１      ：ＣＰＵ
１１１    ：インストール手順作成部
１１２    ：ハードウェア情報取得部
１１３    ：インストール制御部
１１４    ：ダイレクト環境構築部
１１５    ：ダイレクト環境削除部
１１６    ：プロキシ環境構築部
１１７    ：プロキシ環境削除部
１２      ：メモリ
１３      ：表示制御部
１３０    ：表示装置
１４      ：記憶装置
１４１    ：インストール実行結果テーブル
１４２    ：ハードウェア構成情報テーブル
１４３    ：インストール先サーバ情報テーブル
１５      ：入力Ｉ／Ｆ
１５１    ：マウス
１５２    ：キーボード
１６      ：読み書き処理部
１６０    ：記録媒体
１６１    ：インストール手順定義ファイル
１６２    ：ハードウェア情報定義ファイル
１７      ：通信Ｉ／Ｆ
２０      ：ダイレクト環境管理サービス
２        ：ダイレクト環境ノード
２１１    ：ダイレクトインストール部
３０      ：プロキシ環境管理サービス
３        ：プロキシ環境ノード
３１１    ：プロキシインストール部
４        ：インターネット
５        ：プロキシサーバ
【図１】
2019200468.tif 000003
【図２】
2019200468.tif 000004
【図３】
2019200468.tif 000005
【図４】
2019200468.tif 000006
【図５】
2019200468.tif 000007
【図６】
2019200468.tif 000008
【図７】
2019200468.tif 000009
【図８】
2019200468.tif 000010
【図９】
2019200468.tif 000011
【図１０】
2019200468.tif 000012
【図１１】
2019200468.tif 000013
【図１２】
2019200468.tif 000014
【図１３】
2019200468.tif 000015
【図１４】
2019200468.tif 000016