Kubectl не может подключиться к Google Container Engine

Я выполнил следующие шаги: https://cloud.google.com/container-engine/docs/tutorials/guestbook#install_gcloud_and_kubectl

Запущен и запущен кластер Google Container Engine, и CLI gcloud аутентифицирован и работает.

Но kubectl говорит:   "couldn't read version from server: Get http://local host:8080/api: dial tcp 127.0.0.1:8080: connection refused"

Я думаю, мне нужно использовать kubectl config set-cluster для установки соединения с моим кластером на GCE.

Где я могу найти адрес мастера Kubernetes моего кластера GCE? С gcloud beta container clusters list я, похоже, получаю главный IP-адрес моего кластера. Я использовал это с kubectl config set-cluster.

Теперь он говорит:   "error: couldn't read version from server: Get http:// 104.197.49.119/api: dial tcp 104.197.49.119:80: i/o timeout"

Я нахожусь на правильном пути с этим?

Дополнительная странность:

  • gcloud container или gcloud preview container не работает для меня. Только gcloud beta container

  • MASTER_VERSION моего кластера 0.21.4, а версия моего клиента kubectl - это GitVersion: "v0.20.2", хотя недавно установлена ​​с gcloud.

Ответ 1

Run

gcloud container clusters get-credentials my-cluster-name

чтобы обновить файл kubeconfig и указать kubectl в кластере в Google Container Engine.

Ответ 2

как указано в @ScyDev Бег: gcloud container get-credentials <cluster_name> Но вам, возможно, придется устанавливать свою вычислительную зону раньше, если вы инициализировали новый терминал облачной оболочки. Это было мое дело

Если вы работаете в Windows (например, powershell), вам нужно проверить это: https://github.com/kubernetes/kubernetes/issues/34395