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 のリリース ノートに従ってください。
Note
Azure Linux と OS Guard (プレビュー) は、Azure Container Linux (ACL) に置き換えられます。
Azure Container Linux は、Azure Kubernetes Service (AKS)用の長期的で不変のコンテナー最適化 Linux オペレーティング システム (OS) です。 コンテナー化されたワークロードを大規模に実行するように設計された、セキュリティで保護され、最小限かつ運用上一貫性のあるホスト OS が提供されます。
詳細については、Azure Container Linux (ACL) の概要を参照してください。
このチュートリアルでは、 5 つのパート 1 で、次の方法を学習します。
- Kubernetes CLI、
kubectlをインストールします。 -
aks-previewAzure CLI 拡張機能をインストールします。 -
AzureLinuxOSGuardPreview機能フラグを登録します。 - Azure リソース グループを作成します。
- OS Guard クラスターを使用して Azure Linux を作成してデプロイします。
- OS Guard クラスターを使用して Azure Linux に接続するように
kubectlを構成します。
後のチュートリアルでは、OS Guard ノード プールを含む Azure Linux を既存のクラスターに追加し、OS Guard を使用して既存のノードを Azure Linux に移行する方法について説明します。
Prerequisites
- 最新バージョンの Azure CLI が必要です。
az versionコマンドを使用してバージョンを検索します。 最新バージョンにアップグレードするには、az upgradeコマンドを使用します。 -
Azure CLI 拡張機能をインストールする
aks-preview。 -
AzureLinuxOSGuardPreview機能フラグを登録します。
OS Guard 使用時の Azure Linux に関する考慮事項と制限事項
開始する前に、OS Guard (プレビュー) を使用した Azure Linux に関する次の考慮事項と制限事項を確認してください。
- Os Guard を使用する Azure Linux には、Kubernetes バージョン 1.32.0 以降が必要です。
- OS Guard イメージを使用するすべての Azure Linux では、 Federal Information Process Standard (FIPS) と Trusted Launch が有効になっています。
- Azure CLI と ARM テンプレートは、プレビュー段階の AKS 上の OS Guard を使用する Azure Linux でサポートされている唯一のデプロイ方法です。 PowerShell と Terraform はサポートされていません。
- Arm64 イメージは、プレビュー段階の AKS 上の OS Guard を使用した Azure Linux ではサポートされていません。
-
NodeImageとNoneは、AKS 上で OS Guard を使用する Azure Linux でサポートされている唯一のオペレーティング システム (OS) アップグレード チャネルです。UnmanagedおよびSecurityPatchは、変更できない /usr ディレクトリのため、OS Guard を使用する Azure Linux と互換性がありません。 - アーティファクト ストリーミング はサポートされていません。
- ポッドサンドボックス はサポートされていません。
- Confidential Virtual Machines (CVM) は サポートされていません。
- Gen 1 仮想マシン (VM) は サポートされていません。
aks-preview Azure CLI 拡張機能をインストールする
Important
AKS のプレビュー機能は、セルフサービスのオプトイン単位で利用できます。 プレビューは、"現状有姿のまま" および "利用可能な限度" で提供され、サービス レベル アグリーメントおよび限定保証から除外されるものとします。 AKS プレビューは、ベストエフォート ベースでカスタマー サポートによって部分的にカバーされます。 そのため、これらの機能は運用環境での使用を目的としていません。 詳細については、次のサポート記事を参照してください。
aks-preview コマンドを使用して az extension add 拡張機能をインストールします。
az extension add --name aks-preview
az extension update コマンドを使って拡張機能の最新バージョンに更新します。
az extension update --name aks-preview
AzureLinuxOSGuardPreview フィーチャーフラグを登録する
AzureLinuxOSGuardPreviewコマンドを使用して、az feature register機能フラグを登録します。az feature register --namespace "Microsoft.ContainerService" --name "AzureLinuxOSGuardPreview"状態が [登録済み] と表示されるまでに数分かかります。
az feature showコマンドを使用して、登録の状態を確認します。az feature show --namespace "Microsoft.ContainerService" --name "AzureLinuxOSGuardPreview"状態に [登録済み] が反映されたら、
Microsoft.ContainerServiceコマンドを使用して、az provider registerリソース プロバイダーの登録を更新します。az provider register --namespace "Microsoft.ContainerService"
環境変数の設定
デプロイごとに一意のリソース名を作成するには、次の環境変数を設定します。
export RESOURCE_GROUP="<your-resource-group-name>"
export REGION="<your-region>"
export CLUSTER_NAME="<your-cluster-name>"
リソース グループを作成します
Azureでリソース グループを作成する場合は、場所を指定する必要があります。 この場所は、リソース グループ メタデータのストレージの場所であり、リソースの作成時に別のリージョンを指定しない場合はAzureでリソースが実行されます。
az group create コマンドを使用して、リソース グループを作成します。
az group create --name $RESOURCE_GROUP --location $REGION
出力例:
{
"id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxOSGuardResourceGroupxxxxx",
"location": "EastUS2",
"managedBy": null,
"name": "testAzureLinuxOSGuardResourceGroupxxxxx",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": "Microsoft.Resources/resourceGroups"
}
OS Guard (プレビュー) クラスターを使用して Azure Linux を作成する
az aks create パラメーターを指定して --os-sku AzureLinuxOSGuard コマンドを使用して AKS クラスターを作成し、OS Guard クラスターで Azure Linux をプロビジョニングします。 OS Guard で Linux を Azure使用するには>FIPS、セキュア ブート、および vtpm を有効にする必要があります。
az aks create --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --os-sku AzureLinuxOSGuard --node-osdisk-type Managed --enable-fips-image --enable-secure-boot --enable-vtpm
出力例:
{
"id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxOSGuardResourceGroupxxxxx/providers/Microsoft.ContainerService/managedClusters/testAzureLinuxOSGuardClusterxxxxx",
"location": "WestUS2",
"name": "testAzureLinuxOSGuardClusterxxxxx",
"properties": {
"provisioningState": "Succeeded"
},
"type": "Microsoft.ContainerService/managedClusters"
}
数分後、コマンドが完了し、クラスターに関する情報が JSON 形式で返されます。
kubectl を使用してクラスターに接続する
kubectlコマンドを使用して、Kubernetes クラスターに接続するようにaz aks get-credentialsを構成します。az aks get-credentials --resource-group $RESOURCE_GROUP --name $CLUSTER_NAMEクラスター ノードの一覧を返すには、
kubectl get nodesコマンドを使用してクラスターへの接続を確認します。kubectl get nodes出力例:
NAME STATUS ROLES AGE VERSION aks-nodepool1-00000000-0 Ready agent 10m v1.20.7 aks-nodepool1-00000000-1 Ready agent 10m v1.20.7
次のステップ
このチュートリアルでは、OS Guard クラスターを使用して Azure Linux を作成してデプロイしました。 次のチュートリアルでは、OS Guard ノード プールを含む Azure Linux を既存のクラスターに追加する方法について説明します。