将Traefik设置为GCP上的Kubernetes入口
我试图遵循以下Traefik用户指南: 《用户指南》和我的设置之间的关键区别在于,该指南假定我在Minikube上,而我正试图在Google云平台(GCP)上获得此设置。我是Kubernetes的新手,但我认为我对基本面有一个不错的把握 无论如何,关于上面的《用户指南》中介绍的基于角色的访问控制配置,我经常遇到以下错误: 服务器错误(禁止):创建“rbac.yml”时出错:cl usterroles.rbac.authorization.k8s.io“traefik入口控制器”被禁止:尝试授予额外权限:[PolicyRule{Resources:[“services”],APIGroups:[“”],动词:[“get”]}PolicyRule{Resource ces:[“服务”]、APIGroups:[“”]、动词:[“列表”]}PolicyRule{Resources:[“服务”]、APIGroups:[“”]、动词:[“监视”]}PolicyRule{Resources:[“端点”]、APIGroups:[“”]、动词:[“获取”]}PolicyRule{Res 资源:[“端点”]、APIGroups:[“”]、动词:[“列表”]}PolicyRule{Resources:[“端点”]、APIGroups:[“”]、动词:[“监视”]}PolicyRule{Resources:[“机密”]、APIGroups:[“”]、动词:[“获取”]}PolicyRule{ 资源:[“机密”],APIGroups:[“”],动词:[“列表”]}PolicyRule{Resources:[“机密”],APIGroups:[“”],动词:[“监视”]}PolicyRule{Resources:[“入口”],APIGroups:[“扩展”],动词:[“获取”]} PolicyRule{Resources:[“ingresses”],APIGroups:[“extensions”],动词:[“list”]}PolicyRule{Resources:[“ingresses”],APIGroups:[“extensions”],动词:[“watch”]}用户=&{evan@sherwood.io[系统:authenti cated]map[authenticator:[GKE]}ownerrules=[PolicyRule{Resources:[“selfsubjectaccessreviews”],APIgroup:[“authorization.k8s.io”],动词:[“create”]}PolicyRule{Resources:[“selfsubjectrulesreviews”], api组:[“authorization.k8s.io”],动词:[“create”]}PolicyRule{nonresourceURL:[“/api”“/api/”“/api/”“/healthz”“/swagger-2.0.0.pb-v1”“/swagger.json”“/swaggerapi”“/swaggerapi/*”/ 版本“],动词:[“获取”]}]ruleResolutionErrors=[]将Traefik设置为GCP上的Kubernetes入口,kubernetes,google-cloud-platform,traefik,google-kubernetes-engine,Kubernetes,Google Cloud Platform,Traefik,Google Kubernetes Engine,我试图遵循以下Traefik用户指南: 《用户指南》和我的设置之间的关键区别在于,该指南假定我在Minikube上,而我正试图在Google云平台(GCP)上获得此设置。我是Kubernetes的新手,但我认为我对基本面有一个不错的把握 无论如何,关于上面的《用户指南》中介绍的基于角色的访问控制配置,我经常遇到以下错误: 服务器错误(禁止):创建“rbac.yml”时出错:cl usterroles.rbac.authorization.k8s.io“traefik入口控制器”被禁止:尝试授予额
我觉得我遇到了问题,但我不确定我需要做什么改变/做什么来克服这个问题。正如您引用的文档所述,您需要提升您的用户权限,至少在允许RBAC规则更改所必需的程度上 实现这一点的最简单方法是添加一个ClusterRoleBinding,该Binding分配
集群管理员
权限。YAML将如下所示:
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: megacorp-cluster-admin
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- apiGroup: rbac.authorization.k8s.io
kind: User
name: john.doe@megacorp.com
YAML假设您在GKE注册的用户电子邮件地址是john。doe@megacorp.com
。在kubectl应用
ing该清单之后,应该应用相应的扩展Traefik的RBAC规则
请注意,
cluster admin
基本上是集群的根用户。如果您打算进一步限制权限,也可以选择更多的权限。正如您引用的文档所述,您需要升级用户的权限,至少升级到允许RBAC规则更改所必需的程度
实现这一点的最简单方法是添加一个ClusterRoleBinding,该Binding分配集群管理员
权限。YAML将如下所示:
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: megacorp-cluster-admin
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- apiGroup: rbac.authorization.k8s.io
kind: User
name: john.doe@megacorp.com
YAML假设您在GKE注册的用户电子邮件地址是john。doe@megacorp.com
。在kubectl应用
ing该清单之后,应该应用相应的扩展Traefik的RBAC规则
请注意,cluster admin
基本上是集群的根用户。如果您打算进一步限制权限,也可以选择更多的权限