IP Library › Granted Patent US 12,613,723
Granted Patent B2
US 12,613,723 · App. 17/722,417 · Granted Apr 28, 2026

Autonomous cluster control plane in a virtualized computing system

Inventors: Sandeep Sinha (Bangalore, IN); Akash Kodenkiri (Bangalore, IN); Varun Rajasekar (Chennai, IN); Prachi Singhal (Bangalore, IN); Ivailo Vladimirov Loboshki (Sofia, BG); Dimitar Dimitrov (Sofia, BG); Hakan Sunay Halil (Sofia, BG)
Assignee: VMware LLC
G06F9/45558G06F9/45545G06F9/5072G06F2009/4557
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,613,723
App. No.
17/722,417
Granted
Apr 28, 2026
Kind
B2
Abstract

An example method of creating an autonomous cluster of hosts in a virtualized computing system includes: enabling, by a virtualization management server executing a cross cluster control plane (xCCP), an infravisor in a seed host of the hosts, the infravisor a component of a hypervisor executing on the seed host; running, by the infravisor, a cluster control plane (CCP) pod on the seed host executing a CCP; providing, by the infravisor, a CCP configuration to the CCP pod; applying, by an initialization script of the CCP pod, the CCP configuration to the CCP to create the autonomous cluster having the seed host as a single node thereof; and extending the autonomous cluster with remaining hosts of the hosts other than the seed host as additional nodes thereof, the CCP applying a cluster personality to each of the remaining hosts derived from the seed host.

Claims (57)

1 . A method of creating an autonomous cluster of hosts in a virtualized computing system, comprising:

enabling, by a virtualization management server executing a cross cluster control plane (xCCP), an infravisor in a seed host of the hosts, the infravisor a component of a hypervisor executing on the seed host;

running, by the infravisor, a cluster control plane (CCP) pod on the seed host, the CCP pod executing a CCP, the CCP pod being a virtual machine (VM) and including a kernel, a container engine, which is configured to execute the CCP as one or more containers, and an agent, which is configured to cooperate with the infravisor;

providing, by the infravisor, a CCP configuration to the agent of the CCP pod;

applying, by an initialization script of the CCP pod executed by the kernel of the CCP pod, the CCP configuration to the CCP to create the autonomous cluster having the seed host as a single node thereof, the initialization script using first data of the CCP configuration to start services of the CCP pod in the one or more containers and second data of the CCP configuration for configuring the services to establish the CCP as a control plane for the autonomous cluster; and

extending the autonomous cluster with remaining hosts of the hosts other than the seed host as additional nodes thereof, the CCP applying a cluster personality to each of the remaining hosts derived from the seed host.

2 . The method of claim 1 , wherein the CCP pod comprises a pod virtual machine (VM), the pod VM having a pod VM agent and a container executing therein, the CCP executing in the container, the pod VM agent configured to cooperate with the infravisor to monitor health of the CCP.

3 . The method of claim 1 , further comprising:

persisting, by a host control plane (HCP) in the hypervisor of the seed host, a CCP software installation bundle (SIB) to local storage of the seed host;

deploying, by the infravisor, a pod virtual machine (VM), implementing the CCP pod, from the CCP SIB.

4 . The method of claim 3 , further comprising:

generating, by the infravisor, a pod VM specification for the pod VM from a pod deployment specification associated with the CCP SIB.

5 . The method of claim 3 , further comprising:

receiving, at the HCP, a pod deployment configuration from the xCCP; and

configuring, by the infravisor, the pod VM using the pod deployment configuration, the pod deployment configuration including network settings for the pod VM and storage settings for a persistent volume and at least one projected volume.

6 . The method of claim 5 , wherein the at least one projected volume stores the CCP configuration, and wherein the persistent volume stores database data for a database of the CCP and the cluster personality.

7 . The method of claim 1 , wherein the step of applying comprises, by the initialization script:

reading initial configuration from at least one projected volume attached to the CCP pod;

setting installation parameters for CCP services of the CCP based on the initial configuration;

starting the CCP services;

reading post-deployment configuration from the at least one projected volume;

generating a desired state of the CCP from the post-deployment configuration; and

remediating the CCP according to the desired state.

8 . A non-transitory computer readable medium comprising instructions to be executed in a computing device to cause the computing device to carry out a method of creating an autonomous cluster of hosts in a virtualized computing system, comprising:

enabling, by a virtualization management server executing a cross cluster control plane (xCCP), an infravisor in a seed host of the hosts, the infravisor a component of a hypervisor executing on the seed host;

running, by the infravisor, a cluster control plane (CCP) pod on the seed host, the CCP pod executing a CCP, the CCP pod being a virtual machine (VM) and including a kernel, a container engine, which is configured to execute the CCP as one or more containers, and an agent, which is configured to cooperate with the infravisor;

providing, by the infravisor, a CCP configuration to the agent of the CCP pod;

applying, by an initialization script of the CCP pod executed by the kernel of the CCP pod, the CCP configuration to the CCP to create the autonomous cluster having the seed host as a single node thereof, the initialization script using first data of the CCP configuration to start services of the CCP pod in the one or more containers and second data of the CCP configuration for configuring the services to establish the CCP as a control plane for the autonomous cluster; and

extending the autonomous cluster with remaining hosts of the hosts other than the seed host as additional nodes thereof, the CCP applying a cluster personality to each of the remaining hosts derived from the seed host.

9 . The non-transitory computer readable medium of claim 8 , wherein the CCP pod comprises a pod virtual machine (VM), the pod VM having a pod VM agent and a container executing therein, the CCP executing in the container, the pod VM agent configured to cooperate with the infravisor to monitor health of the CCP.

10 . The non-transitory computer readable medium of claim 8 , further comprising:

persisting, by a host control plane (HCP) in the hypervisor of the seed host, a CCP software installation bundle (SIB) to local storage of the seed host;

deploying, by the infravisor, a pod virtual machine (VM), implementing the CCP pod, from the CCP SIB.

11 . The non-transitory computer readable medium of claim 10 , further comprising:

generating, by the infravisor, a pod VM specification for the pod VM from a pod deployment specification associated with the CCP SIB.

12 . The non-transitory computer readable medium of claim 10 , further comprising:

receiving, at the HCP, a pod deployment configuration from the xCCP; and

configuring, by the infravisor, the pod VM using the pod deployment configuration, the pod deployment configuration including network settings for the pod VM and storage settings for a persistent volume and at least one projected volume.

13 . The non-transitory computer readable medium of claim 12 , wherein the at least one projected volume stores the CCP configuration, and wherein the persistent volume stores database data for a database of the CCP and the cluster personality.

14 . The non-transitory computer readable medium of claim 8 , wherein the step of applying comprises, by the initialization script:

reading initial configuration from at least one projected volume attached to the CCP pod;

setting installation parameters for CCP services of the CCP based on the initial configuration;

starting the CCP services;

reading post-deployment configuration from the at least one projected volume;

generating a desired state of the CCP from the post-deployment configuration; and

remediating the CCP according to the desired state.

15 . A virtualized computing system, comprising:

an autonomous cluster of hosts, each of the hosts having a hardware platform;

a virtualization management server executing a cross cluster control plane (xCCP); and

a seed host of the hosts including a hypervisor executing on the hardware platform of the seed host, the hypervisor having an infravisor enabled by the xCCP, the infravisor configured to run a cluster control plane (CCP) pod on the seed host, the CCP pod executing a CCP for the autonomous cluster, the infravisor configured to provide a CCP configuration to the CCP pod, the CCP pod being a virtual machine (VM) and including a kernel, a container engine, which is configured to execute the CCP as one or more containers, and an agent, which is configured to cooperate with the infravisor;

wherein the CCP pod includes an initialization script executed by the kernel of the CCP pod and configured to apply the CCP configuration to the CCP to create the autonomous cluster, the initialization script using first data of the CCP configuration to start services of the CCP pod in the one or more containers and second data of the CCP configuration for configuring the services to establish the CCP as a control plane for the autonomous cluster; and

wherein the CCP applies a cluster personality to each remaining host of the hosts other than the seed host, the cluster personality derived from the seed host.

16 . The virtualized computing system of claim 15 , wherein the CCP pod comprises a pod virtual machine (VM), the pod VM having a pod VM agent and a container executing therein, the CCP executing in the container, the pod VM agent configured to cooperate with the infravisor to monitor health of the CCP.

17 . The virtualized computing system of claim 15 , wherein the hypervisor includes a host control plane (HCP) configured to persist a CCP software installation bundle (SIB) to local storage of the seed host, and wherein the infravisor is configured to deploy a pod virtual machine (VM), implementing the CCP pod, from the CCP SIB.

18 . The virtualized computing system of claim 17 , wherein the infravisor is configured to generate a pod VM specification for the pod VM from a pod deployment specification associated with the CCP SIB.

19 . The virtualized computing system of claim 17 , wherein the HCP is configured to receive a pod deployment configuration from the xCCP, and wherein the infravisor configures the pod VM using the pod deployment configuration, the pod deployment configuration including network settings for the pod VM and storage settings for a persistent volume and at least one projected volume.

20 . The virtualized computing system of claim 19 , wherein the at least one projected volume stores the CCP configuration, and wherein the persistent volume stores database data for a database of the CCP and the cluster personality.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0242 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2022
From: SINHA, SANDEEP; KODENKIRI, AKASH; RAJASEKAR, VARUN; SINGHAL, PRACHI; LOBOSHKI, IVAILO VLADIMIROV; DIMITROV, DIMITAR; HALIL, HAKAN SUNAY
To: VMWARE, INC.
Reel/Frame 059617/0816 →
Priority Claims (1)
IN 202241002626 · Jan 17, 2022 · national
Continuity (1)
Related Publication 20230229482A1 · Jul 20, 2023
References Cited (24)
US 11016816B1 · Gupta · 2021 [cited by examiner]
US 20130125112A1 · Mittal · 2013 [cited by examiner]
US 20150063166A1 · Sif · 2015 [cited by examiner]
US 20150089034A1 · Stickle · 2015 [cited by examiner]
US 20180024537A1 · Chauvet · 2018 [cited by examiner]
US 20180063193A1 · Chandrashekhar et al. · 2018 [cited by applicant]
US 20180123900A1 · Dorr et al. · 2018 [cited by applicant]
US 20180262387A1 · Mathew et al. · 2018 [cited by applicant]
US 20190036868A1 · Chandrashekhar et al. · 2019 [cited by applicant]
US 20200007405A1 · Chitalia · 2020 [cited by examiner]
US 20200403915A1 · Boutros et al. · 2020 [cited by applicant]
US 20210224093A1 · Fu et al. · 2021 [cited by applicant]
US 20210281548A1 · Ackerly et al. · 2021 [cited by applicant]
US 20220006801A1 · Jankowski et al. · 2022 [cited by applicant]
US 20220100491A1 · Voltz · 2022 [cited by examiner]
US 20220164208A1 · Olmsted-Thompson · 2022 [cited by examiner]
US 20220188172A1 · Gupta et al. · 2022 [cited by applicant]
US 20220191025A1 · Srivastava et al. · 2022 [cited by applicant]
US 20220229687A1 · Singhal et al. · 2022 [cited by applicant]
US 20220322090A1 · Gorai et al. · 2022 [cited by applicant]
Kitahara, H. et al. “Real-time Container Integrity Monitoring for Large-Scale Kubernetes Cluster,” Journal of Information Processing, vol. 29, Sep. 2021, pp. 505-514. [cited by applicant]
Non-Final Office Action mailed Oct. 9, 2024 in U.S. Appl. No. 17/722,422, 14 pages. [cited by applicant]
Non-Final Office Action mailed Mar. 19, 2025 in U.S. Appl. No. 17/722,428, 27 pages. [cited by applicant]
Final Office Action mailed Jul. 9, 2025 in U.S. Appl. No. 17/722,428, 25 pages. [cited by applicant]