在 gke 上设置没有 helm 或 rbac 的证书管理器时遇到问题

Trouble setting up cert-manager without helm or rbac on gke

我相信我已经遵循了这个指南: https://medium.com/@hobochild/installing-cert-manager-on-a-gcloud-k8s-cluster-d379223f43ff

让我从这个 repo 安装 without-rbac 版本的 cert-manager: https://github.com/jetstack/cert-manager

然而,当 cert-manager pod 启动时,它开始发送此错误消息: leaderelection.go:224] error retrieving resource lock cert-manager/cert-manager-controller: configmaps "cert-manager-controller" is forbidden: User "system:serviceaccount:cert-manager:default" cannot get configmaps in the namespace "cert-manager": Unknown user "system:serviceaccount:cert-manager:default"

希望有人有一些想法。

错误似乎来自 RBAC。如果您是 minikube 中的 运行,您可以通过 运行:

授予 cert-manager 命名空间中的 default 服务帐户适当的权限

kubectl create clusterrolebinding cert-manager-cluster-admin --clusterrole=cluster-admin --serviceaccount=cert-manager:default

创建角色绑定后,cert-manager 应该会完成启动。

如果您在 GKE 中安装,您应该使用 'with-rbac.yaml' 变体,除非您在 GKE 集群上明确禁用了 RBAC!

这应该可以解决您在这里看到的问题,从错误消息的外观来看,您确实启用了 RBAC!