Здравствуйте, со вчерашнего утра я столкнулся с проблемами при попытке получить доступ к одному из моих кластеров Kubernetes, размещенных на движке контейнеров Google. У меня никогда не было проблем, пока он не начал давать сбой, но теперь каждая команда kubectl, которую я пытаюсь выполнить, терпит неудачу, говоря «ошибка: не удалось согласовать версию api;».
то есть:
$ kubectl version
Client Version: version.Info{Major:"1", Minor:"3", GitVersion:"v1.3.4",
GitCommit:"dd6b458ef8dbf24aff55795baa68f83383c9b3a9", GitTreeState:"clean",
BuildDate:"2016-08-01T16:45:16Z", GoVersion:"go1.6.2", Compiler:"gc",
Platform:"darwin/amd64"}
error: failed to negotiate an api version; server supports: map[], client
supports: map[v1:{} apps/v1alpha1:{} autoscaling/v1:{} componentconfig/v1alpha1:{}
batch/v1:{} batch/v2alpha1:{} authentication.k8s.io/v1beta1:{} federation/v1beta1:{}
rbac.authorization.k8s.io/v1alpha1:{} authorization.k8s.io/v1beta1:{} extensions/v1beta1:{}
policy/v1alpha1:{}]
Я попытался удалить, а затем воссоздать свой кластер безуспешно, и я убедился, что версия kubernetes одинакова на сервере и на клиенте (1.3.4). Я могу видеть пул экземпляров, запущенных в облачной консоли Google, а также кластер, когда я перехожу на вкладку движка контейнера, но я мало понимаю, как действовать дальше. Может ли кто-нибудь пролить свет на то, что может происходить?
Большое спасибо! Фабрис.
Я боролся с этой проблемой в течение нескольких дней, но наконец нашел решение, которое сработало для меня. Я хотел «начать все заново» с самого начала, потому что подозревал, что моя конфигурация сломана / «отравлена», но я не уверен, какие (если таковые имеются) из первых 8 шагов были действительно необходимы:
mv ~/.kube/config ~/.kube/config.old
mv ~/.config ~/.config.old
rm -rf ~/bin/google-cloud-sdk
~/.bash_profile
которые были добавлены в процессе предыдущей установки с помощью текстового редактора (одна строка, которая устанавливает PATH
и одна строка, которая включает завершение bash)install.sh
сценарийgcloud init
и следуйте инструкциям, которые он дает gcloud components install kubectl
Когда я бежал kubectl version
в этот момент у меня другая ошибка! Это то, что я называю «прогрессом». Теперь он сказал мне, что «Google не может найти учетные данные по умолчанию» и следовать инструкциям на эта страница. Вкратце:
gcloud components install beta
)gcloud beta auth application-default login
После этого, kubectl version
снова работал! Надеюсь, это сработает и для вас.