JP2014138407A - ノード装置、通信システム及び仮想スイッチの切替方法 - Google Patents

ノード装置、通信システム及び仮想スイッチの切替方法 Download PDF

Info

Publication number
JP2014138407A
JP2014138407A JP2013007799A JP2013007799A JP2014138407A JP 2014138407 A JP2014138407 A JP 2014138407A JP 2013007799 A JP2013007799 A JP 2013007799A JP 2013007799 A JP2013007799 A JP 2013007799A JP 2014138407 A JP2014138407 A JP 2014138407A
Authority
JP
Japan
Prior art keywords
communication
failure
virtual
virtual machine
communication service
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.)
Pending
Application number
JP2013007799A
Other languages
English (en)
Inventor
Kazuhiko Mizuno
和彦 水野
Yuji Tsushima
雄次 對馬
Michitaka Okuno
通貴 奥野
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2013007799A priority Critical patent/JP2014138407A/ja
Priority to US14/154,552 priority patent/US20140204734A1/en
Priority to EP14151341.6A priority patent/EP2757478A1/en
Publication of JP2014138407A publication Critical patent/JP2014138407A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0712Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • G06F11/1484Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/301Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is a virtual computing platform, e.g. logically partitioned systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】仮想マシン(以下VM)に障害が発生した場合には、障害対象となるVMを経由せず、かつ、VM上の通信サービスに応じた縮退運転を行うことで通信中断時間の短縮を図る。
【解決手段】複数のソフトウェアを稼働させる仮想計算機でWAN高速化技術などのクラウド向け通信サービスを提供するマルチテナント環境において仮想スイッチの通信経路を制御する。本制御方法は例えば該仮想計算機の該通信サービスの稼働状態を監視する手順と、該仮想計算機の該通信サービスのアプリケーションに障害が発生したならば、該通信サービスのアプリケーションに合わせて該仮想計算機の通信経路と通信方法を変更することで通信制御を行う手順とを含む。
【選択図】図13

Description

本発明は、ノード装置、通信システム及び仮想スイッチの切替方法に係り、特に、仮想サーバ上の通信サービスに障害が発生した場合に、仮想スイッチのパス経路を制御して通信を継続させるノード装置、通信システム及び仮想スイッチの切替方法に関する。
クラウドコンピューティングの普及により、データセンタ事業者や通信事業者が提供するデータセンタの利用が増加している。一般的にデータセンタは遠隔地に設置されるケースが多く、利用する際にはLAN(Local Area Network)/WAN(Wide Area Network、広域ネットワーク)経由でアクセスされる。
WANを利用したネットワークでは、LANを利用したネットワークに比べ帯域が狭く、回線遅延が大きく、回線品質が低いため通信速度が遅くなる。そこで、最近ではWAN高速化技術の開発が推進されており、各ベンダにおいてWAN高速化装置が提供されている。一般的にWAN高速化装置は、クライアント側のLANとWAN、および、データセンタ側のLANとWANを繋ぐ中継装置として設置され、クライアントとデータセンタ間で通信されるデータを制御することでWANの通信速度を改善させている。
また、データセンタにおいては、仮想化技術の普及により、同一システム内に仮想環境を構築し、各ベンダが提供するWAN高速化技術等の通信サービスを集約した仮想マルチテナント環境が利用されつつある。この仮想マルチテナント環境では、搭載した仮想化技術や通信サービスで提供される管理機構を利用することで高可用性が提供される。
仮想マルチテナント環境の高可用性を提供する技術分野の背景技術として、仮想サーバ(VM:Virtual Machine)に障害が発生した場合には、障害対象のVMを自動的に再起動させる技術や、物理サーバが原因で障害が発生した場合に他の物理サーバにフェイルオーバーさせることで通信サービスを継続させる技術が提供されている(例えば、非特許文献1、特許文献1参照)。
また、LANとWANを中継する通信ノード装置をインパス構成に接続することで冗長化を行い、片側で障害が発生した場合には、もう片方の通信ノード装置により通信サービスを引き継ぐことで通信サービスを継続させる技術(例えば非特許文献2参照)が提供されている。
特開2007−88949号公報
"VMware High Availability すべての仮想マシンに高可用性を提供"、Data Sheet、 2009年 "Cisco Wide Area Application Service(WAAS)ソリューションガイド"、カタログガイドブック、p.34−p.37、「Cisco WAAS設定ガイドライン」、2011年
非特許文献1や非特許文献2で示したようにVMの再起動やVMを他の物理サーバにフェイルオーバーさせる技術や待機系の通信ノード装置に切り替える技術では、物理サーバやVM上のOS(Operating System)に障害が発生した場合には短い通信中断時間で障害が復旧しうる。しかし、VM上のアプリケーションへの障害に対応していない。アプリケーションによりVMの障害が発生した場合には、VMの障害原因を検知できずに再起動やフェイルオーバーが実行される。しかし、VMの再起動やフェイルオーバーでは障害を回避できず、その後他の手法により障害原因を取り除くことがある。この場合、再起動やフェイルオーバーの処理に要した時間が通信中断時間に加算され、通常業務に多大な影響を与える可能性がある。
アプリケーションの障害の例としては、アプリケーションのバージョンアップや、設定変更などにより何らかの不具合が生じることがあげられる。なお、これ以外にもアプリケーションの障害は生じうる。
また、上記技術においては、障害対策として冗長構成を組むことでフェイルオーバーや系切り替えを行っているが、上述した障害のように障害復旧が正常に行えないケースでは、障害復旧処理として待機系となる通信ノード装置等もメンテナンスする必要があり、障害復旧処理に要する時間が増加する可能性がある。
なお、障害監視や障害対策においては、外部に管理サーバを設置することでシステム全体を把握することが可能であり、適切な物理サーバへのフェイルオーバー等の障害対策を提供することができる。しかし、このように外部管理サーバで障害の監視や対応を行う場合には、通信回線の混雑や管理サーバの障害等の障害リスクが増加する可能性があり、これに伴い障害復旧処理が遅れ、通信中断時間が増加する可能性がある。
以上のように、障害対応範囲以外の障害が発生した場合には、適切な障害対応を行えずに通信中断時間が増加して通信サービスの利便性を損なう課題がある。
以上の点に鑑み、本発明は、提供する通信サービスに関する障害が発生した場合にも、通信を継続させるノード装置、通信システム及び仮想スイッチの切替方法を提供することを目的とする。
本願では上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、複数のソフトウェアを稼働させる仮想計算機でWAN高速化技術などのクラウド向け通信サービスを提供するマルチテナント環境における仮想スイッチの通信経路の制御方法であって、該仮想計算機の該通信サービスの稼働状態を監視する手順と、該仮想計算機の該通信サービスのアプリケーションに障害が発生したならば、該通信サービスのアプリケーションに合わせて該仮想計算機の通信経路と通信方法を変更することで通信制御を行う手順とを含むことを特徴とする。
具体的には、各ベンダから提供されるWAN高速化技術等の通信サービスを仮想化技術により1台のアプライアンス装置に集約した仮想マルチテナント環境において、各VM上で稼働する通信サービスの稼働状況やVMが利用するCPU等のリソースの利用状況等によりVMの障害を監視する。
次に、VMの障害を検知した際には、仮想スイッチの通信経路を変更することで障害対象となるVMを経由せずに通信を継続させる縮退運転を行う。これにより、VM上の通信サービスを受けられず通信速度低下等の弊害が生じることになるが、障害の種類によらず通信を継続することができるため、通常業務への影響を緩和することができる。
この縮退運転では、VM上で稼働する通信サービスにより利用用途が異なるため、通信サービスに合わせた制御を行う。例えば、WAN高速化技術等のように通信を高速化させるサービスであれば、障害対象となるVMを経由させずに直接通信を行うように通信経路を制御する。また、障害対象となるVMが有する仮想NICの利用用途をテーブル管理することで、通信の方向を把握することが可能であり、障害時における通信の方向を含めた制御が可能となる。
上記処理については、仮想スイッチを制御することで縮退運転を行うように記載しているが、同様の制御を物理スイッチ等の通信ノード装置に対して行うことも可能である。
本発明の第1の解決手段によると、
所定のアプリケーションを実行して通信サービスを提供する仮想計算機と、
通信データを送受信するインタフェース部と、
前記仮想計算機と前記インタフェース部間で通信データを転送する仮想スイッチ部と、
前記インタフェース部と前記仮想計算機間の前記仮想スイッチ部を介した通信経路を制御する制御部と
を備え、
前記制御部は、
前記仮想計算機の通信サービスの稼働状態を監視し、
該仮想計算機による通信サービスの提供に関する障害を検知した場合に、該通信サービスに応じた障害対応情報に従い、前記仮想スイッチ部を制御して通信データの通信経路及び/又は通信方法を変更するノード装置が提供される。
本発明の第2の解決手段によると、
所定のアプリケーションを実行して通信サービスを提供する仮想計算機、
通信データを送受信するインタフェース部、及び
前記仮想計算機への通信経路を制御する制御部
を有する第1ノード装置と、
前記第1装置の外部に設けられた、前記第1装置への通信データを転送する第2ノード装置と
を備え、
前記制御部は、前記仮想計算機の通信サービスの稼働状態を監視し、該仮想計算機による通信サービスの提供に関する障害を検知した場合に、該通信サービスに応じた障害対応情報に従い制御指示を前記第2ノード装置に送信し、
前記第2ノード装置は障害対応情報に応じて通信データの通信経路及び/又は通信方法を変更する通信システムが提供される。
本発明の第3の解決手段によると、
所定のアプリケーションを実行して通信サービスを提供する仮想計算機の通信サービスの稼働状態を監視し、
該仮想計算機による通信サービスの提供に関する障害を検知した場合に、該通信サービスに応じた障害対応情報に従い、仮想スイッチを制御してインタフェース部から仮想計算機への仮想スイッチを介した通信データの通信経路及び/又は通信方法を変更する仮想スイッチの切替方法が提供される。
本発明は、提供する通信サービスに関する障害が発生した場合にも、通信を継続させるノード装置、通信システム及び仮想スイッチの切替方法を提供することを目的とする。
本実施の形態の仮想マルチテナント環境の構成図の一例である。 第1の実施例におけるアプライアンス装置の構成図の一例である。 第1の実施例におけるアプライアンス装置及びソフトウェアの関係を示すスタック図の一例である。 第1の実施例におけるメモリ内容の一例である。 第1の実施例における構成情報管理テーブルの一例である。 第1の実施例におけるアプリケーションテーブルの一例である。 第1の実施例における稼働状況監視テーブルの一例である。 第1の実施例におけるデータセンタ側の全体的な処理を説明するフローチャートの一例である。 縮退運転による効果を示す一例である。 第1の実施例における仮想サーバの障害処理を説明するフローチャートの一例である。 第1の実施例における障害監視項目の一例である。 第1の実施例における障害監視処理を説明するフローチャートの一例である。 第1の実施例における縮退運転処理を説明するフローチャートの一例である。
以下、実施例について図面を用いて説明する。
本実施例では、アプライアンス装置は、仮想サーバに障害が発生した際に縮退運転を行う。
図1は、本実施例の仮想マルチテナント環境の構成図の一例である。別々のベンダ(A社、B社)が提供する通信サービス104を利用して、拠点106のクライアント(クライアント装置)109がWAN100を経由してデータセンタ110を利用する例である。拠点106では、各クライアント109がA社LANスイッチ107、或いは、B社LANスイッチ108に接続して通信を行う。
サービスノード(ノード装置)101は、通信ノード装置105とアプライアンス装置102を備え、各クライアント109とデータセンタ110とが通信する際に通信サービス処理(通信サービスを提供するための処理、以下単に通信サービスと称する場合もある)104を実行することで通信データの制御を行う。例えば、A社サービスである通信サービス104がWAN高速化技術を提供する際には、WAN100の通信速度を向上させることができる。また、この通信サービス104は、アプライアンス装置102に仮想化技術を適用し、それぞれ仮想サーバ103上で稼働する。本実施例では、サービスノード101に通信ノード装置105を含めているが、通信ノード装置105を拠点106やデータセンタ110等、サービスノード101以外に設置しても良い。
本実施例では、サービスノード101を、拠点106とWAN100の間、及び、データセンタ110とWAN100の間に設置しているが、サービスノード101で提供される通信サービス104に合わせて片側のみに設置しても良い。
データセンタ110は、例えばA社データセンタ111とB社データセンタ112を含み、拠点106と同様にA社LANスイッチ107、或いは、B社LANスイッチ108に接続して通信を行う。
図2は、サービスノード101内のアプライアンス装置102の構成図の例である。ここでは説明を簡略化するために2つの仮想サーバ103が稼働していることを想定しているが、3つ以上の複数の仮想サーバ103が稼働しても良い。
アプライアンス装置102は、CPU203を1つ以上有する。CPU203はQPI(QuickPath Interconnect)やSMI(Scalable Memory Interconnect)等のインターコネクト206を介してChipSet(チップセット)205に接続される。
ChipSet205には、PCI Express等のバス207を介してI/Oアダプタ208、通信ノード装置105に接続されるNIC(Network Interface Card)211、ディスク装置214に接続されるSCSI(Small Computer System Interface)アダプタ212、ストレージ装置216を有するSAN(Storage Area Network)215に接続されるHBA(Host Bus Adapter)213、コンソール209に接続されるコンソールインタフェース(コンソールI/F)210等が接続される。
CPU203は、インターコネクト206を介してメモリ204にアクセスし、及び、ChipSet205からNIC211等にアクセスして所定の処理を行う。メモリ(記憶部)204には、ハイパバイザ201がロードされ、ハイパバイザ201が制御する仮想サーバ103でゲストOS202が稼働する。
図3は、本実施例におけるアプライアンス装置及びソフトウェアの関係を示すスタック図の一例である。
次に、アプライアンス装置102上で仮想サーバ103を実現するソフトウェア構成の主要部と、制御対象となるハードウェア要素について、図3を用いて説明する。アプライアンス装置102上では、1つ以上の仮想サーバ(仮想計算機)103を制御するハイパバイザ201が稼動する。
ハイパバイザ201は、仮想サーバ103を生成し、任意の仮想NIC(VNIC、仮想インタフェース部)311を共有的、或いは、占有的に仮想サーバ103に割り当てる。共有的に割り当てた場合には、ブリッジモジュール307で通信先の仮想サーバ103を選定して、仮想スイッチ306を経由し仮想サーバ103とNIC(インタフェース部)211とが通信を行う。占有的に割り当てた場合には、仮想サーバ103が直接NIC211と通信を行う。
ハイパバイザ201は、仮想サーバ103の状態を保持する仮想サーバ103のエミュレーションデータ308と、ゲストOS202や仮想サーバ103の稼働状況を監視する稼働状況監視部301と、仮想サーバ103の通信経路を制御する切替部305と、仮想サーバ103とブリッジモジュール307間の通信経路となる仮想スイッチ306を含む。また、ハイパバイザ201の稼働状況監視部301は、仮想サーバ103やゲストOS202で稼働する通信サービス104の構成情報を管理する構成情報管理テーブル(構成情報記憶領域)302と、ゲストOS202で稼働する通信サービス104のアプリケーション情報を管理するアプリケーションテーブル(アプリケーション情報記憶領域)303と、ゲストOS203で稼働する通信サービス104の稼働情報を管理する稼働状況監視テーブル(稼働状況記憶領域)304とを含む。これらの各テーブルはメモリ204上にある。なお、これらの各テーブルは、稼働状況監視部301の外部に設けられても良い。なお、構成情報管理テーブル302、アプリケーションテーブル303、および、稼働状況監視テーブル304の詳細については、後述する。
仮想サーバ103のエミュレーションデータ308は、仮想サーバ103に提供する仮想Chipsetデータ309を含む。仮想Chipsetデータ309は、仮想Chipsetデータ309が保持すべきレジスタ等の状態を保持する。
稼働状況監視部301は、稼働状況監視テーブル304に登録された稼働情報の分析、或いは、ゲストOS202のアプリ監視部(アプリケーション監視部)314からの通知により障害を検知し、構成情報管理テーブル302、および、アプリケーションテーブル303に登録された稼働情報やアプリケーション情報に基づいて通信経路を選定する。また、稼働状況監視部301は、切替部305を用いて通信経路を制御した縮退運転を行う。
なお、稼働状況監視部301と、切替部305と、アプリ監視部314は、NIC211と仮想サーバ103間の仮想スイッチ部を介した通信経路を制御する制御部を構成する。また、仮想スイッチ306とブリッジモジュール307等は、仮想サーバ103とNIC211間で通信データを転送する仮想スイッチ部を構成する。
制御用仮想サーバ313は、例えば仮想サーバ103と同じ構成となるが、ブリッジモジュール307により仮想サーバ103やハイパバイザ201等の仮想環境の制御を行う。
図4は、ハイパバイザ201が管理するメモリ204の構成の一例を示す。
ハイパバイザ201は、メモリ204上にハイパバイザ201自身が使用する領域と、仮想サーバ103が使用する領域を割り当てる。例えば、図4のように、ハイパバイザ201は、ハイパバイザ201の領域にアドレスAD0からAD1を割り当て、制御用仮想サーバ313にアドレスAD1からAD2を、仮想サーバ103―1にアドレスAD2からAD3を、仮想サーバ103―2にアドレスAD4からAD5をそれぞれ割り当てる。
各仮想サーバ103が使用する領域には、ゲストOS202、VNIC311、NICドライバ312、アプリ監視部314、および、通信サービス104が格納される。なお、例えば、VNIC311、アプリ監視部314および通信サービス104については、これらを実現するためのプログラム、データ等が格納される。
ハイパバイザ201が使用する領域には、仮想サーバ103のエミュレーションデータ308、稼働状況監視部301、構成情報管理テーブル302、アプリケーションテーブル303、稼働状況監視テーブル304、切替部305、ブリッジモジュール307、および、仮想スイッチ306が格納される。なお、例えば、稼働状況監視部301、切替部305、ブリッジモジュール307、および、仮想スイッチ306については、これらを実現するためのプログラム、データ等が格納される。
制御用仮想サーバ313が使用する領域には、ブリッジモジュール307、VNIC311、NICドライバ312が格納される。なお、例えば、ブリッジモジュール307およびVNIC311については、これらを実現するためのプログラム、データ等が格納される。
図5は、構成情報管理テーブル302の構成例である。構成情報管理テーブル302は、例えば、仮想サーバ103、ブリッジモジュール307、および、NIC211との接続関係を保持する表である。この表では、ブリッジモジュール307と各仮想サーバ103の接続情報が登録される。
この表のブリッジモジュール307の項目には、ブリッジモジュール307の構成情報からI/Oデバイスの識別情報(例えば通し番号、PNIC#)500、VNIC314の識別情報(例えば通し番号、VNIC#)501、仮想的なネットワークを構成するVLAN(Virtual Local Area Network)の識別情報(ID情報)の識別情報(例えば通し番号、VLAN ID)502が登録され、仮想サーバ103に対して割り当てたVNIC311やNIC211との接続情報がConnection503に登録される。
仮想サーバ103の項目には、仮想サーバ103の構成情報からVNIC#501とVLAN ID#502が登録され、VNIC#501の利用用途がUsed504に登録される。本実施例では、利用用途の例として、WAN100を利用した通信を行う場合に“WAN”と登録し、A社LANスイッチ107やB社LANスイッチ108等のLANを利用した通信を行う場合に“LAN”と登録し、NIC211と通信を行う場合に“Bridge”を登録する。
図6は、アプリケーションテーブル303の構成例である。アプリケーションテーブル303は、各仮想サーバ103上で稼働する通信サービス104に関連するアプリケーションの稼働状況を保持する表である。この表では、環境構築時や事前に取得した通信サービス104のアプリケーション情報から通信サービスを実行するアプリケーションの識別情報が親アプリ601の欄に登録され、親アプリ601に関連するアプリケーションが子アプリ602の欄に登録される。親アプリ601と子アプリ602は、アプリ監視部314により稼働状況が監視されており、この稼働状況は、仮想サーバ103からハイパバイザ201に通知され、本テーブルのAPStatus(アプリケーション状況)603の欄に登録される。例えば、正常(OK)、障害(NG)の識別情報が登録される。また、対応する通信サービス104が稼働する仮想サーバ103の名称が対象VM604に登録され、この仮想サーバ103の稼働状況がVMStatus(仮想サーバ状況)605に登録される。VMStatusは例えば、正常(OK)、障害(NG)の識別情報が登録される。障害対応手段(障害対応情報)606には、仮想サーバ103、或いは、通信サービス104に障害が発生した際の対応手段が登録される。例えば、“Path−through”の場合は、仮想サーバ103を経由せずにパススルー設定を行い、“Discard”の場合は、仮想サーバ103で送信される通信データの破棄を行い、“Simplex”の場合は、片側(一方向)の通信のみを行う。なお、これら以外にも対応する仮想サーバ103の障害など、通信サービス104の提供に関する障害を検知した際の予め定められた適宜の対応手段を記憶することができる。
図7は、稼働状況監視テーブル304の構成例である。稼働状況監視テーブル304は、通信サービス104に関連した稼働情報を保持する表である。この表では、稼働情報を取得した時刻が取得時刻701に登録され、通信サービス104の処理時間が処理時間702に登録される。また、通信サービス104が稼働する仮想サーバ103のCPU203の利用率およびメモリ204の使用量がそれぞれCPU利用率703とメモリ利用率704に登録される。通信サービス104のパケット通信量が、パケット通信量705に登録される。WAN転送時間706には、WAN100経由で通信した際の転送時間が登録される。なお、本実施例では、それぞれ項目の一例を記載しており、I/O利用率等の他のパラメータを新規に追加してもよいし、記載されている項目を省略させても良い。稼働状況監視テーブル304は、例えば、稼働状況監視部301により更新される。図7の例では新たな取得時間に対応する行が追加されていく。
図8は、第1の実施例におけるデータセンタ側の全体的な処理を説明するフローチャートの一例である。WAN100を経由してデータセンタ110に通信する処理の一例について図8を用いて説明する。なお、図8では、データセンタ110側の処理の一例となるが、拠点106側の処理も同様となる。ここではまず障害が発生していない通常時の処理を説明する。
まず、サービスノード101の通信ノード装置105は、クライアント109からの通信データを、WAN100を経由して受信する(801)。受信した通信データはアプライアンス装置102に送信される(802)。このような通信ノード装置105とアプライアンス装置の通信経路は、例えば、VLANを設定することで制御することが可能である。
アプライアンス装置102では、NIC211で受信した通信データが、ブリッジモジュール307に送信され、通信先となる仮想サーバ103へ仮想スイッチ306を経由して送信される(803)。ブリッジモジュール307では、仮想サーバ103との通信制御を行っており、受信した通信データを解析して通信先となる仮想サーバ103を特定し、ブリッジモジュール307から仮想スイッチ306を経由して通信データを仮想サーバ103に送信する。
仮想サーバ103では、通信サービス処理104を実行することで通信データを制御し、ブリッジモジュール307に送信する(804)。804の処理では、通信サービス104が提供する機能により制御方法(処理)が異なる。例えば、WAN高速化技術等であれば通信データの構造を変更し(第1通信サービス)、セキュリティ機能であれば通信データをフィルタリングする(第2通信サービス)。また、仮想サーバ103には、複数のVNIC314を割り当てており、WAN100を経由した通信データとLANを経由した通信データの通信先を別々のVNIC314に定義している。これにより、VNIC314の利用用途や通信方向等を把握することが可能となる。
仮想サーバ103は、通信サービス処理104により制御された通信データを、ブリッジモジュール307に送信し、通信データはNIC211を介して通信ノード装置105に送信される(805)。通信データは、通信ノード105からA社LANスイッチ107を経由しA社データセンタ111に送信される(806)。
図8の通信処理においては、障害発生により通信中断時間に影響を与える可能性がある。図9に従来の障害時における処理と本実施例の障害時における処理の概要を示す。なお、図9の上図が従来の障害処理901を表し、下図が本実施例の障害処理902を表す。
従来の障害処理901では、何らかの原因で仮想サーバ103に障害が発生した場合、仮想サーバ103の再起動やフェイルオーバーにより障害復旧処理を行い、障害回復後に正常運用を行っていた(図9上図)。この場合、例えば、アプリケーションが障害の原因であったならば、上述した障害復旧処理では障害が回復しないため、本処理(再起動やフェイルオーバ等)に要した時間が通信中断時間に加算される。従って、正常運用の再開が遅れてしまい通信サービス104の利便性を損なうことになる。
一方、本実施例の障害処理902では、何らかの原因で仮想サーバ103に障害が発生した場合、障害復旧処理と通信を継続させる縮退運転を並行して処理させるため、通信中断時間を短縮させることが可能となる(図9下図)。例えば、アプリケーションの障害が原因であっても、縮退運転により通信は継続できる。
以下に本実施例の障害処理902の一例について、図10のフローチャートを用いて説明する。図10は、本実施例の障害処理902で行う処理の全体像を示すフローチャートの例である。
アプライアンス装置102(例えば、稼働状況監視部301又はアプリ監視部314)は、アプライアンス装置102内の仮想サーバ103の稼働状況など、仮想サーバ103が提供する通信サービス104の稼働状況を取得する(1001)。取得した稼働情報を解析することで通信サービス104の提供状態を監視する(1002)。仮想サーバ103による通信サービス104の提供に関する障害を検知したならば(1003)、縮退運転を開始する(1004)。
ここで、仮想サーバ103による通信サービス104の提供に関する障害は、例えば、通信サービス104を提供するためのアプリケーションの障害、仮想サーバ103の障害または通信サービス104の処理の障害を含む。
仮想サーバ103による通信サービス104の稼働状況の取得情報や解析方法について、図11にその一例を表す。まず、通信サービス104の処理時間(図7:702)を計測し、処理時間が予め定められた第1閾値を超えた場合に障害として検知する。この閾値には、例えば、WAN転送時間を用いる。この場合、通信サービス104の処理時間がWAN転送時間を超えた場合には、通信サービス104が正常に機能していない可能性があるため障害として判定する。また、仮想サーバ103のCPU203やメモリ204等のリソースの利用状況(図7:703、704)を監視し、空きリソースが無い又は予め定められた閾値より少ない場合(リソース利用率が第2閾値を超える場合)には、通信サービス104に影響を与える可能性があるため障害として判定する。そして、通信サービス104に関連するアプリケーションの稼働状況(図6:603)を監視し、このアプリケーションが停止している場合に障害として判断する。また、仮想サーバ103の稼働状況をハイパバイザ201等に出力されるログファイルにより監視し、仮想サーバ103が閉塞した場合(仮想サーバが落ちていることがログにより確認できた場合)に障害として判断する。なお、ここでの条件は一例であり、他の条件の追加や、条件の省略は任意に行って良い。
上述した障害監視の1つであるアプリケーションの稼働状況を監視する処理の一例を図12のフローチャートを用いて説明する。図12は、アプリ監視部314の処理の一例である。
まず、アプリ監視部314は、仮想サーバ103上で稼働する通信サービス104に関連するアプリケーションの稼働状況を取得する(1201)。アプリ監視部314は、このアプリケーションの稼働状況を解析することでアプリケーションの監視を行う(1202)。アプリケーションの監視には、ハイパバイザ201内のアプリケーションテーブル303を利用し、このアプリケーションテーブル303に登録されているアプリケーションが監視対象となる。
アプリケーションの異常終了等によりアプリケーションの異常を検知したならば(1203)、アプリ監視部314からハイパバイザ201内の稼働状況監視部301に障害を通知する(1204)。アプリケーションの異常検知については、アプリケーションテーブル303より通信サービス104で利用するアプリケーションを把握することが可能であり、該当するアプリケーションが1つでも稼働していない場合に異常を検知する。
以下に、障害検知後に行う縮退運転の一例について、図13のフローチャートにより説明する。
図13は、ハイパバイザ201内で実行される縮退運転のフローチャートの例である。アプリ監視部314からの障害通知をハイパバイザ201内の稼働状況監視部301が受信する(1301)。障害通知は、例えば、障害を検知したアプリケーションの識別情報を含む。稼働状況監視部301は、アプリケーションテーブル303に登録されている障害対象となる仮想サーバ103の障害対応手段606を取得する(1302)。例えば、稼働状況監視部301は、障害通知に含まれるアプリケーションの識別情報に対応する仮想サーバ103の障害対応手段606を取得する。このときに、稼働状況監視部301は、障害対象となる仮想サーバ103で稼働する通信サービス104に関連するアプリケーションのAPStatus603に“NG”を登録する。
なお、アプリケーションの障害以外の場合も同様である。例えば、仮想サーバ103の障害または通信サービス104の処理の障害を検知すると、障害が検知された仮想サーバ103又は障害が検知された通信サービス104を提供する仮想サーバ103について、アプリケーションテーブル303に登録されている障害対象となる仮想サーバ103の障害対応手段606を取得する。
次に、稼働状況監視部301が構成情報管理テーブル302を取得し(参照し)、ブリッジモジュール307のConnection503に登録されている障害対象となる仮想サーバ103のVNIC304にエラー表記を更新する。これにより、障害対象となる仮想サーバ103上の通信サービス104に障害が発生したことを把握することが可能となり、障害対象となる仮想サーバ103への通信データについては、以降、縮退運転で対応することになる。
この縮退運転では、通信サービス104毎に障害対応手段606に従い切替部305により処理が行われる(1304)。また、障害が発生した場合には、少なからず通信中断時間が発生しており、この間に障害対象仮想サーバ103の通信データはメモリ204上に確保されているため、縮退運転開始時にメモリ204から通信データが取得され処理が行われる
障害対応手段606に合わせた縮退運転としては、例えば、通信サービス104がWAN高速化技術であれば、メモリ204から取得した通信データを仮想サーバ103に送信せずに、NIC211に送り返す処理を行う(1305)。これにより、WAN高速化処理は行われないが、通信経路がパススルーとして制御されるため通信自体を継続させることが可能となる。また、通信サービス104がファイアウォールであれば、通信データのフィルタリングが行えないため、メモリ204から取得した通信データを破棄する処理を行う(1306)。これらの処理内容は、障害対応手段606として、アプリケーションテーブル303に記憶されている。1306の処理においては、構成情報管理テーブル302に仮想サーバ103のVNIC314の利用用途が登録されているため、WANからLANへの通信、或いは、LANからWANへの通信かを判断することが可能であり、通信方向の一方側のみ通信を許可することも可能である。例えば、障害を検知した仮想サーバ103への通信データについて、第1ネットワークから第2ネットワーク方向への通信データは受信したNIC211に折り返し、逆方向の通信データを破棄するように仮想スイッチ306を制御することで、一方向の通信を継続させる。なお、これらパススルーや廃棄以外にも適宜の処理を実行してもよい。その際、障害対応手段606にその処理を識別する情報を登録しておけばよい。
縮退運転開始後は、障害対象となる仮想サーバ103への通信データをメモリ204に保持することなく縮退運転が実行される(1307)。例えば、障害対応手段606がパススルーの場合、NIC211で受信され、仮想スイッチ306、制御用仮想サーバ313を経由して通常仮想サーバ103に転送される通信データは、仮想スイッチ306又は制御用仮想サー313で折り返される。また、障害対応手段606がデータ破棄の場合、NIC211で受信された通信データは、仮想スイッチ306又は制御用仮想サー313で破棄される。
なお、本明細書において、通信データを折り返すとは、受信した通信データを送信先側へ転送することでもよいし、受信した通信データを送信元側に転送することでもよい。
以上の構成および処理により、仮想サーバ103で稼働する通信サービス104に障害が発生した場合に、障害対象となる仮想サーバ103への通信を停止させ、通信サービス104に合わせた縮退運転を行うことで通信中断時間を短縮させることができる。また、障害監視および縮退運転は、アプライアンス装置102内で処理を行うことが可能であり、外部管理サーバや冗長構成のためのリソース確保を不要とすることができる。
なお、本実施例では、アプライアンス装置(第1ノード装置)102のハイパバイザ201内で縮退運転を実行しているが、通信ノード装置(第2ノード装置)105において縮退運転を実行することも可能である。これは、障害発生時に通信サービス104に設定した障害時対応手段606を通信ノード装置105に通知すればよい。例えば、通信ノード装置105にVLANが設定されている場合、障害対応手段606が“Pass−through”であれば、通信ノード装置105とアプライアンス装置101を接続するVLAN設定を変更すれば良く、障害対応手段606が“Discard”であれば、WAN100に接続される通信ノード105のポート以外のVLAN設定を解除すればよい。また、ここではVLANを想定した縮退運転に関して説明したが、物理ノード装置105に設定される物理結線を同様の手順で実現することも可能である。
本実施の形態によると、VMに障害が発生した場合には、障害対象となるVMを経由せず、かつ、VM上の通信サービスに合わせた縮退運転を行うことで通信中断時間を短縮できる。また、本実施の形態によると、障害監視用の外部管理サーバや冗長構成のためのリソース確保を削減することができる。
(構成例)
[構成例1]
複数のソフトウェアを稼働させる仮想計算機でWAN高速化技術などのクラウド向け通信サービスを提供するマルチテナント環境における仮想スイッチの通信経路の制御方法であって、
該仮想計算機の該通信サービスの稼働状態を監視する手順と、
該仮想計算機の該通信サービスのアプリケーションに障害が発生したならば、該通信サービスのアプリケーションに合わせて該仮想計算機の通信経路と通信方法を変更することで通信制御を行う手順と
を含むことを特徴とする仮想スイッチの通信経路の制御方法。
[構成例2]
構成例1記載の仮想スイッチの通信経路の制御方法であって、
障害が検知された該仮想計算機で、該通信サービスが通信データを変更する機能を提供しているならば、該通信データを該仮想計算機に送信せずに受信した物理計算機の物理NICに折り返すことで通信を継続させ、
該通信サービスが外部からの通信をフィルタリングする機能を提供しているならば、該通信データを該仮想計算機に送信せずに破棄する
ことを特徴とする仮想スイッチの通信経路の制御方法。
[構成例3]
構成例1記載の仮想スイッチの通信経路の制御方法であって、
障害が発生した該仮想計算機への通信データを、該仮想計算機に送信せずに該仮想計算機の仮想NICの利用用途に合わせて片側の通信方向のみ該物理NICに通信データを折り返すことで通信を継続させる
ことを特徴とする仮想スイッチの通信経路の制御方法。
[構成例4]
構成例1記載の仮想スイッチの通信経路の制御方法であって、
該通信サービスの処理時間が閾値を超える、或いは、
該仮想計算機に割り当てられたリソースの利用率が閾値を超える、或いは、
該通信サービスの停止を検知した、或いは、
該仮想計算機の閉塞を検知した際に、
障害と判定する
ことを特徴とする仮想スイッチの通信経路の制御方法。
[構成例5]
構成例1記載の仮想スイッチの通信経路の制御方法であって、
該仮想計算機の該通信サービスのアプリケーションに障害が発生したならば、該仮想計算機の通信経路と通信方法を変更する手段を物理スイッチに通知することで通信処理を継続させる
ことを特徴とする仮想スイッチの通信経路の制御方法。
[構成例6]
構成例1記載の仮想スイッチの通信経路の制御方法であって、
該仮想計算機が有する該仮想NICの通信用途をテーブルで管理することで、該仮想計算機の通信方向と該仮想計算機の該通信サービスの利用方法を特定できる
ことを特徴とする仮想スイッチの通信経路の制御方法。
[構成例7]
CPU、メモリ、NICを搭載する物理計算機上で複数のシステムソフトウェアを稼働させる仮想計算機装置であって、
該メモリには、1つ以上の仮想計算機を生成して各仮想計算機でOSを稼働させるハイパバイザを含み、
該ハイパバイザは、
通信サービスの稼働状況を監視する稼働状況監視部と、
仮想スイッチの通信経路を制御する切替部と、
該稼働状況監視部は、該仮想計算機の接続情報を記録する構成情報管理テーブルと、
該仮想計算機で稼働する通信サービスの情報を記録するアプリケーションテーブルと、
該仮想計算機に割り当てられたリソースの利用状況を記録する稼働状況監視テーブルと
を有し、
該仮想計算機は、
該通信サービスの稼働状況を監視するアプリ監視部を有し、
該アプリ監視部が該通信サービスの障害を検知したならば該稼働状況監視部に障害を通知し、
該稼働状況監視部はアプリケーションテーブルに登録されている障害対象の該通信サービスを搭載する該仮想サーバの障害対応手段を取得し、
該障害対応手段に合わせて該切替部が該仮想計算機の通信経路と通信方法を変更することで、障害対象となる該仮想サーバを通信先から切り離して通信処理を継続させる
ことを特徴とする仮想計算機装置。
[構成例8]
構成例7記載の仮想計算機装置であって、
該仮想サーバの障害対応手段として、
障害が検知された該仮想計算機で該通信サービスが通信データを変更する機能を提供しているならば、該通信データを該仮想計算機に送信せずに受信した物理計算機の物理NICに折り返すことで通信を継続させ、
該通信サービスが外部からの通信をフィルタリングする機能を提供しているならば、
該通信データを該仮想計算機に送信せずに破棄する
ことを特徴とする仮想計算機装置。
[構成例9]
構成例7記載の仮想計算機であって、
該仮想サーバの障害対応手段として、
該構成情報管理テーブルから該仮想計算機の仮想NICの利用用途を取得し、
該仮想計算機に障害が発生したならば、該仮想計算機の仮想NICの利用用途から通信方向を選定し、
該仮想計算機に送信せずに、片側の通信方向のみ該物理NICに通信データを折り返すことで通信を継続させる
ことを特徴とする仮想計算機装置。
[構成例10]
構成例7記載の仮想計算機装置であって、
該通信サービスの処理時間が閾値を超える、或いは、
該仮想計算機に割り当てられたリソースの利用率が閾値を超える、或いは、
該通信サービスの停止を検知した、或いは、
該仮想計算機の閉塞を検知した際に、
障害と判定する
ことを特徴とする仮想計算機装置。
[構成例11]
構成例7記載の仮想計算機装置の制御方法であって、
該仮想計算機の該通信サービスのアプリケーションに障害が発生したならば、該仮想計算機の通信経路と通信方法を変更する手段を物理スイッチに通知することで通信処理を継続させる
ことを特徴とする仮想計算機装置。
[構成例12]
構成例7記載の仮想計算機装置であって、
該仮想計算機が有する該仮想NICの通信用途を該構成情報管理テーブルで管理することで、該仮想計算機の通信方向と該仮想計算機の該通信サービスの利用方法を特定できる
ことを特徴とする仮想計算機装置。
[構成例13]
所定のアプリケーションを実行して通信サービスを提供する計算機と、
通信データを送受信するインタフェース部と、
前記計算機と前記インタフェース部間で通信データを転送するスイッチ部と、
前記インタフェース部と前記計算機間の前記スイッチ部を介した通信経路を制御する制御部と
を備え、
前記制御部は、
前記計算機の通信サービスの稼働状態を監視し、
該計算機による通信サービスの提供に関する障害を検知した場合に、該通信サービスに応じた障害対応情報に従い、前記スイッチ部を制御して通信データの通信経路及び/又は通信方法を変更するノード装置。
(付記)
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれている。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
100 通信事業網(WAN)
101 サービスノード
102 アプライアンス装置
103 仮想サーバ
104 通信サービス
105 通信ノード装置
106 拠点
107 A社LANスイッチ
108 B社LANスイッチ
109 クライアント
110 データセンタ
111 A社データセンタ
112 B社データセンタ
201 ハイパバイザ
203 CPU
204 メモリ
211 NIC
301 稼働状況監視部
302 構成情報管理テーブル
303 アプリケーションテーブル
304 稼働状況監視テーブル
305 切替部
306 仮想スイッチ
307 ブリッジモジュール
311 VNIC
314 アプリ監視部

Claims (13)

  1. 所定のアプリケーションを実行して通信サービスを提供する仮想計算機と、
    通信データを送受信するインタフェース部と、
    前記仮想計算機と前記インタフェース部間で通信データを転送する仮想スイッチ部と、
    前記インタフェース部と前記仮想計算機間の前記仮想スイッチ部を介した通信経路を制御する制御部と
    を備え、
    前記制御部は、
    前記仮想計算機の通信サービスの稼働状態を監視し、
    該仮想計算機による通信サービスの提供に関する障害を検知した場合に、該通信サービスに応じた障害対応情報に従い、前記仮想スイッチ部を制御して通信データの通信経路及び/又は通信方法を変更するノード装置。
  2. 前記通信サービスの提供に関する障害は、該通信サービスを提供するためのアプリケーションの障害であり、
    前記制御部は、
    該アプリケーションの障害を検知すると、該通信サービスに応じた障害対応情報に従い、前記スイッチ部を制御して通信データの通信経路及び/又は通信方法を変更する請求項1に記載のノード装置。
  3. 前記通信サービスの提供に関する障害は、前記仮想計算機の障害または通信サービスの処理の障害である請求項1に記載のノード装置。
  4. 前記制御部は、
    障害対応情報に従い、受信された通信データが前記インタフェース部に折り返されるように前記仮想スイッチ部の通信経路を制御し、又は、受信された通信データを前記仮想計算機に送信せずに破棄する請求項1に記載のノード装置。
  5. 前記仮想計算機は、通信データを変更する第1通信サービスを提供し、
    前記制御部は、前記仮想計算機による第1通信サービスの提供に関する障害を検知すると、該仮想計算機に対応する障害対応情報に従い、受信された通信データがた前記インタフェース部に折り返されるように前記仮想スイッチ部の通信経路を制御して通信を継続させる請求項1に記載のノード装置。
  6. 前記通信データを変更する第1通信サービスは、WAN高速化技術の通信サービスである請求項5に記載のノード装置。
  7. 前記仮想計算機は、外部からの通信をフィルタリングする第2通信サービスを提供し、
    前記制御部は、前記仮想計算機による第2通信サービスの提供に関する障害を検知すると、該仮想計算機に対応する障害対応情報に従い、受信された通信データを該仮想計算機に送信せずに破棄するように前記仮想スイッチ部を制御する請求項1に記載のノード装置。
  8. 通信データを変更する第1通信サービスを提供する前記仮想計算機に対応して、受信された通信データを該仮想計算機に送信せずに前記インタフェース部に折り返す第1障害対応情報が記憶され、外部からの通信をフィルタリングする第2通信サービスを提供する前記仮想計算機に対応して、受信された通信データを該仮想計算機に送信せずに破棄する第2障害対応情報が記憶された記憶部
    をさらに備え、
    前記制御部は、
    前記仮想計算機による第1通信サービス又は第2通信サービスの提供に関する障害を検知すると、対応する第1障害対応情報に従い、受信された通信データが前記インタフェース部に折り返されるように前記仮想スイッチ部の通信経路を制御し、又は、対応する第2障害対応情報に従い、受信された通信データを前記仮想計算機に送信せずに破棄する請求項1に記載のノード装置。
  9. 前記制御部は、障害を検知した前記仮想計算機への通信データについて、第1ネットワークから第2ネットワーク方向への通信データは前記インタフェース部に折り返し、逆方向の通信データを破棄するように前記仮想スイッチ部を制御することで、一方向の通信を継続させる請求項1に記載のノード装置。
  10. 前記仮想計算機の仮想ネットワークインタフェースの利用用途が予め記憶された記憶部
    をさらに備え、
    前記制御部は、該利用用途を参照して、第1ネットワークからの通信データか、第2ネットワークからの通信データかを把握する請求項9に記載のノード装置。
  11. 前記制御部は、
    通信サービスの処理時間が予め定められた第1閾値を超えること、
    前記仮想計算機に割り当てられたリソースの利用率が予め定められた第2閾値を超えること、
    該通信サービスの停止を検知したこと、および、
    該仮想計算機の閉塞を検知したこと
    のいずれかにより、該仮想計算機の該通信サービスの障害を検知する請求項1に記載のノード装置。
  12. 所定のアプリケーションを実行して通信サービスを提供する仮想計算機、
    通信データを送受信するインタフェース部、及び
    前記仮想計算機への通信経路を制御する制御部
    を有する第1ノード装置と、
    前記第1装置の外部に設けられた、前記第1装置への通信データを転送する第2ノード装置と
    を備え、
    前記制御部は、前記仮想計算機の通信サービスの稼働状態を監視し、該仮想計算機による通信サービスの提供に関する障害を検知した場合に、該通信サービスに応じた障害対応情報に従い制御指示を前記第2ノード装置に送信し、
    前記第2ノード装置は該制御指示を受信し、障害対応情報に応じて通信データの通信経路及び/又は通信方法を変更する通信システム。
  13. 所定のアプリケーションを実行して通信サービスを提供する仮想計算機の通信サービスの稼働状態を監視し、
    該仮想計算機による通信サービスの提供に関する障害を検知した場合に、該通信サービスに応じた障害対応情報に従い、仮想スイッチを制御してインタフェース部から仮想計算機への仮想スイッチを介した通信データの通信経路及び/又は通信方法を変更する仮想スイッチの切替方法。
JP2013007799A 2013-01-18 2013-01-18 ノード装置、通信システム及び仮想スイッチの切替方法 Pending JP2014138407A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2013007799A JP2014138407A (ja) 2013-01-18 2013-01-18 ノード装置、通信システム及び仮想スイッチの切替方法
US14/154,552 US20140204734A1 (en) 2013-01-18 2014-01-14 Node device, communication system, and method for switching virtual switch
EP14151341.6A EP2757478A1 (en) 2013-01-18 2014-01-15 Node device, communication system, and method for switching virtual switch

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013007799A JP2014138407A (ja) 2013-01-18 2013-01-18 ノード装置、通信システム及び仮想スイッチの切替方法

Publications (1)

Publication Number Publication Date
JP2014138407A true JP2014138407A (ja) 2014-07-28

Family

ID=49998073

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013007799A Pending JP2014138407A (ja) 2013-01-18 2013-01-18 ノード装置、通信システム及び仮想スイッチの切替方法

Country Status (3)

Country Link
US (1) US20140204734A1 (ja)
EP (1) EP2757478A1 (ja)
JP (1) JP2014138407A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020057908A (ja) * 2018-10-01 2020-04-09 日本電気株式会社 通信障害解析装置、システム、方法およびプログラム
JP2020191068A (ja) * 2019-05-17 2020-11-26 広東叡江云計算股▲分▼有限公司Guangdong Eflycloud Computing Co., Ltd Kvmに基づく仮想ネットワークカード管理方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8826271B2 (en) 2010-04-28 2014-09-02 Cavium, Inc. Method and apparatus for a virtual system on chip
US10205648B1 (en) * 2014-05-30 2019-02-12 EMC IP Holding Company LLC Network monitoring using traffic mirroring and encapsulated tunnel in virtualized information processing system
CN104536800B (zh) * 2014-09-29 2018-05-11 杭州华为数字技术有限公司 一种虚拟机放置方法及装置
JP6579916B2 (ja) * 2015-10-28 2019-09-25 株式会社日立製作所 仮想計算機間の通信経路制御方法および計算機システム
US20170171298A1 (en) * 2015-12-09 2017-06-15 Intel Corporation Enhanced virtual switch for network function virtualization
US10235211B2 (en) * 2016-04-22 2019-03-19 Cavium, Llc Method and apparatus for dynamic virtual system on chip
CN108900324B (zh) * 2018-06-13 2021-10-15 平安科技(深圳)有限公司 校验虚拟机通信性能的方法及装置
CN111143027A (zh) * 2019-12-06 2020-05-12 北京浪潮数据技术有限公司 一种云平台管理方法、系统、设备及计算机可读存储介质
CN114978871B (zh) * 2022-04-08 2023-10-24 北京航天飞行控制中心 业务系统的节点切换方法及节点切换装置、电子设备
US20230336287A1 (en) * 2022-04-15 2023-10-19 Dish Wireless L.L.C. Management of redundant links

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007088949A (ja) 2005-09-22 2007-04-05 Fujitsu Ltd 情報処理装置、通信負荷分散方法および通信負荷分散プログラム
JP5032191B2 (ja) * 2007-04-20 2012-09-26 株式会社日立製作所 サーバ仮想化環境におけるクラスタシステム構成方法及びクラスタシステム
US7984123B2 (en) * 2007-12-10 2011-07-19 Oracle America, Inc. Method and system for reconfiguring a virtual network path

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020057908A (ja) * 2018-10-01 2020-04-09 日本電気株式会社 通信障害解析装置、システム、方法およびプログラム
JP7192367B2 (ja) 2018-10-01 2022-12-20 日本電気株式会社 通信障害解析装置、通信障害解析システム、通信障害解析方法および通信障害解析プログラム
JP2020191068A (ja) * 2019-05-17 2020-11-26 広東叡江云計算股▲分▼有限公司Guangdong Eflycloud Computing Co., Ltd Kvmに基づく仮想ネットワークカード管理方法

Also Published As

Publication number Publication date
US20140204734A1 (en) 2014-07-24
EP2757478A1 (en) 2014-07-23

Similar Documents

Publication Publication Date Title
JP2014138407A (ja) ノード装置、通信システム及び仮想スイッチの切替方法
US11895016B2 (en) Methods and apparatus to configure and manage network resources for use in network-based computing
CN108139925B (zh) 虚拟机的高可用性
US9600380B2 (en) Failure recovery system and method of creating the failure recovery system
Yamato et al. Fast and reliable restoration method of virtual resources on OpenStack
JP5585844B2 (ja) 仮想計算機の制御方法及び計算機
JP5851503B2 (ja) 高可用性仮想機械環境におけるアプリケーションの高可用性の提供
US8874952B2 (en) Computer system and availability method thereof
US8872638B2 (en) Controlling communication among multiple industrial control systems
US11005725B2 (en) Methods and apparatus to proactively self-heal workload domains in hyperconverged infrastructures
CN110633170A (zh) 本地化服务恢复
EP4202688A1 (en) Management of microservices failover
JP5561622B2 (ja) 多重化システム、データ通信カード、状態異常検出方法、及びプログラム
US8880936B2 (en) Method for switching application server, management computer, and storage medium storing program
WO2013153472A1 (en) Providing application based monitoring and recovery for a hypervisor of an ha cluster
JP2010113707A (ja) 物理及び仮想マルチパス入出力を動的に管理する方法、装置、システム、及びプログラム
US8667337B2 (en) Storage apparatus and method of controlling the same
US20140047441A1 (en) Information processing apparatus, virtual machine control method, and program
WO2010130524A1 (en) Altering access to a fibre channel fabric
WO2012004902A1 (ja) 計算機システム及び計算機システムの系切替制御方法
JP6604336B2 (ja) 情報処理装置、情報処理方法、及び、プログラム
JP2009187090A (ja) クラスタシステムおよび情報処理方法
WO2013190694A1 (ja) 計算機の復旧方法、計算機システム及び記憶媒体
US10884878B2 (en) Managing a pool of virtual functions
JP2013008320A (ja) ネットワークシステム、冗長化方法、障害検知装置及び障害検知プログラム