IP Library Granted Patent US 11,023,270
Granted Patent B2
US 11,023,270 · App. 16/547,943 · Granted Jun 1, 2021

Configuration of decoupled upgrades for container-orchestration system-based services

Inventors: Sushant Mahajan (New Delhi, IN); Aniruddha Kulkarni (Bangalore, IN)
Assignee: SAP SE
G06F9/45558G06F8/65G06F9/5077G06F16/9027G06F2009/45595
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,023,270
App. No.
16/547,943
Granted
Jun 1, 2021
Kind
B2
Abstract

Some embodiments provide a system and method associated with a determination of an upgrade path for an application service associated with a container-orchestration system (e.g., a KUBERNETES® container-orchestration system). A container-orchestration system server may trigger, by an operator object deployed as a controller for the application service, an upgrade process. In response to the trigger, the container-orchestration system server may access a dictionary type data structure containing a plurality of tuples associated with the application service (and the dictionary type data structure may be uncoupled from the application service). The container-orchestration system server may then automatically execute a search algorithm on the plurality of tuples to determine the upgrade path from a source version to a target version for the application service. According to some embodiments, the application service may then be automatically upgraded in accordance with the determined upgrade path.

Claims (32)

1. A system to determine an upgrade path for an application service associated with a container-orchestration system and a volume mounted within a container comprising an operator object and an associated service object, comprising:

a container-orchestration system server including a processor and instructions adapted to:

(i) trigger, by the operator object deployed as a controller for the application service, an upgrade process,

(ii) in response to the trigger, access a dictionary type data structure uncoupled from the application service and comprising a configmap, within the volume, that defines a tree structure, the configmap including entries for each of a plurality of application service versions, each entry having an array with a set of tuples, each tuple containing only:

(1) a subsequent application service version to which it is possible to upgrade from the application service version of the entry, and

(2) a Boolean value indicating if an additional task needs to be performed in connection with the upgrade process, and

(iii) automatically execute a breadth-first search algorithm on the tree structure to determine the upgrade path from a source version to a target version for the application service.

2. The system of claim 1 , wherein the container-orchestration system is further adapted to:

(iv) automatically upgrade the application service in accordance with the determined upgrade path.

3. The system of claim 1 , wherein the application service is associated with a backing service instance.

4. The system of claim 3 , wherein the application service is associated with at least one of: (i) a database service, (ii) an outbound email service, (iii) a simple storage service, and (iv) a social networking service.

5. The system of claim 1 , wherein the subsequent application service version to which it is possible to upgrade from the application service version in each tuple in the configmap comprises a target version identifier.

6. A method to determine an upgrade path for an application associated with a container-orchestration system and a volume mounted within a container comprising an operator object and an associated service object, comprising:

triggering, by a container-orchestration system server in connection with an operator object deployed as a controller for the application service, an upgrade process;

in response to the trigger, accessing a dictionary type data structure uncoupled from the application service and comprising a configmap, within the volume, that defines a tree structure, the configmap including entries for each of a plurality of application service versions, each entry having an array with a set of tuples, each tuple containing only:

(1) a subsequent application service version to which it is possible to upgrade from the application service version of the entry, and

(2) a Boolean value indicating if an additional task needs to be performed in connection with the upgrade process; and

automatically executing a breadth-first search algorithm on the tree structure to determine the upgrade path from a source version to a target version for the application service.

7. The method of claim 6 , further comprising:

automatically upgrading the application service in accordance with the determined upgrade path.

8. The method of claim 6 , wherein the application service is associated with a backing service instance.

9. The method of claim 8 , wherein the application service is associated with at least one of: (i) a database service, (ii) an outbound email service, (iii) a simple storage service, and (iv) a social networking service.

10. The method of claim 6 , wherein the subsequent application service version to which it is possible to upgrade from the application service version in each tuple in the configmap comprises a target version identifier.

11. A non-transitory, computer-readable medium storing program code, the program code executable by a computer processor to cause the processor to perform a method to determine an upgrade path for an application associated with a container-orchestration system and a volume mounted within a container comprising an operator object and an associated service object, the method comprising:

triggering, by a container-orchestration system server in connection with an operator object deployed as a controller for the application service, an upgrade process;

in response to the trigger, accessing a dictionary type data structure uncoupled from the application service and comprising a configmap, within the volume, that defines a tree structure, the configmap including entries for each of a plurality of application service versions, each entry having an array with a set of tuples, each tuple containing only:

(1) a subsequent application service version to which it is possible to upgrade from the application service version of the entry, and

(2) a Boolean value indicating if an additional task needs to be performed in connection with the upgrade process;

automatically executing a breadth-first search algorithm on the tree structure to determine the upgrade path from a source version to a target version for the application service; and

automatically upgrading the application service in accordance with the determined upgrade path.

12. The medium of claim 11 , wherein the application service is associated with a backing service instance representing at least one of: (i) a database service, (ii) an outbound email service, (iii) a simple storage service, and (iv) a social networking service.

13. The medium of claim 12 , wherein the subsequent application service version to which it is possible to upgrade from the application service version of the entry in each tuple in the configmap comprises a target version identifier.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2019
From: MAHAJAN, SUSHANT; KULKARNI, ANIRUDDHA
To: SAP SE
Reel/Frame 050133/0410 →
Continuity (1)
Related Publication 20210055947A1 · Feb 25, 2021
Cited By (1)
US 12,260,205