[go: up one dir, main page]

WO2014030229A1 - ライブマイグレーションされた仮想計算機のネットワーク接続を復元する仮想計算機システム - Google Patents

ライブマイグレーションされた仮想計算機のネットワーク接続を復元する仮想計算機システム Download PDF

Info

Publication number
WO2014030229A1
WO2014030229A1 PCT/JP2012/071217 JP2012071217W WO2014030229A1 WO 2014030229 A1 WO2014030229 A1 WO 2014030229A1 JP 2012071217 W JP2012071217 W JP 2012071217W WO 2014030229 A1 WO2014030229 A1 WO 2014030229A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual
physical
mac address
target
information
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.)
Ceased
Application number
PCT/JP2012/071217
Other languages
English (en)
French (fr)
Inventor
ゆかり 八田
典充 早川
三木 博史
史朗 野原
崇夫 戸塚
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 US14/408,441 priority Critical patent/US9323566B2/en
Priority to PCT/JP2012/071217 priority patent/WO2014030229A1/ja
Priority to JP2014531448A priority patent/JP5869133B2/ja
Publication of WO2014030229A1 publication Critical patent/WO2014030229A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45579I/O management, e.g. providing access to device drivers or storage

Definitions

  • the present invention relates to live migration of virtual machines.
  • One or a plurality of virtual computers are constructed in the physical computer by a virtualization mechanism such as a hypervisor that the physical computer has.
  • a virtualization mechanism such as a hypervisor that the physical computer has.
  • a technique of live migration (hereinafter sometimes referred to as “LM”), which is migration of an operating virtual machine from a first physical machine to a second physical machine, is known (for example, Patent Document 1). .
  • the LM source physical computer is referred to as a “first physical computer”
  • the virtualization mechanism included in the first physical computer is referred to as a “first virtualization mechanism”
  • the LM destination physical computer is referred to as a “second virtual machine”.
  • a virtual NIC Network Interface Card
  • VNIC Virtual Network Interface Card
  • a virtualization mechanism of the second physical computer is called a “second virtualization mechanism”
  • the LM target virtual machine Virtual machine
  • target VM a VNIC managed by the first virtualization mechanism and assigned to the target VM before the LM
  • the second virtualization A VNIC that is managed by the mechanism and is assigned to the target VM after LM may be referred to as a “second VNIC”.
  • the LM is not aware of the upper machine.
  • the target VM needs to be migrated. For this reason, it is necessary to restore the connection between the target VM and the external environment after LM.
  • the network connection information of the external environment for example, there is a MAC address table held by a PSW (physical network switch).
  • the MAC address table has information indicating to which port of the PSW the machine to which the destination MAC address is assigned is connected.
  • RARP Reverse Address Resolution Protocol
  • the MAC address #X of the first VNIC and the MAC address #Y of the second VNIC are exchanged between the first and second virtualization mechanisms.
  • the second virtualization mechanism broadcasts the RARP packet specifying the MAC address #X that the second virtualization mechanism has.
  • the RARP server on the network receives the RARP packet and returns an IP address #K corresponding to the MAC address #X to the second virtualization mechanism in response to the RARP packet.
  • the second physical computer can communicate using the IP address #K.
  • the RARP packet is relayed by the PSW, and the PSW updates the identification information of the port corresponding to the MAC address #X in the MAC address table to the identification information of the port that has received the RARP packet.
  • the correspondence between the MAC address #X and the port is updated, and the network connection is restored for the target VM after LM.
  • a MAC address different from the MAC address of the first VNIC may be used in communication by the target VM outside the jurisdiction of the first virtualization mechanism.
  • Teaming is a technique for bundling a plurality of ports of one or more NICs assigned to a computer and operating them as one port to improve load distribution, bandwidth improvement, and fault tolerance.
  • a plurality of ports (a plurality of team-set ports) related to one or more VNICs are operated as a unit, and at least one of the following is performed.
  • the first port When a failure occurs in the first port of the plurality of ports, the first port is logically disconnected, and communication is continued using the second port of the plurality of ports.
  • the (*) When communication is performed with a plurality of communication partners via a plurality of ports, transmission / reception is performed in a shared manner, thereby increasing the bandwidth or distributing the load.
  • the MAC address used in Teaming may be a different MAC address from the MAC address assigned to the VNIC.
  • the change of the MAC address used by the virtual machine OS (guest OS) is performed independently of the virtualization mechanism.
  • the MAC address used by the guest OS is registered in the MAC address table of the PSW. Specifically, for example, when the PSW receives a packet coming from the outside, and the MAC address included in the received packet is not in the MAC address table, the PSW and the port ( ID of PSW port) is registered in the MAC address table.
  • the correct MAC address (specifically, the same MAC address registered in the PSW MAC address table) cannot be specified in the RARP packet transmitted by the second virtualization mechanism after LM. There can be. In this case, the network connection of the target VM cannot be restored.
  • the target VM uses a tag VLAN (Virtual LAN) (LAN is an abbreviation for Local Area Network).
  • VLAN Virtual LAN
  • LAN is an abbreviation for Local Area Network
  • VLAN tag information including VLAN ID etc.
  • the virtualization mechanism does not know the VLAN tag used by the target VM.
  • the MAC address of the guest OS is the same as the MAC address of the VNIC, there may arise a problem that the network connection of the target VM cannot be restored after LM as described above.
  • a PaaS Platinum as a Service
  • the administrator of the virtualization mechanism does not know how the virtual machine or its host machine is operated. For this reason, when the administrator manually inputs information used by the virtual machine, it is necessary to link the user of the virtual machine or its upper machine and the administrator of the virtualization mechanism.
  • the first virtualization mechanism has a first management information unit
  • the second virtualization mechanism has a second management information unit.
  • the first virtualization mechanism receives a packet from the virtual machine, it extracts a predetermined type of information from the packet and registers the extracted predetermined type of information in the first management information unit.
  • the first virtualization mechanism transmits a predetermined type of information in the first management information unit to the second virtualization mechanism during LM.
  • the second virtualization mechanism registers the predetermined type of information in the second management information unit, and in order to restore the network connection of the LM virtual machine, the predetermined type of packet including the predetermined type of information, Transmit from at least one of the one or more physical I / O devices of the second physical computer.
  • the information of the virtual machine that has been live-magnified can be obtained without the manual input of the information outside the jurisdiction by the virtualization mechanism administrator.
  • the network connection can be restored. Since the administrator of the virtualization mechanism does not need to manually input information outside the jurisdiction, there is no need for the user of the virtual machine or its upper machine and the administrator of the virtualization mechanism to cooperate for inputting the information.
  • FIG. 1 shows an example of a virtual machine system and its external environment according to the embodiment.
  • FIG. 2 shows an example of the management table # 11 of VNIC # 11 and the management table # 12 of VNIC # 12.
  • FIG. 3 shows a configuration example of a packet transmitted from the LPAR 128 not using the tag VLAN.
  • FIG. 4 shows a configuration example of a packet transmitted from the LPAR 128 using the tag VLAN.
  • FIG. 5 shows a configuration example of an RARP packet transmitted when the LPAR 128 of the LM target is an LPAR 128 that does not use a tag VLAN.
  • FIG. 6 shows the flow of processing performed by the VSW 137 in the hypervisor 103.
  • FIG. 7 shows a configuration example of the MAC address learning table 144.
  • FIG. 1 shows an example of a virtual machine system and its external environment according to the embodiment.
  • FIG. 2 shows an example of the management table # 11 of VNIC # 11 and the management table # 12 of VNIC # 12.
  • FIG. 8 shows an area occupied by information related to the hypervisor 103 in the memory 111.
  • FIG. 9 shows the flow of S603 (MAC address learning process) in FIG.
  • FIG. 10 shows the flow of learning data collection processing.
  • FIG. 11 shows the flow of LM processing.
  • FIG. 12 shows an example of the MAC address learning table # 11 before and after the LM of the VSW # 11 in the LM source hypervisor # 1.
  • FIG. 13 shows an example of the MAC address learning table # 21 before and after the LM of the VSW # 21 in the hypervisor # 2 at the LM destination.
  • FIG. 14 shows an example of the MAC address table # 1 before LM in the PSW # 1.
  • FIG. 15 shows an example of the MAC address table # 1 before LM in the PSW # 1.
  • aaa information is described as an aaa table, but the information is not limited to the table format and may be in other types.
  • FIG. 1 shows an example of a virtual machine system and its external environment according to the embodiment.
  • the virtual machine system includes a plurality of physical machines 101.
  • the external environment of the virtual machine system includes, for example, a plurality of PSWs 154 and a management console 149.
  • the physical computer 101 has a physical layer (physical resource) 102.
  • the physical layer 102 includes one or more CPUs 104, one or more memories 111, and one or more physical I / O (Input / Output) devices.
  • the physical I / O device is, for example, an interface device for communication via a communication network, and the physical I / O device may be connected to the communication network.
  • the one or more physical I / O devices are, for example, three physical NICs 112 and two FC (Fibre Channel) -HBA (Host Bus Adapter) 115.
  • the port #A of the PSW # 1 is connected to the first port of the NIC # 11, and the port # of the PSW # 3 is connected to the first port of the NIC # 12.
  • B is connected, and port #B of PSW # 4 is connected to the first port of NIC # 13.
  • the port #D of PSW # 1 is connected to the first port of NIC # 21, and the port #D of PSW # 3 is connected to the first port of NIC # 22.
  • the hyperpizer 103 is realized by executing a computer program (for example, firmware) in at least one CPU 104 of the physical layer 102.
  • the hypervisor 103 logically divides the physical layer 102 (CPU 104, memory 111, I / O devices (NIC 112 and FC-HBA 115)), and each of the plurality of virtual resources obtained by logical division A mechanism that allows multiple virtual machines to operate on one physical machine 101 by assigning them to multiple LPARs (Logical Partitions)
  • the number of virtual resources is the same as the number of LPARs.
  • a resource is allocated to an LPAR on a one-to-one basis, and a virtual machine is realized by allocating a virtual resource to an LPAR, so in the present embodiment, the virtual machine is referred to as “LPAR”.
  • One virtual resource is, for example, one or more VCPs based on one or more CPUs 104 U (virtual CPU) 119, one or more VMM (virtual memory) 123 based on one or more memories 111, and one or more virtual I / O devices based on one or more I / O devices.
  • the I / O device is, for example, one or more VNICs 124 based on one or more NICs 112 and / or one or more VHBAs (virtual HBAs) 126 based on one or more FC-HBAs 115.
  • VNICs 124 based on one or more NICs 112
  • VHBAs virtual HBAs
  • an OS (guest OS) 131 is executed.
  • the guest OS 131 sends a packet
  • the guest OS 131 includes a predetermined type of information in the packet.
  • the predetermined type of information includes, for example, a MAC address used by the guest OIS 131 and / or a VLAN tag.
  • the VLAN tag is included in a packet transmitted by the guest OS 131 when the tag VLAN is used in the communication of the guest OS 131.
  • the packet transmitted by the guest OS 131 is transmitted from the VNIC 124 or VHBA 126 assigned to the LPAR 128 that executes the guest OS 131.
  • the MAC address included in the packet is a MAC address uniquely used by the guest OS 131 (hereinafter sometimes referred to as “software MAC”), and may be a MAC address different from the MAC address of the VNIC. .
  • the packet transmitted from the LPAR 128 is received by at least one of the plurality of PSWs 154.
  • the PSW 154 is a physical network switch.
  • the PSW 154 includes a plurality of ports (physical ports), a MAC address table 158 (more precisely, a storage device such as a memory that stores the MAC address table 158), and a processor (not shown).
  • the MAC address table 158 is an example of address management information indicating the correspondence between the physical port ID of the PSW 154 having the table 158 and the MAC address.
  • the “correspondence” referred to here indicates which guest OS is connected to which physical port. Therefore, the physical port ID registered in the MAC address table 158 can also be referred to as the packet transfer destination physical port ID.
  • the MAC address table 158 includes a pair of a MAC address, a VLAN ID that is an example of at least a part of the VLAN tag, and a physical port ID (FIG. 14 shows PSW # 1). It is an example of MAC address table # 1.
  • PSW # 1 processor of PSW # 1
  • the target MAC address (MAC address included in the received packet) is not in the MAC address table # 1
  • the target MAC address and the target VLAN ID A set of (the VLAN ID in the VLAN tag included in the packet) and the ID of the target physical port (the physical port that received the packet) is registered in the MAC address table # 1.
  • a value indicating no designation is registered as a VLAN ID in the MAC address table # 1.
  • the PSW # 1 (processor of PSW # 1)
  • the physical port ID corresponding to the target MAC address in the address table # 1 is updated to the target physical port ID.
  • the PSW # 1 the processor of the PSW # 1
  • the target MAC address is in the MAC address table # 1
  • the VLAN ID corresponding to the target MAC address is the target VLAN ID. If they are different, a new entry is added, and the target MAC address and the target VLAN ID are registered in the entry.
  • PSW # 1 With such a function of PSW # 1, the MAC address (and VLAN tag) used by the guest OS is registered in the MAC address table # 1, so that the MAC address is the software MAC. If there is, the software MAC is registered instead of the MAC address of the VNIC 124 of the LPAR 128.
  • the other PSW 128 also has the same function as that of PSW # 1.
  • the hypervisor 103 includes a scheduler 117, a resource management unit 118, a migration processing unit 148, a plurality of VSWs (virtual switches) 137, and one or more virtual resources described above.
  • VSWs virtual switches
  • the scheduler 117 performs logical partitioning of the physical layer 102, and the resource management unit 118 manages resources such as physical resources as the physical layer 102.
  • a plurality of virtual resources for example, VCPU 119, VMEM 123, VNIC 124, and VHBA 126) obtained by logically dividing the physical layer 102 (physical resource) are allocated to a plurality of LPARs 128 by the scheduler 117 and the resource management unit 118, respectively. Can do.
  • the VNIC 124 has a virtual MAC address assigned by the hypervisor 103.
  • the VNIC 124 has a management table 152 that includes information related to the VNIC 124.
  • the management table 152 is provided for each VNIC 124.
  • the management tables of the VNICs # 11 and # 12 assigned to the LPAR # 11 are taken as an example.
  • FIG. 2 shows an example of the management table # 11 of VNIC # 11 and the management table # 12 of VNIC # 12.
  • the management table # 11 includes a virtual MAC address of the VNIC # 11 and one or more OS registered MAC addresses (that is, the VNIC # 11 that are one or more MAC addresses that can be used by the guest OS # 11 of the LPAR # 11). One or more MAC addresses that can be used as MAC addresses included in the packet).
  • the OS registered MAC address may be the same value as the virtual MAC address of VNIC # 11.
  • the MAC address included in the packet transmitted by the guest OS # 11 is registered in the management table # 11.
  • the hypervisor 103 can know the MAC address registered by the guest OS # 11 by referring to the management table # 11.
  • the virtual NIC address differs between VNIC # 11 and VNIC # 12 as shown in the management tables # 11 and # 12 shown in FIG.
  • the registered MAC address may be the same as shown in FIG. 2 (for example, MAC address 00: 00: 88: 00: 01: 00). It seems that this OS registered MAC address should be used when teaming. However, in teaming, since the guest OS does not know which MAC address to use for the hypervisor 103, the registered MAC address is used. (As shown in FIG. 2, a plurality of common MAC addresses may be registered in both cases).
  • the guest OS 131 operates as described above.
  • a packet that does not include a VLAN tag as shown in FIG. 3 is transmitted from the guest OS 131 that does not use the VLAN tag, such as the guest OS # 13 of the LPAR # 13.
  • a packet including a VLAN tag as shown in FIG. 4 is transmitted from the guest OS 131 using the tag VLAN, such as the guest OS # 11 of the LPAR # 11 or the guest OS # 12 of the LPAR # 12.
  • Any of the types of packets shown in FIGS. 3 and 4 includes a destination MAC address and a source MAC address.
  • the destination MAC address is a MAC address specified by the guest OS 131 of the source LPAR 128 as a destination
  • the source MAC address is a MAC address specified by the guest OS 131 of the source LPAR 128 as a source.
  • a packet transmitted from a guest OS that does not use a tag VLAN has a destination MAC address in a first field (for example, the first 6-byte field), and a second field ( (For example, the next 6-byte field) has the source MAC address, and the third field (for example, the next 2-byte field) has information (for example, a number for identifying the protocol) indicating the type of the packet.
  • the fourth field (for example, the next 46 to 1500 byte field) has data
  • the fifth field (for example, the last 4 byte field) has a code for error detection.
  • a packet (hereinafter referred to as a VLAN use packet) transmitted from a guest OS using a tag VLAN is almost the same as a VLAN unused packet. The difference is that the second field and the third field are different in the VLAN use packet. There is a sixth field (for example, 4 bytes) between these fields. In the sixth field, there is a VLAN tag.
  • the first half of the sixth field (for example, 2 bytes) has a TPID (Tag Protocol Identifier), and the second half of the sixth field (for example, 2 bytes) has a TCI (Tag Control). Information).
  • TPID Tag Protocol Identifier
  • TCI Tag Control
  • Information is information including information such as VLAN ID and packet priority.
  • Information including TPID and TCI is referred to as VLAN tag.
  • a packet including VLAN tag including information such as VLAN ID is transmitted.
  • a packet including a MAC address different from the virtual MAC address of the VNIC 152 may be transmitted from the LPAR 128 that performs teaming for making a network redundant, such as LPAR # 13.
  • the operating LPAR 128 may be LM from the physical computer # 1 to the physical computer # 2 by the hypervisor # 1.
  • LPAR # 13 is LM
  • LPAR # 13 is migrated to physical computer # 2
  • hypervisor # 2 in physical computer # 2 transmits RARP (Reverse Address Resolution Protocol)
  • PSW # 3 The MAC address table # 3 and the MAC address table # 4 of the PSW # 4 are updated, and the network connection of the LPAR # 13 can be restored (taken over substantially).
  • the hypervisor # 1 in the physical computer # 1 of the LM is the LPAR 128 Has a learning function of extracting and retaining a predetermined type of information from the packet.
  • the predetermined type of information is, for example, at least one (typically both) of a MAC address (source MAC address) and at least a part of a VLAN tag (for example, VLAN ID).
  • the learning function is the MAC learning unit 140.
  • the MAC learning unit 140 performs MAC address learning for extracting and managing the MAC address (source MAC address) and the VLAN ID.
  • the hypervisor 103 has a VSW (virtual switch) 137 for each virtual network segment constructed by itself.
  • the VSW 137 corresponds to a physical NIC 112 port.
  • Each VSW 137 includes a plurality of virtual ports, a MAC learning unit 140, and a MAC address learning table 144.
  • the plurality of virtual ports of each VSW # 137 includes a virtual port connected to the VNIC 124 assigned to the LPAR 128 and a virtual port assigned to the physical NIC 112 included in the physical computer 101.
  • the MAC learning unit 140 performs MAC address learning. For example, if the MAC learning unit # 11 of the VSW # 11 receives a packet from the LPAR # 11 (guest OS # 11) to which the VNIC connected to the VSW # 11 is assigned, the MAC learning unit # 11 starts from the packet.
  • the MAC address (source MAC address) and VLAN ID are extracted, and the extracted information (for example, MAC address and VLAN ID) is registered in the MAC address learning table # 11. Thereby, the information (MAC address and VLAN ID) registered in the MAC address learning table 140 depends on the packet received by the VSW 137 having the MAC address learning table 140.
  • At least one VSW 137 is connected to the VNIC 124 assigned to the LPAR 128, and at least one physical NIC 112 is connected to the VSW 137, and at least one physical NIC 112 is connected to the VNIC 137.
  • a PSW 154 is connected, and a network segment corresponding to a VSW (virtual network segment) 137 connected to the PSW 154 through the physical NIC 112 is connected to the PSW 154.
  • the network segment may be, for example, a LAN subnet or a VLAN (tag VLAN).
  • a packet transmitted from the guest OS # 13 is transmitted to the NIC through the VNIC 124 assigned to the LPAR # 13, the VSW # 13 connected to the VNIC 124, and the NIC # 2 connected to the VSW # 13.
  • the PSW # 3 specifies the physical port ID corresponding to the destination MAC address in the received packet from the MAC address table # 3, and outputs the received packet from the specified physical port #A or #D.
  • the packet is sent to an external device through the network segment # 3 connected to the PSW # 3, or is sent to the LPAR 128 in the physical computer # 2.
  • VSW 137 corresponds to the network segment
  • a plurality of VSWs 137 corresponding to the same network segment exist in the plurality of physical computers 101.
  • VSW # 11 and VSW # 21 corresponding to the same network segment # 1 exist in the physical computers # 1 and # 2.
  • the management console 149 may be a computer such as a personal computer, for example.
  • the management console 149 is connected to at least one of the plurality of PSWs 154 (for example, PSW # 1).
  • PSW # 1 the plurality of PSWs 154
  • an LM start request is started when an instruction is issued to both the LM source physical computer # 1 and the LM destination physical computer # 2 through the PSW # 1.
  • the LM start request is sent only to the physical computer # 1 (or # 2), and the LM start request is sent from the physical computer # 1 (or # 2) to the partner physical computer # 2 (or # 1). May be.
  • the migration processing unit # 1 transfers the data of the LPAR target LPAR # 128 to the migration processing unit # 2 through the NIC # 1, thereby realizing the LM of the LPAR 128.
  • the LM target LPAR 128 for example, LPAR # 13
  • the migration method are specified. If the specified LPAR 128 is in operation and the specified method is LM, LM is executed. If the specified LPAR 128 is not in operation even though the specified method is LM, the LM fails.
  • the migration processing unit 148 can perform other types of migration, for example, shutdown migration that migrates the migration target LPAR 128 in a state where the guest OS 131 of the migration target LPAR 128 is shut down. .
  • shutdown migration must be specified as the migration method.
  • the migration processing unit # 2 of the LM destination physical computer # 2 transmits the RARP packet.
  • FIG. 5 shows a configuration example of the RARP packet transmitted when the LPAR 128 of the LM target is the LPAR 128 not using the tag VLAN.
  • the packet configuration is the same as the packet configuration shown in FIG. A value (for example, 0x8035) meaning RARP is written in the third field (field in which the type is written), and data related to RARP (value according to the RARP packet configuration) is written in the fourth field (field having data). It is.
  • FIG. 6 shows the flow of processing performed by the VSW 137 in the hypervisor 103.
  • FIG. 6 is a common process performed by all the VSWs 137 after the physical computer 101 is activated and the VSW 137 is constructed by the hypervisor 103. Specifically, the processing of FIG. 6 is performed regardless of whether the physical computer 101 having the VSW 137 is the LM source or the LM destination of the LPAR 128. The process of FIG. 6 is applied to all the VSWs 137. However, since the LM target of this embodiment is LPAR # 13, the process shown in FIG. 6 will be described by taking VSW # 13 as an example.
  • VSW # 13 waits until a packet transmitted by guest OS # 13 is received or a learning data acquisition request is received.
  • the MAC learning unit # 13 When the packet transmitted by the guest OS # 13 is received, the MAC learning unit # 13 performs the MAC address learning process (see FIG. 9 for details of the MAC address learning process).
  • VSW # 13 transmits the received packet after performing the MAC address learning process.
  • the packet is output from the physical computer # 1 through the NIC # 12 connected to the VSW # 13.
  • the VSW # 13 performs the learning data acquisition process (see FIG. 10 below for details of the learning data collection process including the learning data acquisition process).
  • VSW # 13 acquires learning data, and transmits the acquired learning data to the transmission source (VNIC) of the learning data acquisition request.
  • FIG. 7 shows a configuration example of the MAC address learning table 144.
  • the MAC address learning table 144 exists for each VSW 137 and has one or more entries.
  • One entry includes, for example, the transmission source MAC address extracted from the packet received by the VSW 137 having the MAC address learning table 144, the VLAN ID extracted from the packet, and the ID of the transmission source VNIC. , And an update time that is the time when this entry was updated. That is, each entry uses the VNIC ID instead of the VNIC virtual MAC address to identify the VNIC. For the VNIC, the virtual MAC address of the VNIC may be registered.
  • the hypervisor # 2 (migration processing unit # 2) issues an RARP packet.
  • the RARP packet requires a source MAC address and a VLAN ID (if tag VLAN is used). From the MAC address learning table 144 in the LM source hypervisor # 1, information on all entries related to the LM LPAR is migrated to the LM destination hypervisor # 2.
  • the guest OS # 13 has transmitted a packet containing a MAC address different from the virtual MAC address managed by the hypervisor # 1 (and when a tag VLAN is used)
  • the entry entry (entry of the MAC address learning table) brought from the LM source
  • information necessary for restoring the network connection and included in the RARP packet is stored.
  • the LM-destination hypervisor # 2 migrate processing unit # 2 issues an RARP packet including such information, whereby the network connection of the LM LPAR can be restored.
  • the MAC address learning table 144 is generated by the initialization process of the VSW 137 by the hypervisor 103 and always exists while the VSW 137 exists. The user specifies which VSW (virtual network segment) the guest OS 134 uses. The MAC address learning table 144 is updated when information in the packet used by the guest OS 134 is updated.
  • FIG. 8 shows an area occupied by information related to the hypervisor 103 in the memory 111.
  • the MAC address learning table 144 and the VSW 137 that logically holds the table 144 are stored in the memory 111. Be placed. Thereby, even if the guest OS 134 generates and transmits a large amount of packets, the MAC address learning process can be performed without taking a long time.
  • a device external to the physical computer # 1, such as the management console 149, may have the MAC address learning table 144. However, since it is necessary to transfer data through the communication network, the guest OS 134 makes a large amount of data. When a packet is generated and transmitted, it takes a long time to analyze and update data.
  • FIG. 9 shows the flow of S603 (MAC address learning process) in FIG.
  • the MAC address learning process is a process performed by the MAC learning unit 140 of the VSW # 137 while the VSW 137 exists regardless of the LM.
  • the process shown in FIG. 9 will be described using VSW # 13 as an example.
  • the MAC learning unit # 13 receives the packet transmitted by the guest OS # 13.
  • the MAC learning unit # 13 analyzes the received packet, and acquires information from the packet based on whether or not the guest OS # 13 is using the tag VLAN. Specifically, when the tag VLAN is used, the acquired information is a source MAC address and a VLAN ID. When the tag VLAN is not used, the acquired information is the source MAC address. Whether or not the tag VLAN is used can be determined, for example, by whether or not the next two bytes of the second field (source MAC address) in the packet is TPID “0x8100”.
  • the MAC learning unit # 13 determines that an entry (hereinafter, a matching entry in the description of FIG. 9) including the same MAC address (and VLAN ID) as the acquired transmission source MAC address (and VLAN ID) is MAC address learning. It is determined whether it is in table # 13.
  • the MAC learning unit # 13 registers the same VNIC ID as the VNIC ID of the transmission source of the packet received in S901 in the matching entry. It is determined whether or not.
  • the MAC learning unit # 13 changes the VNIC ID of the matching entry to the VNIC ID of the transmission source of the packet received in S901. Thereby, for example, even when the same MAC address is used in different VNICs during teaming, it is possible to know which VNIC is used.
  • S909 If the result of the determination in S907 is affirmative (S907: No), or after S908, the MAC learning unit # 13 adds the information (learned information) acquired in S902 to the empty entry, and in S901.
  • the VNIC ID of the transmission source of the received packet and the update time that is the time when information is stored in the empty entry are stored.
  • FIG. 10 shows the flow of learning data collection processing.
  • the MAC address learning table 144 has a plurality of entries, and each entry includes a VNIC ID.
  • the VNIC ID is information for identifying the VNIC, as the name implies, and corresponds to the VNIC in a 1: 1 ratio.
  • the information of the entry having the VNIC ID corresponding to the VNIC assigned to the LM target LPAR is acquired, and the hypervisor # 2 of the LM destination receives the MAC of the entry. It is necessary to send the RARP packet using the address and VLAN ID.
  • the search is performed using the VNIC ID as a key. If a plurality of VNICs are assigned to the LPAR, it is necessary to acquire information on a plurality of entries.
  • the LPAR 128 to be LM may be an LPAR that uses a tag VLAN, it is necessary to acquire information on a plurality of entries for one VNIC.
  • the learning data collection process shown in FIG. 10 will be described below by taking as an example the case where the LPAR 128 of the LM is LPAR # 13 and is LMed from the physical computer # 1 to the physical computer # 2, as in FIGS. .
  • the migration processing unit # 1 issues a learning data acquisition request to one VNIC 137 (for example, # 11) of one or more VNICs 137 assigned to the LPAR # 13.
  • VNIC # 11 receives the learning data acquisition request in S1001, and transmits the learning data acquisition request to VSW # 13 connected to VNIC # 11.
  • VSW # 13 specifies the VNIC ID of VNIC # 11.
  • VSW # 13 searches the MAC address learning table # 13 for an entry having the same VNIC ID as the VNIC ID specified in S1004 (hereinafter, a matching entry in the description of FIG. 10).
  • VSW # 13 determines whether or not the retrieved entry is a matching entry.
  • the VSW # 13 copies the information of the matching entry to the buffer area (for example, a predetermined area in the memory 11) of the migration processing unit # 1. As a result, the migration processing unit # 1 can transfer the data related to the LPAR # 13 to the LM destination.
  • VSW # 13 If the result of the determination in S1008 is affirmative (S1008: Yes), VSW # 13 notifies VNIC # 11 of the transmission source of the request received in S1003 that data acquisition has been completed.
  • the VNIC # 11 Upon receiving the notification of completion of data acquisition, the VNIC # 11 notifies the migration processing unit # 1 that has transmitted the request in S1001 of completion of data acquisition.
  • the migration processing unit # 1 that has received the notification of the completion of data acquisition from the VNIC # 11 has completed data acquisition for all of the one or more VNICs 137 assigned to the LM target LPAR # 13. Determine whether.
  • FIG. 11 shows the flow of LM processing. It has been described so far that the LPAR 128 is LM from the physical computer # 1 to the physical computer # 2. However, to be precise, data relating to the LM source LPAR in the physical computer # 1 is transferred from the physical computer # 1 to the physical computer # 2. The data related to the LPAR of the LM destination in the physical computer # 2 is changed to the data related to the LPAR of the LM source in the physical computer # 1. Therefore, in the following description, the terms “LM source LPAR” and “LM destination LPAR” are used. In this LM process, LPAR # 3 is migrated from the LM source LPAR to the LM destination LPAR.
  • the management console 149 issues an LM start request to the migration processing unit # 1 in the LM source physical computer # 1.
  • the management console 149 issues an LM start request to the migration processing unit # 2 in the LM destination physical computer # 1.
  • the migration processing unit # 1 collects configuration information regarding the LM source physical computer # 1.
  • the configuration information may include, for example, which VNIC 124 is connected to which NIC 112 port through which VSW 137, a virtual MAC address for each VNIC, and a WWN (World Wide Name) for each VHBA.
  • the migration processing unit # 2 collects configuration information regarding the physical computer # 2 of the LM destination.
  • the migration processing unit # 2 transfers the MAC address and / or WWN of the LM destination LPAR in the configuration information acquired in S1104 to the migration processing unit # 1.
  • the migration processing unit # 1 transfers the MAC address and / or WWN of the LM source LPAR in the configuration information acquired in S1103 to the migration processing unit # 2.
  • the migration processing unit # 2 receives the MAC address and / or WWN transmitted from the migration processing unit # 1 in S1106 and receives the MAC address and / or WWN of the LM destination LPAR. And / or change to WWN.
  • the migration processing unit # 1 issues a resource securing request to the migration processing unit # 2.
  • the migration processing unit # 2 receives the resource securing request from the migration processing unit # 1, and performs the resource securing process of the LM destination LPAR.
  • the migration processing unit # 2 that has secured the resource waits for the information stored in the VMEM 123 to be transferred from the migration processing unit # 1.
  • the migration processing unit # 1 acquires information about the LM source LPAR from the VMEM 123, and transfers the acquired information to the migration processing unit # 2.
  • the migration processing unit # 1 continues to transfer the information regarding the LM source LPAR among the information regarding the LM source LPAR stored in the VMEM 123 until the dirty ratio becomes equal to or less than a predetermined value.
  • the dirty ratio is the ratio of the amount of dirty information in the information related to the LM source LPAR to the amount of information related to the LM source LPAR. Dirty information is information that has been updated after being transferred in this LM process and needs to be transferred.
  • the migration processing unit # 2 changes the information related to the LM destination LPAR among the information in the VMEM in the hypervisor # 2 to the information transferred from the migration processing unit # 1 (information related to the LM source LPAR). .
  • the migration processing unit # 1 pauses the LM source LPAR when the dirty ratio falls below a certain value. Specifically, the migration processing unit # 1 suspends the LM source LPAR by suspending the virtual resources (VCPU 119, VNIC 124, etc.) allocated to the LM source LPAR. As a result, it is possible to determine information related to the LM source LPAR in the information of the VMEM, and thus it is possible to prevent the dirty information from increasing.
  • a learning data collection process (see FIG. 10) is performed.
  • the processing includes that the migration processing unit # 1 transmits a learning data acquisition request to the VNIC connected to the LM source LPAR.
  • the migration processing unit # 1 can acquire the data (software MAC, VLAN ID) learned for the LM source LPAR. Specifically, as shown in S1007 of FIG. 10, information of one or more entries in the MAC address learning table 144 is copied to the buffer area of the migration processing unit # 1.
  • the migration processing unit # 1 receives device information that is information including information (information of one or more entries in the MAC address learning table 144) copied to the buffer area of the migration processing unit # 1. Forward to 2.
  • the migration processing unit # 2 receives the device information transferred from the migration processing unit # 1 in S1115, and reflects the received device information in the LM destination LPAR. Specifically, the migration processing unit # 2 has received each one or more entries corresponding to the ID of the VNIC of the LM destination LPAR in the MAC address learning table of the VSW connected to the VNIC of the LM destination LPAR. Stores information (MAC address, VLAN ID, and update time) other than the VNIC ID in the device information.
  • the migration processing unit # 1 performs final memory transfer after transferring the device information. For example, all the remaining dirty information about the LM source LPAR is transferred to the migration processing unit # 2.
  • the migration processing unit # 2 reflects the final memory. For example, the migration processing unit # 2 stores the received dirty information in the VMEM in the hypervisor # 2.
  • the migration processing unit # 1 issues a LPAR restart request specifying the LM LPAR to the migration processing unit # 2.
  • the migration processing unit # 2 receives the LPAR resumption request, and performs LPAR resumption processing for resuming the guest OS 131 stopped at the LM source in accordance with the request.
  • the migration processing unit # 1 performs deactivate processing of the LM source LPAR.
  • the migration processing unit # 2 finds an entry corresponding to the VNIC assigned to the LM destination LPAR from the MAC address learning table of the VSW connected to the LM destination LPAR, and the MAC address (and RARP packet including VLAN ID) is broadcasted.
  • the PSW # 1 having the MAC address table # 1 including the same MAC address (and VLAN ID) as the MAC address (and VLAN ID) in the RARP packet is
  • the ID “port B” of the physical port corresponding to the MAC address is changed to the ID “port D” of the physical port that has received the RARP packet this time.
  • broadcast transmission of the RARP packet is used to change the MAC address table 148 of the PSW 154.
  • the MAC address table 148 of the PSW 154 may be changed by a packet other than the RARP packet. .
  • the migration processing unit # 2 stores the configuration information of the LM destination LPAR.
  • the configuration information of the LPAR may be stored in a memory, but in this embodiment, it is stored in an SVP (Service Processor) that is a computer for maintenance or management of the physical computer 101.
  • the SVP may be common to a plurality of physical computers 101, or may be prepared for each physical computer 101.
  • the LPAR configuration information is stored in the SVP of the physical computer # 2.
  • the migration processing unit # 2 transmits a configuration information storage completion report to the migration processing unit # 1.
  • the migration processing unit # 1 receives the configuration information storage completion report, and sets the MAC address and / or WWN transmitted from the migration processing unit # 2 in S1105 as the MAC address and / or WWN of the LM source LPAR. To do.
  • the migration processing unit # 1 deletes the definition of the LM source LPAR (for example, information in the resource management unit # 1 regarding the LM source LPAR).
  • the migration processing unit # 1 transmits an LPAR definition cancellation report to the migration processing unit # 2.
  • the migration processing unit # 1 stores the configuration information of the LM source LPAR.
  • the LPAR configuration information is stored in the SVP of the physical computer # 1.
  • the migration processing unit # 1 transmits a configuration information storage completion report to the LM destination migration processing unit 172 after the configuration information storage is completed.
  • the migration processing unit # 1 transmits a configuration information storage completion report to the migration processing unit # 2, and then transmits an LM completion report to the management console 149.
  • the migration processing unit # 2 receives the configuration information storage completion report from the migration processing unit # 1, and transmits the LM completion report to the management console 149.
  • the management console 149 completes the LM after receiving the LM completion report from both the migration processing units # 1 and # 2.
  • the MAC address or VLAN ID is not manually input by the administrator.
  • the network connection of the live-magnified LPAR can be restored. Since the administrator does not need to manually input a MAC address or VLAN ID outside the jurisdiction of the hypervisor 103, the user of the LPAR or its upper machine and the administrator of the hypervisor 103 need to cooperate in order to input the information. There is no.
  • the hypervisor # 1 manages a plurality of MAC address management tables 144. Even in such a configuration, by collecting learning data from the VSW through the VNIC assigned to the LM target LPAR 128, it is possible to avoid transferring data related to the LPAR 128 that is not the LM target LPAR 128 to the LM destination. Can do.
  • a virtualization mechanism such as the hypervisor 103 may be realized as a computer program or may be realized as an object.
  • the hypervisor includes a storage device that stores a computer program, a communication interface device for communicating with an external device such as a physical computer, and a control device that is connected to the storage device and the communication interface device and includes a processor.
  • a function as a hypervisor may be realized by a computer program being executed by a processor in the control device. Further, for example, at least one of the scheduler 117, the resource management unit 118, and the migration processing unit 148 included in the hypervisor 103 may be realized by a hardware circuit, or at least one of the elements 117, 118, and 148. Some processing may be realized by a hardware circuit.
  • 101 Physical computer
  • 103 Hypervisor
  • 128 LPAR (virtual computer)
  • 137 VSW (virtual switch)
  • 140 MAC learning unit
  • 144 MAC learning table

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

ライブマイグレーションされた仮想計算機のネットワーク接続を復元する仮想計算機システム
 本発明は、仮想計算機のライブマイグレーションに関する。
 物理計算機が有するハイパーバイザのような仮想化機構により、物理計算機に1又は複数の仮想計算機が構築される。稼働中の仮想計算機を第1の物理計算機から第2の物理計算機にマイグレーションすることであるライブマイグレーション(以下、「LM」と言うことがある)の技術が知られている(例えば特許文献1)。
 以下、LM元の物理計算機を「第1の物理計算機」と言い、第1の物理計算機が有する仮想化機構を「第1の仮想化機構」と言い、LM先の物理計算機を「第2の物理計算機」と言い、仮想的なNIC(Network Interface Card)を「VNIC」と言い、第2の物理計算機が有する仮想化機構を「第2の仮想化機構」と言い、LM対象の仮想計算機(仮想マシン)を「対象VM」と言い、第1の仮想化機構が管理するVNICであってLM前に対象VMに割り当てられていたVNICを「第1のVNIC」と言い、第2の仮想化機構が管理するVNICであってLM後に対象VMに割り当てられるVNICを「第2のVNIC」と言うことがある。
特開2012-108816号公報
 対象VMの上位マシン(例えば、対象VMにアクセスする物理的又は仮想的な計算機、或いは、対象VM上で動作する仮想的な計算機)がいたとしても、LMでは、上位マシンに気づかれることなく、対象VMをマイグレーションする必要がある。このため、LM後に対象VMと外部環境との接続を復元する必要がある。
 外部環境のネットワーク接続情報として、例えば、PSW(物理的なネットワークスイッチ)が保持しているMACアドレステーブルがある。MACアドレステーブルは、宛先となるMACアドレスが割り当てられているマシンがPSWのどのポートに接続されているかを表す情報を有する。
 LMの後、MACアドレステーブルを更新する必要がある。この更新は、第2の仮想化機構が、RARP(Reverse Address Resolution Protocol)パケットを発行することで行われる。RARPは、MACアドレスを用いてIPアドレスを取得するためのプロトコルである。
 具体的には、第1及び第2の仮想化機構の間で、第1のVNICのMACアドレス#Xと第2のVNICのMACアドレス#Yが交換される。第2の仮想化機構は、第2の仮想化機構が有することになったMACアドレス#Xを指定したRARPパケットをブロードキャストする。ネットワーク上のRARPサーバが、そのRARPパケットを受信し、そのRARPパケットに応答して、MACアドレス#Xに対応するIPアドレス#Kを第2の仮想化機構に返す。これにより、第2の物理計算機がIPアドレス#Kを使用した通信をすることができるようになる。RARPパケットは、PSWで中継されるが、PSWは、MACアドレステーブルにおけるMACアドレス#Xに対応したポートの識別情報を、そのRARPパケットを受信したポートの識別情報に更新する。これにより、MACアドレス#Xとポートとの対応関係が更新され、LM後の対象VMについて、ネットワークの接続が復元することになる。
 しかし、LM前において、第1の仮想化機構の管轄の外で、第1のVNICのMACアドレスとは異なるMACアドレスが、対象VMによる通信において使用されることがある。
 その一例として、Teamingと呼ばれる技術が適用されている環境がある。Teamingとは、計算機に割り当てられた1以上のNICの複数のポートを束ねて1つのポートとして運用し負荷分散、帯域向上及び耐障害性の向上を図るための技術である。この技術がVNICに適用された場合、1以上のVNICに係る複数のポート(チーム設定された複数のポート)は一体として運用され、下記のうちの少なくとも1つが行われる。
(*)複数のポートのうちの第1のポートに障害が発生した場合に、第1のポートが論理的に切り離され、複数のポートのうちの第2のポートを使用して通信が続行される。
(*)複数のポートを介して複数の通信相手と通信する際に分担して送受信が行われることで、帯域幅が増加され、又は、負荷が分散される。
 Teamingで使用されるMACアドレスは、VNICに割り当てられているMACアドレスと異なるMACアドレスであることがある。仮想計算機のOS(ゲストOS)が使用するMACアドレスの変更は、仮想化機構とは独立して実施される。
 そして、PSWが有するMACアドレステーブルには、ゲストOSが使用するMACアドレスが登録される。具体的には、例えば、PSWは、外部から来たパケットを受信した場合、受信したパケットに含まれているMACアドレスがMACアドレステーブルに無ければ、そのMACアドレスと、そのパケットを受信したポート(PSWのポート)のIDとをMACアドレステーブルに登録するようになっている。
 そのため、LM後に第2の仮想化機構が送信するRARPパケットにおいて、正しいMACアドレス(具体的には、PSWのMACアドレステーブルに登録されているMACアドレスと同じMACアドレス)を指定することができないケースがあり得る。この場合、対象VMのネットワーク接続を復元することはできない。
 上記のことは、MACアドレスに限らず、第1の仮想化機構が管理する情報とは異なる情報が、対象VMによる通信において使用される他のケースについてもあり得る。例えば、対象VMがtag VLAN(Virtual LAN)を使用するケースである(LANは、Local Area Networkの略称)。tag VLANを経由する通信では、VLAN tag(VLAN ID等を含んだ情報)が使用されるが、仮想化機構は、対象VMが使用するVLAN tagを知らない。このようなケースでは、ゲストOSのMACアドレスがVNICのMACアドレスと同じであったとしても、上記のように、LM後に対象VMのネットワーク接続を復元することができないという問題が生じ得る。
 このようなことを回避する1つの方法として、対象VMが使用するMACアドレス或いはVLAN tagのような情報を仮想化機構に管理者が管理コンソールを通じて手動で入力する方法が考えられる。しかし、誤った情報が入力される或いは情報の入力漏れが生じるおそれがある。この場合、LM後に対象VMのネットワーク接続を復元することはできない。
 また、仮想計算機或いはその上位マシンがどのように運用されているかを仮想化機構の管理者が管理することは困難であるケースがある。そのようなケースの一例として、クラウド環境でPaaS(Platform as a Service)を提供するケースである。通常、仮想化機構の管理者は、仮想計算機或いはその上位マシンがどのように運用されているかを把握していない。このため、仮想計算機が使用する情報を管理者が手動で入力する場合、仮想マシン或いはその上位マシンの使用者と仮想化機構の管理者の連携が必要になる。
 第1の仮想化機構は、第1の管理情報ユニットを有し、第2の仮想化機構が、第2の管理情報ユニットを有する。第1の仮想化機構が、仮想計算機からパケットを受信した場合、パケットから、所定種類の情報を抽出し、抽出した所定種類の情報を第1の管理情報ユニットに登録する。第1の仮想化機構は、LMのときに、第1の管理情報ユニット中の所定種類の情報を、第2の仮想化機構に送信する。第2の仮想化機構は、その所定種類の情報を第2の管理情報ユニットに登録し、LMされた仮想計算機のネットワーク接続を復元するべく、所定種類の情報を含んだ所定種類のパケットを、第2の物理計算機の1以上の物理I/Oデバイスの少なくとも1つから送信する。
 仮想化機構の管轄外の情報を使用した通信が行われる環境であっても、仮想化機構の管理者によって当該管轄外情報が手動で入力されること無しに、ライブマグレーションされた仮想計算機のネットワーク接続を復元することができる。仮想化機構の管理者が手動で管轄外情報を入力する必要が無いので、当該情報入力のために仮想計算機或いはその上位マシンの使用者と仮想化機構の管理者が連携する必要も無い。
図1は、実施形態に係る仮想計算機システムとその外部環境の一例を示す。 図2は、VNIC#11の管理テーブル#11とVNIC#12の管理テーブル#12の例を示す。 図3は、tag VLANを使用していないLPAR128から送信されるパケットの構成例を示す。 図4は、tag VLANを使用しているLPAR128から送信されるパケットの構成例を示す。 図5は、LM対象のLPAR128がtag VLANを使用していないLPAR128である場合に送信されるRARPパケットの構成例を示す 図6は、ハイパーバイザ103内のVSW137が行う処理の流れを示す。 図7は、MACアドレス学習テーブル144の構成例を示す。 図8は、メモリ111のうちハイパーバイザ103に関する情報が占める領域を示す。 図9は、図6のS603(MACアドレス学習処理)の流れを示す。 図10は、学習データ収集処理の流れを示す。 図11は、LM処理の流れを示す。 図12は、LM元のハイパーバイザ#1におけるVSW#11のLM前後のMACアドレス学習テーブル#11の一例を示す。 図13は、LM先のハイパーバイザ#2におけるVSW#21のLM前後のMACアドレス学習テーブル#21の一例を示す。 図14は、PSW#1におけるLM前のMACアドレステーブル#1の一例を示す。 図15は、PSW#1におけるLM前のMACアドレステーブル#1の一例を示す。
 以下、図面を参照して、一実施形態を説明する。
 その際、同種の複数の要素を区別しないで説明する際には、その要素の参照符号を使用し、同種の要素を区別して説明する際には、その要素の参照符号に代えてその要素に付した通し番号を使用する。例えば、複数の物理計算機を区別しないで説明する際には、「物理計算機101」と記載し、複数の物理計算機を区別して説明する際には、「物理計算機#1」、「物理計算機#2」と記載する。
 また、以下の説明では、aaa情報の一例として、aaaテーブルという名称で説明するが、情報はテーブルの形式に限らず他種の形式でも良い。
 図1は、実施形態に係る仮想計算機システムとその外部環境の一例を示す。
 仮想計算機システムは、複数の物理計算機101を含む。仮想計算機システムの外部環境は、例えば、複数のPSW154と、管理コンソール149とを含む。
 物理計算機101は、物理層(物理リソース)102を有する。物理層102は、1以上のCPU104、1以上のメモリ111、及び1以上の物理I/O(Input/Output)デバイスを含む。物理I/Oデバイスは、例えば、通信ネットワークを介した通信のためのインタフェースデバイスであり、物理I/Oデバイスが通信ネットワークに接続されていてよい。1以上の物理I/Oデバイスは、例えば、3つの物理的なNIC112と、2つのFC(Fibre Channel)-HBA(Host Bus Adaptor)115である。図示の例では、物理計算機#1に関して、NIC#11の第1のポートに、PSW#1のポート#Aが接続されており、NIC#12の第1のポートに、PSW#3のポート#Bが接続されており、NIC#13の第1のポートに、PSW#4のポート#Bが接続されている。物理計算機#2に関して、NIC#21の第1のポートにPSW#1のポート#Dが接続されており、NIC#22の第1のポートにPSW#3のポート#Dが接続されている。
 物理計算機101において、物理層102の少なくとも1つのCPU104においてコンピュータプログラム(例えばファームウェア)が実行されることで、ハイパパイザ103が実現される。ハイパーバイザ103は、物理層102(CPU104、メモリ111、I/Oデバイス(NIC112及びFC-HBA115)を論理的に分割し、且つ、論理的に分割することにより得られた複数の仮想リソースをそれぞれ複数のLPAR(Logical Partition)に割り当てることにより、1台の物理計算機101上に複数の仮想計算機を動作させることを可能とする機構である。仮想リソースの数はLPARの数と同じであり、仮想リソースはLPARに1対1で割り当てられる。仮想リソースがLPARに割り当てられることで仮想計算機が実現されるので、以下、本実施形態では、仮想計算機を「LPAR」と呼ぶ。1つのLPAR128に割り当てられる1つの仮想リソースは、例えば、1以上のCPU104に基づく1以上のVCPU(仮想CPU)119、1以上のメモリ111に基づく1以上のVMEM(仮想メモリ)123、及び、1以上のI/Oデバイスに基づく1以上の仮想I/Oデバイスを含む。1以上の仮想I/Oデバイスは、例えば、1以上のNIC112に基づく1以上のVNIC124、及び/又は、1以上のFC-HBA115に基づく1以上のVHBA(仮想HBA)126である。
 LPAR128では、OS(ゲストOS)131が実行される。ゲストOS131は、パケットを送信する際、パケットに、所定種類の情報を含めるようになっている。所定種類の情報は、例えば、ゲストOIS131が使用するMACアドレス、及び/又は、VLAN tagを含む。VLAN tagは、ゲストOS131の通信においてtag VLANが使用される場合に、ゲストOS131が送信するパケットに含まれる。ゲストOS131が送信するパケットは、そのゲストOS131を実行するLPAR128に割り当てられているVNIC124又はVHBA126から送信される。そして、パケットに含まれるMACアドレスは、ゲストOS131が独自に使用するMACアドレス(以下、「ソフトウェアMAC」と言うことがある)であって、VNICのMACアドレスとは異なるMACアドレスであることがある。
 LPAR128から送信されたパケットは、複数のPSW154のうちの少なくとも1つが受信する。PSW154は、物理的なネットワークスイッチである。PSW154は、複数のポート(物理ポート)と、MACアドレステーブル158(正確には、MACアドレステーブル158を記憶するメモリのような記憶デバイス)と、図示しないプロセッサとを有している。MACアドレステーブル158は、そのテーブル158を有するPSW154の物理ポートのIDとMACアドレスとの対応関係を表すアドレス管理情報の一例である。ここで言う「対応関係」は、どの物理ポートにどのゲストOSが接続されているかを表す。そのため、MACアドレステーブル158に登録される物理ポートIDは、パケットの転送先物理ポートのIDと言うこともできる。MACアドレステーブル158は、例えば、図14に示すように、MACアドレスと、VLAN tagの少なくとも一部分の一例であるVLAN IDと、物理ポートのIDとの組を有する(図14は、PSW#1のMACアドレステーブル#1の一例である。
 PSW#1(PSW#1のプロセッサ)は、パケットを受信した場合、対象MACアドレス(受信したパケットに含まれているMACアドレス)がMACアドレステーブル#1に無ければ、対象MACアドレスと対象VLAN ID(パケットに含まれているVLAN tag中のVLAN ID)と、対象物理ポート(パケットを受信した物理ポート)のIDとの組をMACアドレステーブル#1に登録するようになっている。対象VLAN IDが無い場合には、MACアドレステーブル#1には、VLAN IDとして、指定無しを意味する値が登録される。また、PSW#1(PSW#1のプロセッサ)は、対象MACアドレスがMACアドレステーブル#1に有るが、対象MACアドレスに対応している物理ポートIDが対象物理ポートIDと異なっていれば、MACアドレステーブル#1における、対象MACアドレスに対応した物理ポートIDを、対象物理ポートIDに更新するようになっている。また、PSW#1(PSW#1のプロセッサ)は、パケットを受信した場合、対象MACアドレスがMACアドレステーブル#1に有り、且つ、対象MACアドレスに対応しているVLAN IDが、対象VLAN IDと異なっていれば、新たなエントリを追加し、そのエントリに、対象MACアドレスと対象VLAN IDを登録する。PSW#1のこのような機能により、MACアドレステーブル#1には、ゲストOSが使用するMACアドレス(及びVLAN tag)が登録されるようになっており、故に、そのMACアドレスが、ソフトウェアMACであれば、LPAR128のVNIC124のMACアドレスではなく、ソフトウェアMACが登録される。なお、PSW#1のこのような機能と同じ機能を、他のPSW128も有している。
 ハイパーバイザ103は、スケジューラ117、リソース管理部118、マイグレーション処理部148、複数のVSW(仮想スイッチ)137、及び、前述した1以上の仮想リソースを有する。
 スケジューラ117は、物理層102の論理分割を行い、リソース管理部118は、物理層102としての物理リソース等のリソースを管理する。スケジューラ117及びリソース管理部118により、物理層102(物理リソース)を論理的に分割することにより得られた複数の仮想リソース(例えば、VCPU119、VMEM123、VNIC124及びVHBA126)をそれぞれ複数のLPAR128に割り当てることができる。
 VNIC124は、ハイパーバイザ103が割り当てた仮想MACアドレスを持つ。また、VNIC124は、仮想MACアドレスの他に、VNIC124に関する情報を含んだ管理テーブル152を有する。管理テーブル152は、VNIC124毎に設けられる。以下、管理テーブル152について、LPAR#11に割り当てられたVNIC#11及び#12のそれぞれの管理テーブルを例に取る。
 図2は、VNIC#11の管理テーブル#11とVNIC#12の管理テーブル#12の一例を示す。
 管理テーブル#11は、VNIC#11の仮想MACアドレスと、LPAR#11のゲストOS#11が使用し得る1以上のMACアドレスである1以上のOS登録MACアドレス(すなわち、VNIC#11を経由するパケットに含まれるMACアドレスとして使用され得る1以上のMACアドレス)とを含む。OS登録MACアドレスは、VNIC#11の仮想MACアドレスと同じ値である場合もある。
 ゲストOS#11が送信するパケットに含まれるMACアドレスが、管理テーブル#11に登録される。ハイパーバイザ103は、管理テーブル#11を参照することで、ゲストOS#11によって登録されたMACアドレスを知ることができる。
 例えばVNIC#11及び#12についてteamingの設定がされた場合、図2に示す管理テーブル#11及び#12の通り、VNIC#11とVNIC#12とでは仮想MACアドレスが異なるが、使用されるOS登録MACアドレスは、図2に示す通り同じになることがある(例えばMACアドレス00:00:87:00:00:01)。teaming時には、このOS登録MACアドレスを使用すれば良いようにも思えるが、teamingの場合には、ゲストOSがハイパーバイザ103にどのMACアドレスを使用してくるか分からないため、登録MACアドレスを使用することができない(図2に示すように、両方とも共通のMACアドレスが複数登録されている場合がある)。
 再び図1を参照する。LPAR128では、前述したように、ゲストOS131が動作する。LPAR#13のゲストOS#13のようにVLAN tagを使用しないゲストOS131からは、図3に示すような、VLAN tagを含まないパケットが送信される。LPAR#11のゲストOS#11或いはLPAR#12のゲストOS#12のようにtag VLANを使用するゲストOS131からは、図4に示すような、VLAN tagを含むパケットが送信される。図3及び図4に示すいずれの種類のパケットにも、宛先MACアドレスと送信元MACアドレスとが含まれる。宛先MACアドレスは、送信元のLPAR128のゲストOS131が送信先として指定するMACアドレスであり、送信元MACアドレスは、送信元のLPAR128のゲストOS131が送信元として指定するMACアドレスである。例えば、tag VLANを使用しないゲストOSから送信されるパケット(以下、VLAN未使用パケット)は、第1のフィールド(例えば最初の6バイトのフィールド)に宛先MACアドレスを有し、第2のフィールド(例えば次の6バイトのフィールド)に送信元MACアドレスを有し、第3のフィールド(例えば次の2バイトのフィールド)にパケットのタイプを示す情報(例えばプロトコルを識別するための番号)を有し、第4のフィールド(例えば次の46~1500バイトのフィールド)に、データを有し、第5のフィールド(例えば最後の4バイトのフィールド)に、エラー検出のためのコードを有する。一方、tag VLANを使用するゲストOSから送信されるパケット(以下、VLAN使用パケット)は、VLAN未使用パケットとほぼ同じであり、相違点は、VLAN使用パケットには、第2のフィールドと第3のフィールドとの間に第6のフィールド(例えば4バイト)がある点である。第6のフィールドには、VLAN tagがある。具体的には、例えば、第6のフィールドの前半部分(例えば2バイト)には、TPID(Tag Protocol Identifier)があり、第6のフィールドの後半部分(例えば2バイト)には、TCI(Tag Control Information)がある。TPIDの値は、tag VLAN使用時には「0x8100」となる。TCIは、VLAN IDやパケットの優先順位等の情報を含む情報である。TPIDとTCIとを含んだ情報を、VLAN tagと呼ぶ。
 前述したように、例えば、LPAR#11及び#12のようにtag VLANを使用するLPAR128からは、VLAN ID等の情報を含んだVLAN tagを含むパケットが送信される。また、例えば、LPAR#13のように、ネットワークを冗長化するTeamingを行うLPAR128からは、ゲストOSがVNIC152の仮想MACアドレスと異なるMACアドレスを含むパケットが送信されることがある。
 ハイパーバイザ#1により、稼働中のLPAR128が物理計算機#1から物理計算機#2にLMされることがある。例えば、LPAR#13がLMされると、LPAR#13が物理計算機#2にマイグレーションされ、物理計算機#2内のハイパーバイザ#2が、RARP(Reverse Address Resolution Protocol)を送信すれば、PSW#3のMACアドレステーブル#3とPSW#4のMACアドレステーブル#4が更新され、LPAR#13のネットワーク接続を復元(実質的に引き継ぐ)ことができる。
 本実施形態では、LMされるLPAR128がVNICの仮想MACアドレスと異なるソフトウェアMACを含んだパケットを送信するようになっていても(或いは、VLAN tagを含んだパケットを送信するようになっていても)、そのようなLPAR128がLMされた後にネットワーク接続を復元できるよう(言い換えれば、LMに伴いネットワーク接続の引き継ぎができるよう)、少なくともLM元の物理計算機#1内のハイパーバイザ#1が、LPAR128からのパケットから所定種類の情報を抽出し保持するという学習機能を有する。所定種類の情報は、例えば、MACアドレス(送信元MACアドレス)とVLAN tagの少なくとも一部分(例えばVLAN ID)とのうちの少なくとも一方(典型的には両方)である。上記学習機能は、MAC学習部140である。MAC学習部140は、MACアドレス(送信元MACアドレス)とVLAN  IDとを抽出し管理するMACアドレス学習を行うようになっている。
 ハイパーバイザ103は、自身が構築する仮想的なネットワークセグメント毎にVSW(仮想的なスイッチ)137を有する。VSW137は、物理的なNIC112のポートに対応している。
 各VSW137は、複数の仮想ポートと、MAC学習部140と、MACアドレス学習テーブル144とを有する。各VSW#137の複数の仮想ポートは、LPAR128に割り当てられたVNIC124に接続される仮想ポートと、物理計算機101が有する物理的なNIC112に割り当てられる仮想ポートとを含む。MAC学習部140は、MACアドレス学習を行う。例えば、VSW#11のMAC学習部#11は、VSW#11に接続されているVNICが割り当てられているLPAR#11(ゲストOS#11)からVSW#11がパケットを受信した場合、そのパケットからMACアドレス(送信元MACアドレス)とVLAN IDとを抽出し、抽出した情報(例えばMACアドレス及びVLAN ID)をMACアドレス学習テーブル#11に登録する。これにより、MACアドレス学習テーブル140に登録される情報(MACアドレス及びVLAN ID)は、そのMACアドレス学習テーブル140を有するVSW137が受信したパケットに依存する。
 図1に例示した構成によれば、LPAR128に割り当てられたVNIC124に少なくとも1つのVSW137が接続されており、VSW137に少なくとも1つの物理的なNIC112が接続されており、物理的なNIC112に少なくとも1つのPSW154が接続されており、PSW154に、そのPSW154に物理的なNIC112を通じて接続されているVSW(仮想ネットワークセグメント)137に対応したネットワークセグメントが接続されている。ネットワークセグメントは、例えば、LANのサブネット、或いは、VLAN(tag VLAN)で良い。例えば、ゲストOS#13から送信されたパケットは、LPAR#13に割り当てられているVNIC124、そのVNIC124に接続されているVSW#13、及び、VSW#13に接続されているNIC#2を通じて、NIC#2に接続されているPSW#3で受信される。PSW#3は、その受信したパケット内の宛先MACアドレスに対応した物理ポートIDをMACアドレステーブル#3から特定し、特定した物理ポート#A又は#Dから、その受信したパケットを出力する。これにより、パケットは、PSW#3に接続されているネットワークセグメント#3を通じて外部の装置へ送られる、或いは、物理計算機#2内のLPAR128へと送られる。
 VSW137は、ネットワークセグメントに対応しているので、複数の物理計算機101に、同一のネットワークセグメントに対応した複数のVSW137が存在することになる。例えば、物理計算機#1及び#2に、同一のネットワークセグメント#1に対応したVSW#11とVSW#21が存在することになる。
 管理コンソール149は、例えば、パーソナルコンピュータのような計算機でも良い。管理コンソール149は、例えば、複数のPSW154のうちの少なくとも1つ(例えばPSW#1)に接続されている。管理コンソール149から、PSW#1を通じて、LM開始要求がLM元の物理計算機#1とLM先の物理計算機#2の両方に指示が出されることにより開始される。LM開始要求は、例えば、物理計算機#1(又は#2)だけに送られて、その物理計算機#1(又は#2)から相手の物理計算機#2(又は#1)にLM開始要求が送られても良い。マイグレーション処理部#1が、NIC#1を通じてマイグレーション処理部#2にLM対象のLPAR#128のデータを転送することにより、LPAR128のLMが実現される。LM開始要求では、LM対象のLPAR128(例えばLPAR#13)が及びマイグレーションの方式が指定される。指定されたLPAR128が稼働中であり、かつ指定された方式がLMであれば、LMが実行される。指定された方式がLMであるにも関わらす、指定されたLPAR128が稼働中でなければ、LMは失敗となる。本実施形態に係るマイグレーション処理部148は、LMの他に、他種のマイグレーション、例えば、マイグレーション対象のLPAR128のゲストOS131をシャットダウンした状態でそのマイグレーション対象のLPAR128をマイグレーションするシャットダウンマイグレーションを行うことができる。シャットダウンマイグレーションを行う際には、マイグレーション方式としてシャットダウンマイグレーションが指定される必要がある。
 LPAR128が物理計算機#2にLMされた場合、LM先の物理計算機#2のマイグレーション処理部#2が、RARPパケットを送信する。
 図5は、LM対象のLPAR128がtag VLANを使用していないLPAR128である場合に送信されるRARPパケットの構成例を示す。
 図5からわかるように、パケットの構成は、図3に示したパケットの構成と同じである。第3のフィールド(タイプが書き込まれるフィールド)に、RARPを意味する値(例えば0x8035)が書き込まれ、第4のフィールド(データを有するフィールド)に、RARPに関するデータ(RARPパケット構成に従う値)が書き込まれる。
 図6は、ハイパーバイザ103内のVSW137が行う処理の流れを示す。
 図6の処理は、物理計算機101が起動しハイパーバイザ103によりVSW137が構築された後、全てのVSW137で実施される共通の処理である。具体的には、図6の処理は、VSW137を有する物理計算機101がLPAR128のLM元であるかLM先であるかに関係なく実施される。図6の処理は、全てのVSW137に適用されるが、以下、本実施形態のLM対象がLPAR#13であるため、VSW#13を例に取り、図6に示す処理を説明する。
 (S601)物理計算機#1に電源が入り、ハイパーバイザ#1が動き始め、VSW#13が構築され、VSW#13の処理が開始する。
 (S602)VSW#13は、ゲストOS#13が送信したパケットを受信するまで、又は、学習データ取得要求を受けるまで、待機する。
 (S603)ゲストOS#13が送信したパケットを受信した場合には、MAC学習部#13がMACアドレス学習処理を行う(MACアドレス学習処理の詳細については後の図9を参照)。
 (S604)VSW#13は、MACアドレス学習処理を行った後、受信したパケットを送信する。そのパケットは、VSW#13に接続されているNIC#12を通じて物理計算機#1から出力される。
 (S605)VSW#13は、学習データ取得要求を受信した場合には、学習データ取得処理を行う(学習データ取得処理を含む学習データ収集処理の詳細については、後の図10を参照)。
 (S606)VSW#13は、学習データを取得し、取得した学習データを、学習データ取得要求の送信元(VNIC)に送信する。
 以上のように、ハイパーバイザ103が動作し、VSW137が存在しているときには、常に、各VSW137で、図6のS602~S604の処理が繰り返される。S605とS606は、LM処理が行われた場合に行われる。
 図7は、MACアドレス学習テーブル144の構成例を示す。
 MACアドレス学習テーブル144は、前述したように、VSW137毎に存在し、1以上のエントリを有する。1つのエントリは、例えば、このMACアドレス学習テーブル144を有するVSW137が受信したパケットから抽出された送信元MACアドレスと、そのパケットから抽出されたVLAN IDと、そのパケットの送信元のVNICのIDと、このエントリが更新された時刻である更新時刻とを有する。すなわち、各エントリは、VNICを特定するのに、VNICの仮想MACアドレスではなく、VNICのIDを使用する。VNICについて、VNICの仮想MACアドレスが登録されても良い。
 LMされたLPAR128のネットワーク接続をLM先の物理計算機#2において復元するために、ハイパーバイザ#2(マイグレーション処理部#2)がRARPパケットを出す。図5を参照して説明したが、RARPパケットには、送信元MACアドレスとVLAN ID(tag VLANが使用されていれば)が必要となる。LM元のハイパーバイザ#1におけるMACアドレス学習テーブル144から、LMされたLPARに関する全エントリの情報をLM先のハイパーバイザ#2にマイグレーションする。これにより、ゲストOS#13がハイパーバイザ#1が管理している仮想MACアドレスと異なるMACアドレスを含んだパケットを送信していた場合(及び、tag VLANが使用されていた場合)であっても、LM元から持ってきたエントリ(MACアドレス学習テーブルのエントリ)に、ネットワーク接続の復元に必要な情報であってRARPパケットに含められる情報が格納されている。このため、そのような情報を含んだRARPパケットをLM先のハイパーバイザ#2(マイグレーション処理部#2)が出すことで、LMされたLPARのネットワーク接続を復元することができるようになる。
 MACアドレス学習テーブル144は、ハイパーバイザ103によるVSW137の初期化処理で生成され、VSW137が存在する間、常に存在する。ゲストOS134が、生成されたどのVSW(仮想ネットワークセグメント)を使うかは、ユーザによって指定される。MACアドレス学習テーブル144の更新は、ゲストOS134が使用するパケット中の情報が更新された場合に行われる。
 図8は、メモリ111のうちハイパーバイザ103に関する情報が占める領域を示す。
 図8に示すように、MACアドレス学習テーブル144と、そのテーブル144を論理的に保持するVSW137(正確にはVSW137としての機能を発生させるためにCPU104によって実行されるプログラムモジュール)とがメモリ111に配置される。これにより、ゲストOS134が大量のパケットを生成し送信しても、MACアドレス学習処理を長い時間をかけずに行うことができる。管理コンソール149のような、物理計算機#1の外部の装置がMACアドレス学習テーブル144を持っても良いかもしれないが、そうすると、通信ネットワークによりデータを転送する必要がでるため、ゲストOS134により大量にパケットが生成され送信された場合に、データの解析及び更新に長い時間を要してしまうことになる。
 図9は、図6のS603(MACアドレス学習処理)の流れを示す。
 MACアドレス学習処理は、LMとは無関係に、VSW137が存在している間、そのVSW#137のMAC学習部140で行われる処理である。ここでも、図6と同様に、VSW#13を例に取り、図9に示す処理を説明する。
 (S901)MAC学習部#13は、ゲストOS#13が送信したパケットを受信する。
 (S902)MAC学習部#13は、受信したパケットの解析を行い、ゲストOS#13がtag VLANを使用しているか否かに基づき、パケットから情報を取得する。具体的には、tag VLANが使用されている場合、取得される情報は、送信元MACアドレスとVLAN IDである。tag VLANが使用されていない場合、取得される情報は、送信元MACアドレスである。tag VLANを使用しているか否かは、例えば、パケットにおける第2のフィールド(送信元MACアドレス)の次の2バイトが、TPID「0x8100」であるか否かで判定することができる。
 (S903)MAC学習部#13は、取得した送信元MACアドレス(及びVLAN ID)と同じMACアドレス(及びVLAN ID)を含んだエントリ(図9の説明において、以下、一致エントリ)がMACアドレス学習テーブル#13にあるか否かを判定する。
 (S904)S903の判定の結果が肯定的の場合(S903:Yes)、MAC学習部#13は、一致エントリ内に、S901で受信したパケットの送信元のVNICのIDと同じVNIC IDが登録されているか否かを判定する。
 (S905)S904の判定の結果が否定的の場合(S904:No)、MAC学習部#13は、一致エントリのVNIC IDを、S901で受信したパケットの送信元のVNIC IDに変更する。これにより、例えばteaming時に異なるVNICで同じMACアドレスが使用されていた場合でも、どのVNICが使用されているかを知ることができる。
 (S906)S904の判定の結果が肯定的の場合(S904:No)、又は、S905の後、MAC学習部#13は、一致エントリにおける更新時刻を、一致エントリを更新した時刻に変更する。
 (S907)S903の判定の結果が否定的の場合(S903:No)、MAC学習部#13は、MACアドレス学習テーブル#13に空きエントリがあるか否かを判定する。
 (S908)S907の判定の結果が否定的の場合(S907:No)、MAC学習部#13は、MACアドレス学習テーブル#13から、最も更新時刻の古いエントリを削除することにより、空きエントリを生成する。
 (S909)S907の判定の結果が肯定的の場合(S907:No)、又は、S908の後、MAC学習部#13は、空きエントリに、S902で取得した情報(学習した情報)と、S901で受信したパケットの送信元のVNIC IDと、空きエントリに情報を格納する時刻である更新時刻とを、格納する。
 図10は、学習データ収集処理の流れを示す。
 学習データ収集処理を説明する際の前提として、図7で示したように、MACアドレス学習テーブル144は、複数のエントリを有し、各エントリは、VNIC IDを含んでいる。VNIC IDは、名前の通り、VNICを識別するための情報であり、VNICと1:1で対応する。
 LMされたLPAR128のネットワーク接続を復元するためには、LM対象のLPARに割り当てられたVNICに対応するVNIC IDを持つエントリの情報を取得し、LM先のハイパーバイザ#2が、当該エントリのMACアドレスとVLAN IDを利用してRARPパケットを送信する必要がある。LPARに割り当てられたVNICのエントリをMACアドレス学習テーブルから検索する際には、VNIC IDをキーとして検索する。LPARに複数のVNICが割り当てられていれば、複数のエントリの情報を取得する必要がある。また、LM対象のLPAR128がtag VLANを使用するLPARであることもあるので、その際には、1つのVNICについて複数のエントリの情報を取得する必要がある。以下、図6及ぶ図9と同様、LM対象のLPAR128がLPAR#13であり物理計算機#1から物理計算機#2にLMされることを例に取り、図10に示す学習データ収集処理を説明する。
 (S1001)マイグレーション処理部#1は、LPAR#13に割り当てられている1以上のVNIC137のうちの1つのVNIC137(例えば#11)に、学習データ取得要求を出す。
 (S1002)VNIC#11は、S1001の学習データ取得要求を受信し、VNIC#11に接続されているVSW#13に対して、学習データ取得要求を送信する。
 (S1003)VSW#13が、データ収集要求を受信する。
 (S1004)VSW#13が、VNIC#11のVNIC IDを特定する。
 (S1005)VSW#13が、MACアドレス学習テーブル#13内に、S1004で特定したVNIC IDと同一のVNIC IDを持つエントリ(図10の説明において、以下、一致エントリ)の検索を行う。
 (S1006)VSW#13が、検索したエントリが一致エントリであるかどうかの判定を行う。
 (S1007)S1006の判定の結果が肯定的の場合(S1006:Yes)、VSW#13が、一致エントリの情報を、マイグレーション処理部#1のバッファ領域(例えばメモリ11における所定領域)にコピーする。これにより、マイグレーション処理部#1がLM先にLPAR#13に関するデータを転送できるようにする。
 (S1008)S1006の判定の結果が否定的の場合(S1006:No)、或いは、S1007の後、VSW#13が、検索するエントリが最終エントリであるか否かを判定する。この判定の結果が否定的の場合(S1008:No)、別の未検索のエントリについて、S1005が行われる。
 (S1009)S1008の判定の結果が肯定的の場合(S1008:Yes)、VSW#13が、S1003で受信した要求の送信元のVNIC#11に対して、データ取得の完了を通知する。
 (S1010)データ取得の完了の通知を受けたVNIC#11は、S1001の要求の送信元のマイグレーション処理部#1に対して、データ取得の完了を通知する。
 (S1011)VNIC#11からデータ取得の完了の通知を受けたマイグレーション処理部#1は、LM対象のLPAR#13に割り当てられている1以上のVNIC137の全てについて、データの取得が完了したか否かを判定する。
 (S1012)S1011の判定の結果が否定的の場合(S1011:No)、マイグレーション処理部#1は、LPAR#13に割り当てられている1以上のVNIC137のうち別のVNIC(例えば#12)に対して、S1001のように学習データ取得要求を送信する。
 (S1013)S1011の判定の結果が肯定的の場合(S1011:Yes)、マイグレーション処理部#1は、学習データ収集処理を終了する。
 図11は、LM処理の流れを示す。なお、これまで、LPAR128が物理計算機#1から物理計算機#2にLMされると説明したが、正確には、物理計算機#1におけるLM元のLPARに関するデータが物理計算機#1から物理計算機#2に転送され、物理計算機#2におけるLM先のLPARに関するデータが、物理計算機#1におけるLM元のLPARに関するデータに変更されることである。そこで、以下の説明では、「LM元LPAR」及び「LM先LPAR」という言葉が使用される。このLM処理では、LM元LPARからLM先LPARにLPAR#3がマイグレーションされるというイメージである。
 (S1101)管理コンソール149が、LM元の物理計算機#1におけるマイグレーション処理部#1に対してLM開始要求を出す。
 (S1102)管理コンソール149が、LM先の物理計算機#1におけるマイグレーション処理部#2に対してLM開始要求を出す。
 (S1103)マイグレーション処理部#1は、LM元の物理計算機#1に関する構成情報を収集する。構成情報は、例えば、どのNIC112のポートにどのVSW137を通じてどのVNIC124が接続されているか、VNIC毎の仮想MACアドレス、及び、VHBA毎のWWN(World Wide Name)を含んでよい。
 (S1104)マイグレーション処理部#2はLM先の物理計算機#2に関する構成情報を収集する。
 (S1105)マイグレーション処理部#2は、S1104で取得した構成情報のうちの、LM先LPARのMACアドレス及び/又はWWNを、マイグレーション処理部#1に転送する。
 (S1106)マイグレーション処理部#1は、S1103で取得した構成情報のうちの、LM元LPARのMACアドレス及び/又はWWNを、マイグレーショ処理部#2に転送する。
 (S1107)マイグレーション処理部#2は、S1106でマイグレーション処理部#1から送信されたMACアドレス及び/又はWWNを受信し、それらが、LM先LPARのMACアドレス及び/又はWWNを、受信したMACアドレス及び/又はWWNに変更する。
 (S1108)マイグレーション処理部#1は、マイグレーション処理部#2に対して、リソース確保要求を出す。
 (S1109)マイグレーション処理部#2は、マイグレーション処理部#1からリソース確保要求を受信し、LM先LPARのリソース確保処理を行う。
 (S1110)リソースを確保したマイグレーション処理部#2は、マイグレーション処理部#1からVMEM123に記憶されている情報が転送されて来るのを待つ。
 (S1111)マイグレーション処理部#1は、VMEM123から、LM元LPARに関する情報を取得し、取得した情報をマイグレーション処理部#2に転送する。マイグレーション処理部#1は、VMEM123に記憶されている、LM元LPARに関する情報のうち、ダーティ比率が一定値以下になるまで、LM元LPARに関する情報の転送を続ける。なお、ダーティ比率とは、LM元LPARに関する情報の量に対する、LM元LPARに関する情報のうちのダーティ情報の量の比率である。ダーティ情報は、本LM処理において転送された後に更新され転送が必要になった情報である。
 (S1112)マイグレーション処理部#2は、ハイパーバイザ#2におけるVMEMにおける情報のうち、LM先LPARに関する情報を、マイグレーション処理部#1より転送されて来た情報(LM元LPARに関する情報)に変更する。
 (S1113)マイグレーション処理部#1は、ダーティ比率が一定値以下になった場合に、LM元LPARを休止する。具体的には、マイグレーション処理部#1は、LM元LPARに割り当てられていた仮想リソース(VCPU119、VNIC124等))を休止させることにより、LM元LPARを休止させる。これにより、VMEMの情報のうちの、LM元LPARに関する情報を確定することができ、以って、ダーティ情報が増えないようにすることができる。
 (S1114)LM元LPARの休止後に、学習データ収集処理(図10参照)が行われる。その処理は、マイグレーション処理部#1がLM元LPARに接続されているVNICに学習データ取得要求を送信することを含む。この処理により、LM元LPARについて学習されたデータ(ソフトウェアMAC、VLAN ID)を、マイグレーション処理部#1が取得することができる。具体的には、図10のS1007の通り、MACアドレス学習テーブル144の1以上のエントリの情報が、マイグレーション処理部#1のバッファ領域にコピーされる。
 (S1115)マイグレーション処理部#1は、マイグレーション処理部#1のバッファ領域にコピーされた情報(MACアドレス学習テーブル144の1以上のエントリの情報)を含んだ情報であるデバイス情報をマイグレーション処理部#2に転送する。
 (S1116)マイグレーション処理部#2は、S1115でマイグレーション処理部#1から転送されたデバイス情報を受信し、受信したデバイス情報を、LM先LPARに反映する。具体的には、マイグレーション処理部#2は、LM先LPARのVNICに接続されているVSWのMACアドレス学習テーブルにおける、LM先LPARのVNICのIDに対応した1以上のエントリに、それぞれ、受信したデバイス情報のうちのVNIC ID以外の情報(MACアドレス、VLAN ID及び更新時刻)を格納する。
 ここまでの処理により、LMの前後、例えば、S1113の前とS1116の後で、図12及び図13に示す変化が生じる。
 すなわち、例えば、図12の左側に示すように、LM元LPARに割り当てられていたVNICのIDが「1」であった場合、LM後に、VNIC ID「1」を含んだ全てのエントリは、図12の右側に示すように、空きエントリとなる。一方、図13の左側に示すように、LM先LPARに割り当てられていたVNIC(ID「9」のVNIC)に対応するエントリに、受信したデバイス情報のうちのVNIC ID「1」以外の情報(MACアドレス、VLAN ID及び更新時刻)が格納される。格納先のエントリでは、VNIC IDは「9」である。
 (S1117)マイグレーション処理部#1は、デバイス情報の転送後、最終メモリ転送を行う。例えば、LM元LPARについての残りの全てのダーティ情報がマイグレーション処理部#2に転送される。
 (S1118)マイグレーション処理部#2は、最終メモリの反映を行う。例えば、マイグレーション処理部#2は、受信したダーティ情報を、ハイパーバイザ#2におけるVMEMに格納する。
 (S1119)マイグレーション処理部#1は、LMされたLPARを指定したLPAR再開要求をマイグレーション処理部#2に出す。
 (S1120)マイグレーション処理部#2は、LPAR再開要求を受信し、その要求に従い、LM元で停止させていたゲストOS131を再開させるためのLPAR再開処理を行う。
 (S1121)マイグレーション処理部#1は、LM元LPARのdeactivate処理を行う。
 (S1122)マイグレーション処理部#2は、LM先LPARに接続されたVSWのMACアドレス学習テーブルから、LM先LPARに割り当てられているVNICに対応するエントリを見つけ出し、見つかったエントリ内のMACアドレス(及びVLAN ID)を含んだRARPパケットをブロードキャスト送信する。これにより、図14及び図15に示すように、そのRARPパケット内のMACアドレス(及びVLAN ID)と同じMACアドレス(及びVLAN ID)を含んだMACアドレステーブル#1を有するPSW#1が、そのRARPパケットを受信した場合に、そのMACアドレスに対応する物理ポートのID「portB」を、今回そのRARPパケットを受信した物理ポートのID「portD」に変更する。すなわち、RARPパケットのブロードキャスト送信により、PSW154に、ネットワーク経路が変わったことを伝えることができる。なお、本実施形態では、PSW154のMACアドレステーブル148を変更するためにRARPパケットのブロードキャスト送信が利用されるが、RARPパケット以外の種類のパケットにより、PSW154のMACアドレステーブル148が変更されても良い。
 (S1123)マイグレーション処理部#2は、LM先LPARの構成情報を保存する。LPARの構成情報は、メモリに保存されても良いが、本実施形態では、物理計算機101の保守又は管理のための計算機であるSVP(Service Processor)に保存される。SVPは、複数の物理計算機101に共通であっても良いし、物理計算機101毎に用意されても良い。例えば、S1123では、LPARの構成情報は、物理計算機#2のSVPに保存される。
 (S1124)マイグレーション処理部#2は、マイグレーション処理部#1に対して構成情報保存完了報告を送信する。
 (S1125)マイグレーション処理部#1は、構成情報保存完了報告を受信し、S1105でマイグレーション処理部#2から送信されたMACアドレス及び/又はWWNを、LM元LPARのMACアドレス及び/又はWWNとして設定する。
 (S1126)マイグレーション処理部#1は、LM元LPARの定義(例えば、LM元LPARに関する、リソース管理部#1内の情報)を削除する。
 (S1127)マイグレーション処理部#1は、マイグレーション処理部#2に対してLPAR定義取り消し報告を送信する。
 (S1128)マイグレーション処理部#1は、LM元LPARの構成情報を保存する。例えば、S1128では、LPARの構成情報は、物理計算機#1のSVPに保存される。
 (S1129)マイグレーション処理部#1は、構成情報保存完了後、LM先マイグレーション処理部172に対して構成情報保存完了報告を送信する。
 (S1130)マイグレーション処理部#1は、マイグレーション処理部#2に構成情報保存完了報告を送信した後、管理コンソール149に対してLM完了報告を送信する。
 (S1131)マイグレーション処理部#2は、マイグレーション処理部#1から構成情報保存完了報告を受信し、管理コンソール149に対してLM完了報告を送信する。
 (S1132)管理コンソール149は、マイグレーション処理部#1及び#2の両方からLM完了報告を受信した後、LMを完了させる。
 上述した実施形態によれば、ハイパーバイザ103の管轄外のMACアドレス或いはVLAN IDを使用した通信が行われる環境であっても、管理者によって当該MACアドレス或いはVLAN IDが手動で入力されること無しに、ライブマグレーションされたLPARのネットワーク接続を復元することができる。管理者が手動でハイパーバイザ103の管轄外のMACアドレス或いはVLAN IDを入力する必要が無いので、当該情報入力のためにLPAR或いはその上位マシンの使用者とハイパーバイザ103の管理者が連携する必要も無い。
 また、複数のネットワークセグメントにそれぞれ対応した複数のVSW137がハイパーバイザ103で構築される場合、VSW137毎にMACアドレス管理テーブル144がある。故に、ハイパーバイザ#1は、複数のMACアドレス管理テーブル144を管理する。このような構成であっても、LM対象のLPAR128に割り当てられているVNICを通じてVSWから学習データを収集することにより、LM対象のLPAR128ではないLPAR128に関するデータをLM先に転送することを回避することができる。
 以上、一実施形態を説明したが、本発明は、その実施形態に限定されるものでなく、その趣旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、上述の実施形態では、VNICを介した通信を例に取ったが、他種の仮想I/Oデバイス(例えばVHBA)でも同様の処理が行われても良い。また、ハイパーバイザ103のような仮想化機構は、コンピュータプログラムとして実現されても良いし、物として実現されても良い。例えば、ハイパーバイザは、コンピュータプログラムを記憶した記憶デバイスと、物理計算機のような外部装置と通信するための通信インタフェースデバイスと、記憶デバイス及び通信インタフェースデバイスに接続されておりプロセッサを含んだ制御デバイスを有した装置であって、制御デバイス内のプロセッサでコンピュータプログラムが実行されることにより、ハイパーバイザとしての機能が実現されて良い。また、例えば、ハイパーバイザ103が有するスケジューラ117、リソース管理部118及びマイグレーション処理部148のうちの少なくとも1つがハードウェア回路で実現されても良いし、それらの要素117、118及び148の少なくとも1つの一部の処理がハードウェア回路で実現されても良い。
101:物理計算機、103:ハイパーバイザ、128:LPAR(仮想計算機)、137:VSW(仮想スイッチ)、140:MAC学習部、144:MAC学習テーブル

 

Claims (10)

  1.  1以上の物理ネットワークスイッチに接続される1以上の第1の物理I/O(Input/Output)デバイスを含む第1の物理リソースと、前記第1の物理リソースを論理的に分割することにより得られた1以上の第1の仮想リソースをそれぞれ1以上の第1のLPAR(Logical Partition)に割り当てることで1以上の仮想計算機を構築することができる第1の仮想化機構と、を有する第1物理計算機と、
     前記1以上の物理ネットワークスイッチに接続される1以上の第2の物理I/Oデバイスを含む第2の物理リソースと、前記第2の物理リソースを論理的に分割することにより得られた1以上の第2の仮想リソースをそれぞれ1以上の第2のLPARに割り当てることで1以上の仮想計算機を構築することができる第2の仮想化機構と、を有する第2の物理計算機と
    を有し、
     (A)前記第1の仮想化機構は、第1の管理情報ユニットを有し、
      仮想計算機からパケットを受信した場合、前記パケットから、所定種類の情報を抽出し、前記抽出した所定種類の情報を前記第1の管理情報ユニットに登録し、
     (B)前記第1の仮想化機構は、稼働中のマイグレーション対象の仮想計算機である対象仮想計算機を前記第1の物理計算機から前記第2の物理計算機にマイグレーションするライブマイグレーションのときに、前記第1の管理情報ユニット中の前記所定種類の情報を、前記第2の仮想化機構に送信し、
     (C)前記第2の仮想化機構は、第2の管理情報ユニットを有し、
      前記所定種類の情報を前記第2の仮想化機構から受信し、
      前記受信した所定種類の情報を前記第2の管理情報ユニットに登録し、
      前記所定種類の情報を含んだ所定種類のパケットを、前記1以上の第2の物理I/Oデバイスの少なくとも1つから送信する、
    仮想計算機システム。
  2.  前記第1の仮想リソースは、前記1以上の第1の物理I/Oに基づく第1の仮想I/Oデバイスを含み、前記1以上の第2の仮想リソースは、前記1以上の第2の物理I/Oに基づく第2の仮想I/Oデバイスを含み、
     前記第1の仮想化機構は、前記第1の仮想化機構が管理する1以上の仮想計算機にそれぞれ割り当てられる1以上の第1の仮想I/Oデバイスと前記1以上の第1の物理I/Oデバイスの少なくとも1つとが接続される1以上の第1の仮想スイッチを有し、
     前記第2の仮想化機構は、前記第2の仮想化機構が管理する1以上の仮想計算機にそれぞれ割り当てられる1以上の第2の仮想I/Oデバイスと前記1以上の第2の物理I/Oデバイスの少なくとも1つとが接続される1以上の第2の仮想スイッチを有し、
     各第1の仮想スイッチが、前記第1の管理情報ユニットを有し、各第2の仮想スイッチが、前記第2の管理情報ユニットを有し、
     前記(A)に関して、前記第1の仮想化機構が、仮想計算機の第1の仮想I/Oデバイスを通じてその仮想計算機からパケットを受信した第1の仮想I/Oデバイスの第1の管理情報ユニットに、前記受信したパケットに含まれている所定種類の情報を登録し、
     前記(B)に関して、前記第1の仮想化機構は、前記ライブマイグレーションのときに、前記対象仮想計算機の第1の仮想I/Oデバイスから出力されたパケットが経由する第1の仮想スイッチが有する第1の管理情報ユニット中の少なくとも前記対象仮想計算機の第1の仮想I/Oデバイスに対応し前記所定種類の情報を含んだ対象情報部分を、前記第2の仮想化機構に送信し、
     前記(C)に関して、前記第2の仮想化機構が、マイグレーションされた対象仮想計算機の第2の仮想I/Oデバイスに接続されている第2の仮想スイッチの第2の管理情報ユニットに、前記対象情報部分を登録し、前記対象情報部分中の前記所定種類の情報を含んだ前記所定種類のパケットを、前記対象仮想計算機の第2の仮想I/Oデバイスが接続された第2の仮想スイッチに接続されている第2の物理I/Oデバイスから送信する、
    請求項1記載の仮想計算機システム。
  3.  各管理情報ユニットには、それぞれ、当該管理情報ユニットを有する仮想スイッチに接続されている仮想I/OデバイスのデバイスIDと、その仮想I/Oデバイスを通じて受信したパケット中の前記所定種類の情報とが登録される、
    請求項2記載の仮想計算機システム。
  4.  前記(A)に関して、前記抽出した所定種類の情報と同一の情報が、前記パケットを受けた第1の仮想スイッチの第1の管理情報ユニットに登録されているが、その登録済の情報に対応したデバイスIDから識別される仮想I/Oデバイスが、前記パケットの送信元の第1の仮想I/Oデバイスの異なっている場合、前記第1の仮想化機構が、前記パケットを受けた第1の仮想スイッチの第1の管理情報ユニットにおける前記登録済の情報に対応したデバイスIDを、前記パケットの送信元の第1の仮想I/OデバイスのIDに更新する、
    請求項3記載の仮想計算機システム。
  5.  前記所定種類の情報は、MACアドレス及びVLAN(Virtual LAN) tagのうちの少なくとも1つである、
    請求項1記載の仮想計算機システム。
  6.  前記所定種類の情報は、MACアドレスであり、
     前記所定種類のパケットは、RARP(Reverse Address Resolution Protocol)要求であり、
     前記RARPパケットは、MACアドレスを含み、
     各物理ネットワークスイッチは、物理ポートIDとMACアドレスの対応関係を表すアドレス管理情報とを有し、パケットを受信した場合、対象MACアドレスが前記アドレス管理情報に無ければ、前記対象MACアドレスと対象物理ポートIDとの組を前記アドレス管理情報に登録し、前記対象MACアドレスが前記アドレス管理情報に有り、且つ、前記対象MACアドレスに対応している物理ポートIDが、前記対象物理ポートIDと異なっていれば、前記アドレス管理情報における、前記対象MACアドレスに対応した物理ポートIDを前記対象物理ポートIDに更新するようになっており、
     前記対象MACアドレスは、前記受信したパケットが有するMACアドレスであり、
     前記対象物理ポートは、前記パケットを受信した物理ポートである、
    請求項5記載の仮想計算機システム。
  7.  前記所定種類の情報及び前記RARPパケットは、MACアドレスの他にVLAN tagで含んでおり、
     前記アドレス管理情報は、MACアドレスと物理ポートIDとVLAN tag部分の少なくとも一部分との対応関係を表しており、
     各物理ネットワークスイッチは、パケットを受信した場合、前記対象MACアドレスが前記アドレス管理情報に無ければ、前記対象MACアドレスと対象VLAN tag部分と前記対象物理ポートIDとの組を前記アドレス管理情報に登録し、前記対象MACアドレスが前記アドレス管理情報に有り、且つ、前記対象MACアドレスに対応しているVLAN tag部分が、前記対象VLAN tag部分と異なっていれば、前記アドレス管理情報における新たなエントリに、前記対象MACアドレスと前記対象VLAN tag部分と前記対象物理ポートIDとの組を登録するようになっており、
     前記対象VLAN tag部分は、前記受信したパケットが有するVLAN tagの少なくとも一部分である、
    請求項6記載の仮想計算機システム。
  8.  前記(B)に関して、前記第1の仮想化機構は、前記対象仮想計算機に割り当てられている仮想リソースを休止し、その後に、前記第1の管理情報ユニット中の前記所定種類の情報を、前記第2の仮想化機構に送信する、
    請求項1記載の仮想計算機システム。
  9.  1以上の物理ネットワークスイッチに接続される1以上の物理I/O(Input/Output)デバイスを含む物理リソースを有する物理計算機で実行され、前記物理リソースを論理的に分割することにより得られた1以上の仮想リソースをそれぞれ1以上のLPAR(Logical Partition)に割り当てることで1以上の仮想計算機を構築することができる仮想化機構であって、
     稼働中のマイグレーション対象の仮想計算機である対象仮想計算機を物理計算機から別の物理計算機にマイグレーションするライブマイグレーションを実行することができるマイグレーション処理部と、
     管理情報ユニットと、
     仮想計算機からのパケットから、所定種類の情報を抽出し、前記抽出した所定種類の情報を前記管理情報ユニットに登録する学習部と
    を有し、
     前記ライブマイグレーションのときに、前記マイグレーション処理部は、前記管理情報ユニット中の前記所定種類の情報を取得し、取得した前記所定種類の情報を、前記別の物理計算機に送信する、
    仮想化機構。
  10.  1以上の物理ネットワークスイッチに接続される1以上の物理I/O(Input/Output)デバイスとプロセッサと記憶デバイスとを含む物理リソースを有し、
     前記プロセッサが、仮想化機構を実行することで、前記物理リソースを論理的に分割することにより得られた1以上の仮想リソースをそれぞれ1以上のLPAR(Logical Partition)に割り当てることで1以上の仮想計算機を構築することができ、且つ、稼働中のマイグレーション対象の仮想計算機である対象仮想計算機を物理計算機から別の物理計算機にマイグレーションするライブマイグレーションを実行することができるようになっており、
     前記記憶デバイスは、管理情報ユニットを記憶し、
     前記プロセッサは、仮想計算機からのパケットから、所定種類の情報を抽出し、前記抽出した所定種類の情報を前記管理情報ユニットに登録し、
     前記ライブマイグレーションのときに、前記プロセッサは、前記管理情報ユニット中の前記所定種類の情報を、前記別の物理計算機に送信する、
    物理計算機。

     
PCT/JP2012/071217 2012-08-22 2012-08-22 ライブマイグレーションされた仮想計算機のネットワーク接続を復元する仮想計算機システム Ceased WO2014030229A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US14/408,441 US9323566B2 (en) 2012-08-22 2012-08-22 Virtual computer system for restoring network connection of live-migrated virtual computer
PCT/JP2012/071217 WO2014030229A1 (ja) 2012-08-22 2012-08-22 ライブマイグレーションされた仮想計算機のネットワーク接続を復元する仮想計算機システム
JP2014531448A JP5869133B2 (ja) 2012-08-22 2012-08-22 ライブマイグレーションされた仮想計算機のネットワーク接続を復元する仮想計算機システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/071217 WO2014030229A1 (ja) 2012-08-22 2012-08-22 ライブマイグレーションされた仮想計算機のネットワーク接続を復元する仮想計算機システム

Publications (1)

Publication Number Publication Date
WO2014030229A1 true WO2014030229A1 (ja) 2014-02-27

Family

ID=50149565

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/071217 Ceased WO2014030229A1 (ja) 2012-08-22 2012-08-22 ライブマイグレーションされた仮想計算機のネットワーク接続を復元する仮想計算機システム

Country Status (3)

Country Link
US (1) US9323566B2 (ja)
JP (1) JP5869133B2 (ja)
WO (1) WO2014030229A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10324743B2 (en) * 2014-08-27 2019-06-18 Red Hat Israel, Ltd. Announcing virtual machine migration
US10038629B2 (en) * 2014-09-11 2018-07-31 Microsoft Technology Licensing, Llc Virtual machine migration using label based underlay network forwarding
US9923800B2 (en) 2014-10-26 2018-03-20 Microsoft Technology Licensing, Llc Method for reachability management in computer networks
US9936014B2 (en) 2014-10-26 2018-04-03 Microsoft Technology Licensing, Llc Method for virtual machine migration in computer networks
US9942131B2 (en) * 2015-07-29 2018-04-10 International Business Machines Corporation Multipathing using flow tunneling through bound overlay virtual machines
CN110633127A (zh) 2018-06-25 2019-12-31 华为技术有限公司 一种数据处理方法及相关设备
US10853126B2 (en) * 2018-07-26 2020-12-01 Vmware, Inc. Reprogramming network infrastructure in response to VM mobility
US11748131B2 (en) * 2019-11-20 2023-09-05 Red Hat, Inc. Network updates for virtual machine migration
WO2022146586A1 (en) * 2020-12-30 2022-07-07 Oracle International Corporation Layer-2 networking information in a virtualized cloud environment

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011198299A (ja) * 2010-03-23 2011-10-06 Fujitsu Ltd プログラム、コンピュータ、通信装置および通信制御システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7257811B2 (en) * 2004-05-11 2007-08-14 International Business Machines Corporation System, method and program to migrate a virtual machine
US8195774B2 (en) * 2008-05-23 2012-06-05 Vmware, Inc. Distributed virtual switch for virtualized computer systems
US8468288B2 (en) * 2009-12-10 2013-06-18 International Business Machines Corporation Method for efficient guest operating system (OS) migration over a network
JP5463267B2 (ja) 2010-11-19 2014-04-09 株式会社日立製作所 仮想計算機システムおよび仮想計算機の移行方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011198299A (ja) * 2010-03-23 2011-10-06 Fujitsu Ltd プログラム、コンピュータ、通信装置および通信制御システム

Also Published As

Publication number Publication date
US20150121372A1 (en) 2015-04-30
JPWO2014030229A1 (ja) 2016-07-28
US9323566B2 (en) 2016-04-26
JP5869133B2 (ja) 2016-02-24

Similar Documents

Publication Publication Date Title
JP5869133B2 (ja) ライブマイグレーションされた仮想計算機のネットワーク接続を復元する仮想計算機システム
JP6185045B2 (ja) インフィニバンドネットワークにおけるバーチャルマシーンのライブマイグレーションをサポートするためのシステムおよび方法
US9893977B2 (en) System and method for supporting live migration of virtual machines in a virtualization environment
KR101242908B1 (ko) 가상화된 컴퓨터 시스템들에 대한 분배된 가상 스위치
US9703654B2 (en) Method, system, and apparatus for cloud application redundancy
JP2011118557A (ja) 仮想計算機の移動管理方法、前記移動管理方法を用いた計算機、前記移動管理方法を用いた仮想化機構および前記移動管理方法を用いた計算機システム
CN104871493A (zh) 高性能计算(hpc)网络中的通信信道故障切换
US9858096B2 (en) Communication device migration method of extension function and communication system
US20160380833A1 (en) Server, physical switch and communication system
JP6902527B2 (ja) 高性能コンピューティング環境においてスイッチポートステータスのスケーラブルな表現をサポートするためのシステムおよび方法
US20120166575A1 (en) Information system having computer and storage apparatus coupled to network
US10055241B1 (en) Virtual machine aware fibre channel
JP2011141635A (ja) ホスト間通信を使用した仮想サーバのデータの通信方法
JP6051233B2 (ja) 計算機システム、管理計算機及び管理方法
CN106161439B (zh) 一种信息处理方法及电子设备
WO2018015983A1 (en) Communication apparaus, system, rollback method, and program
JP5505380B2 (ja) 中継装置及び中継方法
EP3803611A1 (en) A system and method for bridging computer resources
JP2017195438A (ja) 通信管理方法、通信管理プログラムおよび情報処理装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12883216

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014531448

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14408441

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12883216

Country of ref document: EP

Kind code of ref document: A1