Kubernetes - команда версии Kubectl возвращает ошибку - PullRequest
0 голосов
/ 13 января 2020

MacOs

Я просто устанавливаю kubectl через: https://kubernetes.io/docs/tasks/tools/install-kubectl/#install -kubectl-on-macos

MacBook-Air:~ admin$ kubectl version
Client Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.0", GitCommit:"70132b0f130acc0bed193d9ba59dd186f0e634cf", GitTreeState:"clean", BuildDate:"2019-12-07T21:20:10Z", GoVersion:"go1.13.4", Compiler:"gc", Platform:"darwin/amd64"}
The connection to the server localhost:8080 was refused - did you specify the right host or port?

в чем может быть проблема, есть идеи?

Ответы [ 3 ]

1 голос
/ 13 января 2020

kubectl version распечатывает версию клиента и версию сервера. Чтобы получить версию сервера, он подключается к серверу kubernetes api. Вы либо не установили кластер, либо неправильно настроили kubectl для связи с удаленным кластером. Так что это только печать версии клиента и выдача ошибки для версии сервера.

Пример вывода:

# kubectl version
Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.5", GitCommit:"2166946f41b36dea2c4626f90a77706f426cdea2", GitTreeState:"clean", BuildDate:"2019-03-25T15:26:52Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.5", GitCommit:"2166946f41b36dea2c4626f90a77706f426cdea2", GitTreeState:"clean", BuildDate:"2019-03-25T15:19:22Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}

Вы можете использовать kubectl version --client, чтобы получить только версию клиента.

# kubectl version --client
Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.5", GitCommit:"2166946f41b36dea2c4626f90a77706f426cdea2", GitTreeState:"clean", BuildDate:"2019-03-25T15:26:52Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}
0 голосов
/ 16 января 2020

Примечание: kubectl - это инструмент командной строки, который позволяет запускать команды для кластеров Kubernetes

Для kubectl, чтобы найти и получить доступ к данному кластеру kubernetes , , в котором он нуждается kubeconfig file для данного кластера K8s, который вы хотите для подключения (если у вас его нет, вы можете установить локальный кластер, чтобы поиграть с чем-то вроде Minikube K8s, который затем даст вам этот файл для подключения к minikube)

Если вы уже есть кластер, затем проверьте, что kubectl правильно настроен, используйте команду kubectl cluster-info, если это не так, вы получите ниже журнал ошибок.

$ kubectl cluster-info

To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
The connection to the server localhost:8080 was refused - did you specify the right host or port?

Итак, для подключения к кластеру вы хотите Для работы с kubectl вам нужно найти файл kubeconfig и настроить переменную среды так, чтобы она указывала на него. Это означает, что если ваш файл $HOME/.kube/config еще не указан в переменной среды KUBECONFIG, исправьте переменную среды KUBECONFIG на export KUBECONFIG=$KUBECONFIG:$HOME/.kube/config , чтобы она указывала на правильный файл kubeconfig, который будет использоваться .

Как только вы укажете правильную команду kubeconfig exported cluster-info, загрузите детали, как показано ниже

$ kubectl cluster-info

Kubernetes master is running at https://xx.xx.xx.xx:6443
KubeDNS is running at https://xx.xx.xx.xx:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
0 голосов
/ 13 января 2020

Как вы упомянули, вы установили kubectl - инструмент командной строки , который позволяет запускать команды для кластеров Kubernetes. Вы можете использовать kubectl для развертывания приложений, проверки и управления ресурсами кластера и просмотра журналов.

Однако для того, чтобы kubectl мог выполнить любую команду, вам необходим кластер.

Наиболее распространенным является Minikube . Тем не менее, вам понадобится гипервизор как Virtualbox или Hyperkit. Вы также должны прочитать о Docker Desktop на Ma c.

Если вы будете искать дополнительную информацию, вы обнаружите, что люди также используют Kubeadm , но это не поддерживается в MacOS.

Это было упомянуто в другом вопросе StackOverflow, вы можете найти его здесь .

...