Abstract:
Techniques are disclosed for maintaining high availability (HA) for virtual machines (VMs) running on host systems of a host cluster, where each host system executes a HA module in a plurality of HA modules and a storage module in a plurality of storage modules, where the host cluster aggregates, via the plurality of storage modules, locally-attached storage resources of the host systems to provide logical data store, and where persistent data for the VMs is stored across the locally-attached storage resources comprising the logical data store.
Abstract:
Exemplary methods, apparatuses, and systems include a source site management server receiving, from first and second potential target site management servers, characteristics of the first and second potential target sites that affect replication of data from the source site to each potential target site. The source site management server receives selection of one or more criteria to be met in the selection of a target site for replication of data. The source site management server determines which potential target site is a better match for the received criteria based upon a comparison of the received criteria with the received characteristics of the target sites. The source site management server configures, automatically in response to the determination, the selected site as the target site for replication of data within the source site.
Abstract:
A system for proactive resource reservation for protecting virtual machines. The system includes a cluster of hosts, wherein the cluster of hosts includes a master host, a first slave host, and one or more other slave hosts, and wherein the first slave host executes one or more virtual machines thereon. The first slave host is configured to identify a failure that impacts an ability of the one or more virtual machines to provide service, and calculate a list of impacted virtual machines. The master host is configured to receive a request to reserve resources on another host in the cluster of hosts to enable the impacted one or more virtual machines to failover, calculate a resource capacity among the cluster of hosts, determine whether the calculated resource capacity is sufficient to reserve the resources, and send an indication as to whether the resources are reserved.
Abstract:
Techniques are disclosed for maintaining high availability (HA) for virtual machines (VMs) running on host systems of a host cluster, where each host system executes a HA module in a plurality of HA modules and a storage module in a plurality of storage modules, where the host cluster aggregates, via the plurality of storage modules, locally-attached storage resources of the host systems to provide an object store, where persistent data for the VMs is stored as per-VM storage objects across the locally-attached storage resources comprising the object store, and where a failure causes the plurality of storage modules to observe a network partition in the host cluster that the plurality of HA modules do not. In one embodiment, a host system in the host cluster executing a first HA module invokes an API exposed by the plurality of storage modules for persisting metadata for a VM to the object store. If the API is not processed successfully, the host system: (1) identifies a subset of second HA modules in the plurality of HA modules; (2) issues an accessibility query for the VM to the subset of second HA modules in parallel, the accessibility query being configured to determine whether the VM is accessible to the respective host systems of the subset of second HA modules; and (3) if at least one second HA module in the subset indicates that the VM is accessible to its respective host system, transmits a command to the at least one second HA module to invoke the API on its respective host system.
Abstract:
Techniques are described for placing virtual machines (VM) on computer hosts. In one embodiment, a user may compose a constraint specification document which includes VM and host properties and how they are retrieved, as well as constraint predicates that define valid VM placements on hosts. Use of the constraint specification document permits new constraints, including constraints that involve new properties, to be handled without requiring changing the underlying code for collecting required input data and processing said data to determine whether placement constraints are satisfied. Instead, based on the constraint specification document, a resource scheduler or high availability module may program a programmable data collector to fetch the needed properties from the appropriate places. Then, the resource scheduler or high availability module may parse the constraint predicates, evaluate potential placements to determine whether the constraint predicates are satisfied, and place VMs according to placements that satisfy the constraint predicates.
Abstract:
The present disclosure is related to systems and methods for scheduling and managing series of snapshots. An example method can include estimating a transfer time to transfer a first snapshot of a virtual computing instance (VCI) to a first snapshot series, and estimating a transfer time to transfer a second snapshot of the VCI to a second snapshot series. The method can further include determining a first schedule time to start a transfer of a first series of snapshots and determining a second schedule time to start a transfer of a second series of snapshots, wherein the first schedule time and the second schedule time are based at least in part on a respective recovery point objective (RPO). In some embodiments, the method can further include scheduling a point in time to record a next snapshot based at least in part on the shorter schedule time of the first schedule time and the second schedule time.
Abstract:
The present disclosure is related to methods, systems, and machine-readable media for modifying an instance catalog to perform operation. A storage system can include a plurality of packfiles that store data. The storage system can include a plurality of streams that include a plurality of hashes that identify the plurality of packfiles. The storage system can include an instance catalog that includes an identification of the plurality of streams. The storage system can include an operation engine to perform a number of operations on the plurality of packfiles by modifying the instance catalog using the identification of the plurality of streams.
Abstract:
A method for supporting a change in state within a cluster of host computers that run virtual machines is disclosed. The method involves identifying a change in state within a cluster of host computers that run virtual machines, determining if predefined criteria for available resources within the cluster of host computers can be met by resources available in the cluster of host computers, and determining if predefined criteria for available resources within the cluster of host computers can be maintained after at least one different predefined change in state. In an embodiment, the steps of this method may be implemented in a non-transitory computer-readable storage medium having instructions that, when executed in a computing device, causes the computing device to carry out the steps.
Abstract:
A system for monitoring virtual machines includes a master host and a slave host. The slave host includes a primary virtual machine and a secondary virtual machine. The slave host is configured to identify a failure that impacts an ability of at least one of the primary virtual machine and the secondary virtual machine to provide service. If the failure is a Permanent Device Loss failure, the slave host is configured to terminate each impacted virtual machine. If the failure is an All Paths Down failure, the master host is configured to apply one of the following: a first remedy if the primary virtual machine is impacted and the secondary virtual machine is not impacted; a second remedy if the secondary virtual machine is impacted and the primary virtual machine is not impacted; or a third remedy if both the primary virtual machine and the secondary virtual machine are impacted.
Abstract:
Exemplary methods, apparatuses, and systems include a first host system configuring storage of the first host to serve as a primary cache for a virtual machine running on the first host. A second host system configures storage of the second host to serve as a secondary cache and boots a placeholder virtual machine. The first host transmits, in response to write operations from the virtual machine directed to the primary cache, copies of the write operations to the second host to create mirrored copies on the secondary cache. The first host acknowledges each write operation from the virtual machine when the write operation is committed to both the primary cache and the secondary cache. When the virtual machine is restarted on the second host in response to a failure or migration event, the secondary cache is promoted to serve as a new primary cache for the virtual machine.