次の方法で共有


AKS でのオペレーティング システム (OS) バージョンのアップグレード

この記事では、Azure Kubernetes Service (AKS) ノードで使用できる OS バージョンと、OS バージョンをテストおよびアップグレードするためのベスト プラクティスについて説明します。

注意事項

この記事では、AKS で非推奨となる Ubuntu OS バージョンへの参照があります。

  • 2025 年 6 月 17 日から、AKS は Ubuntu 18.04 をサポートしなくなります。 既存のノード イメージは削除され、AKS はセキュリティ更新プログラムを提供しなくなります。 ノード プールをスケーリングできなくなります。 ノード プールをサポートされている kubernetes バージョンにアップグレードして、サポートされている Ubuntu バージョンに移行します。 この提供終了の詳細については、 AKS GitHub の問題を参照してください。
  • 2027 年 3 月 17 日以降、AKS は Ubuntu 20.04 をサポートしなくなります。 既存のノード イメージは削除され、AKS はセキュリティ更新プログラムを提供しなくなります。 ノード プールをスケーリングできなくなります。 ノード プールを kubernetes バージョン 1.34 以降にアップグレードして、サポートされている Ubuntu バージョンに移行します。 この提供終了の詳細については、 AKS GitHub の問題を参照してください。

サポートされている OS バージョン

ノード イメージ は、OS SKU を使用して指定できる OS バージョンに対応します。 クラスターとノード プールを作成するときに、次のパラメーターを指定できます。

  • --os-type: Linux または Windows を含む OS の種類。 クラスターの作成または更新中に Windows OS の種類を指定することはできません。
  • --os-sku: OS バージョンまたは OS バリアントを指定するために使用されます。 クラスターの作成または更新中に Windows OS SKU を指定することはできません。
  • --kubernetes-version: ノード プールまたはクラスターの作成に使用する Kubernetes のバージョン。

ベスト プラクティスのガイダンス

既定の OS バージョンは、最新の検証済みバージョンです。

  • Ubuntu の場合は、 --os-type Linux--os-sku Ubuntuを指定しながらクラスターとノード プールを作成することをお勧めします。 これにより、Kubernetes のバージョンに基づいて、最新の既定の Ubuntu バージョンに自動的に更新されます。
  • Azure Linux では、 --os-type Linux--os-sku AzureLinuxを指定しながらクラスターとノード プールを作成することをお勧めします。 これにより、Kubernetes のバージョンに基づいて、最新の既定の Azure Linux バージョンに自動的に更新されます。
  • Windows の場合は、 --os-type Windows--os-sku Windows2022を指定しながらノード プールを作成することをお勧めします。 ノード プールがリリースされたら、ノード プールを次の OS バージョンに手動で更新する必要があります。
OS の種類 OS SKU サポートされている Kubernetes のバージョン 既定のバージョン管理
Linux ウブントゥ この OS SKU は、すべての kubernetes バージョンでサポートされています。 この OS SKU の OS バージョンは、Kubernetes のバージョンに基づいて変更されます。 Ubuntu 22.04 は、Kubernetes バージョン 1.25 から 1.32 の既定です。
Linux Ubuntu2404 この OS SKU は、kubernetes 1.32 から 1.38 でサポートされています。 Ubuntu 24.04 は、 --os-sku Ubuntu2404を使用して K8s 1.32 以降でプレビューで利用できます。 kubernetes のバージョンをアップグレードせずに新しい os バージョンをテストする場合は、この OS SKU をお勧めします。
Linux Ubuntu2204 この OS SKU は、kubernetes バージョン 1.25 から 1.33 でサポートされています。 --os-sku Ubuntuを使用する場合、Ubuntu 22.04 は現在既定です。 Ubuntu 24.04 のテスト後に Ubuntu 22.04 にロールバックする必要がある場合は、この OS SKU をお勧めします。
Linux Azure Linux この OS SKU は、すべての Kubernetes バージョンでサポートされています。 この OS SKU の OS バージョンは、Kubernetes のバージョンに基づいて変更されます。 Azure Linux 2.0 は、Kubernetes バージョン 1.27 から 1.31 の既定です。 Azure Linux 3.0 は、Kubernetes バージョン 1.32 以降の既定です。
ウィンドウズ Windows2019 1.14-1.32 Kubernetes バージョン 1.14 から 1.24 の Windows OS の種類の既定値。
ウィンドウズ Windows2022 1.23 から 1.34 Kubernetes バージョン 1.25 から 1.33 の Windows OS の種類の既定値。

AKS で新しい OS バージョンがリリースされると、一般公開および既定になる前にプレビューでサポートされます。 プレビューで使用できるようになると、新しい OS バージョンで非運用環境のワークロードをテストすることをお勧めします。

既存のノード プールの OS SKU を更新する

az aks nodepool update コマンドを使用して、既存のノード プールのos-skuを更新できます。 プレビューで使用できる新しい os バージョンがある場合、この機能を使用すると、kubernetes のバージョンをアップグレードしなくても、ノード プールを新しい os バージョンに移行できます。

制限事項

  • --os-sku Windows2019 は、ノード プール更新コマンドの有効な os-sku ではありません。
  • --os-sku Windows2022 は、ノード プール更新コマンドの有効な os-sku ではありません。

os-sku コマンドを使用してaz aks nodepool updateを更新します。

az aks nodepool update \
    --resource-group myResourceGroup \
    --cluster-name myAKSCluster \
    --os-type Linux \
    --os-sku Ubuntu \
    --name npwin \
    --node-count 1

az aks nodepool update コマンドを使用して、サポートされている任意の Linux os-sku間で移行できます。 ターゲット OS に kubernetes バージョン、VM サイズ、または FIPS 有効化でサポートされているノード イメージがない場合、コマンドが失敗する可能性があります。

複数の OS バージョンがサポートされている kubernetes バージョンでは、 az aks nodepool update コマンドを使用して以前の OS バージョンにロールバックできます。

たとえば、Ubuntu 24.04 の使用中に問題が発生した場合は、ワークロードの可用性を維持しながら問題を解決するために、ノード プール os-sku を更新して Ubuntu 22.04 を指定できます。

既存のノード プールで OS バージョンをロールバックする

az aks nodepool update コマンドを使用して、既存のノード プールのos-skuを更新できます。 Kubernetes バージョンでサポートされている以前の OS バージョンがある場合、この機能を使用すると、OS バージョンをロールバックできます。

制限事項

  • --os-sku Windows2019 は、ノード プール更新コマンドの有効な os-sku ではありません。
  • --os-sku Windows2022 は、ノード プール更新コマンドの有効な os-sku ではありません。

os-sku コマンドを使用してaz aks nodepool updateを更新します。

az aks nodepool update \
    --resource-group myResourceGroup \
    --cluster-name myAKSCluster \
    --os-type Linux \
    --os-sku Ubuntu2204 \
    --name npwin \
    --node-count 1

az aks nodepool update コマンドを使用して、サポートされている任意の Linux os-sku間で移行できます。 ターゲット OS に kubernetes バージョン、VM サイズ、または FIPS 有効化でサポートされているノード イメージがない場合、コマンドが失敗する可能性があります。

次のステップ

AKS でのノード イメージ、ノード プールのアップグレード、ノード構成の詳細については、次のリソースを参照してください。