Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este artículo se describe cómo solucionar el error "NodePoolMcVersionIncompatible - la versión del grupo de nodos 1.x.y y la versión del plano de control 1.a.b son incompatibles" que se produce al actualizar un grupo de nodos en un clúster de Microsoft Azure Kubernetes Service (AKS).
Prerrequisitos
Síntomas
Al actualizar un grupo de nodos en un clúster de AKS, recibirá uno de los siguientes mensajes de error:
BadRequest: NodePoolMcVersionIncompatible
Error: la versión 1.x.y del grupo de nodos y la versión 1.a.b del plano de control no son compatibles. La versión menor del grupo de nodos no puede ser más de 2 versiones inferior a la versión del plano de control. La versión secundaria del grupo de nodos es x y el plano de control es . Para obtener más información, consulte https://aka.ms/version-skew-policy.
Identificador de recurso: /subscriptions/<subscription_id>/resourcegroups/<aks_cluster_resource_group>/providers/Microsoft.ContainerService/managedClusters/<aks_cluster_name>.
BadRequest: NodePoolMcVersionIncompatible
Error: la versión 1.x.y del grupo de nodos y la versión 1.a.b del plano de control no son compatibles. La versión menor de la versión del grupo de nodos x es mayor que la versión del plano de control a. Para obtener más información, consulte https://aka.ms/version-skew-policy.
Identificador de recurso: /subscriptions/<subscription_id>/resourcegroups/<aks_cluster_resource_group>/providers/Microsoft.ContainerService/managedClusters/<aks_cluster_name>.
Causa
Estos problemas se producen si intenta actualizar un grupo de nodos que sea más de dos versiones detrás de la versión del plano de control de AKS o si intenta agregar un grupo de nodos que esté en una versión más reciente que la versión del plano de control.
Debe cumplir las condiciones siguientes al actualizar un grupo de nodos:
La versión del grupo de nodos no puede ser mayor que la principal< del control>.<menor>.<versión de revisión>.
La versión del grupo de nodos debe estar dentro de dos versiones secundarias de la versión del plano de control.
Para obtener más información, consulte las reglas de validación de AKS para la actualización.
Solución 1: Asegúrese de que la versión del grupo de nodos esté dentro de dos versiones secundarias de la versión del plano de control.
Para obtener la versión del plano de control , ejecute el comando az aks get-upgrades en la CLI de Azure.
Este es un ejemplo de uso del comando . La
MasterVersioncolumna de salida contiene la versión del plano de control.az aks get-upgrades --resource-group aksrg --name testcluster1 --output tableName ResourceGroup MasterVersion Upgrades ------- --------------- --------------- ----------------------- default aksrg 1.23.12 1.23.15, 1.24.6, 1.24.9Actualice el grupo de nodos mediante la ejecución del comando az aks nodepool upgrade de la CLI de Azure y proporcione una versión de Kubernetes que se encuentra dentro de dos versiones secundarias de la versión del plano de control.
Por ejemplo, si la versión del plano de control es
1.23.12, puede especificar la versión de Kubernetes del grupo de nodos como1.23.8o1.23.12.Este es un ejemplo de uso del comando :
az aks nodepool upgrade \ --resource-group aksrg \ --cluster-name testcluster1 \ --name mynodepool \ --kubernetes-version 1.23.8 \ --no-wait
Solución 2: Asegúrese de que la versión del grupo de nodos no sea mayor que la versión del plano de control
Para obtener la versión del plano de control , ejecute el comando az aks get-upgrades en la CLI de Azure.
Este es un ejemplo de uso del comando . La
MasterVersioncolumna de salida contiene la versión del plano de control.az aks get-upgrades --resource-group aksrg --name testcluster1 --output tableName ResourceGroup MasterVersion Upgrades ------- --------------- --------------- ----------------------- default aksrg 1.23.12 1.23.15, 1.24.6, 1.24.9Actualice el grupo de nodos mediante la ejecución del comando az aks nodepool upgrade de la CLI de Azure y proporcione una versión de Kubernetes menor o igual que la versión del plano de control.
Este es un ejemplo de uso del comando :
az aks nodepool upgrade \ --resource-group aksrg \ --cluster-name testcluster1 \ --name mynodepool \ --kubernetes-version 1.23.12 \ --no-wait