本文介绍如何查看可观测性指标,并改进具有 KMS etcd 加密的 AKS 群集的可观测性。
先决条件
- 启用了 KMS etcd 加密的 AKS 群集。 有关详细信息,请参阅 将密钥管理服务 (KMS) etcd 加密添加到 Azure Kubernetes 服务 (AKS) 群集。
- 必须 启用密钥保管库的诊断设置才能检查加密日志。
检查 KMS 配置
- Azure CLI
- Azure 门户
使用
az aks show命令获取 KMS 配置。az aks show --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --query "securityProfile.azureKeyVaultKms"输出类似于以下示例输出:
... "securityProfile": { "azureKeyVaultKms": { "enabled": true, "keyId": "https://<key-vault-name>.vault.azure.cn/keys/<key-name>/<key-id>", "keyVaultNetworkAccess": "Public", "keyVaultResourceId": <key-vault-resource-id> ...
诊断并解决问题
由于 KMS 插件作为 Pod 的kube-apiserver sidecar 容器,因此无法直接访问它。 若要提高 KMS 的可观测性,可以使用 Azure 门户检查 KMS 状态。
- 在 Azure 门户中导航到你的 AKS 群集。
- 在服务菜单中,选择“ 诊断”并解决问题。
- 在搜索栏中,搜索 KMS 并选择 Azure KeyVault KMS 集成问题。
示例问题
假设你会看到以下问题: KeyExpired: Operation encrypt isn't allowed on an expired key
由于 AKS KMS 插件当前仅允许自带 (BYO) 密钥保管库和密钥,因此你有责任管理密钥生命周期。 如果密钥已过期,KMS 插件将无法解密现有机密。 若要解决此问题,需要 延长密钥到期日期 以使 KMS 正常工作并 轮换密钥版本。
后续步骤
有关将 KMS 与 AKS 配合使用的详细信息,请参阅以下文章: