Si tienes problemas para actualizar Google Distributed Cloud, las siguientes secciones pueden ayudarte a solucionarlos. Para obtener más información sobre qué ajustes se pueden actualizar, consulta Qué se puede y qué no se puede actualizar en los clústeres.
Tiempo de espera de actualización
El tiempo de espera de la actualización se calcula dinámicamente en función de los recursos que se van a actualizar. Sin embargo, el cálculo no siempre es preciso. Si se agota el tiempo de espera de la actualización, se mostrarán errores similares a los siguientes:
En el clúster de usuarios:
Failed to update the cluster:...timed out waiting for the condition...
En el clúster de administrador:
Failed to update the admin cluster:...timed out waiting for the condition...
Este tipo de error de tiempo de espera se puede ignorar y puedes volver a intentar ejecutar el comando de actualización. Si vuelves a intentar ejecutar el comando y se agota el tiempo de espera con el mismo mensaje de error, ponte en contacto con Cloud Customer Care.
La actualización contiene varios cambios
Los comandos gkectl update admin
y gkectl update cluster
no permiten actualizar varios ajustes en un solo comando. Cuando la configuración contiene una diferencia con varios ajustes modificados y se devuelve un error similar al siguiente ejemplo:
Update summary for cluster X:
antiAffinityGroups: enabled to be set to true from false &config.AAGSpec{
- Enabled: false,
+ Enabled: true,
}
user master cpu to be set to 5 from 4 config.NodePoolProps{
Role: "master",
MachineType: "standard-master",
- CPUs: 4,
+ CPUs: 5,
MemoryMB: 8192,
Replicas: 3,
... // 2 identical fields
Labels: nil,
NodeTaints: nil,
- Vsphere: nil,
&config.NodePoolVsphereSpec{Datastore: "lifecycle-workloads1-datastore1"},
+ Vsphere: nil,
BootDiskSizeGB: nil,
OSImageType: "",
... // 5 identical fields
}
Exit with error:
Failed to update the cluster: the update contains multiple changes. Please
update only one feature at a time
Este error puede deberse a varios motivos, entre los que se incluyen los siguientes:
- Un error o una configuración incorrecta.
- Has ejecutado
gkectl upgrade
antes con la diferencia de configuración y esperabas que se aplicaran los cambios.gkectl upgrade
no aplica ninguna diferencia de configuración, excepto el cambio de versión.
- Has editado la configuración de otra actualización de funciones anteriormente, pero te has olvidado de ejecutar el comando
gkectl update
.
Si te encuentras con este comportamiento, revisa las diferencias en el mensaje de error y actualiza los ajustes necesarios uno a uno con varios comandos gkectl update
. Para identificar los cambios, puedes usar gkectl get-config
para generar archivos de configuración a partir de un clúster y ver el estado y la configuración actuales.
Cambios no admitidos
Los comandos gkectl update cluster
y gkectl update admin
ignoran los cambios no admitidos y muestran mensajes de error similares a los siguientes ejemplos:
detected unsupported changes: (-current +desired)
...
- AdvancedNetworking: &true,
+ AdvancedNetworking: &false,
...
, which will be ignored
Si se produce este comportamiento, revisa las diferencias en el mensaje de error y sigue estos pasos:
- Si el cambio no es intencional, edita el archivo YAML de configuración y actualízalo solo con los cambios correctos.
- En el ejemplo anterior, si no querías inhabilitar
AdvancedNetworking
, defineadvancedNetworking: true
en el archivo YAML de configuración.
- En el ejemplo anterior, si no querías inhabilitar
- Si el cambio es intencionado, el error indica que no se admite. Realiza una de las siguientes acciones:
- Vuelve a crear el clúster si procede.
- Ponte en contacto con el equipo de Asistencia de Google.
La imagen del SO no existe
Es posible que los comandos gkectl update cluster
y gkectl update admin
fallen con
OS Images
errores de comprobación preliminar similares a los siguientes ejemplos:
En el clúster de usuarios:
- Validation Category: OS Images - [FAILURE] User cluster OS images exist: os images [xxxx] don't exist, please run `gkectl prepare` to upload os images.
En el clúster de administrador:
- Validation Category: OS Images - [FAILURE] Admin cluster OS images exist: os images [xxxx] don't exist, please run `gkectl prepare` to upload os images.
Estos errores pueden producirse si la imagen del SO se ha eliminado de forma inesperada en tu entorno de vCenter, por ejemplo, debido a una tarea de limpieza periódica.
Para volver a importar las imágenes del SO importadas, ejecuta el comando gkectl prepare
de la siguiente manera:
gkectl prepare \ --bundle-path /var/lib/gke/bundles/gke-onprem-vsphere-TARGET_VERSION.tgz \ --kubeconfig ADMIN_CLUSTER_KUBECONFIG \ --skip-upload-container-images
No hay suficiente espacio libre en el almacén de datos para los nuevos grupos de nodos
Cuando añades grupos de nodos, es posible que el comando gkectl update cluster
falle y muestre errores de comprobación previa VSphere Datastore FreeSpace
similares al siguiente ejemplo:
- [FAILURE] VSphere Datastore FreeSpace: vCenter datastore: xxxx insufficient
FreeSpace, requires at least xxx GB
Este error indica que el almacén de datos no tiene suficiente espacio libre para ejecutar los nuevos grupos de nodos. Si usas una de las siguientes opciones, tendrás espacio suficiente para que la operación se complete correctamente:
- Libera espacio del almacén de datos.
- Configura un almacén de datos de
nodePools[].vsphere.datastore
diferente para el grupo de nodos.
Siguientes pasos
Si necesitas más ayuda, ponte en contacto con el servicio de atención al cliente de Cloud.
También puedes consultar la sección Obtener asistencia para obtener más información sobre los recursos de asistencia, incluidos los siguientes:
- Requisitos para abrir un caso de asistencia.
- Herramientas para ayudarte a solucionar problemas, como registros y métricas.
- Componentes, versiones y funciones compatibles de Google Distributed Cloud para VMware (solo software).