Google cloud platform 在GKE上的Istio安装失败,错误为;clusterroles.rbac.authorization.k8s.io“;“istio飞行员”;禁止:试图授予额外特权”;

Google cloud platform 在GKE上的Istio安装失败,错误为;clusterroles.rbac.authorization.k8s.io“;“istio飞行员”;禁止:试图授予额外特权”;,google-cloud-platform,kubernetes,istio,Google Cloud Platform,Kubernetes,Istio,正在尝试在GKE(Google容器引擎)上安装 运行以下命令检查群集是否启用了RBAC(基于角色的访问控制): 它显示“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"

正在尝试在GKE(Google容器引擎)上安装

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

它显示“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"}
CLOUDSDK\u CONTAINER\u USE\u CLIENT\u CERTIFICATE=True
添加到
gcloud CONTAINER clusters get credentials
命令,该命令使用适当的凭据更新kubeconfig文件以将kubectl指向容器引擎群集,解决了以下问题:)

参考:

CLOUDSDK\u CONTAINER\u USE\u CLIENT\u CERTIFICATE=True
添加到
gcloud CONTAINER clusters get credentials
命令,该命令使用适当的凭据更新kubeconfig文件以将kubectl指向容器引擎群集,解决了以下问题:)


参考资料:

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

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

您使用的kubernetes版本是什么?添加到问题中。谢谢。您使用的kubernetes版本是什么?添加到问题中。谢谢
$ 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"}
CLOUDSDK_CONTAINER_USE_CLIENT_CERTIFICATE=True gcloud container clusters get-credentials...