通常,您可以使用kops get secrets kube --type secret -oplaintext
,但是我不在AWS上运行,而是在使用GCP。
我了解到kubectl config view
应该向您显示此信息,但我看不到这样的事情(想知道这是否与GCP服务帐户设置有关,也正在使用GKE)。
kubectl config view
返回如下内容:
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: REDACTED
server: https://MY_IP
name: MY_CLUSTER_NAME
contexts:
- context:
cluster: MY_CLUSTER_NAME
user: MY_CLUSTER_NAME
name: MY_CLUSTER_NAME
current-context: MY_CONTEXT_NAME
kind: Config
preferences: {}
users:
- name: MY_CLUSTER_NAME
user:
auth-provider:
config:
access-token: MY_ACCESS_TOKEN
cmd-args: config config-helper --format=json
cmd-path: /usr/lib/google-cloud-sdk/bin/gcloud
expiry: 2019-02-27T03:20:49Z
expiry-key: '{.credential.token_expiry}'
token-key: '{.credential.access_token}'
name: gcp
用户名 => Admin
或用户名 => MY_CLUSTER_NAME
均未使用密码 => {{1 }}
有什么想法吗?
答案 0 :(得分:1)
尝试:
gcloud container clusters describe ${CLUSTER} \
--flatten="masterAuth"
[--zone=${ZONE}|--region=${REGION} \
--project=${PROJECT}
由于不鼓励使用此身份验证机制,因此您的群集可能已禁用基本身份验证(用户名|密码)。
Kubernetes Engine随附的另一种机制是(如您的配置所示)是使用gcloud
凭据将您带入群集。
以下命令将配置~/.kube/config
,以便您可以使用gcloud
凭据访问群集。看来此步骤已完成,您可以直接使用kubectl
。
gcloud container clusters get-credentials ${CLUSTER} \
[--zone=${ZONE}|--region=${REGION}] \
--project=${PROJECT}
只要您使用gcloud
以允许使用群集的帐户登录,您就应该能够:
kubectl cluster-info
kubectl get nodes