0

尝试在 GKE(Google Container Engine)上安装istio 0.1.6 。

运行 follow 以检查集群是否启用了 RBAC(基于角色的访问控制):

$ kubectl api-versions | grep rbac
rbac.authorization.k8s.io/v1beta1

它显示“beta”版本,所以我运行:

$ kubectl apply -f istio-0.1.6/install/kubernetes/istio-rbac-beta.yaml
Error from server (Forbidden): error when creating "istio-0.1.6/install/kubernetes/istio-rbac-beta.yaml": clusterroles.rbac.authorization.k8s.io "istio-pilot" is forbidden: attempt to grant extra privileges:...

集群角色绑定创建没有帮助:

$ kubectl create clusterrolebinding myname-cluster-admin-binding --clusterrole=cluster-admin --user=myname@example.org

知道如何解决这个问题吗?

更多细节:

$ kubectl version
Client Version: version.Info{Major:"1", Minor:"6", GitVersion:"v1.6.2", GitCommit:"477efc3cbe6a7effca06bd1452fa356e2201e1ee", GitTreeState:"clean", BuildDate:"2017-04-19T20:33:11Z", GoVersion:"go1.7.5", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"6", GitVersion:"v1.6.4", GitCommit:"d6f433224538d4f9ca2f7ae19b252e6fcb66a3ae", GitTreeState:"clean", BuildDate:"2017-05-19T18:33:17Z", GoVersion:"go1.7.5", Compiler:"gc", Platform:"linux/amd64"}
4

2 回答 2

2
CLOUDSDK_CONTAINER_USE_CLIENT_CERTIFICATE=True gcloud container clusters get-credentials...

添加CLOUDSDK_CONTAINER_USE_CLIENT_CERTIFICATE=Truegcloud container clusters get-credentials命令,它使用适当的凭据更新 kubeconfig 文件以将 kubectl 指向容器引擎集群,解决了问题:)

参考:istio 问题

于 2017-07-27T09:37:30.380 回答
0

我遇到了这个。对我来说,解决方案是电子邮件地址参数--user必须小写。这意味着--user=foo.bar@example.com而不是--user=Foo.Bar@example.com

于 2017-07-28T12:18:00.107 回答