IP Library › Granted Patent US 11,372,668
Granted Patent B2
US 11,372,668 · App. 16/838,526 · Granted Jun 28, 2022

Management of a container image registry in a virtualized computer system

Inventors: Yanping Cao (San Carlos, CA); Mark Russell Johnson (McKinleyville, CA); Pratik Kapadia (Sunnyvale, CA); Xiaoyun An (Mountain View, CA)
Assignee: VMware, Inc.
G06F9/45558G06F8/63G06F9/5027G06F9/54G06F2009/45591G06F2009/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,372,668
App. No.
16/838,526
Granted
Jun 28, 2022
Kind
B2
Abstract

A container image registry is managed in a virtualized computing system. The container image registry manages container images for deploying containers in a host cluster, the host cluster includes hosts and a virtualization layer executing on hardware platforms of the hosts, and the virtualization layer supports execution of virtual machines (VMs). The method includes: creating a namespace for an orchestration control plane integrated with the virtualization layer, the namespace including constraints for deploying workloads in the VMs; invoking, by a registry service in response to creation of the namespace, a management application programming interface (API) of the container image registry to create a project for the container images; and invoking, by the registry service, the management API of the container image registry to both add members to the project, and assign image registry roles to the members, in response to bindings of users and namespace roles derived from the constraints.

Claims (45)

1. A method of managing a container image registry in a virtualized computing system, the container image registry managing container images for deploying containers in a host cluster, the host cluster including hosts and a virtualization layer executing on hardware platforms of the hosts, the virtualization layer supporting execution of virtual machines (VMs), the method comprising:

creating, by a virtualization management server managing the host cluster, a namespace for an orchestration control plane integrated with the virtualization layer, the namespace including constraints;

invoking, by a registry service executing in the virtualization management server in response to creation of the namespace, a management application programming interface (API) of the container image registry to create a project for the container images;

invoking, by the registry service, an administrative API (admin API) of a registry agent, the registry agent in turn invoking the management API of the container image registry to both add members to the project, and assign image registry roles to the members, in response to bindings of users and namespace roles derived from the constraints; and

deploying workloads in the VMs within the constraints of the namespace, the workloads comprising the containers.

2. The method of claim 1 , wherein the registry agent executes in a master server of the orchestration control plane.

3. The method of claim 2 , further comprising:

detecting, by the registry agent, an update to the bindings;

invoking, by the registry agent, an API of the registry service of the update to the bindings; and

invoking, by the registry service through the registry agent, the management API of the container image registry to update the members of the project, the image registry roles assigned to the members, or both in response to the update to the bindings.

4. The method of claim 1 , wherein a master server of the orchestration control plane includes an API server having the admin API, and wherein the API server forwards calls of the admin API by the registry service to the registry agent.

5. The method of claim 4 , further comprising:

identifying, by the registry service, an update to the bindings; and

calling, by the registry service, the admin API of the registry agent to instruct the registry agent to call the management API of the container image registry to update the members of the project, the image registry roles assigned to the members, or both in response to the update to the bindings.

6. The method of claim 1 , wherein the image registry roles of the container image registry include a first role having both push and pull image access and a second role having only pull image access, and wherein an edit role of the namespace roles is mapped to the first role and a view role of the namespace roles is mapped to the second role.

7. 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 managing a container image registry in a virtualized computing system, the container image registry managing container images for deploying containers in a host cluster, the host cluster including hosts and a virtualization layer executing on hardware platforms of the hosts, the virtualization layer supporting execution of virtual machines (VMs), the method comprising:

creating, by a virtualization management server managing the host cluster, a namespace for an orchestration control plane integrated with the virtualization layer, the namespace including constraints;

invoking, by a registry service, an administrative API (admin API) of a registry agent, the registry agent in turn invoking executing in the virtualization management server in response to creation of the namespace, a management application programming interface (API) of the container image registry to create a project for the container images;

invoking, by the registry service, the management API of the container image registry to both add members to the project, and assign image registry roles to the members, in response to bindings of users and namespace roles derived from the constraints;

deploying workloads in the VMs within the constraints of the namespace, the workloads comprising the containers.

8. The non-transitory computer readable medium of claim 7 , wherein the registry agent executes in a master server of the orchestration control plane.

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

detecting, by the registry agent, an update to the bindings;

invoking, by the registry agent, an API of the registry service of the update to the bindings; and

invoking, by the registry service through the registry agent, the management API of the container image registry to update the members of the project, the image registry roles assigned to the members, or both in response to the update to the bindings.

10. The non-transitory computer readable medium of claim 7 , wherein a master server of the orchestration control plane includes an API server having the admin API, and wherein the API server forwards calls of the admin API by the registry service to the registry agent.

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

identifying, by the registry service, an update to the bindings; and

calling, by the registry service, the admin API of the registry agent to instruct the registry agent to call the management API of the container image registry to update the members of the project, the image registry roles assigned to the members, or both in response to the update to the bindings.

12. The non-transitory computer readable medium of claim 7 , wherein the image registry roles of the container image registry include a first role having both push and pull image access and a second role having only pull image access, and wherein an edit role of the namespace roles is mapped to the first role and a view role of the namespace roles is mapped to the second role.

13. A virtualized computing system having a container image registry and a host cluster, the host cluster including hosts and a virtualization layer executing on hardware platforms of the hosts, the virtualization layer supporting execution of virtual machines (VMs), the container image registry managing container images for deploying containers in the host cluster, the virtualized computing system comprising:

a virtualization management server configured to manage the host cluster, the virtualization management server configured to create a namespace for an orchestration control plane integrated with the virtualization layer, the namespace including constraints;

workloads deployed in VMs within the constraints of the namespace, the workloads comprising the containers; and

a registry service executing in the virtualization management server, the registry service configured to:

invoke, in response to creation of the namespace, an administrative API (admin API) of a registry agent, the registry agent in turn invoking a management application programming interface (API) of the container image registry to create a project for the container images; and

invoke the management API of the container image registry to both add members to the project, and assign image registry roles to the members, in response to bindings of users and namespace roles derived from the constraints.

14. The virtualized computing system of claim 13 , wherein the registry agent executes in a master server of the orchestration control plane.

15. The virtualized computing system of claim 14 , wherein the registry service is further configured to:

detect an update to the bindings;

invoke an API of the registry service of the update to the bindings; and

invoke, through the registry agent, the management API of the container image registry to update the members of the project, the image registry roles assigned to the members, or both in response to the update to the bindings.

16. The virtualized computing system of claim 13 , wherein a master server of the orchestration control plane includes an API server having the admin API, and wherein the API server forwards calls of the admin API by the registry service to the registry agent.

17. The virtualized computing system of claim 16 , wherein the registry service is further configured to:

identify an update to the bindings; and

call the admin API of the registry agent to instruct the registry agent to call the management API of the container image registry to update the members of the project, the image registry roles assigned to the members, or both in response to the update to the bindings.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2020
From: CAO, YANPING; JOHNSON, MARK RUSSELL; KAPADIA, PRATIK; AN, XIAOYUN
To: VMWARE, INC.
Reel/Frame 052776/0629 →
Continuity (1)
Related Publication 20210311758A1 · Oct 7, 2021
Cited By (1)
US 12,379,917