(57)【要約】      （修正有）【課題】ＫＶＭ仮想化環境のネットワーク接続を復元する。【解決手段】仮想ネットワークカード管理方法は、仮想マシンの仮想ネットワークカードと仮想ブリッジのマッピング関係を取得するステップと、仮想マシンのＩＤ情報、仮想ネットワークカードと仮想ブリッジのマッピング関係、仮想ネットワークカード情報、及び仮想ブリッジ情報をファイリングしてデータベースに保存するステップと、仮想ブリッジと仮想ネットワークカードが接続されていない場合に仮想ネットワークカードと仮想ブリッジのマッピングデータを同期化するステップと、仮想マシンが正常に作動し仮想ネットワークカードが正常に使用されている場合に仮想ネットワークカードと仮想ブリッジをマッピングするステップと、仮想ネットワークカードと仮想ブリッジの接続が失われる場合に仮想ネットワークカードと仮想ブリッジを再マッピングしてネットワーク接続を復元するステップと、を含む。【選択図】図１
2020191068.tif 000002
【特許請求の範囲】
【請求項１】
ＫＶＭに基づく仮想ネットワークカード管理方法であって、
作動中の仮想マシン情報を取得し、仮想マシンのｉｄ情報に基づいて、仮想マシンの仮想ネットワークカードと仮想ブリッジのマッピング関係を取得するステップＳ１と、
ｌｉｂｖｉｒｔにおけるマッピング関係を絶えずに検出して取得し、ステップＳ１のマッピング関係と一致しているかどうかを確認し、一致している場合、当該マッピング関係は有効であり、仮想マシンのＩＤ情報、仮想ネットワークカードと仮想ブリッジのマッピング関係、仮想ネットワークカード情報、及び仮想ブリッジ情報を、ファイリングしてデータベースに保存し、一致していない場合、確認が完了するまで、情報を繰り返し検出して取得するステップＳ２と、
ｌｉｂｖｉｒｔサービス及びｌｉｎｕｘ  ｂｒｉｄｇｅが正常な状態にあることを確保し、仮想マシンが非作動状態であるか、又は仮想ネットワークカードが無効になる場合、仮想ブリッジと仮想ネットワークカードとが接続されているかどうかを検出し、接続されていない場合、データベースにおける仮想ネットワークカードと仮想ブリッジのマッピング関係を同期化し、そうでない場合、当該接続を削除するステップＳ３と、
ｌｉｂｖｉｒｔサービス及びｌｉｎｕｘ  ｂｒｉｄｇｅが正常な状態にあることを確保し、仮想ブリッジと仮想ネットワークカードとの接続が異常に切断される場合、仮想マシンが正常な作動状態にあるかどうかを検出し、且つ仮想ネットワークカードが正常に使用されるかどうかを検出し、いずれも正常であると、仮想ネットワークカードと仮想ブリッジを自動的にマッピングし、仮想マシン又は仮想ネットワークカードのいずれかが異常な状態にあると、データベースにおける仮想ネットワークカードと仮想ブリッジのマッピングデータを同期化するステップＳ４と、
ネットワークサービスが再起動され、仮想ブリッジの故障が修復され、又は仮想ネットワークカードの故障が修復された後、仮想ネットワークカードと仮想ブリッジの接続が失われる場合、データベースにおける仮想ネットワークカードと仮想ブリッジのマッピング関係を読み取り、且つマッピング関係に基づいて、仮想ネットワークカードと仮想ブリッジを再マッピングして、仮想マシンのネットワーク接続を自動的に復元するステップＳ５と、を含む、
ことを特徴とするＫＶＭに基づく仮想ネットワークカード管理方法。
【請求項２】
前記ステップＳ１では、ｋｖｍ−ｂｒ−ｓｙｎｃプロセス監視プログラムを用いて、ポーリング方式又はトリガー形式で作動中の仮想マシン情報を取得する、
ことを特徴とする請求項１に記載のＫＶＭに基づく仮想ネットワークカード管理方法。
【請求項３】
ｋｖｍ−ｂｒ−ｓｙｎｃプロセスは、ｖｉｒｓｈ  ｌｉｓｔインタフェース又はｌｉｂｖｉｒｔ  ａｐｉのｌｉｓｔＡｌｌＤｏｍａｉｎｓインタフェースを介して作動中の仮想マシン情報を取得する、
ことを特徴とする請求項２に記載のＫＶＭに基づく仮想ネットワークカード管理方法。
【請求項４】
前記ステップＳ１では、仮想マシンのｉｄ情報に基づいて、ｖｉｒｓｈ  ｄｏｍｉｆｌｉｓｔ  ｉｄを使用して又はｌｉｂｖｉｒｔ  ａｐｉのｖｉｒｄｏｍａｉｎ．ＸＭＬＤｅｓｃインタフェースを介して、仮想マシンの仮想ネットワークカードと仮想ブリッジのマッピング関係を取得する、
ことを特徴とする請求項１又は３に記載のＫＶＭに基づく仮想ネットワークカード管理方法。
【請求項５】
前記ステップＳ３では、仮想ブリッジと仮想ネットワークカードが接続されている場合、ｂｒｃｔｌ管理ツールを使用して当該接続を削除する、
ことを特徴とする請求項１に記載のＫＶＭに基づく仮想ネットワークカード管理方法。
【請求項６】
前記ステップＳ５では、ｂｒｃｔｌ管理ツールを使用して、仮想ネットワークカードと仮想ブリッジを再マッピングする、
ことを特徴とする請求項１に記載のＫＶＭに基づく仮想ネットワークカード管理方法。
【請求項７】
ステップＳ５を完了した後、ステップＳ１−Ｓ５を繰り返すステップＳ６を、さらに含む、
ことを特徴とする請求項１に記載のＫＶＭに基づく仮想ネットワークカード管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想ネットワークカードの技術分野に関し、特に、ＫＶＭに基づく仮想ネットワークカード管理方法に関する。
【背景技術】
【０００２】
ＫＶＭ仮想化環境では、現在、主流の仮想ネットワーク管理ツールは、ｌｉｎｕｘ  ｂｒｉｄｇｅ及びｏｐｅｎｖｓｗｉｔｃｈであり、このツールは、仮想ブリッジを作成して、仮想マシン（ｇｕｅｓｔ  ｄｏｍａｉｎ）の仮想ネットワークカード（ｖｎｅｔ）に接続することにより、仮想ネットワークシナリオを形成する。
【０００３】
実際のアプリケーションシナリオでは、仮想マシンが起動状態にあると、ｌｉｂｖｉｒｔは、仮想ネットワークカードと仮想ブリッジのマッピングを自動的に確立する。ただし、当該マッピング関係は、仮想マネージャー（ｌｉｂｖｉｒｔ）と仮想ネットワークサービス（ｌｉｎｕｘ  ｂｒｉｄｇｅ又はｏｐｅｎｖｓｗｉｔｃｈ）がともに正常である場合にのみ、有効になる。一方のサービスに異常が生じると、仮想ネットワークカードと仮想ブリッジのマッピングが確立できない。
【０００４】
仮想ブリッジが正常に動作できない場合、仮想ネットワークカードと仮想ブリッジのマッピング関係が失われる。そのマッピング関係がデータの形で保存されないため、故障が修復されていても、仮想ネットワークカードと仮想ブリッジのマッピング関係を自動的に確立できず、それにより、仮想マシンのネットワークにアクセスできないという問題が発生する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】中国特許出願公開第１０５３３７７８９Ａ号明細書
【０００６】
本発明は、仮想ネットワークトラフィックの監視方法及び装置を開示し、ＫＶＭ仮想化環境においてＬｉｎｕｘ  Ｂｒｉｄｇｅに基づいて実現される仮想ネットワークに適用され、予め仮想ネットワークのホストシステムに監視エージェントを設置しておき、ホストシステムにおけるＬｉｎｕｘ  Ｂｒｉｄｇｅの動作モードをプロミスキャス・モードに設定する。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明が解決しようとする技術的課題は、仮想マシンネットワークカードと仮想ブリッジのデータの一貫性を自動的に監視して検証することができ、且つ故障により仮想ネットワークカードと仮想ブリッジの接続が失われる場合、仮想ネットワークカードと仮想ブリッジを急速で自動的に再マッピングして、且つ仮想マシンのネットワーク接続を復元することができる、ＫＶＭに基づく仮想ネットワークカード管理方法を提供することである。
【課題を解決するための手段】
【０００８】
上記技術的課題を解決するために、本発明は、以下の技術案を提供する。ＫＶＭに基づく仮想ネットワークカード管理方法であって、
作動中の仮想マシン情報を取得し、仮想マシンのｉｄ情報に基づいて、仮想マシンの仮想ネットワークカードと仮想ブリッジのマッピング関係を取得するステップＳ１と、
ｌｉｂｖｉｒｔにおけるマッピング関係を絶えずに検出して取得し、ステップＳ１のマッピング関係と一致しているかどうかを確認し、一致している場合、当該マッピング関係は有効であり、仮想マシンのＩＤ情報、仮想ネットワークカードと仮想ブリッジのマッピング関係、仮想ネットワークカード情報、及び仮想ブリッジ情報を、ファイリングしてデータベースに保存し、一致していない場合、確認が完了するまで、情報を繰り返し検出して取得するステップＳ２と、
ｌｉｂｖｉｒｔサービス及びｌｉｎｕｘ  ｂｒｉｄｇｅが正常な状態にあることを確保し、仮想マシンが非作動状態であり又は仮想ネットワークカードが無効になる場合、仮想ブリッジと仮想ネットワークカードとが接続されているかどうかを検出し、接続されていない場合、データベースにおける仮想ネットワークカードと仮想ブリッジのマッピング関係を同期化し、そうでない場合、当該接続を削除するステップＳ３と、
ｌｉｂｖｉｒｔサービス及びｌｉｎｕｘ  ｂｒｉｄｇｅが正常な状態にあることを確保し、仮想ブリッジと仮想ネットワークカードとの接続が異常に切断される場合、仮想マシンが正常な作動状態にあるかどうかを検出し、且つ仮想ネットワークカードが正常に使用されるかどうかを検出し、いずれも正常であると、仮想ネットワークカードと仮想ブリッジを自動的にマッピングし、仮想マシン又は仮想ネットワークカードのいずれかが異常な状態にあると、データベースにおける仮想ネットワークカードと仮想ブリッジのマッピングデータを同期化するステップＳ４と、
ネットワークサービスが再起動され、仮想ブリッジの故障が修復され、又は仮想ネットワークカードの故障が修復された後、仮想ネットワークカードと仮想ブリッジの接続が失われる場合、データベースにおける仮想ネットワークカードと仮想ブリッジのマッピング関係を読み取り、且つマッピング関係に基づいて、仮想ネットワークカードと仮想ブリッジを再マッピングして、仮想マシンのネットワーク接続を自動的に復元するステップＳ５と、を含む。
【０００９】
好ましくは、前記ステップＳ１では、ｋｖｍ−ｂｒ−ｓｙｎｃプロセス監視プログラムを用いて、ポーリング方式又はトリガー形式で作動中の仮想マシン情報を取得する。
【００１０】
好ましくは、ｋｖｍ−ｂｒ−ｓｙｎｃプロセスは、ｖｉｒｓｈ  ｌｉｓｔインタフェース又はｌｉｂｖｉｒｔ  ａｐｉのｌｉｓｔＡｌｌＤｏｍａｉｎｓインタフェースを介して作動中の仮想マシン情報を取得する。
【００１１】
好ましくは、前記ステップＳ１では、仮想マシンのｉｄ情報に基づいて、ｖｉｒｓｈ  ｄｏｍｉｆｌｉｓｔ  ｉｄを使用して又はｌｉｂｖｉｒｔ  ａｐｉのｖｉｒｄｏｍａｉｎ．ＸＭＬＤｅｓｃインタフェースを介して、仮想マシンの仮想ネットワークカードと仮想ブリッジのマッピング関係を取得する。
【００１２】
好ましくは、前記ステップＳ３では、仮想ブリッジと仮想ネットワークカードが接続されている場合、ｂｒｃｔｌ管理ツールを使用して当該接続を削除する。
【００１３】
好ましくは、前記ステップＳ５では、ｂｒｃｔｌ管理ツールを使用して、仮想ネットワークカードと仮想ブリッジを再マッピングする。
【００１４】
好ましくは、ステップＳ５を完了した後、ステップＳ１−Ｓ５を繰り返すステップＳ６を、さらに含む。
【発明の効果】
【００１５】
本発明は、上記技術案を用いることにより、少なくとも以下の有益な効果を有する。本発明は、ｋｖｍに基づく仮想環境で、仮想ネットワークカードと仮想ブリッジのマッピング関係を自動的に検出して記憶することができ、且つ仮想ネットワークカードと仮想ブリッジのデータの一貫性を自動的に検証することができ、本発明は、仮想ネットワークカードと仮想ブリッジの接続が失われるという故障が発生するとき、仮想ネットワークカードと仮想ブリッジを急速で自動的に再マッピングして、且つ仮想マシンのネットワーク接続を復元することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施例１に係るＫＶＭに基づく仮想ネットワークカード管理方法のステップフローチャートである。
【発明を実施するための形態】
【００１７】
なお、矛盾しない限り、本願における実施例及び実施例における特徴を互いに組み合わせることができ、以下、図面及び具体的な実施例を参照しながら本願を更に詳細に説明する。
【００１８】
本発明は、ｌｉｂｖｉｒｔサービス及び仮想ブリッジサービスをモニターすることにより、ｌｉｂｖｉｒｔ  ａｐｉ又はｖｉｒｓｈを介して仮想マシンのネットワークカードと仮想ブリッジのマッピング関係を取得し、次に、仮想ブリッジと仮想ネットワークカードの接続状況を同期的に検証し、取得されたマッピング関係が、実際の仮想ブリッジと仮想ネットワークカードの接続状況と一致する場合、データの形式で保存し、テキストデータベース又は他のデータベースソフトウェアを介してデータを保存することができる。
【００１９】
実施例１
図１に示されるように、本実施例は、ＫＶＭに基づく仮想ネットワークカード管理方法を提供し、当該管理方法は、Ｓ１０１〜Ｓ１０６を含む。
【００２０】
Ｓ１０１、ｋｖｍ−ｂｒ−ｓｙｎｃプロセスは、データフローが監視したデーモンプロセスを取得して、ポーリング方式又はトリガー形式で情報を取得し、具体的には、先ず、ｖｉｒｓｈ  ｌｉｓｔ又はｌｉｂｖｉｒｔ  ａｐｉのｌｉｓｔＡｌｌＤｏｍａｉｎｓ（ｆｌａｇｓ＝１）インタフェースを介して作動中の仮想マシン情報を取得し、作動中の仮想マシンｉｄ情報に基づいて、ｖｉｒｓｈ  ｄｏｍｉｆｌｉｓｔ  ｉｄを使用して又はｌｉｂｖｉｒｔ  ａｐｉのｖｉｒｄｏｍａｉｎ．ＸＭＬＤｅｓｃインタフェースを介して、仮想マシンの仮想ネットワークカードと仮想ブリッジのマッピング関係を取得し、仮想マシンのネットワークカードと仮想ブリッジのマッピング関係を取得し、
マッピング関係は、ｖｉｒｓｈ  ｄｏｍｉｆｌｉｓｔ  ｉｄを使用してデータを取得することができ、たとえば、
インタフェース タイプ ソース 型番 ＭＡＣ 
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
ｖｎｅｔ０ ｎｅｔｗｏｒｋ ｖｉｒｂｒ０ ｖｉｒｔｉｏ ５２：５４：００：ｃ７：ｂ０：ｃｄ 
マッピング関係は、また、仮想マシンのｘｍｌファイルを介して関連する情報を取得してもよく、たとえば、
＜ｉｎｔｅｒｆａｃｅ  ｔｙｐｅ＝'ｎｅｔｗｏｒｋ'＞
＜ｍａｃ  ａｄｄｒｅｓｓ＝'５２：５４：００：ｃ７：ｂ０：ｃｄ'／＞
＜ｓｏｕｒｃｅ  ｎｅｔｗｏｒｋ＝'ｄｅｆａｕｌｔ'  ｂｒｉｄｇｅ＝'ｖｉｒｂｒ０'／＞
＜ｔａｒｇｅｔ  ｄｅｖ＝'ｖｎｅｔ０'／＞
＜ｍｏｄｅｌ  ｔｙｐｅ＝'ｖｉｒｔｉｏ'／＞
＜ａｌｉａｓ  ｎａｍｅ＝'ｎｅｔ０'／＞
＜ａｄｄｒｅｓｓ  ｔｙｐｅ＝'ｐｃｉ'  ｄｏｍａｉｎ＝'０ｘ００００'  ｂｕｓ＝'０ｘ００'  ｓｌｏｔ＝'０ｘ０３'  ｆｕｎｃｔｉｏｎ＝'０ｘ０'／＞
＜／ｉｎｔｅｒｆａｃｅ＞
さらに、ｂｒｃｔｌを介して仮想ブリッジと仮想ネットワークカードの実際の接続状況を取得し、
＄ｂｒｃｔｌ  ｓｈｏｗ
ｂｒｉｄｇｅ  ｎａｍｅ  ｂｒｉｄｇｅ  ｉｄ  ＳＴＰ  ｅｎａｂｌｅｄ  ｉｎｔｅｒｆａｃｅｓ
ｖｉｒｂｒ０    ８０００．ｆｅ５４００ｃ７ｂ０ｃｄ  ｙｅｓ    ｖｎｅｔ０
ここで、ｖｎｅｔ｛Ｘ｝が仮想ネットワークカードを表し、ｖｉｒｂｒ｛０｝が仮想ブリッジを表す。
【００２１】
以上で取得されたマッピング関係は、仮想マシンが１つ以上の仮想ネットワークカードを有し、１つの仮想ネットワークカードが１つの仮想ブリッジしかマッピングできず、１つのブリッジが複数の仮想ネットワークカードに関連付けることができることである。
【００２２】
Ｓ１０２：ｋｖｍ−ｂｒ−ｓｙｎｃプロセスがポーリングしてマッピング関係を取得することをモニターし、又は新しい仮想マシンが起動されてｌｉｂｖｉｒｔにおけるマッピング関係を取得することをトリガーし、ｌｉｂｖｉｒｔにおけるマッピング関係が、仮想ブリッジと仮想ネットワークカードのマッピング関係と一致している場合、当該マッピング関係は有効であり、仮想マシンのＩＤ情報、仮想ネットワークカードと仮想ブリッジのマッピング関係、仮想ネットワークカード情報、及び仮想ブリッジ情報を、ファイリングしてデータベースに保存する。一致していない場合、確認が完了するまで、情報を繰り返し検出して取得する。
【００２３】
Ｓ１０３：ｌｉｂｖｉｒｔサービス及びｌｉｎｕｘ  ｂｒｉｄｇｅが正常な状態にあることを確保し、仮想マシンが非作動状態であり又は仮想ネットワークカードが無効になる場合、仮想ブリッジが無効になった仮想ネットワークカードと接続されているかどうかを検出するようにトリガーし、接続されていない場合、データベースにおける関連するマッピングデータを同期化する。そうでない場合、ｂｒｃｔｌ管理ツールを使用して当該接続を削除し、それにより、ゾンビ仮想ネットワークカードによってネットワークが不安定になるというリスクを解決する。
【００２４】
Ｓ１０４：ｌｉｂｖｉｒｔサービス及びｌｉｎｕｘ  ｂｒｉｄｇｅが正常な状態にあることを確保し、仮想ブリッジと仮想ネットワークカードとの接続が異常に消失し又は切断される（異常な故障又は人為的誤操作）場合、仮想マシンが作動状態にあるかどうか、又は仮想ネットワークカードが正常に使用されるかどうかを検出するようにトリガーし、正常であると、仮想ネットワークカードと仮想ブリッジを自動的にマッピングする。そうでない場合、データベースにおける関連するマッピングデータを同期化する。
【００２５】
Ｓ１０５：ネットワークが再起動され、仮想ブリッジの故障が修復され、又はハードウェアネットワークカードの故障が修復された後、仮想ネットワークカードと仮想ブリッジの接続が失われる場合、バックグラウンドプログラムがデータベースにおけるマッピングデータを読み取るように制御し、且つｂｒｃｔｌ管理ツールを自動的に呼び出して、仮想ネットワークカードと仮想ブリッジを再マッピングして、仮想マシンのネットワーク接続を自動的に復元する。
【００２６】
Ｓ１０６：ステップＳ１０５を完了した後、ステップＳ１０１−Ｓ１０５を繰り返す。
【００２７】
本発明の実施例を示して説明したが、当業者であれば、本発明の原理及び精神から逸脱せずに、これらの実施例に対して様々な同等の変化、修正、置換や変形を行うことができ、本発明の範囲が添付の特許請求の範囲及びその同等範囲によって限定されることを理解できる。
【図１】
2020191068.tif 000003