IP Library › Granted Patent US 12,625,701
Granted Patent B2
US 12,625,701 · App. 18/643,042 · Granted May 12, 2026

Providing self-managed operators

Inventors: Yan Fen Guo (Beijing, CN); Chao Feng Wu (Beijing, CN); Hui Huang (Beijing, CN); Song Bai (Beijing, CN); Xiang Cai (Beijing, CN); Xiao Jian Lian (Beijing, CN); Leela Prasad Chitta (Dublin, CA)
Assignee: International Business Machines Corporation
G06F8/71G06F8/65
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 12,625,701
App. No.
18/643,042
Filed
Apr 23, 2024
Granted
May 12, 2026
Kind
B2
Art Unit
2431
USPC
717/170
Abstract

Self-managed operators is provided. A set of sub-operators that a main operator depends on is selected from a plurality of predefined sub-operators based on an analysis of a new version of a custom resource definition in response to determining that a current version of the main operator does match a main operator version identified in the new version of the custom resource definition corresponding to the main operator based on the analysis of the custom resource definition. A sub-custom resource definition is generated for each respective sub-operator of the set of sub-operators that the main operator depends on based on the new version of the custom resource definition corresponding to the main operator. The set of sub-operators that the main operator depends on is launched automatically using the sub-custom resource definition of each respective sub-operator of the set of sub-operators.

Claims (65)

1 . A computer-implemented method for providing self-managed operators, the computer-implemented method comprising:

responsive to a computer, using a management role of a main operator, determining that a current version of the main operator does match a main operator version identified in a new version of a custom resource definition corresponding to the main operator based on an analysis of the custom resource definition, selecting, by the computer, using the management role of the main operator, a set of sub-operators that the main operator depends on from a plurality of predefined sub-operators based on the analysis of the new version of the custom resource definition;

generating, by the computer, using a function role of the main operator, a sub-custom resource definition for each respective sub-operator of the set of sub-operators that the main operator depends on based on the new version of the custom resource definition corresponding to the main operator; and

launching, by the computer, using the management role of the main operator, the set of sub-operators that the main operator depends on automatically using the sub-custom resource definition of each respective sub-operator of the set of sub-operators.

2 . The computer-implemented method of claim 1 , further comprising:

detecting, by the computer, using the management role of the main operator, that the custom resource definition corresponding to the main operator was updated to the new version;

performing, by the computer, using the management role of the main operator, the analysis of the custom resource definition corresponding to the main operator that was updated to the new version; and

determining, by the computer, using the management role of the main operator, whether the current version of the main operator matches the main operator version identified in the new version of the custom resource definition based on the analysis of the custom resource definition.

3 . The computer-implemented method of claim 1 , further comprising:

responsive to the computer, using the management role of the main operator, determining that the current version of the main operator does not match the main operator version identified in the new version of the custom resource definition based on the analysis of the custom resource definition corresponding to the main operator, applying, by the computer, using the management role of the main operator, a new catalog source file to the main operator to automatically upgrade the main operator to the main operator version identified in the new version of the custom resource definition; and

updating, by the computer, using the management role of the main operator, a channel in a subscription of the main operator with the main operator version identified in the new version of the custom resource definition.

4 . The computer-implemented method of claim 1 , further comprising:

managing, by the computer, using the function role of the main operator, a set of components of an application that provides a set of services corresponding to the main operator and the set of sub-operators that the main operator depends on; and

recording, by the computer, using the function role of the main operator, a status of the main operator in an operator status configuration map.

5 . The computer-implemented method of claim 1 , further comprising:

monitoring, by the computer, using the management role of the main operator, a status of each respective sub-operator of the set of sub-operators that the main operator depends on in an operator status configuration map; and

determining, by the computer, using the management role of the main operator, whether a sub-operator of the set of sub-operators that the main operator depends on is in a ready for delete status based on the monitoring of the status of each respective sub-operator in the operator status configuration map.

6 . The computer-implemented method of claim 5 , further comprising:

responsive to the computer, using the management role of the main operator, determining that the sub-operator of the set of sub-operators that the main operator depends on is in the ready for delete status based on the monitoring of the status of each respective sub-operator in the operator status configuration map, deleting, by the computer, using the management role of the main operator, a sub-custom resource definition corresponding to the sub-operator of the set of sub-operators that is in the ready for delete status; and

deleting, by the computer, using the management role of the main operator, the sub-operator of the set of sub-operators that is in the ready for delete status by deleting a sub-subscription and cluster service version corresponding to the sub-operator.

7 . The computer-implemented method of claim 1 , wherein the management role automatically launches the set of sub-operators without launching any other sub-operators of the plurality of predefined sub-operators preventing unnecessary resource consumption by any of the other sub-operators.

8 . The computer-implemented method of claim 1 , wherein the custom resource definition corresponding to the main operator includes added parameters of subscription and catalog source that contain information needed for the main operator to automatically upgrade to a newer version and launch sub-operator dependencies.

9 . A computer system for providing self-managed operators, the computer system comprising:

a communication fabric;

a set of computer-readable storage media connected to the communication fabric, wherein the set of computer-readable storage media collectively stores program instructions; and

a set of processors connected to the communication fabric, wherein the set of processors executes the program instructions to:

select, using a management role of a main operator, a set of sub-operators that a main operator depends on from a plurality of predefined sub-operators based on an analysis of a new version of a custom resource definition in response to determining that a current version of the main operator does match a main operator version identified in the new version of the custom resource definition corresponding to the main operator based on the analysis of the custom resource definition;

generate, using a function role of the main operator, a sub-custom resource definition for each respective sub-operator of the set of sub-operators that the main operator depends on based on the new version of the custom resource definition corresponding to the main operator; and

launch, using the management role of the main operator, the set of sub-operators that the main operator depends on automatically using the sub-custom resource definition of each respective sub-operator of the set of sub-operators.

10 . The computer system of claim 9 , wherein the set of processors further executes the program instructions to:

detect, using the management role of the main operator, that the custom resource definition corresponding to the main operator was updated to the new version;

perform, using the management role of the main operator, the analysis of the custom resource definition corresponding to the main operator that was updated to the new version; and

determine, using the management role of the main operator, whether the current version of the main operator matches the main operator version identified in the new version of the custom resource definition based on the analysis of the custom resource definition.

11 . The computer system of claim 9 , wherein the set of processors further executes the program instructions to:

apply, using the management role of the main operator, a new catalog source file to the main operator to automatically upgrade the main operator to the main operator version identified in the new version of the custom resource definition in response to determining that the current version of the main operator does not match the main operator version identified in the new version of the custom resource definition based on the analysis of the custom resource definition corresponding to the main operator; and

update, using the management role of the main operator, a channel in a subscription of the main operator with the main operator version identified in the new version of the custom resource definition.

12 . The computer system of claim 9 , wherein the set of processors further executes the program instructions to:

manage, using the function role of the main operator, a set of components of an application that provides a set of services corresponding to the main operator and the set of sub-operators that the main operator depends on; and

record, using the function role of the main operator, a status of the main operator in an operator status configuration map.

13 . The computer system of claim 9 , wherein the set of processors further executes the program instructions to:

monitor, using the management role of the main operator, a status of each respective sub-operator of the set of sub-operators that the main operator depends on in an operator status configuration map; and

determine, using the management role of the main operator, whether a sub-operator of the set of sub-operators that the main operator depends on is in a ready for delete status based on monitoring the status of each respective sub-operator in the operator status configuration map.

14 . The computer system of claim 13 , wherein the set of processors further executes the program instructions to:

delete, using the management role of the main operator, a sub-custom resource definition corresponding to the sub-operator of the set of sub-operators that is in the ready for delete status in response to determining that the sub-operator of the set of sub-operators that the main operator depends on is in the ready for delete status based on the monitoring of the status of each respective sub-operator in the operator status configuration map; and

delete, using the management role of the main operator, the sub-operator of the set of sub-operators that is in the ready for delete status by deleting a sub-subscription and cluster service version corresponding to the sub-operator.

15 . A computer program product for providing self-managed operators, the computer program product comprising a set of computer-readable storage media having program instructions collectively stored therein, the program instructions executable by a computer to cause the computer to:

select, using a management role of a main operator, a set of sub-operators that a main operator depends on from a plurality of predefined sub-operators based on an analysis of a new version of a custom resource definition in response to determining that a current version of the main operator does match a main operator version identified in the new version of the custom resource definition corresponding to the main operator based on the analysis of the custom resource definition;

generate, using a function role of the main operator, a sub-custom resource definition for each respective sub-operator of the set of sub-operators that the main operator depends on based on the new version of the custom resource definition corresponding to the main operator; and

launch, using the management role of the main operator, the set of sub-operators that the main operator depends on automatically using the sub-custom resource definition of each respective sub-operator of the set of sub-operators.

16 . The computer program product of claim 15 , wherein the program instructions further cause the computer to:

detect, using the management role of the main operator, that the custom resource definition corresponding to the main operator was updated to the new version;

perform, using the management role of the main operator, the analysis of the custom resource definition corresponding to the main operator that was updated to the new version; and

determine, using the management role of the main operator, whether the current version of the main operator matches the main operator version identified in the new version of the custom resource definition based on the analysis of the custom resource definition.

17 . The computer program product of claim 15 , wherein the program instructions further cause the computer to:

apply, using the management role of the main operator, a new catalog source file to the main operator to automatically upgrade the main operator to the main operator version identified in the new version of the custom resource definition in response to determining that the current version of the main operator does not match the main operator version identified in the new version of the custom resource definition based on the analysis of the custom resource definition corresponding to the main operator; and

update, using the management role of the main operator, a channel in a subscription of the main operator with the main operator version identified in the new version of the custom resource definition.

18 . The computer program product of claim 15 , wherein the program instructions further cause the computer to:

manage, using the function role of the main operator, a set of components of an application that provides a set of services corresponding to the main operator and the set of sub-operators that the main operator depends on; and

record, using the function role of the main operator, a status of the main operator in an operator status configuration map.

19 . The computer program product of claim 15 , wherein the program instructions further cause the computer to:

monitor, using the management role of the main operator, a status of each respective sub-operator of the set of sub-operators that the main operator depends on in an operator status configuration map; and

determine, using the management role of the main operator, whether a sub-operator of the set of sub-operators that the main operator depends on is in a ready for delete status based on monitoring the status of each respective sub-operator in the operator status configuration map.

20 . The computer program product of claim 19 , wherein the program instructions further cause the computer to:

delete, using the management role of the main operator, a sub-custom resource definition corresponding to the sub-operator of the set of sub-operators that is in the ready for delete status in response to determining that the sub-operator of the set of sub-operators that the main operator depends on is in the ready for delete status based on the monitoring of the status of each respective sub-operator in the operator status configuration map; and

delete, using the management role of the main operator, the sub-operator of the set of sub-operators that is in the ready for delete status by deleting a sub-subscription and cluster service version corresponding to the sub-operator.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2024
From: GUO, YAN FEN; WU, CHAO FENG; HUANG, HUI; BAI, SONG; CAI, XIANG; LIAN, XIAO JIAN; CHITTA, LEELA PRASAD
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 067192/0161 →
Continuity (1)
Related Publication 20250328339A1 · Oct 23, 2025
References Cited (31)
US 6678882B1 · Hurley · 2004 [cited by examiner]
US 7350226B2 · Moriconi · 2008 [cited by examiner]
US 9135000B2 · Weatherhead · 2015 [cited by examiner]
US 10374978B2 · Jaisinghani · 2019 [cited by applicant]
US 11074091B1 · Nayakbomman · 2021 [cited by examiner]
US 12561125B2 · Vohra · 2026 [cited by examiner]
US 20070294385A1 · Kapadekar · 2007 [cited by examiner]
US 20130152047A1 · Moorthi · 2013 [cited by examiner]
US 20160132805A1 · Delacourt · 2016 [cited by examiner]
US 20160142482A1 · Mehta · 2016 [cited by examiner]
US 20170034023A1 · Nickolov · 2017 [cited by examiner]
US 20190342162A1 · Bendre · 2019 [cited by examiner]
US 20210311763A1 · Beard · 2021 [cited by examiner]
US 20210334085A1 · Vessels · 2021 [cited by examiner]
US 20220050675A1 · Tamir · 2022 [cited by examiner]
US 20220066764A1 · Rosenzwig et al. · 2022 [cited by applicant]
US 20220329616A1 · O'Hearn · 2022 [cited by examiner]
US 20220357938A1 · Lanford et al. · 2022 [cited by applicant]
US 20220382539A1 · Gumashta · 2022 [cited by examiner]
US 20230129217A1 · Bregman et al. · 2023 [cited by applicant]
US 20230195444A1 · Vohra · 2023 [cited by examiner]
US 20230385044A1 · Antinori et al. · 2023 [cited by applicant]
US 20240028412A1 · Xu et al. · 2024 [cited by applicant]
US 20240289111A1 · Kaveri Poompatnam Chandrasekaran · 2024 [cited by examiner]
US 20240361907A1 · Fetik · 2024 [cited by examiner]
Hamada, Takeo. Dynamic role creation from role class hierarchy-security management of service session in dynamic service environment. Proceedings TINA '97—Global Convergence of Telecommunications and Distributed Object … [cited by examiner]
Agbariah, Saeed M. Policy exchange and management for Policy Compliance and Change Detection System in managed service in data networks. The 2014 International Symposium on Networks, Computers and Communications. https:… [cited by examiner]
Author unknown, “Best Practices Operator Lifecycle Manager,” Operator Framework, 2024, 2 pages, operatorframework.io, accessed Mar. 28, 2024, https://olm.operatorframework.io/docs/best-practices/. [cited by applicant]
Author unknown, “Operand deployment lifecycle manager,” GitHub, Feb. 8, 2024, 5 pages, github.com, accessed Mar. 28, 2024, https://github.com/IBM/operand-deployment-lifecycle-manager. [cited by applicant]
Author unknown, “Operator cannot be upgraded with the error ‘Cannot update: CatalogSource was removed’ while the CatalogSource exists in OpenShift 4,” Red Hat Customer Portal, Dec. 14, 2023, 2 pages, redhat.com, accesse… [cited by applicant]
Author unknown, “Upgrading operators in offline environment,” IBM Documentation, Jan. 25, 2024, ppp. 1-5, ibm.com, accessed Apr. 9, 2024, https://ibmdocs-test.dcs.ibm.com/docs/en/cloud-paks/cp-biz-automation/23.0.1?topi… [cited by applicant]