Después de actualizar el plano de control, ejecute manualmente el comando de actualización en cada nodo perimetral.
Requisitos previos
Antes de empezar:
El plano de control del clúster ACK edge ya está actualizado. Consulte Upgrade an ACK Edge cluster.
Identifique el modo de interconexión del nodo perimetral:
basic(red pública) oprivate(circuitos de Express Connect).
Limitaciones
| Restricción | Detalles |
|---|---|
| Rangos de versiones compatibles | Versiones 1.18 a 1.24: siga estos pasos. Versiones 1.26 a 1.30: envíe un ticket para comunicarse con el equipo de Container Service. Otras versiones: no son compatibles. |
| Actualizaciones secuenciales de versiones secundarias | Cada actualización avanza solo una versión secundaria. Para pasar de la 1.18 a la 1.22, actualice en dos pasos: primero de 1.18 a 1.20 y luego de 1.20 a 1.22. |
| Diferencia de versión entre el plano de control y los nodos perimetrales | El plano de control y los nodos perimetrales pueden diferir como máximo en dos versiones secundarias. Por ejemplo, si el plano de control ejecuta la versión 1.22, los nodos perimetrales deben ejecutar como mínimo la 1.20. Mantenga las versiones sincronizadas siempre que sea posible. |
| Tamaño del lote | Actualice como máximo 20 nodos por lote para limitar el impacto. |
| Nodos en la nube | Consulte Upgrade an on-cloud node pool. |
Actualizar nodos perimetrales
Siga los pasos correspondientes a su entorno de ejecución de contenedores.
Si el entorno de ejecución es Docker (actualización a 1.24)
Kubernetes 1.24 dejó de admitir el entorno de ejecución Docker. Migre de Docker a containerd antes de actualizar a la versión 1.24.
Opción 1 (recomendada): migración gradual a un nuevo node pool
Cree un node pool con containerd. Consulte Administración de node pools perimetrales.
-
Migre las cargas de trabajo al nuevo node pool:
Configure el node pool anterior como no programable. Consulte Estado de drenaje y programación de nodos.
Actualice los selectores de nodo de las cargas de trabajo para usar las etiquetas del nuevo node pool.
Ponga fuera de línea el node pool anterior una vez que haya migrado todas las cargas de trabajo.
Opción 2: actualización in situ
Este método reinicia todos los contenedores del nodo.
Cambie el entorno de ejecución de contenedores de Docker a containerd.
Drene el nodo antes de actualizarlo. Consulte Estado de drenaje y programación de nodos.
-
Actualice cada nodo de uno en uno:
Parámetro
Descripción
Ejemplo
TARGET_CLUSTER_VERSIONLa versión de Kubernetes del plano de control actualizado
1.24.6-aliyunedge.1; consulte Notas de la versión de las versiones de Kubernetes compatiblesREGIONEl identificador de región del clúster
cn-hangzhou; consulte Regiones compatiblesINTERCONNECT_MODEEl tipo de red:
basicpara red pública,privatepara circuitos de Express Connectbasicexport REGION="" INTERCONNECT_MODE="" TARGET_CLUSTER_VERSION=""; export ARCH=$(uname -m | awk '{print ($1 == "x86_64") ? "amd64" : (($1 == "aarch64") ? "arm64" : "amd64")}') INTERNAL=$( [ "$INTERCONNECT_MODE" = "private" ] && echo "-internal" || echo "" ); wget http://aliacs-k8s-${REGION}.oss-${REGION}${INTERNAL}.aliyuncs.com/public/pkg/run/attach/${TARGET_CLUSTER_VERSION}/${ARCH}/edgeadm -O edgeadm; chmod u+x edgeadm;./edgeadm upgrade --interconnect-mode=${INTERCONNECT_MODE} --region=${REGION}Establezca estos parámetros antes de ejecutar el comando:
-
Compruebe que la actualización se completó correctamente. La salida muestra lo siguiente:
This node has been upgraded successfully
Si el entorno de ejecución no es Docker
Actualice cada nodo de uno en uno:
export REGION="" INTERCONNECT_MODE="" TARGET_CLUSTER_VERSION=""; export ARCH=$(uname -m | awk '{print ($1 == "x86_64") ? "amd64" : (($1 == "aarch64") ? "arm64" : "amd64")}') INTERNAL=$( [ "$INTERCONNECT_MODE" = "private" ] && echo "-internal" || echo "" ); wget http://aliacs-k8s-${REGION}.oss-${REGION}${INTERNAL}.aliyuncs.com/public/pkg/run/attach/${TARGET_CLUSTER_VERSION}/${ARCH}/edgeadm -O edgeadm; chmod u+x edgeadm;./edgeadm upgrade --interconnect-mode=${INTERCONNECT_MODE} --region=${REGION}
Establezca estos parámetros antes de ejecutar el comando:
|
Parámetro |
Descripción |
Ejemplo |
|
|
La versión de Kubernetes del plano de control actualizado |
|
|
|
El identificador de región del clúster |
|
|
|
El tipo de red: |
|
Compruebe que la actualización se completó correctamente. La salida muestra lo siguiente:
This node has been upgraded successfully

Preguntas frecuentes
¿Qué debo hacer si falla la actualización de un nodo perimetral?
Si la salida no incluye This node has been upgraded successfully, consulte What do I do if an edge node fails to be upgraded when I upgrade an ACK Edge cluster?.
Pasos siguientes
Remove edge nodes si ya no los necesita.
Configure edge node autonomy para mantener la continuidad del servicio durante las desconexiones entre la nube y el perímetro.