Abstract:
Processes for managing computing processes within a plurality of data centers configured to provide a cloud computing environment are described. An exemplary process includes executing a process on a first host of a plurality of hosts. When the process is executing on the first host, a first network identifier associated with the plurality of hosts is not a network identifier of a pool of network identifiers associated with the cloud computing environment and first and second route tables respectively corresponding to first and second data centers of the plurality of data centers associate the first network identifier with the first host. The exemplary process further includes detecting an event associated with the process. In response to detecting the event associated with the process, the first and second route tables are respectively updated to associate the first network identifier with a second host of the plurality of hosts.
Abstract:
Systems and techniques are described for using virtual machines to write parallel and distributed applications. One of the techniques includes receiving a job request, wherein the job request specifies a first job to be performed by a plurality of a special purpose virtual machines, wherein the first job includes a plurality of tasks; selecting a parent special purpose virtual machine from a plurality of parent special purpose virtual machines to perform the first job; instantiating a plurality of child special purpose virtual machines from the selected parent special purpose virtual machine; partitioning the plurality of tasks among the plurality of child special purpose virtual machines by assigning one or more of the plurality of tasks to each of the child special purpose virtual machines; and performing the first job by causing each of the child special purpose virtual machines to execute the tasks assigned to the child special purpose virtual machine.
Abstract:
An example method of migrating a virtualized computing instance between source and destination virtualized computing systems includes executing a first migration workflow in the source virtualized computing system, where a host computer executing the virtualized computing instance is a source host in the first migration workflow and a first mobility agent simulates a destination host in the first migration workflow. The method further includes executing a second migration workflow in the destination virtualized computing system, where a second mobility agent in the destination virtualized computing system simulates a source host in the second migration workflow and a host computer in the destination virtualized computing system is a destination host in the second migration workflow. The method further includes transferring, during execution of the first and second migration workflows, migration data including the virtualized computing instance between the first mobility agent and the second mobility agent over a network.
Abstract:
Examples maintain consistency of writes for a plurality of VMs during live migration of the plurality from a source host to a destination host. The disclosure intercepts I/O writes to a migrated VM at a destination host and mirrors the I/O writes back to the source host. This “reverse replication” ensures that the CG of the source host is up to date, and that the source host is safe to fail back to if the migration fails.
Abstract:
Systems and techniques are described for using virtual machines to write parallel and distributed applications. One of the techniques includes receiving a job request, wherein the job request specifies a first job to be performed by a plurality of a special purpose virtual machines, wherein the first job includes a plurality of tasks; selecting a parent special purpose virtual machine from a plurality of parent special purpose virtual machines to perform the first job; instantiating a plurality of child special purpose virtual machines from the selected parent special purpose virtual machine; partitioning the plurality of tasks among the plurality of child special purpose virtual machines by assigning one or more of the plurality of tasks to each of the child special purpose virtual machines; and performing the first job by causing each of the child special purpose virtual machines to execute the tasks assigned to the child special purpose virtual machine.
Abstract:
Systems and techniques are described for determining the status of migrating virtual machines. A described technique includes initiating a migration of one or more virtual machines from a source host that is located at a source site to a destination host that is located at a destination site. A determination is made that a fault has occurred during the migration of the one or more virtual machines. In response to determining that the error has occurred, a determination is made, for each virtual machine of the one or more virtual machines, whether the virtual machine has been fully migrated from the source host to the destination host.
Abstract:
Systems and techniques are described for determining the status of migrating virtual machines. A described technique includes initiating a migration of one or more virtual machines from a source host that is located at a source site to a destination host that is located at a destination site. A determination is made that a fault has occurred during the migration of the one or more virtual machines. In response to determining that the error has occurred, a determination is made, for each virtual machine of the one or more virtual machines, whether the virtual machine has been fully migrated from the source host to the destination host.
Abstract:
Memory pages that are allocated to a memory consumer and continue to be accessed by the memory consumer are included in a free list, so that they may be immediately allocated to another memory consumer as needed during the course of normal operation without preserving the original contents of the memory page. When a memory page in the free list is accessed to perform a read, a generation number associated with the memory page is compared with a stored copy. If the two match, the read is performed on the memory page. If the two do not match, the read is not performed on the memory page.
Abstract:
A method of migrating a network file copy (NFC) operation from a first host computing device to a second host computing device includes the steps of: transmitting a first request to the first host computing device to execute the NFC operation, wherein the NFC operation comprises transferring data from a shared datastore to another datastore; after transmitting the first request, selecting the second host computing device to complete the NFC operation in place of the first host computing device, and transmitting a second request to the first host computing device to stop executing the NFC operation; after transmitting the second request, detecting a message indicating that the first host computing device completed the copying of a first portion of the data; and in response to the detection of the message, transmitting a third request to the second host computing device to perform the remainder of the NFC operation.
Abstract:
A method for migrating a virtual machine (VM) includes establishing a first connection to a first cloud computing system executing a first VM, and establishing a second connection to a second cloud computing system managed by a second cloud provider, which is different form the first cloud provider. The method further includes instantiating a second VM designated as a destination VM in the second cloud computing system, and installing a migration agent on each of the first VM and the second VM. The migration agents execute a migration process of the first VM to the second VM by (1) iteratively copying guest data from the first VM to the second VM until a switchover criteria of the migration operation is met, and (2) copying a remainder of guest data from the first VM to the second VM when the switchover criteria is met.