IP Library › Granted Patent US 11,816,469
Granted Patent B2
US 11,816,469 · App. 17/448,357 · Granted Nov 14, 2023

Resolving the version mismatch problem when implementing a rolling update in an open-source platform for container orchestration

Inventors: Hong Jun Tu (Beijing, CN); Wen Tao Zhang (Beijing, CN); Yang Yang (Beijing, CN); Yiwen Huang (Markham, CA); Ye Cui (Beijing, CN); Xiao Kai Dong (Beijing, CN); Yu Chi Zhang (Beijing, CN)
Assignee: International Business Machines Corporation
G06F8/65H04L45/02
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,816,469
App. No.
17/448,357
Granted
Nov 14, 2023
Kind
B2
Abstract

According to one embodiment, a method, computer system, and computer program product for container lifecycle management is provided. The embodiment may include registering a topology for a plurality of deployments in a container orchestration platform. The embodiment may include detecting a rolling update to a deployment of the plurality of deployments. The embodiment may include assuming ownership of at least one previous version pod of the deployment. The embodiment may include creating network routing rules for the at least one previous version pod. The embodiment may include routing network packets to the at least one previous version pod based on the created network routing rules.

Claims (46)

1. A processor-implemented method for container lifecycle management, the method comprising:

registering a topology for a plurality of deployments in a container orchestration platform;

detecting a rolling update of a deployment of the plurality of deployments, to a new version;

in response to determining that the deployment has one or more ongoing connections to one or more pods of one or more other deployments within the plurality of deployments, assuming ownership, via a version controller, of at least one previous version pod of the deployment, wherein the assuming removes the at least one previous version pod from the deployment;

creating network routing rules for the at least one previous version pod; and

while other pods of the deployment are updating to respective new versions via the rolling update, routing network packets to the at least one previous version pod based on the created network routing rules, wherein the at least one previous version pod coexists with the respective new versions of the other pods of the deployment.

2. The method of claim 1 :

determining the rolling update is complete within the plurality of deployments;

deleting the at least one previous version pod; and

deleting the created network routing rules.

3. The method of claim 1 , wherein the topology comprises service dependencies between the plurality of deployments.

4. The method of claim 1 , wherein the rolling update comprises a container image version update.

5. The method of claim 1 , wherein the at least one previous version pod is a server pod, and wherein the network packets are from client pods of the one or more other deployments within the plurality of deployments.

6. The method of claim 1 , wherein assuming ownership of the at least one previous version pod comprises updating an owner reference of the at least one previous version pod.

7. The method of claim 1 , wherein the container orchestration platform comprises a Kubernetes cluster.

8. A computer system, the computer system comprising:

one or more processors, one or more computer-readable memories, one or more computer-readable tangible storage medium, and program instructions stored on at least one of the one or more tangible storage medium for execution by at least one of the one or more processors via at least one of the one or more memories, wherein the computer system is capable of performing a method comprising:

registering a topology for a plurality of deployments in a container orchestration platform;

detecting a rolling update of a deployment of the plurality of deployments to a new version;

in response to determining that the deployment has one or more ongoing connections to one or more pods of one or more other deployments within the plurality of deployments, assuming ownership, via a version controller, of at least one previous version pod of the deployment, wherein the assuming removes the at least one previous version pod from the deployment;

creating network routing rules for the at least one previous version pod; and

while other pods of the deployment are updating to respective new versions via the rolling update, routing network packets to the at least one previous version pod based on the created network routing rules, wherein the at least one previous version pod coexists with the respective new versions of the other pods of the deployment.

9. The computer system of claim 8 , further comprising:

determining the rolling update is complete within the plurality of deployments;

deleting the at least one previous version pod; and

deleting the created network routing rules.

10. The computer system of claim 8 , wherein the topology comprises service dependencies between the plurality of deployments.

11. The computer system of claim 8 , wherein the rolling update comprises a container image version update.

12. The computer system of claim 8 , wherein the at least one previous version pod is a server pod, and wherein the network packets are from client pods of the one or more other deployments within the plurality of deployments.

13. The computer system of claim 8 , wherein assuming ownership of the at least one previous version pod comprises updating an owner reference of the at least one previous version pod.

14. The computer system of claim 8 , wherein the container orchestration platform comprises a Kubernetes cluster.

15. A computer program product, the computer program product comprising:

one or more computer-readable tangible storage medium and program instructions stored on at least one of the one or more tangible storage medium, the program instructions executable by a processor capable of performing a method, the method comprising:

registering a topology for a plurality of deployments in a container orchestration platform;

detecting a rolling update of a deployment of the plurality of deployments to a new version;

in response to determining that the deployment has one or more ongoing connections to one or more pods of one or more other deployments within the plurality of deployments, assuming ownership, via a version controller, of at least one previous version pod of the deployment, wherein the assuming removes the at least one previous version pod from the deployment;

creating network routing rules for the at least one previous version pod; and

while other pods of the deployment are updating to respective new versions via the rolling update, routing network packets to the at least one previous version pod based on the created network routing rules, wherein the at least one previous version pod coexists with the respective new versions of the other pods of the deployment.

16. The computer program product of claim 15 , further comprising:

determining the rolling update is complete within the plurality of deployments;

deleting the at least one previous version pod; and

deleting the created network routing rules.

17. The computer program product of claim 15 , wherein the topology comprises service dependencies between the plurality of deployments.

18. The computer program product of claim 15 , wherein the rolling update comprises a container image version update.

19. The computer program product of claim 15 , wherein the at least one previous version pod is a server pod, and wherein the network packets are from client pods of the one or more other deployments within the plurality of deployments.

20. The computer program product of claim 15 , wherein assuming ownership of the at least one previous version pod comprises updating an owner reference of the at least one previous version pod.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 22, 2021
From: TU, HONG JUN; ZHANG, WEN TAO; YANG, YANG; HUANG, YIWEN; CUI, YE; DONG, XIAO KAI; ZHANG, YU CHI
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 057554/0876 →
Continuity (1)
Related Publication 20230088858A1 · Mar 23, 2023
Cited By (1)
US 12,450,080