AKS部署SecretProviderClass报错:未找到对应CRD资源
解决AKS部署SecretProviderClass的错误
错误原因
提示已明确说明:集群未安装secrets-store.csi.x-k8s.io/v1版本的SecretProviderClass对应的CRD(自定义资源定义),导致kubectl无法识别该资源类型。
解决步骤
1. 安装Secrets Store CSI Driver及配套CRD
在AKS中,最便捷的方式是通过Azure CLI启用官方集群扩展,该操作会自动完成CSI驱动和CRD的安装:
az aks enable-addons --addons azure-keyvault-secrets-provider --name <你的AKS集群名称> --resource-group <你的资源组名称>
2. 验证CRD安装状态
执行以下命令确认CRD已成功部署:
kubectl get crd secretproviderclasses.secrets-store.csi.x-k8s.io
返回类似如下结果即为安装成功:
NAME CREATED AT secretproviderclasses.secrets-store.csi.x-k8s.io 202X-XX-XXTXX:XX:XXZ
3. 重新部署SecretProviderClass清单
确认CRD安装完成后,重新执行部署命令:
kubectl apply -f secretProviderClass.yaml
额外注意事项
- 确保AKS集群版本为1.21及以上,该版本开始支持
secrets-store.csi.x-k8s.io/v1版本的资源定义。 - 需将清单中的
$CERT_NAME、$AKV_NAME替换为实际的Azure Key Vault证书名称和Key Vault实例名称。
内容的提问来源于stack exchange,提问作者Krish
相关产品推荐
相关产品推荐

