ETSINFV.KUBERNETES.V 1: Difference between revisions

From NFVwiki
No edit summary
No edit summary
Line 42: Line 42:
|-
|-
|<code>{</code>
|<code>{</code>
<code>  "$schema": "http://json-schema.org/draft-07/schema#",</code>
<code>  "$schema": "http://json-schema.org/draft-07/schema#",</code>
<code>  "title": "interfaceInfo",</code>
<code>  "title": "interfaceInfo",</code>
<code>  "additionalProperties": false,</code>
<code>  "additionalProperties": false,</code>
<code>  "required": [</code>
<code>  "required": [</code>
<code>      "authType", </code>
<code>      "authType", </code>
<code>      "endpoint" </code>
<code>      "endpoint" </code>
<code>  ],</code>
<code>  ],</code>
<code>  "type": "object", </code>
<code>  "type": "object", </code>
<code>  "properties": { </code>
<code>  "properties": { </code>
<code>      "authType": { </code>
<code>      "authType": { </code>
<code>        "type": "string", </code>
<code>        "type": "string", </code>
<code>        "enum": ["OID", "TOKEN", "CERTIFICATE"], </code>
<code>        "enum": ["OID", "TOKEN", "CERTIFICATE"], </code>
<code>        "description": "The authentication type for the Kubernetes cluster. Indicates the required access information." </code>
<code>        "description": "The authentication type for the Kubernetes cluster. Indicates the required access information." </code>
<code>      }, </code>
<code>      }, </code>
<code>      "endpoint": { </code>
<code>      "endpoint": { </code>
<code>        "type": "string", </code>
<code>        "type": "string", </code>
<code>        "format": "url", </code>
<code>        "format": "url", </code>
<code>        "description": "The URL representing the Kubernetes cluster API endpoint." </code>
<code>        "description": "The URL representing the Kubernetes cluster API endpoint." </code>
<code>      }, </code>
<code>      }, </code>
<code>      "serverCertificate": { </code>
<code>      "serverCertificate": { </code>
<code>        "type": "string", </code>
<code>        "type": "string", </code>
<code>        "format": "byte", </code>
<code>        "format": "byte", </code>
<code>        "description": "CA certificate of the Kubernetes cluster API server in PEM format." </code>
<code>        "description": "CA certificate of the Kubernetes cluster API server in PEM format." </code>
<code>      }, </code>
<code>      }, </code>
<code>      "skipCertificateVerification": { </code>
<code>      "skipCertificateVerification": { </code>
<code>        "default": false, </code>
<code>        "default": false, </code>
<code>        "type": "boolean", </code>
<code>        "type": "boolean", </code>
<code>        "description": "Certificate verification for the endpoint can be skipped by setting this field to true." </code>
<code>        "description": "Certificate verification for the endpoint can be skipped by setting this field to true." </code>
<code>      } </code>
<code>      } </code>
<code>  }</code>
<code>  }</code>
<code>}</code>
<code>}</code>
|}
|}


== '''5 JSON schema definition of "accessInfo"''' ==
== '''5 JSON schema definition of "accessInfo"''' ==

Revision as of 14:05, 24 April 2022

Insert non-formatted text here[back to VimConnectionInfo registry]

1 Solution information

Solution Name Kubernetes v1
Description ETSI-registered CISM Connection Info defining the interface and access parameters to use a Kubernetes®-based CISM, to be signalled via the APIs specified in ETSI GS NFV-SOL 003.

The API of a Kubernetes®-based CISM is specified in ETSI GS NFV-SOL 018. Valid for Kubernetes® releases starting from 1.22.

Specification URI https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/018/

2 Registration information

Registrant name ETSI ISG NFV

3 Requested vimType identifier

Registrant VIM Name Version
ETSINFV . KUBERNETES . V_1

4 JSON schema definition of "interfaceInfo"

Purpose: Provides information about the interface or interfaces to the CISM, such as the URI of an interface endpoint to communicate with the CISM

interfaceInfo
{

"$schema": "http://json-schema.org/draft-07/schema#",

"title": "interfaceInfo",

"additionalProperties": false,

"required": [

"authType",

"endpoint"

],

"type": "object",

"properties": {

"authType": {

"type": "string",

"enum": ["OID", "TOKEN", "CERTIFICATE"],

"description": "The authentication type for the Kubernetes cluster. Indicates the required access information."

},

"endpoint": {

"type": "string",

"format": "url",

"description": "The URL representing the Kubernetes cluster API endpoint."

},

"serverCertificate": {

"type": "string",

"format": "byte",

"description": "CA certificate of the Kubernetes cluster API server in PEM format."

},

"skipCertificateVerification": {

"default": false,

"type": "boolean",

"description": "Certificate verification for the endpoint can be skipped by setting this field to true."

}

}

}


5 JSON schema definition of "accessInfo"

Purpose: Provides authentication credentials for accessing the VIM, and other access-related information such as tenants or infrastructure resource groups.

accessInfo
{

"$schema": "http://json-schema.org/draft-07/schema#",

"title": "accessInfo",

"additionalProperties": false,

"required": [],

"type": "object",

"properties": {

"tokenAuthInfo": {

"type": "object",

"description": "The authentication credentials for token-based authentication."

"properties": {

"token": {

"type": "string",

"format": "byte",

"description": "Binary token to be used for access authentication."

}

},

"required": [

"token"

],

},

"certificateAuthInfo": {

"type": "object",

"description": "The authentication credentials for certificate-based authentication."

"properties": {

"clientCertificate": {

"type": "string",

"format": "byte",

"description": "Kubernetes client certificate data in PEM format."

},

"clientCertificateKey": {

"type": "string",

"format": "byte",

"description": "Kubernetes client certificate key data in PEM format."

}

},

"required": [

"clientCertificate",

"clientCertificateKey"

],

},

"oidAuthInfo": {

"type": "object",

"description": "The authentication credentials for Open ID-based authentication."

"properties": {

"username": {

"type": "string",

"description": "The username to use for access."

},

"password": {

"writeOnly": true,

"type": "string",

"format": "password",

"description": "The password for the username for access. Required for input, not returned on output."

},

"clientId": {

"type": "string",

"description": "An ID which identifies an client application to use for access."

},

"clientSecret": {

"writeOnly": true,

"type": "string",

"format": "password",

"description": "The secret for the clientId for access. Required for input, not returned on output."

},

"remoteServerCertificate": {

"type": "string",

"format": "byte",

"description": "CA certificate data of the Open ID API server in PEM format."

},

"skipCertificateVerification": {

"default": false,

"type": "boolean",

"description": "Certificate verification for the remote server can be skipped by setting this field to true."

}

},

"required": [

"username",

"password",

"clientId"

],

}

}

}

6 JSON schema definition of "extra"

Purpose: Provides optional additional VIM type specific information.

extra
not specified