IP Library Granted Patent US 9,774,667
Granted Patent B2
US 9,774,667 · App. 14/074,791 · Granted Sep 26, 2017

System and method for dynamically configuring a load balancer in a virtual network environment

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 9,774,667
App. No.
14/074,791
Granted
Sep 26, 2017
Kind
B2
Abstract

Techniques for dynamic configuration of a load balancer in a virtual network environment are described. In one example embodiment, load balancing rules are configured using virtual machine (VM) inventory objects. The configured load balancing rules are then transformed by replacing the VM inventory objects in the configured load balancing rules with associated Internet protocol (IP) addresses using an IP address management (IPAM) table or a network address translation (NAT) table. The transformed load balancing rules are then sent to the load balancer for load balancing network traffic between a plurality of VMs running on one or more host computing systems in one or more computing networks.

Claims (49)

1. A method for dynamic configuration of a load balancer in a virtual network environment, the method comprising:

configuring load balancing rules using virtual machine (VM) inventory objects, wherein the VM inventory objects are VMs and associated virtual network interface cards (vNICs), and wherein the VM inventory objects are specified in a source and/or a destination of the configured load balancing rules;

transforming the configured load balancing rules by replacing the VM inventory objects that are specified in the source and/or destination of the configured load balancing rules with associated Internet protocol (IP) addresses using one of an IP address management (IPAM) table and a network address translation (NAT) table;

sending the transformed load balancing rules to the load balancer for load balancing network traffic between a plurality of VMs running on at least one host computing system in at least one computing network; and

dynamically updating the transformed load balancing rules sent to the load balancer when changes occur in the VM inventory objects.

2. The method of claim 1 , further comprising:

determining whether there are any updates made to at least one of the configured load balancing rules, the IPAM table, the NAT table and the VM inventory objects;

if so, dynamically updating the transformed load balancing rules sent to the load balancer by repeating the steps of configuring, transforming and sending; and

if not, continuing the step of determining whether there are any updates made to the at least one of the configured load balancing rules, the IPAM table, the NAT table and the VM inventory objects.

3. The method of claim 2 , further comprising:

dynamically maintaining updates to the at least one of the VM inventory objects, the IPAM table, the NAT table and the configured load balancing rules.

4. The method of claim 2 , wherein the updates comprise at least one of addition of a VM, deletion of a VM, change in a network property of a vNIC, addition/deletion of a vNIC to a VM, change of VM's assigned IP address, change of VM's NAT IP address, addition/change of attributes of a VM and change in configured load balancing rules and wherein the change in configured load balancing rules is one of addition of a load balancing rule, deletion of a load balancing rule and update of a load balancing rule in which one of a source VM inventory object and a destination VM inventory object referenced changes.

5. The method of claim 1 , wherein transforming the load balancing rules by replacing, the VM inventory objects with the associated IP addresses using the one of the IPAM table and the NAT table, comprises:

replacing any of the VM inventory objects specified in at least one of the source and the destination of the configured load balancing rules with assigned IP addresses of the VM inventory objects using the IPAM table, if the configured load balancing rules specify using NIC assigned IP addresses, and

replacing any of remaining VM inventory objects specified in at least one of the source and the destination of the configured load balancing rules with NAT IP addresses of the VM inventory objects using the NAT table, if the configured load balancing rules specify using NAT assigned IP addresses.

6. A system, comprising:

at least one host computing system hosting multiple virtual machines (VMs) in at least one computing network;

a load balancer coupled to the at least one host computing system; and

a virtual management server, comprising:

a load balancing manager to dynamically configure the load balancer in a virtual network environment, by:

configuring load balancing rules using VM inventory objects, wherein the VM inventory objects are VMs and associated virtual network interface cards (vNICs), and wherein the VM inventory objects are specified in a source and/or a destination of the configured load balancing rules:

transforming the configured load balancing rules by replacing the VM inventory objects that are specified in the source and/or destination of the configured load balancing rules with associated Internet protocol (IP) addresses using one of an IP address management (IPAM) table and a network address translation (NAT) table; and

sending the transformed load balancing rules to the load balancer for load balancing network traffic between the multiple VMs running on the at least one host computing system in the at least one computing network; and

dynamically updating the transformed load balancing rules sent to the load balancer when changes occur in the VM inventory objects.

7. The system of claim 6 , wherein the load balancing manager is further configured to:

determine whether there are any updates made to at least one of the configured load balancing rules, the IPAM table, the NAT table and the VM inventory objects;

if so, dynamically update the transformed load balancing rules sent to the load balancer by repeating the steps of configuring, transforming and sending; and

if not, continue the step of determining whether there are any updates made to the at least one of the configured load balancing rules, the IPAM table, the NAT table and the VM inventory objects.

8. The system of claim 7 , wherein the load balancing manager is further configured to:

dynamically maintain updates to the at least one of the VM inventory objects, the IPAM table, the NAT table and the configured load balancing rules.

9. The system of claim 7 , wherein the updates comprise at least one of addition of a VM, deletion of a VM, change in a network property of a vNIC, addition/deletion of a vNIC to a VM, change of VM's assigned IP address, change of VM's NAT IP address, addition/change of attributes of a VM and change in configured load balancing rules and wherein the change in configured load balancing rules is one of addition of a load balancing rule, deletion of a load balancing rule and update of a load balancing rule in which one of a source VM inventory object and a destination VM inventory object referenced changes.

10. The system of claim 6 , wherein the load balancing manager is configured to:

replace any of the VM inventory objects specified in at least one of the source and the destination of the configured load balancing rules with assigned IP addresses of the VM inventory objects using the IPAM table, if the configured load balancing rules specify using NIC assigned IP addresses; and

replace any of remaining VM inventory objects specified in at least one of the source and the destination of the configured load balancing rules with NAT IP addresses of the VM inventory objects using the NAT table, if the configured load balancing rules specify using NAT assigned IP addresses.

11. A non-transitory computer-readable storage medium including instructions that are configured, when executed by a computing device, to perform a method for dynamic configuration of a load balancer in a virtual network environment, the method comprising:

configuring load balancing rules using virtual machine (VM) inventory objects, wherein the VM inventory objects are VMs and associated virtual network interface cards (vNICs), and wherein the VM inventory objects are specified in a source and/or a destination of the configured load balancing rules;

transforming the configured load balancing rules by replacing the VM inventory objects that are specified in the source and/or destination of the configured load balancing rules with associated Internet protocol (IP) addresses using one of an IP address management (IPAM) table and a network address translation (NAT) table;

sending the transformed load balancing rules to the load balancer for load balancing network traffic between a plurality of VMs running on at least one host computing system in at least one computing network; and

dynamically updating the transformed load balancing rules sent to the load balancer when changes occur in the VM inventory objects.

12. The non-transitory computer-readable storage medium of claim 11 , further comprising:

determining whether there are any updates made to at least one of the configured load balancing rules, the IPAM table, the NAT table and the VM inventory objects;

if so, dynamically updating the transformed load balancing rules sent to the load balancer by repeating the steps of configuring, transforming and sending; and

if not, continuing the step of determining whether there are any updates made to the at least one of the configured load balancing rules, the IPAM table, the NAT table and the VM inventory objects.

13. The non-transitory computer-readable storage medium of claim 12 , further comprising:

dynamically maintaining updates to the at least one of the VM inventory objects, the IPAM table, the NAT table and the configured load balancing rules.

14. The non-transitory computer-readable storage medium of claim 12 , wherein the updates comprise at least one of addition of a VM, deletion of a VM, change in a network property of a vNIC, addition/deletion of a vNIC to a VM, change of VM's assigned IP address, change of VM's NAT IP address, addition/change of attributes of a VM and change in configured load balancing rules and wherein the change in configured load balancing rules is one of addition of a load balancing rule, deletion of a load balancing rule and update of a load balancing rule in which one of a source VM inventory object and a destination VM inventory object referenced changes.

15. The non-transitory computer-readable storage medium of claim 11 , wherein transforming the load balancing rules by replacing the VM inventory objects with the associated IP addresses using the one of the IPAM table and the NAT table, comprises:

replacing any of the VM inventory objects specified in at least one of the source and the destination of the configured load balancing rules with assigned IP addresses of the VM inventory objects using the IPAM table, if the configured load balancing rules specify using NIC assigned IP addresses; and

replacing any of remaining VM inventory objects specified in at least one of the source and the destination of the configured load balancing rules with NAT IP addresses of the VM inventory objects using the NAT table, if the configured load balancing, rules specify using NAT assigned IP addresses.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 8, 2013
From: BHAGWAT, ABHINAV VIJAY; SRINIVASAN, ARAVIND; SANGODKAR, AMIT RATNAPAL
To: VMWARE, INC.
Reel/Frame 031565/0378 →