排查常见的自带密钥(BYOK)问题

本文讨论有关Microsoft Azure Kubernetes 服务(AKS)中最常见的自带密钥(BYOK)问题的故障排除方法。

先决条件

故障排除清单

步骤 1:注册预览功能以在临时 OS 磁盘上启用 BYOK

若要在临时操作系统(OS)磁盘(OS)磁盘(Microsoft.ContainerService/EnableBYOKOnEphemeralOSDiskPreview)上注册启用 BYOK 的预览功能,请运行 az feature registeraz feature show 命令。 有关说明,请参阅 注册客户管理的密钥(预览版)功能

步骤 2:创建在临时 OS 磁盘上使用 BYOK 的群集

若要在临时 OS 磁盘上创建使用 BYOK 的 AKS 群集,请运行 az aks create 命令。 有关说明,请参阅 创建新的 AKS 群集并加密 OS 磁盘

注意

如果未在az aks create命令中指定--node-osdisk-type参数,则Ephemeral节点的默认 OS 磁盘类型仅当当前虚拟机(VM)大小支持临时 OS 磁盘时。 有关详细信息,请参阅 Azure 虚拟机的临时 OS 磁盘

原因 1:无法在密钥保管库中启用清除保护

如果收到 CreateVMSSAgentPoolFailed 错误代码和 KeyVaultNotPurgeProtectionEnabled 错误子代码,则为虚拟机规模集创建代理池失败,因为在创建密钥保管库时未启用清除保护。

解决方案 1:创建密钥保管库时启用清除保护

再次运行 az keyvault create 命令,并为参数指定值true--enable-purge-protection。 有关说明,请参阅创建 Azure 密钥库 实例

原因 2:当虚拟机规模集的代理池创建失败时,密钥保管库和磁盘位于不同的区域中

如果收到 CreateVMSSAgentPoolFailed 错误代码和 KeyVaultAndDiskInDifferentRegions 错误子代码,密钥保管库和磁盘加密集位于不同的区域中。 密钥保管库和磁盘加密集必须位于同一区域。

解决方案 2:创建密钥保管库时,使用与磁盘相同的区域

再次运行 az keyvault create 命令,并确保在--location参数中指定的值与用于磁盘加密集的区域相同。 有关说明,请参阅创建 Azure 密钥库 实例

原因 3:未授予磁盘加密集

如果删除密钥保管库的磁盘加密集权限,则 AKS 群集节点不会运行。 在这种情况下,在Azure 门户的磁盘加密集页中收到以下错误消息:

若要将磁盘、映像或快照与此磁盘加密集相关联,必须向密钥保管库授予权限。

解决方案 3:更新安全策略设置

通过运行 az keyvault set-policy 命令再次更新安全策略设置。 有关说明,请参阅 授予 DiskEncryptionSet 对密钥保管库的访问权限。

参考

联系我们寻求帮助

如果你有任何疑问或需要帮助,请创建支持请求联系 Azure 社区支持。 你还可以将产品反馈提交到 Azure 反馈社区