この記事では、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 でのノード イメージ、ノード プールのアップグレード、ノード構成の詳細については、次のリソースを参照してください。
- ノードとノード構成の詳細については、 AKS のコア概念に関するページを参照してください。
- ノード イメージの自動アップグレードを構成し、計画メンテナンスを使用してスケジュールします。
- カスタム ノード構成を適用して、OS または kubelet の設定を変更します。
- 最新のノード イメージの詳細については、AKS のリリース ノートをご覧ください。
- GitHub Actions でクラスターとノード プールのアップグレードを自動的に適用します。
- AKS パッチとアップグレード ガイダンスを使用したベスト プラクティスのアップグレードについて説明します。
Azure Kubernetes Service