Listado de todos los pools de nodos en un clúster especificado
Función
Esta API se utiliza para obtener la información sobre todos los pools de nodos de un clúster especificado.
-
El URL para la gestión de clústeres tiene el formato https://Endpoint/uri. En el URL, uri indica la ruta del recurso, es decir, la ruta para el acceso a la API.
-
Un pool de nodos es un grupo de nodos dentro de un clúster que tienen la misma configuración.
URI
GET /api/v3/projects/{project_id}/clusters/{cluster_id}/nodepools
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 del 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ámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
showDefaultNodePool |
No |
String |
Si se muestra el pool de nodos predeterminado. De forma predeterminada, no se muestra el pool de nodos predeterminado. Si este parámetro se establece en true, se muestra el pool de nodos predeterminado. |
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ámetros de respuesta
Código de estado: 200
Parámetro |
Tipo |
Descripción |
---|---|---|
kind |
String |
Tipo de la API. El valor se fija a List. |
apiVersion |
String |
Versión de la API. El valor se fija a v3. |
items |
Matriz de objetos de NodePool |
/ |
Parámetro |
Tipo |
Descripción |
---|---|---|
kind |
String |
Tipo de la API. El valor se fija en NodePool. |
apiVersion |
String |
Versión de la API. El valor se fija en v3. |
metadata |
Objeto de NodePoolMetadata |
Información de metadatos del pool de nodo |
spec |
Objeto de NodePoolSpec |
Especificaciones del pool de nodos |
status |
Objeto de NodePoolStatus |
Estado del pool de nodos |
Parámetro |
Tipo |
Descripción |
---|---|---|
name |
String |
Nombre del pool de nodos.
NOTA:
Reglas de nomenclatura: Escriba de 1 a 50 caracteres, comenzando con una letra minúscula y no terminando con un guion (-). Solo se permiten letras minúsculas, dígitos y guiones (-).
|
uid |
String |
UID del pool de nodo. El valor se genera automáticamente después de actualizar el objeto. Un valor definido por el usuario no tendrá efecto. |
annotations |
Map<String,String> |
Anotaciones de un pool de nodos en los pares de clave y valor |
updateTimestamp |
String |
Tiempo de actualización. |
creationTimestamp |
String |
Tiempo de creación. |
Parámetro |
Tipo |
Descripción |
---|---|---|
type |
String |
Tipo del pool de nodos. Si este parámetro se deja en blanco, el valor vm se utiliza de forma predeterminada.
|
nodeTemplate |
Objeto de NodeSpec |
Parámetros detallados de la plantilla del pool de nodos. |
initialNodeCount |
Integer |
Número inicial de nodos para el pool de nodos. Cuando se consulta, el valor es el número de nodos de destino en el pool de nodos. |
Escalamiento automático |
Objeto de NodePoolNodeAutoscaling |
Parámetros del escalado automático |
nodeManagement |
Objeto de NodeManagement |
Configuración de la gestión de nodos |
podSecurityGroups |
Matriz de objetos de SecurityID |
Configuración de grupos de seguridad |
Parámetro |
Tipo |
Descripción |
---|---|---|
flavor |
String |
Especificaciones del nodo. Para obtener detalles sobre las especificaciones de nodo admitidas por CCE, consulte la Descripción de la variante del nodo. |
az |
String |
Nombre de la AZ donde se encuentra el nodo que se va a crear. Para obtener más información acerca de las AZ admitidas por CCE, consulte la sección Regiones y puntos de conexión. |
os |
String |
SO del nodo. Para obtener más información acerca de los SO compatibles, consulte la Descripción del nodo de SO.
NOTA:
NOTA:
|
login |
Objeto de Login |
Modo de inicio de sesión de nodo. Se debe usar el par de claves o la contraseña para iniciar sesión. |
rootVolume |
Objeto de Volume |
Información sobre los discos en el nodo |
dataVolumes |
Matriz de objetos de Volume |
Parámetros del disco de datos del nodo. Actualmente, puede agregar el segundo disco de datos para su nodo en la consola de CCE. Para los nodos de DeC, la descripción del parámetro es la misma que para rootVolume. |
storage |
Objeto de Storage |
Parámetro de gestión de inicialización de disco. Este parámetro es complejo de configurar. Para obtener más información, consulte la Conexión de discos a un nodo. Si no se especifica este parámetro, los discos se administran según el parámetro DockerLVMConfigOverride en extendParam. Este parámetro es compatible con clústeres de v1.15.11 y posteriores. |
publicIP |
Objeto de NodePublicIP |
La EIP de un nodo.
NOTA:
Este parámetro no se admite cuando se agrega un nodo a un pool de nodos. |
nodeNicSpec |
Objeto de NodeNicSpec |
La NIC del nodo |
count |
Integer |
Número de nodos que se van a crear en un lote. El valor debe ser un entero positivo mayor o igual que 1 y menor o igual que el límite definido. Este parámetro se puede dejar en blanco cuando se utiliza para un pool de nodos. |
billingMode |
Integer |
Modo de facturación de nodos.
|
taints |
Matriz de objetos de Taint |
Se pueden agregar etiquetas para evitar la afinidad al crear nodos. Se puede agregar un máximo de 20 manchas. Cada mancha contiene los siguientes parámetros:
Por ejemplo: "taints": [{ "key": "status", "value": "unavailable", "effect": "NoSchedule" }, { "key": "looks", "value": "bad", "effect": "NoSchedule" }] |
k8sTags |
Map<String,String> |
Definida en pares de clave y valor. Se permite un máximo de 20 pares de clave y valor.
Por ejemplo: "k8sTags": { "key": "value" } |
ecsGroupId |
String |
ID de grupo de servidores en la nube. Si se especifica este campo, el nodo se crea en el grupo especificado de servidores en la nube. |
dedicatedHostId |
String |
ID del DeH al que está programado el nodo.
NOTA:
Este parámetro no se admite cuando se agrega un nodo durante la creación del pool de nodos. |
userTags |
Matriz de objetos de UserTag |
Etiqueta de servidor en la nube. La clave de una etiqueta debe ser única. El número máximo de etiquetas personalizadas admitidas por CCE depende de la región y no puede exceder de 8. |
runtime |
Objeto de Runtime |
Tiempo de ejecución del contenedor. El valor predeterminado es docker. |
extendParam |
Objeto de NodeExtendParam |
Parámetros extendidos para crear un nodo. |
Parámetro |
Tipo |
Descripción |
---|---|---|
sshKey |
String |
Nombre del par de claves utilizado para el inicio de sesión. |
userPassword |
Objeto de UserPassword |
Contraseña utilizada para el inicio de sesión del nodo. |
Parámetro |
Tipo |
Descripción |
---|---|---|
username |
String |
La cuenta para iniciar sesión en. El valor predeterminado es root. |
password |
String |
Si se utiliza un nombre de usuario y una contraseña para crear un nodo, este campo está protegido en el cuerpo de la respuesta. Una contraseña debe cumplir con los siguientes requisitos de complejidad:
|
Parámetro |
Tipo |
Descripción |
---|---|---|
size |
Integer |
Tamaño de disco, en GB.
|
volumetype |
String |
Tipo de disco. Para obtener más información sobre los posibles valores, consulte la descripción del parámetro root_volume en la API utilizada para crear un ECS en la referencia de la API de ECS.
|
extendParam |
Map<String,Object> |
Parámetros de los discos extendidos, definidos en extendparam en la API utilizada para crear un ECS. Para obtener más información, consulte la Creación de un ECS. |
cluster_id |
String |
ID del pool de almacenamientos utilizado por el disco del sistema de ECS. Este campo solo se utiliza para clústeres de DeC, que funciona como dssPoolID, es decir, el ID del pool de almacenamiento de DSS. Para obtener el valor, consulte el campo ID de la API utilizada para obtener detalles de un pool de almacenamiento de DSS. |
cluster_type |
String |
Clase de almacenamiento del disco del sistema del servidor en la nube. El valor es siempre dss. Este campo solo se utiliza para clústeres de DeC. |
hw:passthrough |
Boolean |
|
metadata |
Objeto de VolumeMetadata |
Información de encriptación de disco de EVS. Este campo es obligatorio solo cuando necesita cifrar el disco del sistema o los discos de datos del nodo que se va a crear. |
Parámetro |
Tipo |
Descripción |
---|---|---|
__system__encrypted |
String |
Si el disco de EVS está cifrado. El valor 0 indica que el disco de EVS no está cifrado, y el valor 1 indica que el disco de EVS está cifrado. Si no se especifica este parámetro, los discos de EVS no se cifrarán de forma predeterminada. |
__system__cmkid |
String |
ID de CMK, que indica la encriptación de metadata. Este campo se utiliza con __system__encrypted. |
Parámetro |
Tipo |
Descripción |
---|---|---|
storageSelectors |
Matriz de objetos de StorageSelectors |
Selección de disco. Los discos coincidentes se gestionan de acuerdo con matchLabels y storageType. |
storageGroups |
Matriz de objetos de StorageGroups |
Un grupo de almacenamiento consta de varios dispositivos de almacenamiento. Se utiliza para dividir el espacio de almacenamiento. |
Parámetro |
Tipo |
Descripción |
---|---|---|
name |
String |
Nombre del selector, utilizado como el índice de selectorNames en storageGroup. Por lo tanto, el nombre de cada selector debe ser único. |
storageType |
String |
Especifica el tipo de almacenamiento. Actualmente, solo se admiten evs (volúmenes de EVS) y local (volúmenes locales). El almacenamiento local no admite la selección de disco. Todos los discos locales formarán un VG. Por lo tanto, solo se permite un storageSelector del tipo local. |
matchLabels |
Objeto de matchLabels |
Campo coincidente de un volumen de EVS. Los campos size, volumeType, metadataEncrypted, metadataCmkid y count son compatibles. |
Parámetro |
Tipo |
Descripción |
---|---|---|
size |
String |
Tamaño del disco coincidente. Si este parámetro se deja sin especificar, el tamaño del disco no está limitado. Ejemplo: 100 |
volumeType |
String |
Tipo del disco de EVS. Actualmente, SSD, GPSSD y SAS son compatibles. |
metadataEncrypted |
String |
Identificador de la encriptación de disco. 0 indica que el disco no está cifrado y 1 indica que el disco está cifrado. |
metadataCmkid |
String |
ID de clave principal de cliente de un disco cifrado. El valor es una string de 36 bytes. |
count |
String |
Número de los discos que se van a seleccionar. Si este parámetro se deja en blanco, se seleccionan todos los discos de este tipo. |
Parámetro |
Tipo |
Descripción |
---|---|---|
name |
String |
Nombre de un grupo de almacenamiento virtual. Cada nombre de grupo debe ser único. |
cceManaged |
Boolean |
Espacio de almacenamiento para Kubernetes y componentes de tiempo de ejecución. Solo se puede establecer un grupo en true. Si este parámetro se deja en blanco, se utiliza el valor predeterminado false. |
selectorNames |
Matriz de strings |
Este parámetro corresponde a name en storageSelectors. Un grupo puede coincidir con varios selectores, pero un selector solo puede coincidir con un grupo. |
virtualSpaces |
Matriz de objetos de VirtualSpace |
Gestión detallada de la configuración del espacio en un grupo. |
Parámetro |
Tipo |
Descripción |
---|---|---|
name |
String |
Nombre de espacio virtual. Actualmente, solo se admiten kubernetes, runtime y user. kubernetes y user requieren lvmConfig para ser configurado. runtime requiere que se configure runtimeConfig. |
size |
String |
Tamaño de un espacio virtual. Solo se admite un porcentaje entero. Ejemplo: 90%. Tenga en cuenta que el porcentaje total de todos los espacios virtuales de un grupo no puede superar el 100%. |
lvmConfig |
Objeto de LVMConfig |
Configuraciones de LVM, aplicables a espacios kubernetes y user. Tenga en cuenta que un espacio virtual solo admite una configuración. |
runtimeConfig |
Objeto de RuntimeConfig |
Configuraciones en tiempo de ejecución, aplicables al espacio runtime. Tenga en cuenta que un espacio virtual solo admite una configuración. |
Parámetro |
Tipo |
Descripción |
---|---|---|
lvType |
String |
Modo de escritura de LVM. linear indica el modo lineal. striped indica el modo seccionado, en el que se utilizan varios discos para formar una banda para mejorar el rendimiento del disco. |
path |
String |
Ruta de acceso a la que está conectado el disco. Este parámetro solo tiene efecto en la configuración del usuario. El valor es una ruta absoluta. Dígitos, letras, puntos (.), guiones (-) y guiones bajos (_) están permitidos. |
Parámetro |
Tipo |
Descripción |
---|---|---|
lvType |
String |
Modo de escritura de LVM. linear indica el modo lineal. striped indica el modo seccionado, en el que se utilizan varios discos para formar una banda para mejorar el rendimiento del disco. |
Parámetro |
Tipo |
Descripción |
---|---|---|
ids |
Matriz de strings |
ID de las EIP existentes. La cantidad no puede ser mayor que el número de nodos que se van a crear.
NOTA:
Si se ha establecido ids, no es necesario establecer count y eip. |
count |
Integer |
Número de las EIP que se crearán dinámicamente.
NOTA:
count y eip deben configurarse al mismo tiempo. |
eip |
Objeto de NodeEIPSpec |
Configuración de la EIP. |
Parámetro |
Tipo |
Descripción |
---|---|---|
iptype |
String |
Tipo de la EIP, especificado en publicip.type en la API para asignar una EIP. Para obtener más información, consulte Asignar una EIP. |
bandwidth |
Objeto de NodeBandwidth |
Parámetros de ancho de banda de la EIP |
Parámetro |
Tipo |
Descripción |
---|---|---|
chargemode |
String |
Modo de facturación de ancho de banda.
NOTA:
|
size |
Integer |
Tamaño de ancho de banda, especificado en bandwidth.size en la API para asignar una EIP. Para obtener más información, consulte Asignar una EIP. |
sharetype |
String |
Tipo de uso compartido de ancho de banda. Opciones de valor: PER (ancho de banda exclusivo) y WHOLE (ancho de banda compartido) |
Parámetro |
Tipo |
Descripción |
---|---|---|
primaryNic |
Objeto de NicSpec |
Descripción de la NIC principal. |
extNics |
Matriz de objetos de NicSpec |
NIC de extensión
NOTA:
Este parámetro no se admite cuando se agrega un nodo a un pool de nodos. |
Parámetro |
Tipo |
Descripción |
---|---|---|
subnetId |
String |
ID de la subred a la que pertenece la NIC. Si no se especifica subnetId al crear la NIC principal, se utiliza la subred del clúster. Al crear una NIC secundaria, debe especificar subnetId. |
fixedIps |
Matriz de strings |
fixedIps especifica la dirección IP de la NIC principal. El número de direcciones IP no puede ser mayor que el número de los nodos creados. fixedIps y ipBlock no se pueden especificar al mismo tiempo. |
ipBlock |
String |
Formato CIDR del rango de IP de la NIC principal. La dirección IP del nodo creado cae en este intervalo. fixedIps y ipBlock no se pueden especificar al mismo tiempo. |
Parámetro |
Tipo |
Descripción |
---|---|---|
key |
String |
La clave. |
value |
String |
El valor. |
effect |
String |
El efecto. |
Parámetro |
Tipo |
Descripción |
---|---|---|
key |
String |
Clave de la etiqueta del servidor en la nube. El valor no puede comenzar con CCE- ni __type_baremetal. |
value |
String |
Valor de la etiqueta del servidor en la nube. |
Parámetro |
Tipo |
Descripción |
---|---|---|
name |
String |
Tiempo de ejecución del contenedor. El valor predeterminado es docker. |
Parámetro |
Tipo |
Descripción |
---|---|---|
ecs:performancetype |
String |
Tipos de la variante de ECS. Este campo se devuelve en la respuesta. |
orderID |
String |
ID del pedido. Este campo se devuelve en la respuesta cuando el nodo se factura anualmente/mensualmente con el pago automático habilitado. |
productID |
String |
ID del producto. Este campo se devuelve en la respuesta cuando el nodo se factura anualmente/mensualmente con el pago automático habilitado. |
maxPods |
Integer |
El número máximo de los pods que se pueden crear en un nodo, incluidos los pods del sistema predeterminados. Rango de valores: 16 a 256. Este límite impide que el nodo se sobrecargue de pods. El número de pods que se pueden crear en un nodo viene determinado por varios parámetros. Para obtener más información, consulte la sección Número máximo de pods que se pueden crear en un nodo. |
periodType |
String |
NOTA:
Este campo es válido y obligatorio solo cuando billingMode se establece en 1 (facturación anual/mensual) o 2 (facturación anual/mensual con renovación automática activada) (desechado). |
periodNum |
Integer |
Duración de la suscripción. El valor puede ser:
NOTA:
Este campo es válido y obligatorio cuando billingMode está establecido en 1 o 2 (descartado). |
isAutoRenew |
String |
Si la renovación automática está habilitada.
NOTA:
Este campo es válido cuando billingMode se establece en 1 o 2 (descartado). Si no se especifica, la renovación automática no está habilitada. |
isAutoPay |
String |
Si deducir las tarifas automáticamente.
NOTA:
Este campo es válido cuando billingMode se establece en 1 o 2 (descartado). Si no se especifica cuando billingMode se establece en 1, no se activa la deducción automática de la tarifa. (Descartado: si no se especifica cuando billingMode se establece en 2 se activa la deducción automática de la tarifa.) |
DockerLVMConfigOverride |
String |
Configuraciones de disco de datos de Docker. Ejemplo de configuración predeterminada: "DockerLVMConfigOverride":"dockerThinpool=vgpaas/90%VG;kubernetesLV=vgpaas/10%VG;diskType=evs;lvType=linear" Se incluyen los siguientes campos:
|
dockerBaseSize |
Integer |
Espacio en disco disponible de un único contenedor en un nodo, en GB. Si este parámetro no se establece o se establece en 0, se utiliza el valor predeterminado. Cuando se utiliza el mapeador de dispositivos, el valor predeterminado es 10. Cuando se utiliza OverlayFS, el espacio disponible de un solo contenedor no está limitado por defecto, y la configuración de dockerBaseSize solo tiene efecto en los nodos de EulerOS en los clústeres de la nueva versión. Para obtener más información acerca de cómo configurar el espacio en tiempo de ejecución del contenedor, consulte Asignación de espacio en disco de datos. Con el mapeador de dispositivos, se recomienda establecer dockerBaseSize en un valor inferior o igual a 80 GB. Si el valor es demasiado grande, el recipiente puede fallar en iniciarse debido a una larga inicialización. Si hay requisitos especiales para el espacio en disco del contenedor, puede montar un dispositivo de almacenamiento externo o local. |
publicKey |
String |
La clave pública de un nodo. |
alpha.cce/preInstall |
String |
Secuencia de comandos de preinstalación.
NOTA:
El valor de entrada debe estar codificado en Base64. (Comando: echo -n "Content to be encoded" | base64) |
alpha.cce/postInstall |
String |
Secuencia de comandos posterior a la instalación.
NOTA:
El valor de entrada debe estar codificado en Base64. (Comando: echo -n "Content to be encoded" | base64) |
alpha.cce/NodeImageID |
String |
Este parámetro es necesario cuando se utiliza una imagen personalizada para crear un nodo de BMS. |
nicMultiqueue |
String |
"[{\"queue\":4}]" Se incluyen los siguientes campos:
|
nicThreshold |
String |
"0.3:0.6"
|
enterprise_project_id |
String |
ID del proyecto de empresa al que pertenece el nodo |
chargingMode |
Integer |
Modo de facturación de un nodo. Este parámetro ha sido obsoleta. Utilice el parámetro billingMode de NodeSpec. |
Parámetro |
Tipo |
Descripción |
---|---|---|
enable |
Boolean |
Si se activa el ajuste automático. |
minNodeCount |
Integer |
Número mínimo de los nodos permitidos si se habilita el ajuste automático. El valor no puede ser mayor que el número máximo de los nodos permitidos por las especificaciones del clúster. |
maxNodeCount |
Integer |
Número máximo de los nodos permitidos si se habilita el ajuste automático. Este valor debe ser mayor o igual que el valor de minNodeCount y no puede exceder el número máximo de nodos en las especificaciones del clúster. |
scaleDownCooldownTime |
Integer |
Intervalo entre las dos operaciones de ajuste, en minutos. Durante este período, los nodos agregados después de una ampliación no se eliminarán. |
priority |
Integer |
Peso de un pool de nodos. Un pool de nodo con un peso mayor tiene una mayor prioridad durante la escala. |
Parámetro |
Tipo |
Descripción |
---|---|---|
serverGroupReference |
String |
ID de grupo de servidores en la nube. Si se especifica este campo, todos los nodos del pool de nodos se crearán en este grupo. El ID de grupo solo se puede especificar cuando se crea el pool de nodos y no se puede modificar. Cuando se especifica un grupo de servidores en la nube, el número de nodos en el pool de nodos no puede exceder la cuota de grupo. |
Parámetro |
Tipo |
Descripción |
---|---|---|
currentNode |
Integer |
Número total de los nodos en el pool de nodos actual (excluidos los nodos que se están eliminando) |
creatingNode |
Integer |
Número de nodos en el proceso de creación en el pool de nodos |
deletingNode |
Integer |
Número de los nodos que se eliminan en el pool de nodos actual. |
phase |
String |
Estado del pool de nodos.
NOTA:
Este estado de pool de nodos se ha descartado y está reservado solo para compatibilidad. No se recomienda usarlo. Los reemplazos son los siguientes:
|
jobId |
String |
ID de un trabajo ejecutado en el pool de nodos |
conditions |
Matriz de objetos de NodePoolCondition |
Detalles de estado del pool de nodos. Para obtener más información, consulte la definición de Condition. |
Parámetro |
Tipo |
Descripción |
---|---|---|
type |
String |
Tipo de la condición. Las opciones son las siguientes:
|
status |
String |
El estado actual de Condition. Las opciones son las siguientes:
|
lastProbeTime |
String |
Hora en la que se verificó el estado por última vez |
lastTransitTime |
String |
Hora en la que se cambió el estado por última vez |
reason |
String |
Razón por la que se cambió el estado por última vez |
message |
String |
Descripción detallada de la condición |
Ejemplo de las solicitudes
No hay
Ejemplo de las respuestas
Código de estado: 200
La información sobre todos los pools de nodos en el clúster se obtiene con éxito.
{ "kind" : "List", "apiVersion" : "v3", "items" : [ { "kind" : "NodePool", "apiVersion" : "v3", "metadata" : { "name" : "az1.dc1#s1.large#EulerOS 2.2", "uid" : "az1.dc1#s1.large#EulerOS 2.2" }, "spec" : { "nodeTemplate" : { "flavor" : "s1.large", "az" : "az1.dc1", "os" : "EulerOS 2.2", "login" : { "sshKey" : "KeyPair-001" }, "rootVolume" : { }, "publicIP" : { "eip" : { "bandwidth" : { } } }, "billingMode" : 0 }, "autoscaling" : { "enable" : true, "maxNodeCount" : 50 } }, "status" : { "currentNode" : 1 } } ] }
Códigos de estado
Código de estado |
Descripción |
---|---|
200 |
La información sobre todos los pools de nodos en el clúster se obtiene con éxito. |
Códigos de error
Consulte Códigos de error.