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.