本文将介绍如何将版本为1.27之前的群集迁移到KMS v2。 从 AKS 版本 1.27 开始,启用 KMS 功能将配置 KMS v2。 使用 KMS v2 时,你不受早期版本支持的 2,000 个机密的限制。 有关详细信息,请参阅 KMS v2 改进。
重要
如果群集版本低于 1.27,而你已启用 KMS,系统会阻止升级到群集 1.27 或更高版本。
禁用 KMS
使用
az aks update命令及其--disable-azure-keyvault-kms参数在现有群集上禁用 KMS。az aks update --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --disable-azure-keyvault-kms使用
kubectl get secrets命令更新所有机密,以确保之前创建的机密不再加密。 对于较大的群集,可能需要按命名空间细分机密或创建更新脚本。 如果上一个更新 KMS 命令失败,仍运行以下命令以避免 KMS 插件出现意外状态。kubectl get secrets --all-namespaces -o json | kubectl replace -f -
升级 AKS 群集并打开 KMS
使用命令
az aks upgrade,并将参数--kubernetes-version设置为所需版本,以将 AKS 群集升级到版本 1.27 或更高版本。 以下示例升级到版本1.27.1:az aks upgrade --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --kubernetes-version 1.27.1升级完成后,可以使用以下资源之一为公钥或私钥保管库启用 KMS:
使用
kubectl get secrets命令更新所有机密,以确保之前创建的机密不再加密。 对于较大的群集,可能需要按命名空间细分机密或创建更新脚本。 如果上一个更新 KMS 命令失败,仍运行以下命令以避免 KMS 插件出现意外状态。kubectl get secrets --all-namespaces -o json | kubectl replace -f -
后续步骤
有关将 KMS 与 AKS 配合使用的详细信息,请参阅以下文章: