Obtención de un certificado de clúster
Función
Esta API se utiliza para obtener un certificado de un clúster especificado.
Restricciones
Esta API es aplicable a clústeres de v1.13 y posteriores.
URI
POST /api/v3/projects/{project_id}/clusters/{cluster_id}/clustercert
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
project_id |
Sí |
String |
ID del proyecto. Para obtener más información sobre cómo obtener el valor, consulta Cómo obtener parámetros en el URI de API. |
cluster_id |
Sí |
String |
ID de clúster. Para obtener más información sobre cómo obtener el valor, consulta Cómo obtener parámetros en el URI de API. |
Parámetros de solicitud
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
Content-Type |
Sí |
String |
Tipo de cuerpo del mensaje (formato). |
X-Auth-Token |
Sí |
String |
Las solicitudes para invocar a una API pueden autenticarse usando un token o AK/SK. Si se utiliza la autenticación basada en token, este parámetro es obligatorio y se debe establecer en un token de usuario. Para obtener más información, consulte Obtención de un token de usuario. |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
duration |
Sí |
Integer |
Período de validez del certificado de clúster, en días, que oscila entre 1 y el número de días en los cinco años a partir de la fecha actual (este período puede ser representado por el valor -1). El valor puede ser 1826 o 1827, dependiendo del número de años bisiestos en estos 5 años. |
Parámetros de respuesta
Código de estado: 200
Parámetro |
Tipo |
Descripción |
---|---|---|
Port-ID |
String |
ID de puerto del nodo principal del clúster |
Parámetro |
Tipo |
Descripción |
---|---|---|
kind |
String |
Tipo de la API. El valor se fija en Config y no se puede cambiar. |
apiVersion |
String |
Versión de la API. El valor se fija en v1. |
preferences |
Object |
Este campo no se utiliza actualmente y se deja sin especificar de forma predeterminada. |
clusters |
Array de objetos de Clusters |
Lista de los clústeres |
users |
Matriz de objetos de Users |
Información de certificado e información de clave de cliente de un usuario especificado |
contexts |
Matriz de objetos de Contexts |
Lista de contexto |
current-context |
String |
Contexto actual. Si existe publicIp (la EIP de VM), el valor es external. Si publicIp no existe, el valor es internal. |
Parámetro |
Tipo |
Descripción |
---|---|---|
name |
String |
Nombre del clúster.
|
cluster |
Objeto de ClusterCert |
Información del clúster |
Parámetro |
Tipo |
Descripción |
---|---|---|
server |
String |
Dirección IP del servidor |
certificate-authority-data |
String |
Datos de autorización de certificado |
insecure-skip-tls-verify |
Boolean |
Si se omite la verificación del certificado del servidor. Si el tipo de clúster es externalCluster, el valor es true. |
Parámetro |
Tipo |
Descripción |
---|---|---|
name |
String |
El valor se fija en user. |
user |
Objeto de User |
Información de certificado e información de clave de cliente de un usuario especificado |
Parámetro |
Tipo |
Descripción |
---|---|---|
client-certificate-data |
String |
Certificado de cliente |
client-key-data |
String |
Datos de codificación de PEM del archivo de clave de cliente de TLS |
Parámetro |
Tipo |
Descripción |
---|---|---|
name |
String |
Nombre de contexto.
|
context |
Objeto de Context |
Información de contexto |
Ejemplo de las solicitudes
Solicitud de un certificado de acceso a clústeres válido durante 30 días
{ "duration" : 30 }
Ejemplo de las respuestas
Código de estado: 200
El certificado del clúster especificado se obtiene correctamente. Para obtener más información sobre el formato de archivo de certificado, consulte la estructura de Kubernetes v1.Config.
{ "kind" : "Config", "apiVersion" : "v1", "preferences" : { }, "clusters" : [ { "name" : "internalCluster", "cluster" : { "server" : "https://192.168.1.7:5443", "certificate-authority-data" : "Q2VydGlmaWNhdGU6******FTkQgQ0VSVElGSUNBVEUtLS0tLQo=" } } ], "users" : [ { "name" : "user", "user" : { "client-certificate-data" : "LS0tLS1CRUdJTiBDR******QVRFLS0tLS0K", "client-key-data" : "LS0tLS1CRUdJTi******BLRVktLS0tLQo=" } } ], "contexts" : [ { "name" : "internal", "context" : { "cluster" : "internalCluster", "user" : "user" } } ], "current-context" : "internal" }
Códigos de estado
Código de estado |
Descripción |
---|---|
200 |
El certificado del clúster especificado se obtiene correctamente. Para obtener más información sobre el formato de archivo de certificado, consulte la estructura de Kubernetes v1.Config. |
Códigos de error
Consulte Códigos de error.