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

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

Important

2026 年 12 月 10 日から、Azure Kubernetes Service (AKS)は OS Guard for AKS (プレビュー) を使用Azure Linux をサポートしなくなりました。 その時点で、AKS は OS Guard ノード イメージを使用して新しい Azure Linux を生成したり、セキュリティ パッチを提供したりしなくなり、os Guard を使用して linux Azure新しいノード プールを作成できなくなります。 2027 年 3 月 10 日、AKS は、OS Guard ノード イメージを使用して既存の Azure Linux をすべて削除します。これにより、スケーリングと修復 (再イメージ化と再デプロイ) 操作が失敗します。 中断を回避するには、Azure Container Linux (ACL) に移行します。 この提供終了の詳細については、廃止GitHubの問題Azure更新プログラムの提供終了に関する発表を参照してください。 お知らせや更新プログラムに関する最新情報を入手するには、 AKS のリリース ノートに従ってください。

Important

2027 年 17 月 17 日 以降、Azure Kubernetes Service (AKS)は Ubuntu 20.04 のセキュリティ更新プログラムをサポートまたは提供しなくなりました。 既存のノード イメージはすべて削除され、Ubuntu 20.04 を実行しているノード プールをスケーリングすることはできません。 ノード プールを Kubernetes バージョン 1.35 以降にアップグレードして、サポートされている Ubuntu バージョンに移行します。 この提供終了の詳細については、Retirement GitHubの問題 および Azure 更新プログラムの提供終了に関する発表を参照してください。 お知らせや更新情報を常に把握するには、AKS リリース ノートに従ってください。

Important

June 30、2027 以降、Azure Kubernetes Service (AKS)は Ubuntu 22.04 のセキュリティ更新プログラムをサポートまたは提供しなくなりました。 中断を回避するには、その日までに Ubuntu 24.04 以降に 移行 します。 2027 年 6 月 30 日までの間、中断することなく、AKS で Ubuntu 22.04 を引き続き使用できます。 2027 年 6 月 30 日までに移行しないと、新しいノード プールを作成できず、AKS は新しいノード イメージを生成せず、既存のノード プールのセキュリティ パッチを受け取らなくなります。 Kubernetes バージョン 1.33 以降で長期サポート (LTS) を有効にする場合は、最初にノード プールを Ubuntu 24.04 に更新します。 2028 年 4 月 30 日、AKS は Ubuntu 22.04 ノード イメージと既存のコードを削除し、スケーリングと修復操作が失敗します。 セキュリティの脆弱性、ノード イメージのアップグレードの失敗、スケーリングエラーなどのサービスの中断を回避するには、2027 年 6 月 30 日までに Ubuntu 24.04 以降に 移行 します。 移行オプションは次のとおりです。

  • 既定のオペレーティング システム SKU (OSSku):Ubuntuを使用している場合、Kubernetes バージョンを 1.35 以降にアップグレードすると、自動的に Ubuntu 24.04 に移行されます。
  • バージョン管理 OSSku: Ubuntu2204をご利用の場合、Kubernetes 1.35 以降は Ubuntu 、Kubernetes 1.32 以降は Ubuntu2404 に OS Sku を更新してください。

この提供終了の詳細については、Retirement GitHubの問題および Azure 更新プログラムの投稿を参照してください。 お知らせや更新情報を常に把握するには、AKS リリース ノートに従ってください。

Important

2025 年 1 月 30 日 以降、Azure Kubernetes Service (AKS)では、Azure Linux 2.0 のセキュリティ更新プログラムがサポートまたは提供されなくなります。 Azure Linux 2.0 ノード イメージは、202512.06.0 リリースでフリーズします。 2026 年 3 月 31 日以降、ノード イメージは削除され、ノード プールをスケーリングできなくなります。 サポートされている Azure Linux バージョンに移行するには、ノード プールをサポートされている Kubernetes バージョンにアップグレードするか、osSku AzureLinux3 に移行します。 詳細については、Retirement GitHubの問題および Azure 更新プログラムの提供終了のお知らせを参照してください。 お知らせや更新情報を常に把握するには、AKS リリース ノートに従ってください。

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

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

  • --os-type: Linux または Windows を含む OS の種類。 クラスターの作成または更新時に、Windows OS の種類を指定することはできません。
  • --os-sku: OS バージョンまたは OS バリアントを指定するために使用されます。 クラスターの作成または更新中に、Windows OS SKU を指定することはできません。 サポートされている OS SKU オプションの詳細については、Azure AKS CLI または API を参照してください。
  • --kubernetes-version: ノード プールまたはクラスターの作成に使用する Kubernetes のバージョン。

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

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

  • Ubuntu の場合は、 --os-type Linux--os-sku Ubuntuを指定しながらクラスターとノード プールを作成することをお勧めします。 これにより、Kubernetes のバージョンに基づいて、最新の既定の Ubuntu バージョンに自動的に更新されます。
  • Azure Linux の場合は、クラスターとノード プールを作成し、--os-type Linux--os-sku AzureLinux を指定することをお勧めします。 これにより、Kubernetes のバージョンに基づいて、Linux Azureの最新の既定のバージョンに自動的に更新されます。
  • Azure Container Linux (ACL) の場合は、クラスターとノード プールを作成し、--os-type Linux--os-sku AzureContainerLinux を指定することをお勧めします。 これにより、Kubernetes のバージョンに基づいて、最新の既定の ACL バージョンに自動的に更新されます。
  • Windowsの場合は、--os-type Windows--os-sku Windows2025、および--enable-fips-imageを指定しながらノード プールを作成します (Windows Server 2025 では FIPS 対応イメージが必要です)。 ノード プールがリリースされたら、ノード プールを次の OS バージョンに手動で更新する必要があります。
OS の種類 OSインベントリコード(SKU) サポートされている Kubernetes のバージョン 既定のバージョン管理
Linux ウブントゥ この OS SKU は、すべての Kubernetes バージョンでサポートされています。 この OS SKU の OS バージョンは、Kubernetes のバージョンに基づいて変更されます。 Ubuntu 22.04 は、Kubernetes バージョン 1.25 から 1.34 の既定です。 Ubuntu 24.04 は、Kubernetes バージョン 1.35 以降の既定です。
Linux Ubuntu2604 この OS SKU は、Kubernetes バージョン 1.36 以降のプレビューでサポートされています。 Kubernetes のバージョンをアップグレードせずに新しい OS バージョンに移行する場合は、このバージョン管理された OS SKU をお勧めします。 Ubuntu2604Preview機能フラグが必要です。
Linux Ubuntu2404 この OS SKU は、Kubernetes 1.32 から 1.38 でのみサポートされます。 Kubernetes のバージョンをアップグレードせずに新しい OS バージョンに移行する場合は、このバージョン管理された OS SKU をお勧めします。 Kubernetes バージョン 1.35 以降で --os-sku Ubuntu を使用する場合、Ubuntu 24.04 は既定です。
Linux Ubuntu2204 この OS SKU は、Kubernetes バージョン 1.25 から 1.36 でサポートされています。 Ubuntu 22.04 にロールバックする必要がある場合は、このバージョン管理された OS SKU をお勧めします。 Kubernetes バージョン 1.25 から 1.35 で --os-sku Ubuntu を使用する場合、Ubuntu 22.04 は既定です。
Linux AzureLinux この OS SKU は、すべての Kubernetes バージョンでサポートされています。 この OS SKU の OS バージョンは、Kubernetes のバージョンに基づいて変更されます。 Azure Linux 2.0 は、Kubernetes バージョン 1.27 から 1.31 の既定です。 Azure Linux 3.0 は、Kubernetes バージョン 1.32 以降の既定です。 AKS 1.31 で AzureLinuxV3Preview 機能フラグが有効になっている場合、 --os-sku AzureLinux の既定値は 3.0 になります。
Linux AzureLinux3 この OS SKU は、Kubernetes 1.28 から 1.36 でサポートされています。 Kubernetes バージョンをアップグレードせずに新しい OS バージョンをテストする場合は、この OS SKU をお勧めします。 この OS SKU を使用して、Azure Linux 2.0 から Azure Linux 3.0 に移行することもできます。
Linux AzureLinuxOSGuard この OS SKU は、Kubernetes バージョン 1.32 以降でサポートされています。 Azure Linux と OS Guard のバージョンは、ノード イメージのアップグレードによってアップグレードされます。 詳細については、「Azure Linux with OS Guard for AKS」を参照してください。
Linux 平床貨車 この OS SKU は、すべての Kubernetes バージョンでサポートされています。 フラットカー バージョンは、ノード イメージのアップグレードによってアップグレードされます。 詳細については、「 AKS 用 Flatcar Container Linux」を参照してください。
Linux AzureContainerLinux この OS SKU は、Kubernetes バージョン 1.34 以降でサポートされています。 Azure Container Linux のバージョンは、ノード イメージのアップグレードによってアップグレードされます。
Windows Windows2022 1.23 から 1.36 Kubernetes バージョン 1.25 から 1.35 の Windows OS の種類の既定値。
Windows Windows2025 1.32 以降 Kubernetes バージョン 1.36 以降の Windows OS の種類の既定値。 FIPS 対応イメージ (--enable-fips-image) が必要です。

新しい OS バージョンに移行する

AKS で新しい OS バージョンがリリースされると、最初はプレビューでサポートされます。 数か月間プレビューでテストした後、AKS は新しい OS バージョンを一般公開 (GA) し、既定の OS SKU (Ubuntu または AzureLinux) を最新の GA OS バージョンに更新します。 この既定の更新は、新しい Kubernetes バージョンリリースで行われます。

プレビューで使用できるようになると、新しい OS バージョンで非運用環境のワークロードをテストすることをお勧めします。 プレビュー機能にアクセスするには、プレビュー拡張機能がインストールされていることを確認してください。 az extension add --name aks-preview コマンドを使用して拡張機能をインストールできます。

新しい OS バージョンに移行するには、次の 2 つの方法があります。

  • 既定の OS SKU: UbuntuAzureLinuxなどの既定の OS SKU を使用している場合、 Kubernetes のバージョンをアップグレードすると、自動的に最新の GA バージョンが取得されます。 新しい OS バージョンに移行するために手動で変更する必要はありません。 Ubuntu OS SKU を使用するクラスターとノード プールは、Kubernetes バージョンを 1.35 以降にアップグレードすると、自動的に Ubuntu 24.04 に移行されます。
  • バージョン管理された OS SKU: Ubuntu2604Ubuntu2404AzureLinux3Windows2025などのバージョン管理された OS SKU を使用している場合は、Kubernetes のアップグレードがブロックされないように、新しい OS バージョンに手動で移行する必要があります。 Linux OS を使用している場合は、既存のノード プールの OS SKU を更新して移行できます。

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

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

ノード プール更新コマンドでは、次の値はサポートされていません。

  • --os-sku Windows2022
  • --os-sku Windows2025

代わりに、使用する予定の対応する --os-sku を使用して、クラスターにノード プールを追加する必要があります。

az aks nodepool update \
    --resource-group $RESOURCE_GROUP \
    --cluster-name $CLUSTER_NAME \
    --os-sku Ubuntu \
    --name $NODE_POOL_NAME

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

Ubuntu 26.04 への移行 (プレビュー)

Important

AKS のプレビュー機能は、セルフサービスのオプトイン単位で利用できます。 プレビューは、"現状有姿のまま" および "利用可能な限度" で提供され、サービス レベル アグリーメントおよび限定保証から除外されるものとします。 AKS プレビューは、ベストエフォート ベースでカスタマー サポートによって部分的にカバーされます。 そのため、これらの機能は運用環境での使用を目的としていません。 詳細については、次のサポート記事を参照してください。

Ubuntu 26.04 は、Kubernetes バージョン 1.36 以降のプレビューで利用できます。 --os-sku Ubuntu2604を指定して Ubuntu 26.04 を使用します。

--os-sku Ubuntu2604に移行するときは、次の情報に留意してください。

  • ノード プールを作成または Ubuntu 26.04 に更新する前に、 Ubuntu2604Preview 機能フラグを登録します。
  • Ubuntu 26.04 には、第 2 世代 VM をサポートする VM サイズが必要です。
  • Ubuntu 26.04 では、AMD64 と Arm64 の最小ノード イメージが使用されます。
  • FIPS機密 VMおよび信頼された起動 はサポートされていません。

aks-preview Azure CLI 拡張機能をインストールする

  1. az extension add コマンドを使用して、aks-preview Azure CLI拡張機能をインストールします。

    az extension add --name aks-preview
    
  2. 拡張機能を更新して、 az extension update コマンドを使用して最新バージョンがインストールされていることを確認します。

    az extension update --name aks-preview
    

ノード プールを作成または Ubuntu 26.04 に更新する前に、Azure サブスクリプションにUbuntu2604Preview機能フラグを登録します。

Ubuntu2604Preview フィーチャーフラグを登録する

  1. Ubuntu2604Preview コマンドを使用して、az feature register機能フラグを登録します。

    az feature register \
        --namespace Microsoft.ContainerService \
        --name Ubuntu2604Preview
    

    状態が [登録済み] と表示されるまでに数分かかります。

  2. az feature show コマンドを使用して、登録状態を確認します。

    az feature show \
        --namespace Microsoft.ContainerService \
        --name Ubuntu2604Preview \
        --query properties.state
    
  3. 状態がRegisteredと表示されたら、 コマンドを使用して、az provider register リソース プロバイダーの登録を更新します。

    az provider register --namespace Microsoft.ContainerService
    

既存のノード プールを Ubuntu 26.04 に更新する

az aks nodepool update コマンドを使用して、既存のノード プールの--os-sku Ubuntu2604に更新します。

az aks nodepool update \
    --resource-group $RESOURCE_GROUP \
    --cluster-name $CLUSTER_NAME \
    --os-sku Ubuntu2604 \
    --name $NODE_POOL_NAME

OS バージョンをロールバックする

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

次のシナリオでは、OS のバージョンをロールバックできます。

  • 新しい OS バージョンをテストしていて、問題が発生した場合。
  • 新しい OS バージョンを既定としてサポートする Kubernetes バージョンにアップグレードしたら、既定の Ubuntu または AzureLinux OS SKU にロールバックできます。 これにより、ノード プールの更新を必要とするのではなく、Kubernetes のアップグレードの一部として将来の OS バージョンを取得できます。

OS バージョンを既定の OS SKU にロールバックする

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

ノード プール更新コマンドでは、次の値はサポートされていません。

  • --os-sku Windows2022
  • --os-sku Windows2025

その代わりに、使用する対対応する --os-sku を使用して、クラスターにノード プールを追加します。 Windows FIPS ノード プールの OS バージョンのアップグレードの詳細については、「OS バージョンWindowsアップグレードする」を参照してください。

OSインベントリコード(SKU) 既定の OS バージョン
ウブントゥ OS SKU Ubuntuがある場合、Kubernetes バージョンが 1.25 から 1.34 の場合、Ubuntu 22.04 が既定の OS バージョンになります。 Ubuntu 24.04 は、Kubernetes 1.35 から 1.37 の Ubuntu の既定値です。
AzureLinux OS SKU AzureLinux がある場合、Kubernetes 1.26 から 1.31 において、AzureLinux の既定値は Azure Linux 2.0 です。 Azure Linux 3.0 は、Kubernetes 1.32 から 1.36 の AzureLinux の既定値です。

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

OS SKU Ubuntuを使用するようにノード プールを更新すると、Kubernetes のバージョンに基づいて既定の OS バージョンが取得されます。 これにより、ノード プールの更新コマンド中に OS のバージョンが変更された場合に、自動再イメージ化がトリガーされる可能性があります。

--os-sku Ubuntu コマンドを使用して、既存のノード プールのaz aks nodepool updateに更新します。

az aks nodepool update \
    --resource-group $RESOURCE_GROUP \
    --cluster-name $CLUSTER_NAME \
    --os-sku Ubuntu \
    --name $NODE_POOL_NAME

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

既存のノード プールで OS SKU を Azure Linux に更新する

OS SKU AzureLinuxを使用するようにノード プールを更新すると、Kubernetes のバージョンに基づいて既定の OS バージョンが取得されます。 これにより、ノード プールの更新コマンド中に OS のバージョンが変更された場合に、自動再イメージ化がトリガーされる可能性があります。

--os-sku AzureLinux コマンドを使用して、既存のノード プールのaz aks nodepool updateに更新します。

az aks nodepool update \
    --resource-group $RESOURCE_GROUP \
    --cluster-name $CLUSTER_NAME \
    --os-sku AzureLinux \
    --name $NODE_POOL_NAME

次のステップ

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