ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
Network Functions Virtualisation (NFV) Release 5; Protocols and Data Models; Specification of protocols and data models for Container Infrastructure Service Cluster Management
Network Functions Virtualisation (NFV) Release 5; Protocols and Data Models; Specification of protocols and data models for Container Infrastructure Service Cluster Management
RGS/NFV-SOL020ed511
General Information
Standards Content (Sample)
GROUP SPECIFICATION
Network Functions Virtualisation (NFV) Release 5;
Protocols and Data Models;
Specification of protocols and data models for
Container Infrastructure Service Cluster Management
Disclaimer
The present document has been produced and approved by the Network Functions Virtualisation (NFV) ETSI Industry
Specification Group (ISG) and represents the views of those members who participated in this ISG.
It does not necessarily represent the views of the entire ETSI membership.
2 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
Reference
RGS/NFV-SOL020ed511
Keywords
container, data models, MANO, NFV, protocol
ETSI
650 Route des Lucioles
F-06921 Sophia Antipolis Cedex - FRANCE
Tel.: +33 4 92 94 42 00 Fax: +33 4 93 65 47 16
Siret N° 348 623 562 00017 - APE 7112B
Association à but non lucratif enregistrée à la
Sous-Préfecture de Grasse (06) N° w061004871
Important notice
The present document can be downloaded from:
https://www.etsi.org/standards-search
The present document may be made available in electronic versions and/or in print. The content of any electronic and/or
print versions of the present document shall not be modified without the prior written authorization of ETSI. In case of any
existing or perceived difference in contents between such versions and/or in print, the prevailing version of an ETSI
deliverable is the one made publicly available in PDF format at www.etsi.org/deliver.
Users of the present document should be aware that the document may be subject to revision or change of status.
Information on the current status of this and other ETSI documents is available at
https://portal.etsi.org/TB/ETSIDeliverableStatus.aspx
If you find errors in the present document, please send your comment to one of the following services:
https://portal.etsi.org/People/CommiteeSupportStaff.aspx
If you find a security vulnerability in the present document, please report it through our
Coordinated Vulnerability Disclosure Program:
https://www.etsi.org/standards/coordinated-vulnerability-disclosure
Notice of disclaimer & limitation of liability
The information provided in the present deliverable is directed solely to professionals who have the appropriate degree of
experience to understand and interpret its content in accordance with generally accepted engineering or
other professional standard and applicable regulations.
No recommendation as to products and services or vendors is made or should be implied.
No representation or warranty is made that this deliverable is technically accurate or sufficient or conforms to any law
rule and/or regulation and further, no representation or warranty is made of merchantability or fitness
and/or governmental
for any particular purpose or against infringement of intellectual property rights.
In no event shall ETSI be held liable for loss of profits or any other incidental or consequential damages.
Any software contained in this deliverable is provided "AS IS" with no warranties, express or implied, including but not
limited to, the warranties of merchantability, fitness for a particular purpose and non-infringement of intellectual property
rights and ETSI shall not be held liable in any event for any damages whatsoever (including, without limitation, damages
for loss of profits, business interruption, loss of information, or any other pecuniary loss) arising out of or related to the use
of or inability to use the software.
Copyright Notification
No part may be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying and
microfilm except as authorized by written permission of ETSI.
The content of the PDF version shall not be modified without the written authorization of ETSI.
The copyright and the foregoing restriction extend to reproduction in all media.
© ETSI 2024.
All rights reserved.
ETSI
3 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
Contents
Intellectual Property Rights . 5
Foreword . 5
Modal verbs terminology . 5
1 Scope . 6
2 References . 6
2.1 Normative references . 6
2.2 Informative references . 6
3 Definition of terms, symbols and abbreviations . 7
3.1 Terms . 7
3.2 Symbols . 7
3.3 Abbreviations . 7
4 Overview . 8
4.1 Summary of ETSI GS NFV-IFA 036 . 8
4.2 Summary of ETSI GS NFV-IFA 010 . 8 ®
4.3 Profiled protocol and data model solution: Kubernetes Cluster API . 9
4.3.1 Introduction. 9
4.3.2 API structure . 9
4.3.3 Data model concepts . 10
5 NFV object models mapping to profiled solution objects . 10
5.1 CIS cluster object . 10
5.2 CIS cluster node object . 10
5.3 CISM instance object . 11
6 CIS cluster lifecycle management service interface . 11
6.1 Description . 11
6.2 API version . 11
6.3 Resource structure and methods . 12
6.4 Sequence diagrams (informative) . 14
6.4.1 Introduction. 14
6.4.2 Flow of creating a CIS cluster related NFV object . 14
6.4.3 Flow of querying information about CIS cluster . 15
6.4.4 Flow of modifying CIS cluster . 16
6.4.4.1 Flow of modifying a CIS cluster related NFV object . 16
6.4.4.2 Flow of replacing a CIS cluster related NFV object . 17
6.4.5 Flow of deleting a CIS cluster related NFV object . 17
6.5 Resources . 18
6.5.1 Introduction. 18
6.5.2 Resource: Cluster . 18
6.5.3 Resource: Machine . 19
6.5.4 Resource: MachineDeployment . 19
6.5.5 Resource: MachineSet . 20
6.5.6 Resource: MachinePool . 21
6.5.7 Resource: KubeadmControlPlane . 22
6.6 Data model . 22
7 CIS cluster configuration management service interface . 22
7.1 Description . 22
7.2 API version . 23
7.3 Resource structure and methods . 23
7.4 Sequence diagrams (informative) . 25
7.5 Resources . 25
7.5.1 Introduction. 25
7.5.2 Resource: ClusterResourceSet . 25
7.5.3 Resource: ClusterResourceSetBinding . 25
ETSI
4 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
7.5.4 Resource: KubeadmConfig . 26
7.6 Data model . 27
8 CIS cluster performance management service interface . 27
9 CIS cluster fault management service interface . 27
9.1 Description . 27
9.2 API version . 28
9.3 Resource structure and methods . 28
9.4 Sequence diagrams (informative) . 29
9.5 Resources . 29
9.5.1 Introduction. 29
9.5.2 Resource: Cluster . 29
9.5.3 Resource: Machine . 30
9.5.4 Resource: MachineHealthCheck . 31
9.6 Data model . 31
10 CIS cluster security management service interface . 32
10.1 Description . 32
10.2 Features profiling . 32
Annex A (informative): Analysis on the open-source solutions based on the CCM service
interface requirements . 33 ®
A.1 Kubernetes Cluster API . 33
A.1.1 Overview . 33 ®
A.1.2 Comparison of CCM service interface requirements and Kubernetes Cluster API capabilities . 33 ®
A.1.3 Comparison of CCM functional requirements and Kubernetes Cluster API capabilities . 36
A.2 Terraform . 38
A.2.1 Overview . 38
A.2.2 Comparison of CCM service interface requirements and Terraform capabilities . 39
A.2.3 Comparison of CCM functional requirements and Terraform capabilities . 42
A.3 Kubespray . 44
A.3.1 Overview . 44
A.3.2 Comparison of CCM service interface requirements and Kubespray capabilities . 44
A.3.3 Comparison of CCM functional requirements and Kubespray capabilities . 48 ®
A.4 Crossplane . 50
A.4.1 Overview . 50 ®
A.4.2 Comparison of CCM service interface requirements and Crossplane capabilities . 51 ®
A.4.3 Comparison of CCM functional requirements and Crossplane capabilities . 54 ®
A.5 OpenStack Tacker . 56
A.5.1 Overview . 56 ®
A.5.2 Comparison of CCM service interface requirements and OpenStack Tacker capabilities . 57 ®
A.5.3 Comparison of CCM functional requirements and OpenStack Tacker capabilities . 60
A.5.4 Capabilities of Tacker to manage CIS cluster . 62
A.5.4.1 Introduction. 62 ®
A.5.4.2 OpenStack Tacker architecture . 62
A.5.4.3 Managing VM based CIS cluster . 64
A.5.4.4 Managing bare-metal CIS cluster . 65
A.6 Comparison of the open-source solutions against the CCM service interface requirements . 65
A.7 Comparison of the open-source solutions against the CCM functional requirements . 67
Annex B (informative): The version supporting relationship between Cluster API and ®
Kubernetes . 69
Annex C (informative): Change History . 70
History . 71
ETSI
5 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
Intellectual Property Rights
Essential patents
IPRs essential or potentially essential to normative deliverables may have been declared to ETSI. The declarations
pertaining to these essential IPRs, if any, are publicly available for ETSI members and non-members, and can be
found in ETSI SR 000 314: "Intellectual Property Rights (IPRs); Essential, or potentially Essential, IPRs notified to
ETSI in respect of ETSI standards", which is available from the ETSI Secretariat. Latest updates are available on the
ETSI Web server (https://ipr.etsi.org/).
Pursuant to the ETSI Directives including the ETSI IPR Policy, no investigation regarding the essentiality of IPRs,
including IPR searches, has been carried out by ETSI. No guarantee can be given as to the existence of other IPRs not
referenced in ETSI SR 000 314 (or the updates on the ETSI Web server) which are, or may be, or may become,
essential to the present document.
Trademarks
The present document may include trademarks and/or tradenames which are asserted and/or registered by their owners.
ETSI claims no ownership of these except for any which are indicated as being the property of ETSI, and conveys no
right to use or reproduce any trademark and/or tradename. Mention of those trademarks in the present document does
not constitute an endorsement by ETSI of products, services or organizations associated with those trademarks.
DECT™, PLUGTESTS™, UMTS™ and the ETSI logo are trademarks of ETSI registered for the benefit of its
Members. 3GPP™ and LTE™ are trademarks of ETSI registered for the benefit of its Members and of the 3GPP
Organizational Partners. oneM2M™ logo is a trademark of ETSI registered for the benefit of its Members and of the ®
oneM2M Partners. GSM and the GSM logo are trademarks registered and owned by the GSM Association.
Foreword
This Group Specification (GS) has been produced by ETSI Industry Specification Group (ISG) Network Functions
Virtualisation (NFV).
Modal verbs terminology
In the present document "shall", "shall not", "should", "should not", "may", "need not", "will", "will not", "can" and
"cannot" are to be interpreted as described in clause 3.2 of the ETSI Drafting Rules (Verbal forms for the expression of
provisions).
"must" and "must not" are NOT allowed in ETSI deliverables except when used in direct citation.
ETSI
6 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
1 Scope
The present document specifies the service interfaces to fulfil the functional requirements of the container infrastructure
service cluster management (CIS Cluster Management, or CCM in abbreviation) as specified by ETSI
GS NFV-IFA 036 [1]. It analyses the NFV object model for CIS cluster management and the managed objects of the ®
referenced open-source solutions (e.g. Kubernetes cluster API) and provide a mapping between them. Based on the
analysis results, the referenced solutions are profiled for specifying the CIS cluster lifecycle, configuration,
performance, fault and security management service interfaces.
2 References
2.1 Normative references
References are either specific (identified by date of publication and/or edition number or version number) or
non-specific. For specific references, only the cited version applies. For non-specific references, the latest version of the
referenced document (including any amendments) applies.
Referenced documents which are not found to be publicly available in the expected location might be found at
https://docbox.etsi.org/Reference/.
NOTE: While any hyperlinks included in this clause were valid at the time of publication, ETSI cannot guarantee
their long term validity.
The following referenced documents are necessary for the application of the present document.
[1] ETSI GS NFV-IFA 036: "Network Functions Virtualisation (NFV) Release 5; Management and
Orchestration; Requirements for service interfaces and object model for container cluster
management and orchestration specification". ®
[2] Kubernetes Cluster API v1.6. ®
[3] Kubernetes API v1.28.
[4] ETSI GS NFV-IFA 040: "Network Functions Virtualisation (NFV) Release 5; Management and
Orchestration; Requirements for service interfaces and object model for OS container management
and orchestration specification". ®
[5] Kubernetes : "API Access Control". ®
[6] Kubernetes : "Auditing".
[7] ETSI GS NFV-IFA 045: "Network Functions Virtualisation (NFV) Release 4; Management and
Orchestration; Faults and alarms modelling specification".
2.2 Informative references
References are either specific (identified by date of publication and/or edition number or version number) or
non-specific. For specific references, only the cited version applies. For non-specific references, the latest version of the
referenced document (including any amendments) applies.
NOTE: While any hyperlinks included in this clause were valid at the time of publication, ETSI cannot guarantee
their long term validity.
The following referenced documents are not necessary for the application of the present document but they assist the
user with regard to a particular subject area.
[i.1] ETSI GR NFV 003: "Network Functions Virtualisation (NFV); Terminology for Main Concepts in
NFV".
ETSI
7 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
[i.2] ETSI GS NFV-SOL 002: "Network Functions Virtualisation (NFV) Release 5; Protocols and Data
Models; RESTful protocols specification for the Ve-Vnfm Reference Point".
[i.3] ETSI GS NFV-SOL 003 "Network Functions Virtualisation (NFV) Release 5; Protocols and Data
Models; RESTful protocols specification for the Or-Vnfm Reference Point".
[i.4] ETSI GS NFV-IFA 010: "Network Functions Virtualisation (NFV) Release 5; Management and
Orchestration; Functional requirements specification". ®
[i.5] OpenStack Tacker: "Virtualized Network Function Lifecycle Management Interface (VNF
LCM)".
NOTE: Based on ETSI GS NFV-SOL 003 V3.3.1. ®
[i.6] OpenStack Tacker: "Virtualized Network Function Performance Management Interface (VNF
PM)".
NOTE: Based on ETSI GS NFV-SOL 003 V3.3.1. ®
[i.7] OpenStack Tacker: "Virtualized Network Function Fault Management Interface (VNF FM)".
NOTE: Based on ETSI GS NFV-SOL 003 V3.3.1. ®
[i.8] Kubernetes documentation: "Kubeadm". ®
[i.9] OpenStack : "Tacker User Guide".
[i.10] ETSI GS NFV-SOL 014: "Network Functions Virtualisation (NFV) Release 5; Protocols and Data
Models; YAML data model specification for descriptor-based virtualised resource management".
3 Definition of terms, symbols and abbreviations
3.1 Terms
For the purposes of the present document, the terms given in ETSI GR NFV 003 [i.1] apply.
3.2 Symbols
Void.
3.3 Abbreviations
For the purposes of the present document, the abbreviations given in ETSI GR NFV 003 [i.1] and the following apply:
NOTE: An abbreviation defined in the present document takes precedence over the definition of the same
abbreviation, if any, in ETSI GR NFV 003 [i.1].
CCM CIS Cluster Management
RBAC Role Based Access Control
ETSI
8 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
4 Overview
4.1 Summary of ETSI GS NFV-IFA 036
ETSI GS NFV-IFA 036 [1] specifies the requirements on CIS cluster management service interfaces provided by the
CCM function:
1) CIS cluster lifecycle management.
2) CIS cluster configuration management.
3) CIS cluster performance management.
4) CIS cluster fault management.
5) CIS cluster security management.
Lifecycle management of CIS clusters produced by the CCM includes creating, modifying, deleting and querying CIS
clusters, as well as sending notifications about changes related to CIS clusters when consumer's subscribed events
occur. CIS clusters can be based on virtualised or physical compute resources. CCM is able to manage virtual, bare-
metal and hybrid CIS clusters.
Configuration management for the CIS cluster is produced by the CCM to its consumers during the lifecycle of the CIS
cluster. The configuration management operations include transferring and applying configuration information to the
CIS cluster, querying the configuration of the CIS cluster and subscribing/notifying the events in case of the change of
CIS cluster configurations.
The CIS cluster performance management is produced by the CCM to enable its consumers to collect performance
information on a given CIS cluster related object instance. The performance information results from performance
information of the virtualised resources that is collected from the VIM or performance information of bare-metal
resources that is collected from a management entity managing physical resources, and mapped by the CCM to this CIS
cluster related object instance.
The CIS cluster fault management is produced by the CCM to enable its consumers to collect CIS cluster fault
information. Virtualised resource alarms or physical resource alarms collected by the CCM will be filtered and
correlated by the CCM and mapped to the corresponding CIS cluster related object instances (e.g. CIS cluster node,
storage or network), resulting in alarms on corresponding CIS cluster.
Security management for the CIS cluster is produced by the CCM to its consumers. CCM is able to guarantee secure
communication among CIS cluster nodes, authenticate and authorize invocating CISM capabilities from external and/or
internal entities of CIS cluster by using configuration files and declarative descriptors representing Role Based Access
Control (RBAC) related information, and enable and configure the auditing of CIS cluster nodes.
4.2 Summary of ETSI GS NFV-IFA 010
ETSI GS NFV-IFA 010 [i.4] specifies that the following statements on the scope of the CCM function, part of
NFV-MANO, applies to all CCM related requirements:
• The CCM is responsible for the deployment, monitoring and lifecycle management of CIS clusters, the
lifecycle management of CISM instances of the CIS cluster, and allocation of instantiated infrastructure
resources for CIS cluster nodes.
• The CCM is responsible for the lifecycle management of MCCO for a CIS cluster, interacting directly with the
CIS cluster nodes or via the CISM.
• The CCM exposes corresponding APIs to its consumers and translates incoming request into operations which
are enforced towards the required actions to the CIS cluster.
• The CCM is further responsible to use information from declarative descriptors and configuration files of the
CIS cluster.
ETSI
9 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
The functional requirements on the CCM function are grouped into requirements per CCM management service:
• CIS cluster lifecycle;
• resource;
• configuration;
• descriptor;
• fault;
• performance; and
• capacity management.
According to the ETSI GS NFV-IFA 010 [i.4], more detailed information about the CCM services and the CIS cluster
NFV object model is provided in ETSI GS NFV-IFA 036 [1]. ®
4.3 Profiled protocol and data model solution: Kubernetes
Cluster API
4.3.1 Introduction ®
This clause provides an overview over the Kubernetes Cluster API (Cluster API, or CAPI in abbreviation) which is
profiled against the requirements of the CCM service interfaces as specified by ETSI GS NFV-IFA 036 [1]. The
overview covers the high-level API structure as well as the concepts for the data model of the managed resource
objects.
4.3.2 API structure
® ®
Kubernetes Cluster API [2] is a Kubernetes sub-project focused on providing declarative APIs and tooling to simplify
® ®
provisioning, upgrading, and operating multiple Kubernetes clusters. Started by the Kubernetes Special Interest
® ®
Group (SIG) Cluster Lifecycle as a Kubernetes add-on project, Cluster API also uses Kubernetes -style APIs and ®
follows Kubernetes basic patterns to leverage standard RESTful terminology to describe the API concepts:
• A resource type is the name used in the URL.
• All resource types have a representation in JSON (their object schema) which is called a kind.
• A list of instances of a resource type is known as a collection.
• A single instance of a resource type is called a resource, and also usually represents an object.
All resource types are either scoped by the CIS cluster (e.g. /apis/GROUP/VERSION/*) or to a namespace
(e.g. /apis/GROUP/VERSION/namespaces/NAMESPACE/*).
® ® ®
The Kubernetes API [3] supports read and write operations on the Kubernetes resource objects via a Kubernetes ®
API endpoint. A custom resource is an extension of the Kubernetes API that is not necessarily available in a default ®
Kubernetes installation. The Cluster API project defines a series of custom resource objects to automate cluster
lifecycle management.
Standard HTTP methods POST, PUT, PATCH, and DELETE support single resource (or custom resource) only. These
methods with single resource (or custom resource) support have no support for submitting multiple resources (or
custom resources) together in an ordered or unordered list or transaction.
A mapping of the Cluster API managed custom resource objects to the NFV object models is provided in clause 5 of the
present document.
ETSI
10 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
4.3.3 Data model concepts ®
Following Kubernetes [3] pattern for resource objects, the Cluster API managed custom resource objects are modelled
with individual object schemas. All custom resource objects defined in Cluster API project typically have
three components:
• Custom Resource ObjectMeta: The metadata about the Cluster API managed custom resource object, such ®
as its name, type, API version, annotations, and labels. This schema, which is common to all Kubernetes
resource and custom resource types, contains fields that may be updated both by the external user and the
Cluster API.
• Custom Resource Spec: Defined by the external user and describes the desired state of the system concerning
the Cluster API managed custom resource object. Specified when creating or modifying a Cluster API
managed custom resource object is requested.
• Custom Resource Status: Provided by the Cluster API and represents the current state of the system
concerning the Cluster API managed custom resource object.
5 NFV object models mapping to profiled solution
objects
5.1 CIS cluster object ®
Selected Kubernetes Cluster API custom resource object is identified to map to the CIS cluster object of the NFV ®
object model, see clauses 4.2 and 5.1 in ETSI GS NFV-IFA 036 [1]. Table 5.1-1 lists the Kubernetes Cluster API
custom resource objects which is mapped to the NFV CIS cluster object type.
Table 5.1-1: CAPI custom resource object mapped to NFV CIS cluster object
CAPI custom CAPI custom resource URI CAPI custom resource object description
resource object kind ®
Cluster /apis/cluster.x-k8s.io/v1beta1/clusters Represents a Kubernetes cluster with necessary
configuration parameters. ®
A Kubernetes cluster is a grouping of Nodes. ®
Kubernetes could orchestrate containerized
workload on these Nodes.
5.2 CIS cluster node object ®
Selected Kubernetes Cluster API custom resource objects are identified to map to the CIS cluster node object of the ®
NFV object model, see clauses 4.2 and 5.1 in ETSI GS NFV-IFA 036 [1]. Table 5.2-1 lists the Kubernetes Cluster API
custom resource objects which are mapped to the NFV CIS cluster node object type.
Table 5.2-1: CAPI custom resource objects mapped to NFV CIS cluster node object
CAPI custom CAPI custom resource URI CAPI custom resource object
resource object kind description
Machine /apis/cluster.x-k8s.io/v1beta1/machines Represents an infrastructure ®
component hosting a Kubernetes
Node (for example, a Virtual Machine
(VM) or a Bare-Metal (BM) server).
MachineDeployment /apis/cluster.x-k8s.io/v1beta1/machinedeployments Represents a set of Machines
MachineSet /apis/cluster.x-k8s.io/v1beta1/machinesets Represents a stable set of Machines
ETSI
11 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
5.3 CISM instance object ®
Selected Kubernetes Cluster API custom resource object is identified to map to the CISM instance object of the NFV
object model, see clauses 4.2 and 5.1 in ETSI GS NFV-IFA 036 [1].
The CISM function offers OS container management services as described in ETSI GS NFV-IFA 040 [4]. A CIS cluster
has one or more instances of the CISM which manages workloads deployed in its CIS cluster. The CISM instance is
also responsible for managing the CIS instances. A CIS cluster has at least one CIS cluster node hosting a CIS instance
and one CISM instance for the management [1]. ®
In Kubernetes Cluster API, the control plane is mapped to the NFV CISM instance object. The control plane in CAPI ®
is a set of components that serve the Kubernetes API [2]. In CAPI, Kubeadm [i.8] is used to bootstrap the control ®
plane in the default method [2]. Table 5.3-1 lists the Kubernetes Cluster API custom resource object which is mapped
to the NFV CISM instance object type.
Table 5.3-1: CAPI custom resource object mapped to NFV CISM instance object
CAPI custom CAPI custom resource URI CAPI custom resource object
resource object kind description
KubeadmControlPlane /apis/controlplane.cluster.x-k8s.io/v1beta1/ Represents a set of components that ®
kubeadmcontrolplanes serve the Kubernetes API, which is
bootstrapped by Kubeadm.
(see note)
NOTE: In CAPI, Kubeadm is not the only way for bootstrapping the control plane. Providers could provide their own
kind of control plane instead of the default CAPI custom resource object KubeadmControlPlane. Other kind
of control plane (than KubeadmControlPlane) may have dependency on specific deployment environment.
6 CIS cluster lifecycle management service interface
6.1 Description
This interface allows the API consumer to invoke CIS cluster lifecycle management operations towards the API ®
producer. Kubernetes Cluster API custom resource objects identified as CIS cluster related NFV objects (e.g. CIS
cluster object, CIS cluster node object, and CISM instance object) are listed in clause 5 of the present document.
The operations provided through this interface are:
• Create CIS cluster.
• Query information about CIS cluster.
• Modify CIS cluster.
• Delete CIS cluster.
• Send notifications in the event of changes to a CIS cluster.
NOTE: ETSI GS NFV-IFA 036 [1] specifies that the CCM requests the NFVO to grant the process of resource
management. This granting operation is not supported by the profiled solution CAPI, which is recognized
as a gap in the analysis in the present document.
6.2 API version ®
The API {VERSION} for the profiled Kubernetes Cluster API [2] custom resource objects identified as CIS cluster
related NFV objects shall be set to "v1beta1". Details on the API structure are specified in clause 4.3.2 of the present
document.
ETSI
12 ETSI GS NFV-SOL 020 V5.1.1 (2024-07) ®
The corresponding Kubernetes Cluster API roots are specified as:
/apis/cluster.x-k8s.io/v1beta1
/apis/controlplane.cluster.x-k8s.io/v1beta1
6.3 Resource structure and methods ®
Figures 6.3-1, 6.3-2, 6.3-3 and 6.3-4 show the overall resource URI structures for the profiled Kubernetes Cluster API
[2] for the CIS cluster lifecycle management service interface.
Figure 6.3-1: Resource URI structure of Cluster resource object
for the CIS cluster lifecycle management service interface
Figure 6.3-2: Resource URI structure of Machine, MachineDeployment and MachineSet
resource objects for the CIS cluster lifecycle management service interface
Figure 6.3-3: Resource URI structure of MachinePool resource objects
for the CIS cluster lifecycle management service interface
Figure 6.3-4: Resource URI structure of KubeadmControlPlane resource object
for the CIS cluster lifecycle management service interface
Table 6.3-1 lists the individual resources defined, and the applicable HTTP methods.
ETSI
13 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
The CCM supports responding to requests for all HTTP methods on the resources in Table 6.3-1 that are marked as "M"
(mandatory) in the "Cat" column.
Table 6.3-1: Resources and methods overview
of the CIS cluster lifecycle management service interface
Resource name Resource URI HTTP Method Cat Meaning
Cluster /clusters GET M List multiple Cluster
instances.
POST M Create a new "Individual Cluster
instance" resource.
Individual Cluster /clusters/{name} GET M Get information about the
instance desired and actual state of an
"Individual Cluster instance"
resource.
PATCH M Modify the desired or actual
state of an "Individual Cluster
instance" resource.
PUT M Replace an "Individual Cluster
instance" resource.
DELETE M Delete an "Individual Cluster
instance" resource.
Machine /machines GET M List multiple Machine
instances.
POST M Create a new "Individual
Machine instance" resource.
Individual Machine /machines/{name} GET M Get information about the
instance desired and actual state of an
"Individual Machine instance"
resource.
PATCH M Modify the desired or actual
state of an "Individual Machine
instance" resource.
PUT M Replace an "Individual Machine
instance" resource.
DELETE M Delete an "Individual Machine
instance" resource.
MachineDeployment /machinedeployments GET M List multiple
MachineDeployment instances.
POST M Create a new "Individual
MachineDeployment instance"
resource.
Individual /machinedeployments/{name} GET M Get information about the
MachineDeployment desired and actual state of an
instance "Individual MachineDeployment
instance" resource.
PATCH M Modify the desired or actual
state of an "Individual
MachineDeployment instance"
resource.
PUT M Replace an "Individual
MachineDeployment instance"
resource.
DELETE M Delete an "Individual
MachineDeployment instance"
resource.
MachineSet /machinesets GET M List multiple MachineSet
instances.
POST M Create a new "Individual
MachineSet instance" resource.
Individual MachineSet /machinesets/{name} GET M Get information about the
instance desired and actual state of an
"Individual MachineSet
instance" resource.
PATCH M Modify the desired or actual
state of an "Individual
MachineSet instance" resource.
ETSI
14 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
Resource name Resource URI HTTP Method Cat Meaning
PUT M Replace an "Individual
MachineSet instance" resource.
DELETE M Delete an "Individual
MachineSet instance" resource.
MachinePool /machinepools GET M List multiple MachinePool
instances.
POST M Create a new "Individual
MachinePool instance"
resource.
Individual MachinePool /machinepools/{name} GET M Get information about the
instance desired and actual state of an
"Individual MachinePool
instance" resource.
PATCH M Modify the desired or actual
state of an "Individual
MachinePool instance"
resource.
PUT M Replace an "Individual
MachinePool instance"
resource.
DELETE M Delete an "Individual
MachinePool instance"
resource.
KubeadmControlPlane /kubeadmcontrolplanes GET M List multiple
KubeadmControlPlane
instances.
POST M Create a new "Individual
KubeadmControlPlane
instance" resource.
Individual /kubeadmcontrolplanes/{name} GET M Get information about the
KubeadmControlPlane desired and actual state of an
instance "Individual
KubeadmControlPlane
instance" resource.
PATCH M Modify the desired or actual
state of an "Individual
KubeadmControlPlane
instance" resource.
PUT M Replace an "Individual
KubeadmControlPlane
instance" resource.
DELETE M Delete an "Individual
KubeadmControlPlane
instance" resource.
6.4 Sequence diagrams (informative)
6.4.1 Introduction ®
The sequence diagrams provided in the subsequent sub-clauses are generalized so that they apply to all Kubernetes
Cluster API custom resource objects identified as CIS cluster related NFV objects (e.g. CIS cluster object, CIS cluster
node object, and CISM instance object).
The diagrams and their description contain placeholders indicated as which need to
be replaced by the applicable CAPI custom resource name as listed in clause 6.3.
6.4.2 Flow of creating a CIS cluster related NFV object
This clause describes a sequence for creating an individual CIS cluster related NFV object.
ETSI
15 ETSI GS NFV-SOL 020 V5.1.1 (2024-07)
Figure 6.4.2-1: Flow of creating a CIS cluster related NFV object
The creation of a CIS cluster related NFV object (e.g. CIS cluste
...








Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...