IP Library › Granted Patent US 10,474,508
Granted Patent B2
US 10,474,508 · App. 15/680,236 · Granted Nov 12, 2019

Replication management for hyper-converged infrastructures

Inventor: Karthick Selvaraj (Bangalore, IN)
Assignee: VMWARE, INC.
G06F9/5077G06F3/06G06F11/1464H04L47/70G06F2201/815
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,474,508
App. No.
15/680,236
Granted
Nov 12, 2019
Kind
B2
Abstract

Disclosed are various examples of replication management for hyper-converged infrastructures. Virtual machine groups are generated using k-means grouping based on a process list of a respective virtual machine of a plurality of virtual machines within a hyper-converged infrastructure. Virtual machines in a respective group are analyzed to determine a first set of resources. A property graph that includes configuration data including a storage resource configuration and a network resource configuration is generated for the first set of resources of the respective virtual machine group. A second set of resources is configured within a second workload domain using the storage resource configuration and the network resource configuration.

Claims (43)

1. A computer-implemented method, comprising:

identifying, by at least one computing device, a process list of a respective virtual machine of a plurality of virtual machines associated with a first workload domain within a hyper-converged infrastructure comprising a rack and at least one host within the rack;

generating, by the at least one computing device, a plurality of virtual machine groups from the plurality of virtual machines using k-means grouping based at least in part on the process list of the respective virtual machine, a subset of the plurality of virtual machines being grouped within a respective virtual machine group of the plurality of virtual machine groups;

analyzing, by the at least one computing device, the subset of the plurality of virtual machines to determine a first set of resources associated with the respective virtual machine group, the first set of resources comprising a rack network resource of the rack and a host network resource of a host within the rack;

generating, by the at least one computing device, a property graph comprising configuration data for the first set of resources associated with the respective virtual machine group, the configuration data comprising a network resource configuration comprising settings for the rack network resource and the host network resource; and

configuring, by the at least one computing device, a second set of resources within a second workload domain using the property graph for the respective virtual machine group, the second set of resources being configured based at least in part on the settings for the rack network resource and the host network resource.

2. The computer-implemented method of claim 1 , further comprising generating, by the at least one computing device, a replicated version of the subset of the plurality of virtual machines within the second workload domain, wherein the replicated version of the subset of the plurality of virtual machines utilizes the second set of resources.

3. The computer-implemented method of claim 1 , further comprising:

generating, by the at least one computing device, a user interface element that when activated assigns a tag to a particular virtual machine that is grouped within the respective virtual machine group; and

assigning, by the at least one computing device, the tag to other virtual machines grouped within the subset of the plurality of virtual machines.

4. The computer-implemented method of claim 3 , further comprising associating, by the at least one computing device, the tag with at least one resource of the first set of resources.

5. The computer-implemented method of claim 1 , wherein the configuration data further comprises a virtual-machine-to-virtual-machine affinity rule.

6. The computer-implemented method of claim 1 , wherein the configuration data further comprises a virtual-machine-to-host affinity rule.

7. A system, comprising:

at least one computing device; and

program instructions executable in the at least one computing device that, when executed, cause the at least one computing device to:

identify a process list of a respective virtual machine of a plurality of virtual machines associated with a first workload domain within a hyper-converged infrastructure comprising a rack and at least one host within the rack;

generate a plurality of virtual machine groups from the plurality of virtual machines using k-means grouping based at least in part on the process list of the respective virtual machine, a subset of the plurality of virtual machines being grouped within a respective virtual machine group of the plurality of virtual machine groups;

analyze the subset of the plurality of virtual machines to determine a first set of resources associated with the respective virtual machine group, the first set of resources comprising a rack network resource of the rack and a host network resource of a host within the rack;

generate a property graph comprising configuration data for the first set of resources associated with the respective virtual machine group, the configuration data comprising a network resource configuration comprising settings for the rack network resource and the host network resource; and

configure a second set of resources within a second workload domain using the property graph for the respective virtual machine group, the second set of resources being configured based at least in part on the settings for the rack network resource and the host network resource.

8. The system of claim 7 , wherein when executed the program instructions further cause the at least one computing device to generate a replicated version of the subset of the plurality of virtual machines within the second workload domain, wherein the replicated version of the subset of the plurality of virtual machines utilizes the second set of resources.

9. The system of claim 7 , wherein when executed the program instructions further cause the at least one computing device to:

generate a user interface element that when activated assigns a tag to a particular virtual machine that is grouped within the respective virtual machine group; and

assign the tag to other virtual machines grouped within the subset of the plurality of virtual machines.

10. The system of claim 9 , wherein when executed the program instructions further cause the at least one computing device to associate the tag with at least one resource of the first set of resources.

11. The system of claim 7 , wherein the configuration data further comprises a virtual-machine-to-virtual-machine affinity rule.

12. The system of claim 7 , wherein the configuration data further comprises a virtual-machine-to-host affinity rule.

13. The system of claim 7 , wherein the configuration data further comprises a first naming convention for the first set of resources, and wherein when executed the program instructions further cause the at least one computing device to further configure the second set of resources with a second naming convention based at least in part on the first naming convention for the first set of resources.

14. A non-transitory computer-readable medium embodying program instructions executable in at least one computing device, wherein when executed, the program instructions cause the at least one computing device to:

identify a process list of a respective virtual machine of a plurality of virtual machines associated with a first workload domain within a hyper-converged infrastructure comprising a rack and at least one host within the rack;

generate a plurality of virtual machine groups from the plurality of virtual machines using k-means grouping based at least in part on the process list of the respective virtual machine, a subset of the plurality of virtual machines being grouped within a respective virtual machine group of the plurality of virtual machine groups;

analyze the subset of the plurality of virtual machines to determine a first set of resources associated with the respective virtual machine group, the first set of resources comprising a rack network resource of the rack and a host network resource of a host within the rack;

generate a property graph comprising configuration data for the first set of resources associated with the respective virtual machine group, the configuration data comprising a network resource configuration comprising settings for the rack network resource and the host network resource; and

configure a second set of resources within a second workload domain using the property graph for the respective virtual machine group, the second set of resources being configured based at least in part on the settings for the rack network resource and the host network resource.

15. The non-transitory computer-readable medium of claim 14 , wherein when executed the program instructions further cause the at least one computing device to generate a replicated version of the subset of the plurality of virtual machines within the second workload domain, wherein the replicated version of the subset of the plurality of virtual machines utilizes the second set of resources.

16. The non-transitory computer-readable medium of claim 14 , wherein when executed, the program instructions further cause the at least one computing device to:

generate a user interface element that when activated assigns a tag to a particular virtual machine that is grouped within the respective virtual machine group; and

assign the tag to other virtual machines grouped within the subset of the plurality of virtual machines.

17. The non-transitory computer-readable medium of claim 16 , wherein when executed, the program instructions further cause the at least one computing device to associate the tag with at least one resource of the first set of resources.

18. The non-transitory computer-readable medium of claim 14 , wherein the configuration data further comprises a virtual-machine-to-virtual-machine affinity rule.

19. The non-transitory computer-readable medium of claim 14 , wherein the configuration data further comprises a virtual-machine-to-host affinity rule.

20. The non-transitory computer-readable medium of claim 14 , wherein the configuration data further comprises a first naming convention for the first set of resources, and when executed, the program instructions further cause the at least one computing device to further configure the second set of resources with a second naming convention based at least in part on the first naming convention for the first set of resources.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 18, 2017
From: SELVARAJ, KARTHICK
To: VMWARE, INC.
Reel/Frame 043602/0282 →
Priority Claims (1)
IN 201741023443 · Jul 4, 2017 · national
Continuity (1)
Related Publication 20190012211A1 · Jan 10, 2019