IP Library Granted Patent US 11,822,442
Granted Patent B2
US 11,822,442 · App. 17/337,501 · Granted Nov 21, 2023

Active-standby pods in a container orchestration environment

Inventors: Prasanna Mahadeo Kulkarni (Pune, IN); Amit Mishra (Broomfield, CO); Nayana Teja Avatapalli (Andhra Pradesh, IN)
Assignee: Avaya Management L.P.
G06F11/2025G06F9/54G06F2201/85
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,822,442
App. No.
17/337,501
Filed
Jun 3, 2021
Granted
Nov 21, 2023
Kind
B2
Art Unit
2114
USPC
714/13
Abstract

Container orchestration platforms, such as Kubernetes, automatically manage the execution of applications in containers on host computing systems. An application may include component applications that execute in different containers and a container orchestration platform may organize the containers for those component applications into a pod for the application. To spread the load for the application, the container orchestration platform may enable creation of more than one pod for a single application. Once created, any of the multiple pods may be selected to handle a request to the application. As such, all of the pods are considered active by the container orchestration platform.

Claims (52)

1. A method comprising:

in an active-standby controller:

identifying creation of pods for executing an application in a computing cluster, wherein a control plane creates the pods;

providing an active-pod label to the control plane, wherein the control plane updates pod-selection criteria with the active-pod label, wherein the pod-selection criteria is used by a service executing in the computing cluster to select one or more of the pods to receive requests for the application; and

instructing the control plane to add the active-pod label to a first pod of the pods, wherein the service selects the first pod to handle a request for the application based on the pod-selection criteria after the active-pod label is added to the first pod.

2. The method of claim 1 , comprising:

identifying a failure of the first pod;

in response to the failure, instructing the control plane to add the active-pod label to a second pod of the pods, wherein the service selects the second pod to handle a second request for the application based on the pod-selection criteria after the active-pod label is added to the second pod.

3. The method of claim 2 , comprising:

in response to the failure, instructing the control plane to remove the active-pod label from the first pod.

4. The method of claim 3 , wherein the second pod is selected from a queue of the pods that are not active, and the method comprising:

after instructing the control plane to remove the active-pod label, determining that the first pod is ready; and

in response to determining that the first pod is ready, adding the first pod to the queue.

5. The method of claim 1 , wherein identifying the creation of the pods comprises:

identifying the pods as having an active-standby label, wherein the active-standby label is a label included in the pods by the control plane.

6. The method of claim 5 , comprising:

registering the pods in response to identifying the pods as having the active-standby label.

7. The method of claim 6 , comprising:

adding the pods to a queue of the pods that are not active; and

selecting the first pod from the queue.

8. The method of claim 5 , wherein the active-standby label is included in service parameters for the application received by the control plane from a user.

9. The method of claim 8 , wherein the service parameters further include a strategy label defining a number of active pods and a number of standby pods for the application, and the method comprising:

recognizing the service includes the strategy label; and

implementing the number of active pods and the number of standby pods, wherein the first pod is one pod of the number of active pods.

10. The method of claim 1 , comprising:

generating random data to use as the active-pod label.

11. An apparatus comprising:

one or more computer readable storage media;

a processing system operatively coupled with the one or more computer readable storage media; and

program instructions stored on the one or more computer readable storage media that, when read and executed by the processing system, direct the processing system to:

in an active-standby controller:

identify creation of pods for executing an application in a computing cluster, wherein a control plane creates the pods;

provide an active-pod label to the control plane, wherein the control plane updates pod-selection criteria with the active-pod label, wherein the pod-selection criteria is used by a service executing in the computing cluster to select one or more of the pods to receive requests for the application; and

instruct the control plane to add the active-pod label to a first pod of the pods, wherein the service selects the first pod to handle a request for the application based on the pod-selection criteria after the active-pod label is added to the first pod.

12. The apparatus of claim 11 , wherein the program instructions direct the processing system to:

identify a failure of the first pod;

in response to the failure, instruct the control plane to add the active-pod label to a second pod of the pods, wherein the service selects the second pod to handle a second request for the application based on the pod-selection criteria after the active-pod label is added to the second pod.

13. The apparatus of claim 12 , wherein the program instructions direct the processing system to:

in response to the failure, instruct the control plane to remove the active-pod label from the first pod.

14. The apparatus of claim 13 , wherein the second pod is selected from a queue of the pods that are not active, and wherein the program instructions direct the processing system to:

after instructing the control plane to remove the active-pod label, determine that the first pod is ready; and

in response to determining that the first pod is ready, add the first pod to the queue.

15. The apparatus of claim 11 , wherein to identify the creation of the pods, the program instructions direct the processing system to:

identify the pods as having an active-standby label, wherein the active-standby label is a label included in the pods by the control plane.

16. The apparatus of claim 15 , wherein the program instructions direct the processing system to:

register the pods in response to identifying the pods as having the active-standby label.

17. The apparatus of claim 16 , wherein the program instructions direct the processing system to:

add the pods to a queue of the pods that are not active; and

select the first pod from the queue.

18. The apparatus of claim 15 , wherein the active-standby label is included in service parameters for the application received by the control plane from a user.

19. The apparatus of claim 18 , wherein the service parameters further include a strategy label defining a number of active pods and a number of standby pods for the application.

20. One or more non-transitory computer readable storage media having program instructions stored thereon that, when read and executed by a processing system, direct the processing system to: in an active-standby controller: identify creation of pods for executing an application in a computing cluster, wherein a control plane creates the pods; provide an active-pod label to the control plane, wherein the control plane updates pod-selection criteria with the active-pod label, wherein the pod-selection criteria is used by a service executing in the computing cluster to select one or more of the pods to receive requests for the application; and instruct the control plane to add the active-pod label to a first pod of the pods, wherein the service selects the first pod to handle a request for the application based on the pod-selection criteria after the active-pod label is added to the first pod.

Assignments (10)
INTELLECTUAL PROPERTY SECURITY AGREEMENT – SUPPLEMENT NO. 5 Recorded Jun 3, 2024
From: AVAYA LLC; AVAYA MANAGEMENT L.P.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB, AS COLLATERAL AGENT
Reel/Frame 067606/0438 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT – SUPPLEMENT NO. 2 Recorded May 29, 2024
From: AVAYA LLC (FORMERLY KNOWN AS AVAYA INC.); AVAYA MANAGEMENT L.P.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB, AS COLLATERAL AGENT
Reel/Frame 067559/0265 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Sep 13, 2023
From: AVAYA LLC (F/K/A AVAYA INC.); AVAYA MANAGEMENT L.P.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 064896/0665 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 61087/0386) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063690/0359 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 4, 2023
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 063542/0662 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 3, 2023
From: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; KNOAHSOFT INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB [COLLATERAL AGENT]
Reel/Frame 063742/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 57700/FRAME 0935 Recorded Apr 26, 2023
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: AVAYA HOLDINGS CORP.; AVAYA INC.; AVAYA MANAGEMENT L.P.
Reel/Frame 063458/0303 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 5, 2022
From: AVAYA INC.; INTELLISIST, INC.; AVAYA MANAGEMENT L.P.; AVAYA CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 061087/0386 →
SECURITY INTEREST Recorded Oct 4, 2021
From: AVAYA MANAGEMENT LP
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 057700/0935 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2021
From: KULKARNI, PRASANNA MAHADEO; MISHRA, AMIT; AVATAPALLI, NAYANA TEJA
To: AVAYA MANAGEMENT L.P.
Reel/Frame 056425/0525 →
Continuity (1)
Related Publication 20220391294A1 · Dec 8, 2022
Cited By (1)
US 12,360,793