(57)【要約】【課題】新たなゲストＯＳを起動したときにおける、ネットワーク設定作業の負担を軽減するようにする。【解決手段】仮想ＯＳとして、ホストＯＳ及びゲストＯＳが動作可能な仮想マシン環境を有する複数のサーバに接続された管理マネージャ１０が、次の処理を行う。即ち、サーバにゲストＯＳを起動したときに、業務プログラム種別同士におけるデータの送受信の要否が設定された接続方針テーブル及び業務プログラムを実行しているサーバが設定された業務テーブルを参照する。そして、ゲストＯＳが起動されたサーバとの間で通信を行う接続先サーバを、起動対象サーバで実行される業務プログラムに応じて決定する。また、起動対象サーバサーバ及び接続先サーバの間で仮想ネットワーク通信を行うのに必要な接続情報を取得する。さらに、起動対象サーバで動作するホストＯＳ及び接続先サーバで動作するホストＯＳに対し、取得した接続情報を設定する。【選択図】  図１０
2010039626.tif 000002
【特許請求の範囲】
【請求項１】
仮想オペレーティングシステムとして、他のサーバと仮想ネットワークを用いた通信を直接行うホストオペレーティングシステムと、顧客業務の処理を行う業務プログラムを実行するために起動され、ホストオペレーティングシステムを介してのみ他のサーバとの通信を行うゲストオペレーティングシステムと、が動作可能な仮想マシン環境を有する複数のサーバと接続されたコンピュータに、
オペレータ指示に応じて前記サーバにゲストオペレーティングシステムを起動したときに、業務プログラム同士におけるデータの送受信の要否が設定されたテーブル及び業務プログラムを実行しているサーバが設定されたテーブルを参照し、ゲストオペレーティングシステムを起動したサーバとの間で仮想ネットワーク接続を行う接続先サーバを、起動したゲストオペレーティングシステムで実行される業務プログラムに応じて決定する接続先決定ステップと、
前記ゲストオペレーティングシステムを起動したサーバと前記接続先決定ステップにより決定された接続先サーバとの間で仮想ネットワーク接続を行うのに必要な接続情報を取得する接続情報取得ステップと、
前記ゲストオペレーティングシステムが起動したサーバで動作するホストオペレーティングシステム及び接続先サーバで動作するホストオペレーティングシステムに対し、前記接続情報取得ステップにより取得した接続情報を設定する設定ステップと、
を実現させることを特徴とするネットワーク設定プログラム。
【請求項２】
前記サーバのゲストオペレーティングシステムには夫々仮想ＩＰアドレスが割り振られ、前記サーバのホストオペレーティングシステムは、接続先となる他のサーバの物理ＩＰアドレス，ゲストオペレーティングシステムの仮想ＩＰアドレス及び当該他のサーバとの仮想ネットワーク接続に用いるトンネル情報を関連付けたネットワーク設定に基づいて、同一サーバ内のゲストオペレーティングシステムから他のサーバに対して送信されたデータに付された他のサーバのゲストオペレーティングシステムの仮想ＩＰアドレスから送信先のサーバの物理ＩＰアドレスを特定した上で、トンネル情報に従って当該データについてトンネリングを行って送信し、
前記接続情報取得ステップは、各サーバとその物理ＩＰアドレスが対応付けられたテーブル及び各サーバとそのサーバで動作するゲストオペレーティングシステムの仮想ＩＰアドレスが対応付けられたテーブルを参照し、前記接続先サーバの物理ＩＰアドレス及びゲストオペレーティングシステムの仮想ＩＰアドレスを取得するとともに、新たにゲストオペレーティングシステムが起動されたサーバと接続先サーバとを仮想ネットワーク接続するのに用いるトンネルを決定し、そのトンネル情報を取得することを特徴とする請求項１記載のネットワーク設定プログラム。
【請求項３】
前記業務プログラム同士におけるデータの送受信の要否が設定されたテーブルは、業務プログラムの機能に基づく業務プログラム種別に応じて、同じ業務プログラム種別間及び異なる業務プログラム種別間におけるデータ送受信の要否が設定されていることを特徴とする請求項１又は請求項２に記載のネットワーク設定プログラム。
【請求項４】
仮想オペレーティングシステムとして、他のサーバと仮想ネットワークを用いた通信を直接行うホストオペレーティングシステムと、顧客業務の処理を行う業務プログラムを実行するために起動され、ホストオペレーティングシステムを介してのみ他のサーバとの通信を行うゲストオペレーティングシステムと、が動作可能な仮想マシン環境を有する複数のサーバと接続されたコンピュータが、
オペレータ指示に応じて前記サーバにゲストオペレーティングシステムを起動したときに、業務プログラム同士におけるデータの送受信の要否が設定されたテーブル及び業務プログラムを実行しているサーバが設定されたテーブルを参照し、ゲストオペレーティングシステムを起動したサーバとの間で仮想ネットワーク接続を行う接続先サーバを、起動したゲストオペレーティングシステムで実行される業務プログラムに応じて決定する接続先決定ステップと、
前記ゲストオペレーティングシステムを起動したサーバと前記接続先決定ステップにより決定された接続先サーバとの間で仮想ネットワーク接続を行うのに必要な接続情報を取得する接続情報取得ステップと、
前記ゲストオペレーティングシステムが起動したサーバで動作するホストオペレーティングシステム及び接続先サーバで動作するホストオペレーティングシステムに対し、前記接続情報取得ステップにより取得した接続情報を設定する設定ステップと、
を実行することを特徴とするネットワーク設定方法。
【請求項５】
仮想オペレーティングシステムとして、他のサーバと仮想ネットワークを用いた通信を直接行うホストオペレーティングシステムと、顧客業務の処理を行う業務プログラムを実行するために起動され、ホストオペレーティングシステムを介してのみ他のサーバとの通信を行うゲストオペレーティングシステムと、が動作可能な仮想マシン環境を有する複数のサーバと接続されたネットワーク設定装置であって、
オペレータ指示に応じて前記サーバにゲストオペレーティングシステムを起動したときに、業務プログラム同士におけるデータの送受信の要否が設定されたテーブル及び業務プログラムを実行しているサーバが設定されたテーブルを参照し、ゲストオペレーティングシステムを起動したサーバとの間で仮想ネットワーク接続を行う接続先サーバを、起動したゲストオペレーティングシステムで実行される業務プログラムに応じて決定する接続先決定手段と、
前記ゲストオペレーティングシステムを起動したサーバと前記接続先決定手段により決定された接続先サーバとの間で仮想ネットワーク接続を行うのに必要な接続情報を取得する接続情報取得手段と、
前記ゲストオペレーティングシステムが起動したサーバで動作するホストオペレーティングシステム及び接続先サーバで動作するホストオペレーティングシステムに対し、前記接続情報取得手段により取得した接続情報を設定する設定手段と、
を含んで構成されたことを特徴とするネットワーク設定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想化技術を適用したサーバ間で通信をするためにサーバに対してネットワーク設定を行う技術に関する。
【背景技術】
【０００２】
近年、企業等の情報処理システムをアウトソーシングする需要が高まり、その市場が拡大してきている。かかるアウトソーシングを一括して請け負うデータセンタでは、複数のサーバで構成されるサーバノードプールを有する。そして、アウトソーシングを委託した複数顧客の業務の処理を行う業務プログラムが、かかるサーバノードプールを構成する複数のサーバに配置されるとともに、これらのサーバが相互に物理的にネットワーク接続され、連携して動作している。
【０００３】
ここで、かかるサーバノードプールでは、複数顧客に係る業務を顧客ごとに分割するべく、各サーバにおいて仮想マシン環境を設定する技術が一般化している。具体的には、各サーバにおいて、仮想オペレーティングシステム（以下、仮想ＯＳ（Operating System）という。他も同様）として、仮想マシン環境における基盤となるホストＯＳを動作させるとともに、業務プログラムを実行する環境としてのゲストＯＳを夫々動作させている。こうすることで、例えば同一サーバ上で複数顧客の業務プログラムを実行する場合にも、業務プログラムで処理されるデータが顧客間で混在することを回避することができる。
【０００４】
また、かかるサーバノードプールを構成する複数のサーバには、上述のように複数顧客の業務プログラムが配置されているため、サーバ間のネットワークも複数の顧客間で共有することとなる。このため、顧客間における情報漏洩や不正アクセス等を回避すべく、さらに次のような手法が採用されている。即ち、サーバ間における物理ネットワークを、ＶＬＡＮ（Virtual LAN）技術を用いてＬ２（Layer-2）区分で仮想的に区分したり、トンネリングを行って仮想ネットワークを構築するＶＰＮ（Virtual Private Network）を用いてネットワークを分割し、顧客ごとの仮想イントラネットを構築している。
【０００５】
ここで、かかるシステムの運用において、顧客業務の変化に伴い、ある特定の業務プログラムに対して負荷が集中するようになることが当然に想定される。このような場合には、これまでその業務プログラムを実行していなかったサーバに対し、新たにゲストオペレーティングシステムを起動し、業務プログラムを実行させることが行われる。そして、その業務プログラムと連携する業務プログラムを実行している他のサーバと新たに仮想的にネットワーク接続をし、データの送受信を行う。こうすることによって負荷分散が実現され、トラブルを未然に回避することができる。
【０００６】
しかしながら、このように新たなゲストＯＳを起動して他のサーバと仮想的に接続する場合、そのネットワークの設定作業にかかる負担は極めて大きい。その理由は、まず、サーバにおいてゲストＯＳを新たに起動させる機能と、その新たに起動されたゲストＯＳについて仮想ネットワーク接続の設定を行う機能との間に連携がないことに起因する。このため、仮想ネットワーク接続の設定については、個々に人手により行わなければならない。そして、新たに起動されるゲストＯＳにおいて実行される業務プログラムの機能に応じて、連携する業務プログラムが異なるため、これを把握するのが困難である。また、かかる連携先となる業務プログラムを把握できたとしても、膨大な数のサーバの中で、その業務プログラムがどのサーバのどのゲストＯＳ上で実行されているのかを特定するのがさらに困難である。しかも、サーバノードプールを構成するサーバの数は膨大であり、そのネットワーク構成は複雑である上、仮想ネットワークで分割されているため、スイッチの設定やトンネリングの設定等を行う必要もある。このため、新たにゲストＯＳを起動したときに、そのネットワーク接続設定を行うのは、極めて複雑かつ困難なものとなっていた。また、このように設定作業の負担が大きいがゆえに、設定作業時のミスも発生しやすかった。    
【特許文献１】特表２００４−５０３０１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
そこで、以上のような従来の問題点に鑑み、新たなゲストＯＳを起動したときにおけるネットワーク設定を自動的に行うことで、かかる設定作業の負担を軽減することを目的とする。
【課題を解決するための手段】
【０００８】
仮想ＯＳとして、ホストＯＳ及びゲストＯＳが動作可能な仮想マシン環境を有する複数のサーバに接続されたコンピュータが、次の処理を行う。即ち、サーバにゲストＯＳを起動したときに、業務プログラム同士におけるデータの送受信の要否が設定されたテーブル及び業務プログラムを実行しているサーバが設定されたテーブルを参照する。そして、ゲストＯＳが起動されたサーバとの間で通信を行う接続先サーバを、ゲストＯＳで実行される業務プログラムに応じて決定する。また、ゲストＯＳが起動されたサーバ及び接続先サーバの間で仮想ネットワーク通信を行うのに必要な接続情報を取得する。さらに、ゲストＯＳが起動されたサーバで動作するホストＯＳ及び接続先サーバで動作するホストＯＳに対し、取得した接続情報を設定する。
【発明の効果】
【０００９】
複数のサーバのうちの１つに新たなゲストＯＳが起動されたときに、そのゲストＯＳが起動されたサーバとの間で通信を行う接続先サーバが自動的に決定される。そして、そのゲストＯＳが起動されたサーバ及び接続先サーバとの間で仮想ネットワークを介して通信可能になるように、夫々のホストＯＳに対してネットワーク設定が自動的に行われる。このため、ネットワークの設定作業における負担が大幅に軽減されるとともに、設定作業時におけるミスを防ぐことができる。
【発明を実施するための最良の形態】
【００１０】
図１は、ネットワーク設定機構を具現化したシステムの全体構成を示す。このシステムは、複数の顧客業務を一括処理するデータセンタに設置されたサーバノードプールにおいて構築されたシステムであり、管理マネージャ１０と、顧客業務を処理する複数のサーバ２０と、がネットワーク接続されている。この管理マネージャ１０は、サーバ２０全体を総括して管理するとともに、サーバ２０に対する各種設定を遠隔制御により行う。また、管理マネージャ１０及びサーバ２０は、いずれも、少なくともＣＰＵ（Central Processing Unit）及びメモリを備えたコンピュータで構成される。
【００１１】
サーバノードプールを構成する複数のサーバ２０には、データセンタにアウトソーシングを委託した複数顧客の業務を処理する業務プログラムが配置されている。そして、各サーバ２０では仮想ＯＳを動作させることが可能な仮想マシン環境を備えている。さらに、仮想（私設）ネットワーク（ＶＰＮ：Virtual Private Network）を用いてサーバ２０同士をＰ２Ｐ（Peer to Peer）にＶＰＮ接続し、顧客ごとにシステムを分割して仮想イントラネットを構築している。なお、このように顧客ごとに分割された仮想イントラネットは、顧客の有する個々の自社システムに夫々接続されている。
【００１２】
次に、かかる仮想マシン環境を備えたサーバ２０の構成及びサーバ２０間におけるＶＰＮ接続の仕組みについて、図２を用いて説明する。
サーバ２０では、仮想マシン環境が構築され、ホストＯＳ３０及びゲストＯＳ４０が、仮想ＯＳとして動作している。これらのホストＯＳ３０及びゲストＯＳ４０は、ＯＳの制御プログラムとして機能するハイパーバイザ上において制御されている。
【００１３】
また、サーバ２０は、他のコンピュータとの間で通信を行うための物理ＮＩＣ（Network Interface Card）５０を備える。そして、サーバ２０には、サーバノードプール内において一意に定まる物理ＩＰアドレスが割り振られている。また、サーバ２０内で動作するホストＯＳ３０及びゲストＯＳ４０は、夫々仮想ＮＩＣ６０を備え、この仮想ＮＩＣ６０を用いて同一サーバ内のホストＯＳ３０及びゲストＯＳ４０間において通信を行う。そして、サーバ内で動作するゲストＯＳ４０には、物理ＩＰアドレスとは異なる独自のアドレスである仮想ＩＰアドレスとしての、顧客ＩＰアドレスが割り振られている。
【００１４】
そして、ホストＯＳ３０は、次の要素を含んで構成される。即ち、ゲストＯＳ４０から送信データを受け取ったとき、その送信データをＶＰＮ接続により送信するためのトンネル情報を特定するルーティング部３０Ａを含む。このルーティング部３０Ａは、図３（Ａ）に示すような、送信先の顧客ＩＰアドレス及びその送信先へのＶＰＮ接続において用いるトンネル情報が設定されたルーティング設定テーブルを備える。そして、このルーティング設定テーブルを参照し、送信データに付された顧客ＩＰアドレスから、ＶＰＮ通信に用いるトンネルを特定する。また、ホストＯＳ３０は、送信データに送信先の物理ＩＰアドレスを付すとともに送信データをカプセル化し、トンネリングを行うトンネリング部３０Ｂを含む。このトンネリング部３０Ｂは、図３（Ｂ）に示すような、トンネル情報と、そのトンネルの送信先となる物理ＩＰアドレスが設定されたトンネリング設定テーブルを備える。そして、トンネリング部３０Ｂでは、このトンネリング設定テーブルに基づいて、トンネル情報から送信先の物理ＩＰアドレスを特定する。さらに、ホストＯＳ３０は、送信データを暗号化する暗号化部３０Ｃを含んで構成される。なお、他のサーバ２０からデータを受信したときには、ホストＯＳ３０では、暗号化部３０Ｃにおいて受信データを復号化し、トンネリング部３０Ｂにおいてカプセル化を解除するとともに、ルーティング部３０Ａにより、受信データに付された顧客ＩＰアドレスのゲストＯＳ４０にデータを送信することとなる。
【００１５】
一方、ゲストＯＳ４０は、業務プログラムを実行する顧客業務処理部４０Ａを含んで構成される。
ここで、図２の例において、サーバαのゲストＯＳ４０の顧客業務処理部４０Ａにおいて実行される業務プログラムにより、サーバγのゲストＯＳ４０が備える顧客業務処理部４０Ａにおいて実行される業務プログラムに対してデータが送信される流れについて説明する。まず、サーバαの顧客業務処理部４０Ａにおいて実行される業務プログラムにより、サーバγのゲストＯＳ４０の顧客ＩＰアドレス（192.167.0.3）を送信先として、データが送信される。このデータは、ゲストＯＳ４０の仮想ＮＩＣ６０（eth0）及びホストＯＳ３０の仮想ＮＩＣ６０（vif0）を介し、ホストＯＳ３０に対して送信される。そして、ホストＯＳ３０では、ルーティング部３０Ａにおいて、ルーティング設定テーブルを参照し、送信先の顧客ＩＰアドレスに対応するトンネル情報を取得する。さらに、ホストＯＳ３０では、トンネリング部３０Ｂにおいて、トンネリング設定テーブルを参照し、トンネル情報に対応する送信先サーバの物理ＩＰアドレス（10.0.0.3）を取得する。そして、この物理ＩＰアドレスを送信データに付した上で、カプセル化し、トンネリングを行う。また、暗号化部３０Ｃにおいて、かかるカプセル化された送信データをＩＰｓｅｃ等を適用してさらに暗号化する。これにより、サーバγとのＶＰＮ接続が可能となる。そして、送信データを、ホストＯＳ３０の仮想ＮＩＣ６０（eth0）からサーバαの物理ＮＩＣ５０（eth0）を経て、サーバγに送信する。一方、これを受信したサーバγのホストＯＳ３０では、受信したデータに付された顧客ＩＰアドレスに基づいて、送信先となっている業務プログラムが実行されるゲストＯＳ４０に対し、受信データを送信することとなる。
【００１６】
このような構成を採用することで、業務プログラムにおいて他のサーバ２０との間でデータの送受信を行う場合、ゲストＯＳ４０では、送信先の顧客ＩＰアドレスを送信データに設定するだけでよく、物理ＩＰアドレスの設定及びＶＰＮ接続はホストＯＳ３０が行う。このため、顧客がサーバにアクセスして業務プログラムを実行させる場合であって、他のサーバとの通信を行うときであっても、ホストＯＳ３０を直接制御することなしに、かかる通信が可能となる。従って、ホストＯＳ３０の制御権限を顧客に与えなくても、他のサーバとの通信が可能となり、ホストＯＳ３０の環境設定を顧客が誤って変更する等のトラブルを防ぐことができる。
【００１７】
次に、かかるサーバ２０全体を管理する管理マネージャ１０について説明する。
図４は、管理マネージャ１０の構成図である。管理マネージャ１０は、業務起動命令受付部１０Ａ，ゲストＯＳ起動部１０Ｂ，接続先決定部１０Ｃ，接続情報取得部１０Ｄ，ネットワーク設定部１０Ｅ，業務間接続方針テーブル１０Ｆ，業務管理テーブル１０Ｇ，物理ＩＰアドレステーブル１０Ｈ及びインタフェース管理テーブル１０Ｉを含んで構成される。
【００１８】
業務起動命令受付部１０Ａは、オペレータが操作可能な入力装置と接続されている。そして、新たにゲストＯＳ４０を起動して業務プログラムを実行させる業務起動命令を受け付ける。この業務起動命令では、新たなゲストＯＳ４０の起動対象となる起動対象サーバ及び実行させる業務プログラムが指定される。
【００１９】
ゲストＯＳ起動部１０Ｂは、ハイパーバイザ上においてホストＯＳ３０が動作しており、ゲストＯＳ４０が起動可能になっているサーバ２０に対し、新たなゲストＯＳ４０を起動するとともに、業務プログラムを実行可能な状態とする。なお、かかるゲストＯＳの起動方法等については周知技術であるため、本明細書においては具体的な説明を省略する。
【００２０】
接続先決定部１０Ｃは、ゲストＯＳ４０を起動した起動対象サーバとの間でＶＰＮ接続をする接続先サーバを決定する。なお、接続先決定部１０Ｃが、接続先決定ステップ及び接続先決定手段として機能する。
【００２１】
接続情報取得部１０Ｄは、起動対象サーバと接続先サーバとの間でＶＰＮ接続を行うのに必要な接続情報を取得する。なお、接続情報取得部１０Ｄが、接続情報取得ステップ及び接続情報取得手段として機能する。
【００２２】
ネットワーク設定部１０Ｅは、サーバ２０とネットワーク接続され、起動対象サーバのホストＯＳ３０及び起動対象サーバのホストＯＳ３０に対し、接続情報を設定する。なお、ネットワーク設定部１０Ｅが、設定ステップ及び設定手段として機能する。
【００２３】
接続方針テーブル１０Ｆは、業務プログラム間のＶＰＮ接続の可否を、業務プログラムの機能に基づく業務プログラム種別に応じて示すテーブルであり、図５に示すように、業務プログラム種別間における接続可否が登録される。図５の例では、Ａ，Ｂ及びＣが夫々業務プログラム種別を示し、「○」が接続可、「×」が接続不可であることを示す。このように、接続方針テーブル１０Ｆでは、同じ業務プログラム種別間における接続可否及び異なる業務プログラム種別間における接続可否の両方を設定することが可能である。
【００２４】
業務管理テーブル１０Ｇは、業務プログラム種別ごとに、その種別に属する業務プログラムが実行されているサーバ２０を示すテーブルである。そして、図６に示すように、業務プログラム種別，その業務プログラムを実行しているゲストＯＳ４０の顧客ＩＰアドレス及びサーバが登録される。
【００２５】
物理ＩＰアドレステーブル１０Ｈは、サーバ２０の物理ＩＰアドレスを示すテーブルであり、図７に示すように、サーバ及びそのサーバの物理ＩＰアドレスが登録される。
インタフェース管理テーブル１０Ｉは、サーバ２０間のＶＰＮ接続において用いられるトンネルを示すテーブルであり、図８に示すように、送信元サーバ及び送信先サーバ並びにトンネル情報を含んで構成される。
【００２６】
ここで、上述の接続方針テーブル１０Ｆに登録されている、業務プログラムの種別に応じたＶＰＮ接続の可否により、どのようにサーバ２０間がＶＰＮ接続されるかについて説明する。図９は、図５の接続方針テーブル１０Ｆのデータ例におけるサーバ２０間のＶＰＮ接続例である。この例では、サーバα及びサーバβが業務プログラム種別Ａ，サーバγ，サーバδ，サーバεが業務プログラム種別Ｂ，サーバζ及びサーバηが業務プログラム種別Ｃの業務プログラムを実行するものとする。また、実線矢印は、サーバ２０間がＶＰＮ接続されていることを示す。そして、図５の接続方針テーブル１０Ｆでは、業務プログラム種別Ａ同士並びに業務プログラム種別Ａ及びＣは接続不可（×）である一方、業務プログラム種別Ａ及びＢ，業務プログラム種別Ｂ同士，並びに業務プログラム種別Ｂ及びＣは接続可能（○）である。このため、図９に示すように、業務プログラム種別Ａのサーバα及びサーバβと、業務プログラム種別Ｂのサーバγ，サーバδ及びサーバεと、は夫々接続される。一方で、業務プログラム種別Ａのサーバα及びサーバβと、業務プログラム種別Ｃのサーバζ及びサーバηと、は接続されない。また、業務プログラム種別Ｂのサーバγ，サーバδ及びサーバεは、相互に接続される。さらに、業務プログラム種別Ｂのサーバγ，サーバδ及びサーバεと、業務プログラム種別Ｃのサーバζ及びサーバηと、の間も夫々接続される。
【００２７】
図１０は、管理マネージャ１０の業務起動命令受付部１０Ａ，ゲストＯＳ起動部１０Ｂ，接続先決定部１０Ｃ，接続情報取得部１０Ｄ，ネットワーク設定部１０Ｅによるネットワーク設定処理を示す。この処理は、オペレータにより、新たにゲストＯＳ４０を起動して業務プログラムを実行させる起動対象サーバ及びその業務プログラムを指定して、業務起動命令がなされたときに実行される。
【００２８】
ステップ１（図ではＳ１と略記する。以下同様）では、指定された起動対象サーバにゲストＯＳ４０を起動し、指定された業務プログラムを実行可能な状態とする。このとき、起動したゲストＯＳ４０に対し、新たな顧客ＩＰアドレスを割り当てる。なお、かかる顧客ＩＰアドレスの割り当ては、既に使用済みの顧客ＩＰアドレスと重複しないように行われる。
【００２９】
ステップ２では、接続方針テーブル１０Ｆを参照し、業務起動命令がなされた業務プログラムの業務プログラム種別との間でＶＰＮ接続する必要がある全ての業務プログラム種別を取得する。
【００３０】
ステップ３では、業務管理テーブル１０Ｇを参照し、ステップ２で取得した業務プログラム種別の業務プログラムを実行しているサーバ２０を接続先サーバとして決定する。
ステップ４では、業務管理テーブル１０Ｇを参照し、接続先サーバのゲストＯＳ４０の顧客ＩＰアドレスを取得する。
【００３１】
ステップ５では、起動対象サーバ及び接続先サーバ間のＶＰＮ接続に用いるトンネルを決定し、そのトンネル情報を取得する。なお、かかるトンネルの決定は、各サーバにおいて既に使用済みのトンネルと重複しないように行われる。
【００３２】
ステップ６では、物理ＩＰアドレステーブル１０Ｈを参照し、接続先サーバの物理ＩＰアドレスを取得する。
ステップ７では、起動対象サーバから接続先サーバへのＶＰＮ接続のため、ステップ５で取得したトンネル情報に従い、起動対象サーバのトンネリング部３０Ｂにおいて新たなトンネルを設定する。また、起動対象サーバのトンネリング部３０Ｂのトンネリング設定テーブルに、そのトンネル情報及び接続先サーバの物理ＩＰアドレスを接続情報として設定する。
【００３３】
ステップ８では、起動対象サーバのルーティング部３０Ａのルーティング設定テーブルに、接続先サーバの顧客ＩＰアドレス及びトンネル情報を接続情報として設定する。
ステップ９では、接続先サーバから起動対象サーバへのＶＰＮ接続のため、接続先サーバのトンネリング部３０Ｂにおいて新たなトンネルを設定する。また、接続先サーバのトンネリング部３０Ｂのトンネリング設定テーブルに、そのトンネル情報及び接続先サーバの物理ＩＰアドレスを接続情報として設定する。
【００３４】
ステップ１０では、接続先サーバのルーティング部３０Ａのルーティング設定テーブルに、起動対象サーバの顧客ＩＰアドレス及びトンネル情報を接続情報として設定する。
ステップ１１では、管理マネージャ１０の業務管理テーブル１０Ｇに、起動対象サーバの顧客ＩＰアドレス，業務プログラム種別及びサーバを登録するとともに、インタフェース管理テーブル１０Ｉに、起動対象サーバ及び接続先サーバ間のトンネル情報を登録する。
【００３５】
なお、上記ステップ４〜１１は、ステップ３において接続先サーバが複数決定されたときには、複数の接続先サーバの夫々について実行する。
ここで、かかる管理マネージャ１０によるネットワーク設定処理について、具体例を示して説明する。ここでは、図１１に示すようなサーバ構成の例を用いる。この例では、サーバαで業務プログラム種別Ａの業務プログラムを、サーバγで業務プログラム種別Ｂの業務プログラムを実行している。そして、業務プログラム種別Ａの業務プログラムの処理量が増大し、サーバαに負荷がかかるようになったため、サーバβに新たにゲストＯＳ４０を起動し、業務プログラム種別Ａの業務プログラムを実行させるように業務起動命令がなされたとする。なお、図１１では、便宜上、管理マネージャ１０及び各サーバ間の物理ネットワーク接続の表記、並びに各サーバの構成の一部の表記を省略する。また、サーバ間の実線矢印は、ＶＰＮ接続がなされていることを示す。
【００３６】
また、この例において、管理マネージャ１０の接続方針テーブル１０Ｆ，物理ＩＰアドレステーブル１０Ｇ，業務管理テーブル１０Ｇ及びインタフェース管理テーブル１０Ｉは、夫々、図１２の（Ａ）〜（Ｄ）のように設定されている。
【００３７】
さらに、この例において、サーバαのルーティング部３０Ａの設定テーブル及びトンネリング部３０Ｂの設定テーブルには、夫々図１３（Ａ）及び図１３（Ｂ）のような設定がなされている。また、サーバγのルーティング部３０Ａの設定テーブル及びトンネリング部３０Ｂの設定テーブルには、夫々図１４（Ａ）及び図１４（Ｂ）のような設定がなされている。
【００３８】
そして、業務起動命令がなされたとき、管理マネージャ１０は、サーバβにゲストＯＳ４０を起動するとともに、業務プログラム種別Ａの業務プログラムが実行可能な状態とする。このとき、起動したゲストＯＳ４０に対し、新たな顧客ＩＰアドレス（192.167.0.3）を割り当てる（ステップ１）。ここで、接続方針テーブル１０Ｆを参照し、業務起動命令がなされた業務プログラム種別Ａとの間でＶＰＮ接続する必要がある全ての業務プログラム種別、即ち、業務プログラム種別Ｂを取得する（ステップ２）。さらに、業務管理テーブル１０Ｇを参照し、業務プログラム種別Ｂの業務プログラムを実行しているゲストＯＳ４０が動作しているサーバ、即ち、サーバγを接続先サーバとして取得するとともに（ステップ３）、そのゲストＯＳ４０の顧客ＩＰアドレス（192.167.0.3）を取得する（ステップ４）。
【００３９】
さらに、サーバβ及びサーバγ間のＶＰＮ接続に用いるトンネルを決定し、その情報を取得する。ここでは、サーバβからサーバγへのＶＰＮ接続に用いるトンネルは「ｔｕｎ０」にする一方、サーバγからサーバβへのＶＰＮ接続に用いるトンネルは、「ｔｕｎ１」とする（ステップ５）。また、物理ＩＰアドレステーブル１０Ｈを参照し、サーバγの物理ＩＰアドレス（10.0.0.3）を取得する（ステップ６）。
【００４０】
そして、サーバβからサーバγへのＶＰＮ接続のため、サーバβのトンネリング部３０Ｂにおいて新たなトンネル（ｔｕｎ０）を図１５のように設定する。また、サーバβのトンネリング部３０Ｂのトンネリング設定テーブルに、そのトンネル情報（ｔｕｎ０）及びサーバγの物理ＩＰアドレス（10.0.0.3）を図１６（Ａ）のように設定する（ステップ７）。さらに、サーバβのルーティング部３０Ａのルーティング設定テーブルに、サーバγの顧客ＩＰアドレス及びトンネル情報を図１６（Ｂ）のように設定する（ステップ８）。
【００４１】
一方、今度はサーバγからサーバβへのＶＰＮ接続のため、サーバγのトンネリング部３０Ｂにおいて新たなトンネル（ｔｕｎ１）を図１５のように設定する。また、接続先サーバのトンネリング部３０Ｂのトンネリング設定テーブルに、そのトンネル情報及び接続先サーバの物理ＩＰアドレスを図１７（Ａ）のように設定する（ステップ９）。さらに、サーバγのルーティング部３０Ａのルーティング設定テーブルに、サーバβの顧客ＩＰアドレス及びトンネル情報を図１７（Ｂ）のように設定する（ステップ１０）。
【００４２】
そして、管理マネージャ１０の業務管理テーブル１０Ｇに、業務プログラム種別Ａの業務プログラムを実行するサーバとしてサーバβを登録するとともに、顧客ＩＰアドレス（192.167.0.3）を図１８（Ａ）のように登録する。また、インタフェース管理テーブル１０Ｉに対し、サーバβからサーバγへのトンネル情報（ｔｕｎ０）及びサーバγからサーバβへのトンネル情報（ｔｕｎ１）を図１８（Ｂ）のように登録する（ステップ１１）。
【００４３】
かかるネットワーク設定処理によれば、接続方針テーブル１０Ｆにおいて業務プログラム種別間での接続可否が設定されているとともに、業務管理テーブル１０Ｇにおいて、各業務プログラム種別の業務プログラムが実行されているサーバが設定されている。このため、これらを参照することで、新たなゲストＯＳが起動されたときに、そのゲストＯＳで実行する業務プログラムに応じて、接続先サーバを自動的に決定することができる。さらに、業務管理テーブル１０Ｇに設定された顧客ＩＰアドレス及び物理ＩＰアドレステーブル１０Ｈに物理ＩＰアドレスが設定されている。このため、これらを参照することで、起動対象サーバ及び接続先サーバとの間でＶＰＮ接続を可能とする接続情報が取得でき、夫々のホストＯＳに対してネットワーク設定を自動的に行うことができる。従って、新たなゲストＯＳを起動したときであっても、その接続先サーバを特定する作業が省かれるとともに、各サーバにおけるルーティング設定やＶＰＮ接続のためのトンネリング設定の作業をする作業が省かれる。そして、ネットワーク設定作業における負担が大幅に軽減されるとともに、設定作業時におけるミスを防ぐことができる。
【００４４】
なお、上述のように、接続方針テーブル１０Ｆにおいて、同じ業務プログラム種別間における接続可否を設定することが可能である。このため、上記実施例のように、特定の業務プログラムの機能の横展開のために、既に実行されている業務プログラムの業務プログラム種別と同一の業務プログラム種別に属する業務プログラムをさらに実行させる場合において、本システムを適用することができる。また、一方で、接続方針テーブル１０Ｆには、異なる業務プログラム種別間における接続可否の設定も可能である。このため、接続方針テーブル１０Ｆに新たな業務プログラム種別を予め登録しておけば、それまで実行されていなかった業務プログラム種別に属する業務プログラムを新たに実行させる縦展開を行う場合においても、本システムを適用可能することができる。このように、本システムによれば、あらゆる態様でのシステムの拡張において、ネットワーク設定作業を自動化することができる。
【００４５】
以上の実施形態に関し、更に以下の付記を開示する。
【００４６】
（付記１）仮想オペレーティングシステムとして、他のサーバと仮想ネットワークを用いた通信を直接行うホストオペレーティングシステムと、顧客業務の処理を行う業務プログラムを実行するために起動され、ホストオペレーティングシステムを介してのみ他のサーバとの通信を行うゲストオペレーティングシステムと、が動作可能な仮想マシン環境を有する複数のサーバと接続されたコンピュータに、オペレータ指示に応じて前記サーバにゲストオペレーティングシステムを起動したときに、業務プログラム同士におけるデータの送受信の要否が設定されたテーブル及び業務プログラムを実行しているサーバが設定されたテーブルを参照し、ゲストオペレーティングシステムを起動したサーバとの間で仮想ネットワーク接続を行う接続先サーバを、起動したゲストオペレーティングシステムで実行される業務プログラムに応じて決定する接続先決定ステップと、前記ゲストオペレーティングシステムを起動したサーバと前記接続先決定ステップにより決定された接続先サーバとの間で仮想ネットワーク接続を行うのに必要な接続情報を取得する接続情報取得ステップと、前記ゲストオペレーティングシステムが起動したサーバで動作するホストオペレーティングシステム及び接続先サーバで動作するホストオペレーティングシステムに対し、前記接続情報取得ステップにより取得した接続情報を設定する設定ステップと、を実現させることを特徴とするネットワーク設定プログラム。
【００４７】
（付記２）前記サーバのゲストオペレーティングシステムには夫々仮想ＩＰアドレスが割り振られ、前記サーバのホストオペレーティングシステムは、接続先となる他のサーバの物理ＩＰアドレス，ゲストオペレーティングシステムの仮想ＩＰアドレス及び当該他のサーバとの仮想ネットワーク接続に用いるトンネル情報を関連付けたネットワーク設定に基づいて、同一サーバ内のゲストオペレーティングシステムから他のサーバに対して送信されたデータに付された他のサーバのゲストオペレーティングシステムの仮想ＩＰアドレスから送信先のサーバの物理ＩＰアドレスを特定した上で、トンネル情報に従って当該データについてトンネリングを行って送信し、前記接続情報取得ステップは、各サーバとその物理ＩＰアドレスが対応付けられたテーブル及び各サーバとそのサーバで動作するゲストオペレーティングシステムの仮想ＩＰアドレスが対応付けられたテーブルを参照し、前記接続先サーバの物理ＩＰアドレス及びゲストオペレーティングシステムの仮想ＩＰアドレスを取得するとともに、新たにゲストオペレーティングシステムが起動されたサーバと接続先サーバとを仮想ネットワーク接続するのに用いるトンネルを決定し、そのトンネル情報を取得することを特徴とする付記１記載のネットワーク設定プログラム。
【００４８】
（付記３）前記業務プログラム同士におけるデータの送受信の要否が設定されたテーブルは、業務プログラムの機能に基づく業務プログラム種別に応じて、同じ業務プログラム種別間及び異なる業務プログラム種別間におけるデータ送受信の要否が設定されていることを特徴とする付記１又は付記２に記載のネットワーク設定プログラム。
【００４９】
（付記４）前記接続情報取得ステップ及び前記設定ステップは、前記接続先決定ステップにより決定された接続先サーバが複数のときには、その複数の接続先サーバの全てについて処理を行うことを特徴とする付記１〜付記３のいずれか１つに記載のネットワーク設定プログラム。
【００５０】
（付記５）仮想オペレーティングシステムとして、他のサーバと仮想ネットワークを用いた通信を直接行うホストオペレーティングシステムと、顧客業務の処理を行う業務プログラムを実行するために起動され、ホストオペレーティングシステムを介してのみ他のサーバとの通信を行うゲストオペレーティングシステムと、が動作可能な仮想マシン環境を有する複数のサーバと接続されたコンピュータが、オペレータ指示に応じて前記サーバにゲストオペレーティングシステムを起動したときに、業務プログラム同士におけるデータの送受信の要否が設定されたテーブル及び業務プログラムを実行しているサーバが設定されたテーブルを参照し、ゲストオペレーティングシステムを起動したサーバとの間で仮想ネットワーク接続を行う接続先サーバを、起動したゲストオペレーティングシステムで実行される業務プログラムに応じて決定する接続先決定ステップと、前記ゲストオペレーティングシステムを起動したサーバと前記接続先決定ステップにより決定された接続先サーバとの間で仮想ネットワーク接続を行うのに必要な接続情報を取得する接続情報取得ステップと、前記ゲストオペレーティングシステムが起動したサーバで動作するホストオペレーティングシステム及び接続先サーバで動作するホストオペレーティングシステムに対し、前記接続情報取得ステップにより取得した接続情報を設定する設定ステップと、を実行することを特徴とするネットワーク設定方法。
【００５１】
（付記６）仮想オペレーティングシステムとして、他のサーバと仮想ネットワークを用いた通信を直接行うホストオペレーティングシステムと、顧客業務の処理を行う業務プログラムを実行するために起動され、ホストオペレーティングシステムを介してのみ他のサーバとの通信を行うゲストオペレーティングシステムと、が動作可能な仮想マシン環境を有する複数のサーバと接続されたネットワーク設定装置であって、オペレータ指示に応じて前記サーバにゲストオペレーティングシステムを起動したときに、業務プログラム同士におけるデータの送受信の要否が設定されたテーブル及び業務プログラムを実行しているサーバが設定されたテーブルを参照し、ゲストオペレーティングシステムを起動したサーバとの間で仮想ネットワーク接続を行う接続先サーバを、起動したゲストオペレーティングシステムで実行される業務プログラムに応じて決定する接続先決定手段と、前記ゲストオペレーティングシステムを起動したサーバと前記接続先決定手段により決定された接続先サーバとの間で仮想ネットワーク接続を行うのに必要な接続情報を取得する接続情報取得手段と、前記ゲストオペレーティングシステムが起動したサーバで動作するホストオペレーティングシステム及び接続先サーバで動作するホストオペレーティングシステムに対し、前記接続情報取得手段により取得した接続情報を設定する設定手段と、を含んで構成されたことを特徴とするネットワーク設定装置。
【図面の簡単な説明】
【００５２】
【図１】ネットワーク設定機構を具現化したシステムの全体構成図である。
【図２】サーバ構成及び２サーバ間におけるデータ転送の仕組みの説明図である。
【図３】ネットワーク設定テーブルの説明図であり、（Ａ）はルーティング部の設定テーブル、（Ｂ）はトンネリング部の設定テーブルである。
【図４】管理マネージャの構成図である。
【図５】接続方針テーブルの説明図である。
【図６】業務管理テーブルの説明図である。
【図７】物理ＩＰアドレステーブルの説明図である。
【図８】インタフェース管理テーブルの説明図である。
【図９】サーバ間のＶＰＮ接続例の説明図である。
【図１０】管理マネージャによるネットワーク設定処理のフローチャートである。
【図１１】ネットワーク設定処理の具体例における、処理前のサーバ構成の説明図である。
【図１２】ネットワーク設定処理の具体例における、処理前の管理マネージャのテーブルの説明図であり、（Ａ）は接続方針テーブル、（Ｂ）は物理ＩＰアドレステーブル、（Ｃ）は業務管理テーブル、（Ｄ）はインタフェース管理テーブルである。
【図１３】ネットワーク設定処理の具体例における、処理前のサーバαの設定テーブルの説明図であり、（Ａ）はルーティング部の設定テーブル、（Ｂ）はトンネリング部の設定テーブルである。
【図１４】ネットワーク設定処理の具体例における、処理前のサーバγの設定テーブルであり、（Ａ）はルーティング部の設定テーブル、（Ｂ）はトンネリング部の設定テーブルである。
【図１５】ネットワーク設定処理の具体例における、処理後のサーバ構成の説明図である。
【図１６】ネットワーク設定処理の具体例における、処理後のサーバαの設定テーブルの説明図であり、（Ａ）はルーティング部の設定テーブル、（Ｂ）はトンネリング部の設定テーブルである。
【図１７】ネットワーク設定処理の具体例における、処理後のサーバγの設定テーブルであり、（Ａ）はルーティング部の設定テーブル、（Ｂ）はトンネリング部の設定テーブルである。
【図１８】ネットワーク設定処理の具体例における、処理後の管理マネージャのテーブルの説明図であり、（Ａ）は業務管理テーブル、（Ｂ）はインタフェース管理テーブルである。
【符号の説明】
【００５３】
１０    管理マネージャ
１０Ａ  業務設置命令受付部
１０Ｂ  ゲストＯＳ起動部
１０Ｃ  接続先決定部
１０Ｄ  ネットワーク設定部
１０Ｅ  接続方針テーブル
１０Ｆ  業務管理テーブル
１０Ｇ  物理ＩＰアドレステーブル
１０Ｈ  インタフェース管理テーブル
２０    サーバ
３０    ホストＯＳ
３０Ａ  ルーティング部
３０Ｂ  トンネリング部
３０Ｃ  暗号化部
４０    ゲストＯＳ
４０Ａ  顧客業務処理部
５０    物理ＮＩＣ
６０    仮想ＮＩＣ
【図１】
2010039626.tif 000003
【図２】
2010039626.tif 000004
【図３】
2010039626.tif 000005
【図４】
2010039626.tif 000006
【図５】
2010039626.tif 000007
【図６】
2010039626.tif 000008
【図７】
2010039626.tif 000009
【図８】
2010039626.tif 000010
【図９】
2010039626.tif 000011
【図１０】
2010039626.tif 000012
【図１１】
2010039626.tif 000013
【図１２】
2010039626.tif 000014
【図１３】
2010039626.tif 000015
【図１４】
2010039626.tif 000016
【図１５】
2010039626.tif 000017
【図１６】
2010039626.tif 000018
【図１７】
2010039626.tif 000019
【図１８】
2010039626.tif 000020