首页 > 解决方案 > 谷歌云控制台 [GCP] 无法与 k8s 一起正常工作

问题描述

我对 Google 云控制台和 kubernates 有疑问

我有两个项目:

$ gcloud projects list
PROJECT_ID      NAME           PROJECT_NUMBER
telemetry       Telemetry      571056202575
opex-prod       OPEX           992345650242

如果我检查当前项目:

$ gcloud config get-value project
Your active configuration is: [cloudshell-20766]
telemetry

和我的命名空间列表(我将只显示我的命名空间,而不是默认和 kube* 的):

$ kubectl get namespace
NAME              STATUS   AGE
development       Active   3d18h

所以,现在如果我想更改项目(具有不同的 pod 和命名空间):

$ gcloud config set project opex-prod
Updated property [core/project].
$ gcloud config get-value project
Your active configuration is: [cloudshell-20766]
opex-prod

但是如果我检查 opex-prox 项目的命名空间,我将拥有我的另一个项目的命名空间

$ kubectl get namespace
NAME              STATUS   AGE
development       Active   3d18h

opex-prod我没有developmentprod-a

如果我在 Google Cloud 仪表板中更改项目和命名空间,我可以看到正确的命名空间

我错过了什么?

标签: kubernetesgoogle-cloud-platformgoogle-cloud-console

解决方案


kubectl 命令不能基于 gcloud 项目配置工作。它们基于您本地环境中设置的 kubeconfig 工作。要将 kubeconfig 设置为指向特定项目的集群,gcloud container clusters get-credentials cluster-name请在更改 gcloud 项目配置后运行命令。阅读此处了解更多信息。


推荐阅读