IP Library › Granted Patent US 11,128,530
Granted Patent B2
US 11,128,530 · App. 15/994,796 · Granted Sep 21, 2021

Container cluster management

Inventors: Praveen Kumar Shimoga Manjunatha (Bangalore Karnataka, IN); Sonu Sudhakaran (Bangalore Karnataka, IN); Ravikumar Vallabhu (Bangalore Karnataka, IN)
Assignee: Hewlett Packard Enterprise Development LP
H04L41/0813G06F9/5083H04L43/0876H04L43/16H04L47/122H04L67/1008
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 11,128,530
App. No.
15/994,796
Granted
Sep 21, 2021
Kind
B2
Abstract

In an example, a container cluster management system includes a first node, a second node and redistribution manager. The first node has an allocated external IP address, and comprises a utilization monitor to provide data relating to a utilization of the first node. The redistribution manager may receive the data relating to the utilization of the first node from the first node and determine whether the utilization of the first node has exceeded a predetermined threshold. Responsive to the utilization exceeding the predetermined threshold, the redistribution manager may reallocate the external IP address from the first node to the second node.

Claims (50)

1. A system comprising:

a processing resource; and

a non-transitory computer-readable medium, coupled to the processing resource, having stored therein instructions that when executed by the processing resource cause the processing resource to:

receive utilization data of a set of resources of a first node of a plurality of nodes of a container-based computing cluster, the first node having an allocated external Internet Protocol (IP) address, wherein the first node forwards a received request for a service that is directed to the allocated external IP address to one of a first set of one or more pods behind the first node, wherein each pod of the first set of one or more pods includes a plurality of containers that work together to provide the service utilizing the set of resources;

determine based on the utilization data that a utilization of the first node has exceeded a predetermined threshold; and

indirectly balance load among the first set of one or more pods and a second set of one or more pods behind a second node of the plurality of nodes by responding to a determination that the utilization data exceeds the predetermined threshold by reallocating the external IP address from the first node to the second node, wherein the second set of one or more pods utilizes a set of resources of the second node.

2. The system according to claim 1 wherein the utilization data is indicative of a percentage utilization of a processing resource or a memory resource of the set of resources.

3. The system according to claim 2 , wherein the predetermined threshold is between 80% and 95%.

4. The system according to claim 1 , wherein each pod of the first set of one or more pods has an IP address and wherein the first node forwards the received request to a particular pod of the first set of one or more pods by translating the external IP address to the IP address of the particular pod.

5. The system according to claim 1 wherein the first node has a plurality of allocated external IP addresses.

6. The system according to claim 1 , wherein the first node includes a utilization monitor to provide the utilization data.

7. A method comprising, in a container cluster management system having a plurality of nodes of a container-based computing cluster and a redistribution manager:

receiving, by the redistribution manager, utilization data of a set of resources of a first node of the plurality of nodes, the first node having an allocated external Internet Protocol (IP) address, wherein the first node forwards a received request for a service that is directed to the allocated external IP address to one of a first set of one or more pods behind the first node, wherein each pod of the first set of one or more pods includes a plurality of containers that work together to provide the service utilizing the set of resources;

determining, by the redistribution manager and based on the utilization data, that a utilization of the first node has exceeded a predetermined threshold; and

indirectly balancing load among the first set of one or more pods and a second set of one or more pods behind a second node of the plurality of nodes by responding to a determination that the utilization data exceeds the predetermined threshold by reallocating the external IP address from the first node to the second node, wherein the second set of one or more pods utilizes a set of resources of the second node.

8. The method according to claim 7 , further comprising:

receiving, by the redistribution manager, utilization data of each of the plurality of nodes; and

determining, based on the utilization data of each of the plurality of nodes, among the plurality of nodes, the second node has a lowest utilization.

9. The method according to claim 7 further comprising:

determining, by the redistribution manager and based on the utilization data, that a utilization of a third node of the plurality of nodes, having a second allocated external IP address, has exceeded the predetermined threshold;

determining which node of the plurality of nodes has the lowest utilization and selecting that node as a target node;

determining that the utilization of the target node will exceed the predetermined threshold if the second external IP address is reallocated to the target node; and

responding to a determination that the utilization data of the third node exceeds the predetermined threshold by maintaining the allocation of the second external IP address to the third node.

10. The method of claim 9 further comprising responding to a determination that the utilization of the third node exceeds the predetermined threshold by sending a notification to a user of the container cluster management system requesting a further node be added to the system.

11. A non-transitory machine readable medium storing instructions that, when executed by a processing resource, cause the processing resource to:

receive health status data of a first node of a plurality of nodes of a container-based computing cluster of a container cluster management system, the first node having an allocated external Internet Protocol (IP) address and the health status data providing an indication of a utilization level of at least one of a processor resource and a memory resource of the first node, wherein the first node forwards a received request for a service that is directed to the allocated external IP address to one of a first set of one or more pods behind the first node, wherein each pod of the first set of one or more pods includes a plurality of containers that work together to provide the service utilizing one or both of the processor resource and the memory resource;

determine that the utilization level of the first node has exceeded a predetermined threshold based on the health status data; and

indirectly balance load among the first set of one or more pods and a second set of one or more pods behind a second node of the plurality of nodes by reallocating the external IP address from the first node to the second node in response to the determined utilization level exceeding the predetermined threshold, wherein the second set of one or more pods utilizes at least one of a processor resource and a memory resources of the second node.

12. A non-transitory machine readable medium according to claim 11 storing further instructions to cause the processing resource to:

receive health status data of each of the plurality of nodes;

determine, based on the health status data of each of the plurality of nodes, among the plurality of nodes, the second node has a lowest utilization.

13. A non-transitory machine readable medium according to claim 11 storing further instructions to cause the processing resource to:

receive health status data of a third node of the plurality of nodes having a second allocated external IP address;

determine, that a utilization level of the third node has exceeded the predetermined threshold based on the health status data;

determine which node of the plurality of nodes has the lowest utilization level; and select that node as a target node;

determine that the utilization level of the target node will exceed the predetermined threshold if the second external IP address is reallocated to the target node; and

respond to a determination that the utilization level of the third node exceeds the predetermined threshold by maintaining the allocation of the second external IP address to the third node.

14. The system according to claim 1 , wherein said reallocating the external IP address comprises:

updating a virtualized router-to-IP (VRID-to-IP) address mapping table; and

sending the updated VRID-to-IP mapping table to an application programming interface (API) server associated with the system.

15. The system according to claim 1 , wherein the utilization data relates to a number of requests for the service received per second.

16. The method according to claim 7 , wherein said reallocating the external IP address comprises:

updating a virtualized router-to-IP (VRID-to-IP) address mapping table; and

sending the updated VRID-to-IP mapping table to an application programming interface (API) server associated with the container cluster management system.

17. The method according to claim 7 , wherein the utilization data relates to a number of requests for the service received per second.

18. A non-transitory machine readable medium according to claim 11 , wherein said reallocating the external IP address comprises:

updating a virtualized router-to-IP (VRID-to-IP) address mapping table; and

sending the updated VRID-to-IP mapping table to an application programming interface (API) server associated with the container cluster management system.

19. A non-transitory machine readable medium according to claim 11 , wherein the utilization level relates to a number of requests for the service received per second.

20. The system of claim 1 , wherein each pod of the first set of one or more pods represents a sub-cluster of the container-based computing cluster.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2018
From: MANJUNATHA, PRAVEEN KUMAR SHIMOGA; SUDHAKARAN, SONU; VALLABHU, RAVIKUMAR
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 047647/0469 →
Priority Claims (1)
IN 201841012009 · Mar 29, 2018 · national
Continuity (1)
Related Publication 20190306022A1 · Oct 3, 2019
Cited By (1)
US 12,542,782