Patents by Inventor Keith Farkas

Keith Farkas has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9513946
    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.
    Type: Grant
    Filed: June 27, 2014
    Date of Patent: December 6, 2016
    Assignee: VMware, Inc.
    Inventors: Marc Sevigny, Keith Farkas, Christos Karamanolis
  • Patent number: 9495259
    Abstract: Techniques are disclosed for orchestrating high availability (HA) failover for virtual machines (VMs) running on host systems of a host cluster, where the host cluster aggregates locally-attached storage resources of the host systems to provide an object store, and where persistent data for one or more of the VMs is stored as per-VM storage objects across the locally-attached storage resources comprising the object store. In one embodiment, a host system in the host cluster executing a HA module determines a VM to be restarted on an active host system in the host cluster. The host system further determines if the VM's persistent data is stored in the object store. If so, the host system adds the VM to a list of VMs to be immediately restarted. Otherwise, the host system checks whether the VM is accessible to the host system by querying a storage layer of the host system configured to manage the object store.
    Type: Grant
    Filed: June 27, 2014
    Date of Patent: November 15, 2016
    Assignee: VMware, Inc.
    Inventors: Marc Sevigny, Keith Farkas, Christos Karamanolis
  • Publication number: 20160321151
    Abstract: A system for monitoring a virtual machine executed on a host. The system includes a processor that receives an indication that a failure caused a storage device to be inaccessible to the virtual machine, the inaccessible storage device impacting an ability of the virtual machine to provide service, and applies a remedy to restore access to the storage device based on a type of the failure.
    Type: Application
    Filed: June 3, 2016
    Publication date: November 3, 2016
    Applicant: VMware, Inc.
    Inventors: Joanne Ren, Igor Tarashansky, Keith Farkas, Elisha Ziskind, Manoj Krishnan
  • Publication number: 20160306675
    Abstract: A method of managing virtual resources executing on a hardware platform that employs sensors to monitor the health of hardware resources of the hardware platform, includes filtering sensor data from the hardware platform and combining the sensor data with a fault model for the hardware platform to generate a health score, receiving an inventory that maps the virtual resources to the hardware resources of the hardware platform, receiving resource usage data describing use of the hardware resources of the hardware platform by the virtual resources, and generating resource utilization metrics from the resource usage data. The method includes receiving policy data specifying rules applicable to the inventory, determining a set of recommendations for changes to the inventory based on the health score, the resource usage data, and the policy data, and executing at least one recommendation to implement the changes to the inventory.
    Type: Application
    Filed: June 26, 2015
    Publication date: October 20, 2016
    Inventors: Maarten WIGGERS, Manoj KRISHNAN, Anil KAPUR, Keith FARKAS, Anne HOLLER
  • Patent number: 9424063
    Abstract: A method for adjusting the configuration of host computers in a cluster on which virtual machines are running in response to a failed change in state is disclosed. The method involves receiving at least one reason a change in state failed the present check or the future check, associating the at least one reason with at least one remediation action, wherein the remediation action would allow the change in state to pass both a present check and a future check, assigning the at least one remediation action a cost, and determining a set of remediation actions to perform based on the cost assigned to each remediation action. 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.
    Type: Grant
    Filed: April 29, 2014
    Date of Patent: August 23, 2016
    Assignee: VMware, Inc.
    Inventors: Jeevitha Kirubanandam, Ganesha Shanmuganathan, Keith Farkas, Duncan Epping, Aashish Parikh
  • Publication number: 20160216992
    Abstract: Exemplary methods, apparatuses, and systems include a hypervisor receiving an error message from an agent within a first virtual machine run by the hypervisor. In response to the error message, the hypervisor determines and initiates a corrective action for the hypervisor to take in response to the error message. An exemplary corrective action includes initiating a reset of the first virtual machine or a reset of a second virtual machine.
    Type: Application
    Filed: December 7, 2015
    Publication date: July 28, 2016
    Inventors: Rostislav VAVRICK, Keith FARKAS, Smriti DESAI, Baruch OXMAN
  • Publication number: 20160203064
    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.
    Type: Application
    Filed: March 21, 2016
    Publication date: July 14, 2016
    Applicant: VMware, Inc.
    Inventors: Joanne Ren, Keith Farkas, Elisha Ziskind, Igor Tarashansky, Manoj Krishnan
  • Patent number: 9389900
    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.
    Type: Grant
    Filed: April 29, 2014
    Date of Patent: July 12, 2016
    Assignee: VMware, Inc.
    Inventors: Keith Farkas, Ganesha Shanmuganathan, Jeevitha Kirubanandam, Duncan Epping, Aashish Parikh
  • Patent number: 9372706
    Abstract: In one embodiment, a method for placing virtual machines in a collection is provided. A plurality of equivalence sets of hosts is determined prior to placing virtual machines in the collection. The hosts in an equivalence set of hosts are considered similar. An equivalence set of hosts in the plurality of equivalence sets is selected to place the virtual machines in the collection. The method then places at least a portion of the virtual machines in the collection on one or more hosts in the selected equivalence set of hosts.
    Type: Grant
    Filed: June 27, 2014
    Date of Patent: June 21, 2016
    Assignee: VMware, Inc.
    Inventors: Keith Farkas, Guoqiang Shu, Minwen Ji, Ganesha Shanmuganathan
  • Patent number: 9367414
    Abstract: Techniques are disclosed for persisting high availability (HA) protection state for virtual machines (VMs) running on host systems of a host cluster, where the host cluster aggregates locally-attached storage resources of the host systems to provide an object store, and where persistent data for the VMs is stored as per-VM storage objects across the locally-attached storage resources comprising the object store. In one embodiment, a host system in the host cluster executing a HA module determines an identity of a VM that has been powered-on in the host cluster. The host system then persists HA protection state for the VM in a storage object of the VM, where the HA protection state indicates that the VM should be restarted on an active host system in the case of a failure in the host cluster.
    Type: Grant
    Filed: June 27, 2014
    Date of Patent: June 14, 2016
    Assignee: VMware, Inc.
    Inventors: Marc Sevigny, Keith Farkas, Christos Karamanolis
  • Patent number: 9361199
    Abstract: A system for monitoring a virtual machine executed on a host. The system includes a processor that receives an indication that a failure caused a storage device to be inaccessible to the virtual machine, the inaccessible storage device impacting an ability of the virtual machine to provide service, and applies a remedy to restore access to the storage device based on a type of the failure.
    Type: Grant
    Filed: August 23, 2013
    Date of Patent: June 7, 2016
    Assignee: VMware, Inc.
    Inventors: Joanne Ren, Igor Tarashansky, Keith Farkas, Elisha Ziskind, Manoj Krishnan
  • Publication number: 20160085582
    Abstract: Exemplary methods, apparatuses, and systems determine a list of virtual machines to be subject to a corrective action. When one or more of the listed virtual machines have dependencies upon other virtual machines, network connections, or storage devices, the determination of the list includes determining that the dependencies of the one or more virtual machines have been met. An attempt to restart or take another corrective action for the first virtual machine within the list is made. A second virtual machine that is currently deployed and running or powered off or paused in response to the corrective action for the first virtual machine is determined to be dependent upon the first virtual machine. In response to the second virtual machine's dependencies having been met by the attempt to restart or take corrective action for the first virtual machine, the second virtual machine is added to the list of virtual machines.
    Type: Application
    Filed: December 3, 2015
    Publication date: March 24, 2016
    Inventors: Keith Farkas, Elisha Ziskind, Joanne Ren
  • Patent number: 9292376
    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.
    Type: Grant
    Filed: August 23, 2013
    Date of Patent: March 22, 2016
    Assignee: VMware, Inc.
    Inventors: Joanne Ren, Keith Farkas, Elisha Ziskind, Igor Tarashansky, Manoj Krishnan
  • Patent number: 9268642
    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.
    Type: Grant
    Filed: August 23, 2013
    Date of Patent: February 23, 2016
    Assignee: VMware, Inc.
    Inventors: Manoj Krishnan, Joanne Ren, Keith Farkas, Igor Tarashansky, Elisha Ziskind
  • Publication number: 20150378853
    Abstract: Techniques are disclosed for orchestrating high availability (HA) failover for virtual machines (VMs) running on host systems of a host cluster, where the host cluster aggregates locally-attached storage resources of the host systems to provide an object store, and where persistent data for one or more of the VMs is stored as per-VM storage objects across the locally-attached storage resources comprising the object store. In one embodiment, a host system in the host cluster executing a HA module determines a VM to be restarted on an active host system in the host cluster. The host system further determines if the VM's persistent data is stored in the object store. If so, the host system adds the VM to a list of VMs to be immediately restarted. Otherwise, the host system checks whether the VM is accessible to the host system by querying a storage layer of the host system configured to manage the object store.
    Type: Application
    Filed: June 27, 2014
    Publication date: December 31, 2015
    Inventors: Marc Sevigny, Keith Farkas, Christos Karamanolis
  • Publication number: 20150378857
    Abstract: Techniques are disclosed for persisting high availability (HA) protection state for virtual machines (VMs) running on host systems of a host cluster, where the host cluster aggregates locally-attached storage resources of the host systems to provide an object store, and where persistent data for the VMs is stored as per-VM storage objects across the locally-attached storage resources comprising the object store. In one embodiment, a host system in the host cluster executing a HA module determines an identity of a VM that has been powered-on in the host cluster. The host system then persists HA protection state for the VM in a storage object of the VM, where the HA protection state indicates that the VM should be restarted on an active host system in the case of a failure in the host cluster.
    Type: Application
    Filed: June 27, 2014
    Publication date: December 31, 2015
    Inventors: Marc Sevigny, Keith Farkas, Christos Karamanolis
  • Publication number: 20150378761
    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.
    Type: Application
    Filed: June 27, 2014
    Publication date: December 31, 2015
    Inventors: Marc Sevigny, Keith Farkas, Christos Karamanolis
  • Patent number: 9213572
    Abstract: Exemplary methods, apparatuses, and systems determine a list of virtual machines to be subject to a corrective action. When one or more of the listed virtual machines have dependencies upon other virtual machines, network connections, or storage devices, the determination of the list includes determining that the dependencies of the one or more virtual machines have been met. An attempt to restart or take another corrective action for the first virtual machine within the list is made. A second virtual machine that is currently deployed and running or powered off or paused in response to the corrective action for the first virtual machine is determined to be dependent upon the first virtual machine. In response to the second virtual machine's dependencies having been met by the attempt to restart or take corrective action for the first virtual machine, the second virtual machine is added to the list of virtual machines.
    Type: Grant
    Filed: December 2, 2013
    Date of Patent: December 15, 2015
    Assignee: VMware, Inc.
    Inventors: Keith Farkas, Elisha Ziskind, Joanne Ren
  • Patent number: 9208015
    Abstract: Exemplary methods, apparatuses, and systems include a hypervisor receiving an error message from an agent within a first virtual machine run by the hypervisor. In response to the error message, the hypervisor determines and initiates a corrective action for the hypervisor to take in response to the error message. An exemplary corrective action includes initiating a reset of the first virtual machine or a reset of a second virtual machine.
    Type: Grant
    Filed: June 18, 2013
    Date of Patent: December 8, 2015
    Assignee: VMware, Inc.
    Inventors: Rostislav Vavrick, Keith Farkas, Smriti Desai, Baruch Oxman
  • Patent number: 9183099
    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.
    Type: Grant
    Filed: November 12, 2013
    Date of Patent: November 10, 2015
    Assignee: VMware, Inc.
    Inventors: Erik Cota-Robles, Keith Farkas, Anne Holler