Skip to content

Commit d7da722

Browse files
committed
Updates based on PM feedback for low engagement
1 parent 22265fb commit d7da722

File tree

1 file changed

+16
-18
lines changed

1 file changed

+16
-18
lines changed

articles/aks/stop-cluster-upgrade-api-breaking-changes.md

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,20 @@ description: Learn how to stop Azure Kubernetes Service (AKS) cluster upgrades a
44
ms.topic: article
55
ms.custom: azure-kubernetes-service
66
ms.subservice: aks-upgrade
7-
ms.date: 10/19/2023
7+
ms.date: 07/05/2024
88
author: schaffererin
99
ms.author: schaffererin
10-
1110
---
1211

1312
# Stop Azure Kubernetes Service (AKS) cluster upgrades automatically on API breaking changes
1413

14+
This article shows you how to stop Azure Kubernetes Service (AKS) cluster upgrades automatically on API breaking changes.
15+
16+
## Overview
17+
1518
To stay within a supported Kubernetes version, you have to upgrade your cluster at least once per year and prepare for all possible disruptions. These disruptions include ones caused by API breaking changes, deprecations, and dependencies such as Helm and Container Storage Interface (CSI). It can be difficult to anticipate these disruptions and migrate critical workloads without experiencing any downtime.
1619

17-
AKS now automatically stops upgrade operations consisting of a minor version change with deprecated APIs and sends you an error message to alert you about the issue.
20+
You can configure your AKS cluster to automatically stop upgrade operations consisting of a minor version change with deprecated APIs and alert you to the issue. This feature helps you avoid unexpected disruptions and gives you time to address the deprecated APIs before proceeding with the upgrade.
1821

1922
## Before you begin
2023

@@ -36,43 +39,38 @@ Bad Request({
3639
})
3740
```
3841

39-
You have two options to mitigate the issue. You can either [remove usage of deprecated APIs (recommended)](#remove-usage-of-deprecated-apis-recommended) or [bypass validation to ignore API changes](#bypass-validation-to-ignore-api-changes).
42+
You have two options to mitigate the issue: you can [remove usage of deprecated APIs (recommended)](#remove-usage-of-deprecated-apis-recommended) or [bypass validation to ignore API changes](#bypass-validation-to-ignore-api-changes).
4043

4144
### Remove usage of deprecated APIs (recommended)
4245

43-
1. In the Azure portal, navigate to your cluster's overview page, and select **Diagnose and solve problems**.
44-
45-
2. Navigate to the **Create, Upgrade, Delete, and Scale** category, and select **Kubernetes API deprecations**.
46+
1. In the Azure portal, navigate to your cluster resource and select **Diagnose and solve problems**
47+
2. Select **Create, Upgrade, Delete, and Scale** > **Kubernetes API deprecations**.
4648

4749
:::image type="content" source="./media/upgrade-cluster/applens-api-detection-full-v2.png" alt-text="A screenshot of the Azure portal showing the 'Selected Kubernetes API deprecations' section.":::
4850

49-
3. Wait 12 hours from the time the last deprecated API usage was seen. Check the verb in the deprecated API usage to know if it's a [watch][k8s-api].
50-
51+
3. Wait 12 hours from the time the last deprecated API usage was seen. Check the verb in the deprecated API usage to know if it's a [watch][k8s-api]. If it's a watch, you can wait for the usage to drop to zero. (You can also check past API usage by enabling [Container insights][container-insights] and exploring kube audit logs.)
5152
4. Retry your cluster upgrade.
5253

53-
You can also check past API usage by enabling [Container Insights][container-insights] and exploring kube audit logs. Check the verb in the deprecated API usage to understand if it's a [watch][k8s-api] use case.
54-
5554
### Bypass validation to ignore API changes
5655

5756
> [!NOTE]
58-
> This method requires you to use the Azure CLI version 2.53 or later. If you have the `aks-preview` CLI extension installed, you'll need to update to version `0.5.154` or later. This method isn't recommended, as deprecated APIs in the targeted Kubernetes version may not work long term. We recommend removing them as soon as possible after the upgrade completes.
57+
> This method requires you to use the Azure CLI version 2.53 or later. If you have the `aks-preview` CLI extension installed, you need to update to version `0.5.154` or later. This method isn't recommended, as deprecated APIs in the targeted Kubernetes version might6 not work long term. We recommend removing them as soon as possible after the upgrade completes.
5958
60-
* Bypass validation to ignore API breaking changes using the [`az aks update`][az-aks-update] command. Specify the `enable-force-upgrade` flag and set the `upgrade-override-until` property to define the end of the window during which validation is bypassed. If no value is set, it defaults the window to three days from the current time. The date and time you specify must be in the future.
59+
1. Bypass validation to ignore API breaking changes using the [`az aks update`][az-aks-update] command. Specify the `enable-force-upgrade` flag and set the `upgrade-override-until` property to define the end of the window during which validation is bypassed. If no value is set, it defaults the window to three days from the current time. The date and time you specify must be in the future.
6160

6261
```azurecli-interactive
63-
az aks update --name myAKSCluster --resource-group myResourceGroup --enable-force-upgrade --upgrade-override-until 2023-10-01T13:00:00Z
62+
az aks update --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP_NAME --enable-force-upgrade --upgrade-override-until 2023-10-01T13:00:00Z
6463
```
6564
6665
> [!NOTE]
6766
> `Z` is the zone designator for the zero UTC/GMT offset, also known as 'Zulu' time. This example sets the end of the window to `13:00:00` GMT. For more information, see [Combined date and time representations](https://wikipedia.org/wiki/ISO_8601#Combined_date_and_time_representations).
6867
69-
* Once the previous command has succeeded, you can retry the upgrade operation.
68+
2. Retry your cluster upgrade using the [`az aks upgrade`][az-aks-upgrade] command.
7069
7170
```azurecli-interactive
72-
az aks upgrade --name myAKSCluster --resource-group myResourceGroup --kubernetes-version <KUBERNETES_VERSION>
71+
az aks upgrade --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP_NAME --kubernetes-version $KUBERNETES_VERSION
7372
```
7473
75-
7674
## Next steps
7775
7876
This article showed you how to stop AKS cluster upgrades automatically on API breaking changes. To learn more about more upgrade options for AKS clusters, see [Upgrade options for Azure Kubernetes Service (AKS) clusters](./upgrade-cluster.md).
@@ -82,5 +80,5 @@ This article showed you how to stop AKS cluster upgrades automatically on API br
8280
8381
<!-- LINKS - internal -->
8482
[az-aks-update]: /cli/azure/aks#az_aks_update
83+
[az-aks-upgrade]: /cli/azure/aks#az_aks_upgrade
8584
[container-insights]:/azure/azure-monitor/containers/container-insights-log-query#resource-logs
86-

0 commit comments

Comments
 (0)