Просматривая это руководство по локальной настройке kubernetes через докер, я получаю сообщение об ошибке, как указано выше.
Предпринятые шаги:
export K8S_VERSION='1.3.0-alpha.1'
(пробовал и 1.2.0)docker run
kubectl
и вставьте в него PATH
(работает which kubectl
)kubectl get nodes
Короче говоря, никакой магии. Я запускаю это локально на Ubuntu 14.04, докер 1.10.3. Если вам нужна дополнительная информация, дайте мне знать
Та же проблема с версией 1.2.0 +1
@xificurC @jankoprowski Вы проверили, работает ли apiserver?
Ознакомьтесь с нашим руководством по устранению неполадок:
http://kubernetes.io/docs/troubleshooting/
Если вам все еще нужна помощь, обратитесь в stackoverflow.
apiserver не удалось с:
F0421 14:28:55.140493 1 server.go:410] Неверная конфигурация аутентификации: откройте /srv/kubernetes/basic_auth.csv: нет такого файла или каталога
Я также столкнулся с этой проблемой, и мой apiserver не вышел из строя, весь процесс (apiserver, контроллер-менеджер, schdeuler, kublet и kube-proxy) работает нормально. Моя версия докера 1.11.2, если кто знает как решить эту проблему?
Я тоже встречал эту проблему. Поскольку мне нужно использовать Kubernetes1.2.2, я использую docker для развертывания kubernetes. Такая же проблема бывает. Аписервер не работает. Логи здесь,
I0725 08:56:20.440089 1 genericapiserver.go:82] Adding storage destination for group batch
W0725 08:56:20.440127 1 server.go:383] No RSA key provided, service account token authentication disabled
F0725 08:56:20.440148 1 server.go:410] Invalid Authentication Config: open /srv/kubernetes/basic_auth.csv: no such file or directory
API-сервер вышел из строя, и я не могу развернуть Kubernetes. Кто-нибудь знает об этом?
Попробуйте использовать --server для указания вашего мастера:
kubectl --server=16.187.189.90:8080 получить pod -o широкий
Здравствуйте, я получаю следующую ошибку на Centos 7, как решить эту проблему?
[root@ip-172-31-11-12 system]# kubectl get nodes
The connection to the server localhost:8080 was refused - did you specify the right host or port?
Вы можете решить это с помощью «kubectl config»:
$ kubectl config set-cluster demo-cluster --server=http://master.example.com:8080
$ kubectl config set-context demo-system --cluster=demo-cluster
$ kubectl config use-context demo-system
$ kubectl get nodes
NAME STATUS AGE
master.example.com Ready 3h
node1.example.com Ready 2h
node2.example.com Ready 2h
В моем случае мне нужно было просто удалить ~/.kube/config
, которые остались с предыдущей попытки.
Привет,
Я все еще встречал эту проблему с
kubernetes-мастер-1.4.0-0.1.git87d9d8d.el7.x86_64
Кубернетес-узел-1.4.0-0.1.git87d9d8d.el7.x86_64
Kubernetes-unit-test-1.4.0-0.1.git87d9d8d.el7.x86_64
kubernetes-ansible-0.6.0-0.1.gitd65ebd5.el7.noarch
Кубернетес-клиент-1.4.0-0.1.git87d9d8d.el7.x86_64
кубернетес-1.4.0-0.1.git87d9d8d.el7.x86_64
если я настрою KUBE_API_ADDRESS со значением ниже
KUBE_API_ADDRESS="--insecure-bind-address=10.10.10.xx"
Я встретил эту ошибку, и она работает, если я передаю параметры "--server=10.10.10.xx:8080" в cmd
если я настрою KUBE_API_ADDRESS со значением ниже
KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"
это работает хорошо.
Я пытался получить статус из удаленной системы, используя ansible, и столкнулся с той же проблемой.
Я попробовал, и это сработало.
kubectl --kubeconfig ./admin.conf получить модули --all-namespaces -o широкий
Подобно @sumitkau , я решил свою проблему с установкой нового местоположения конфигурации kubelet, используя:
kubectl --kubeconfig /etc/kubernetes/admin.conf получить нет
Вы также можете скопировать /etc/kubernetes/admin.conf в ~/.kube/config, и это работает, но я не знаю, хорошо это или нет!
обновить запись в /etc/kubernetes/apiserver (на главном сервере)
КУБЕ_API_PORT="--порт=8080"
затем выполните перезапуск systemctl kube-apiserver
Если это происходит в GCP, то, скорее всего, проблема будет решена следующим образом:
gcloud container clusters get-credentials your-cluster --zone your-zone --project your-project
Спасибо @mamirkhani. Я решил эту ошибку.
Однако я только что нашел такую информацию в выводе «kubeadm init»:
_Ваш мастер Kubernetes успешно инициализирован!
Чтобы начать использовать свой кластер, вам нужно запустить (как обычный пользователь):
sudo cp /etc/kubernetes/admin.conf $HOME/
sudo chown $(id -u):$(id -g) $HOME/admin.conf
экспорт KUBECONFIG=$HOME/admin.conf_
Я думаю, что это рекомендуемое решение.
У меня такая же проблема. При создании кластера через веб-интерфейс в облаке Google и попытке запустить kubectl я получаю
The connection to the server localhost:8080 was refused - did you specify the right host or port?
все, что вам нужно сделать, это получить конфигурацию kubectl для вашего кластера, которая будет храниться в $HOME/.kubectl/config:
$ gcloud container clusters get-credentials guestbook2
Fetching cluster endpoint and auth data.
kubeconfig entry generated for guestbook2.
Теперь kubectl работает нормально
kubectl ожидает ~/.kube/config в качестве имени файла для своей конфигурации.
Быстрое исправление, которое сработало для меня, заключалось в создании символической ссылки:
ln -s ~/.kube/config.conjure-canonical-kubern-e82 ~/.kube/config
NB Это было для развертывания «придумать kubernetes».
Эта проблема смущала меня в течение 1 недели, теперь она работает для меня. Если у вас есть эта проблема, прежде всего, вам нужно знать, на каком узле она возникает.
Если это главный узел, убедитесь, что все модули kubernetes запущены по команде.
kubectl get pods --all-namespaces
,
мой выглядит так
kube-system etcd-kubernetes-master01 1/1 Running 2 6d
kube-system kube-apiserver-kubernetes-master01 1/1 Running 3 6d
kube-system kube-controller-manager-kubernetes-master01 1/1 Running 2 6d
kube-system kube-dns-2425271678-3kkl1 3/3 Running 6 6d
kube-system kube-flannel-ds-brw34 2/2 Running 6 6d
kube-system kube-flannel-ds-psxc8 2/2 Running 7 6d
kube-system kube-proxy-45n1h 1/1 Running 2 6d
kube-system kube-proxy-fsn6f 1/1 Running 2 6d
kube-system kube-scheduler-kubernetes-master01 1/1 Running 2 6d
если это не так, проверьте, есть ли эти файлы в вашем каталоге /etc/kubernetes/,
admin.conf controller-manager.conf kubelet.conf manifests pki scheduler.conf
, если вы это сделаете, скопируйте эти файлы с помощью обычного пользователя (не пользователя ROOT)
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
а затем посмотрите, работает ли версия kubectl или нет, если она все еще не работает, следуйте инструкциям на странице https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/ , разберите свой кластер и перестройте свой владелец.
Если это происходит на (ведомых) узлах, убедитесь, что у вас есть файлы
kubelet.conf manifests pki
в вашем каталоге /etc/kubernetes/ и в этом kubelet.conf поле сервера должно указывать на ваш основной IP-адрес, который совпадает с настройками вашего главного узла admin.conf,
Если у вас нет kubelet.conf, это, вероятно, потому, что вы не выполнили команду для присоединения ваших узлов к вашему мастеру.
kubeadm join --token f34tverg45ytt34tt 192.168.1.170:6443
, вы должны получить эту команду (токен) после того, как ваш главный узел будет построен.
после входа в качестве обычного пользователя на (подчиненном) узле вы, вероятно, не увидите файл конфигурации в вашем ~/.kube, затем создайте эту папку, затем скопируйте _admin.conf_ из вашего главного узла в ваш каталог ~/.kube/ на этом (подчиненном ) node как _config_ с обычным пользователем, а затем сделайте копию и попробуйте версию kubectl, у меня это работает.
Хотя я знаю, что здесь может быть несколько причин сбоя, в моем случае удаление ~/.kube/cache
сразу помогло.
У меня есть эти проблемы. Это решение работает для меня:
sudo cp /etc/kubernetes/admin.conf $HOME/
sudo chown $(id -u):$(id -g) $HOME/admin.conf
export KUBECONFIG=$HOME/admin.conf
Если у вас нет admin.conf
, пожалуйста, установите kubeadm
А затем удалите ~/.kube/cache
rm -rf ~/.kube/cache
Вам нужно переключить контекст.
kubectl config use-context docker-for-desktop
Привет, команда,
нам нужно установить sap vora, для этого необходимы kubernetes и Docker. мы установили kubernetes master и kubectl, docker. но когда мы проверяем
информация о кластере kubectl
2018-05-09 06:47:57.905806 Я | proto: зарегистрирован дубликат типа proto: google.protobuf.Any
2018-05-09 06:47:57.905997 Я | proto: зарегистрирован дубликат типа proto: google.protobuf.Duration
2018-05-09 06:47:57.906019 Я | proto: зарегистрирован дубликат типа прототипа: google.protobuf.Timestamp
В соединении с сервером 10.xxx:6443 было отказано - вы указали правильный хост или порт?
когда мы проверили статус systemctl kubelet -l
kubelet.service — Сервер Kubernetes Kubelet
Загружено: загружено (/usr/lib/systemd/system/kubelet.service; включено)
Активно: не удалось (Результат: старт-лимит) со среды 2018-05-09 04:17:21 по восточному поясному времени; 2 часа 28 минут назад
Документы: https://github.com/GoogleCloudPlatform/kubernetes
Процесс: 2513 ExecStart=/usr/bin/hyperkube kubelet $KUBE_LOGTOSTDERR $KUBE_LOG_LEVEL $KUBELET_API_SERVER $KUBELET_ADDRESS $KUBELET_PORT $KUBELET_HOSTNAME $KUBE_ALLOW_PRIV $KUBELET_INITIAL_ARGS $KUBELET_ARGS (code=exited, status=203/EXEC)
Основной PID: 2513 (код=выход, статус=203/EXEC)
мы выполнили следующие настройки
sudo cp /etc/kubernetes/admin.conf $HOME/
sudo chown $(id -u):$(id -g) $HOME/admin.conf
экспорт KUBECONFIG=$HOME/admin.conf
но бесполезно. кто-нибудь может помочь
С уважением
Картик
У меня есть эти проблемы. Это решение работает для меня:
экспорт KUBECONFIG=/etc/kubernetes/admin.conf
привет мэпсик,
Я экспортировал выше env, но бесполезно. получая ту же ошибку.
2018-05-15 04:27:32.221744 Я | proto: зарегистрирован дубликат типа proto: google.protobuf.Any
2018-05-15 04:27:32.221912 Я | proto: зарегистрирован дубликат типа proto: google.protobuf.Duration
2018-05-15 04:27:32.221936 Я | proto: зарегистрирован дубликат типа прототипа: google.protobuf.Timestamp
В соединении с сервером 10.xxx:6443 было отказано - вы указали правильный хост или порт
Я также изменил сервис kubelet и записи файла конфигурации, но все равно бесполезно.
С Уважением
Картик
Привет Картик,
Может быть, вы можете попробовать проверить журнал о службе kubelet.
Я получаю ошибку выше
[admin ~]$ kubectl cluster-info
Kubernetes master is running at https://xxxxx:6443
To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
The connection to the server xxxxx:6443 was refused - did you specify the right host or port?
[admin~]$ kubectl cluster-info dump
The connection to the server xxxx:6443 was refused - did you specify the right host or port?
Получение той же ошибки при использовании kubectl get pods --all-namespaces
Здравствуйте, я получаю следующую ошибку на Centos 7, как решить эту проблему?
[root@ip-172-31-11-12 system]# kubectl get nodes The connection to the server localhost:8080 was refused - did you specify the right host or port?
Я думаю, что вы не установили kubeadm .... сначала установите kubeadm, а затем попробуйте
Хорошо сделаю это
В понедельник, 17 сентября 2018 г., в 08:04, Картик Наир[email protected] написал:
Здравствуйте, я получаю следующую ошибку на Centos 7, как это решить
проблема?[система root@ip-172-31-11-12 ]# kubectl получить узлы
В соединении с сервером localhost:8080 было отказано - вы указали правильный хост или порт?Я думаю, что вы не установили kubeadm .... сначала установите kubeadm, а затем
пытаться—
Вы получаете это, потому что подписаны на эту тему.
Ответьте на это письмо напрямую, просмотрите его на GitHub
https://github.com/kubernetes/kubernetes/issues/23726#issuecomment-421909051 ,
или заглушить тему
https://github.com/notifications/unsubscribe-auth/AkFH4U0Cwjeg2Y4sL8irk5velVQDj6u2ks5ub0lzgaJpZM4H9nxM
.>
С уважением,
Бишну Сунувар
Вы должны сначала запустить эти команды -
[ user@k8s-master ~]# mkdir -p $HOME/.kube
[ user@k8s-master ~]# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
[ user@k8s-master ~]# chown $(id -u):$(id -g) $HOME/.kube/config
Запустив Mac OS High Sierra, я решил эту проблему, включив Kubernetes, встроенный в сам Docker.
Я получаю сообщение о том, что "Соединение с сервером 10.0.48.115:6443 было отклонено - вы указали правильный хост или порт?"
Версия клиента: version.Info{Major:"1", Minor:"12", GitVersion:"v1.12.1", GitCommit:"4ed3216f3ec431b140b1d899130a69fc671678f4", GitTreeState:"clean", BuildDate:"2018-10-05T16:46: 06Z", версия Go: "go1.10.4", компилятор: "gc", платформа: "linux/amd64"}
В соединении с сервером 10.0.48.115:6443 было отказано - вы указали правильный хост или порт?
Кто может помочь в этом? ценить
Удалил старую конфигурацию из ~/.kube, а затем перезапустил докер (для macos) и перестроил папку конфигурации. Теперь все хорошо, когда я делаю «kubectl get nodes».
Удалите виртуальную машину minikube и файлы конфигурации, переустановите minikube (v0.25.2), в других версиях могут быть ямки
$ minikube delete
$ rm -rf ~/.minikube
$ curl -Lo minikube https://storage.googleapis.com/minikube/releases/v0.25.2/minikube-linux-amd64 && chmod +x minikube && sudo mv minikube /usr/local/bin/
Используйте приведенную ниже команду. Это сработало для меня.
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Используйте приведенную ниже команду. Это сработало для меня.
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Спасибо! это сработало!
В моем случае я перезагрузил мастер-узел kubernetes, и при перезапуске раздел обмена памятью SWAP включен по умолчанию.
systemctl status kubelet
kubelet.service - kubelet: The Kubernetes Node Agent
Loaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/kubelet.service.d
└─10-kubeadm.conf, 90-local-extras.conf
Active: activating (auto-restart) (Result: exit-code) since 금 2018-04-20 15:27:00 KST; 6s ago
Docs: http://kubernetes.io/docs/
Process: 17247 ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_SYSTEM_PODS_ARGS $KUBELET_NETWORK_ARGS $KUBELET_DNS_ARGS $KUBELET_AUTHZ_ARGS $KUBELET_CADVISOR_ARGS $KUBELET_CGROUP_ARGS $KUBELET_CERTIFICATE_ARGS $KUBELET_EXTRA_ARGS (code=exited, status=255)
Main PID: 17247 (code=exited, status=255)
swapon -s
Filename type size Used priority
/dev/sda6 partition 950267 3580 -1
судо swapoff /dev/sda6
судо systemctl status kubelet
● kubelet.service - kubelet: The Kubernetes Node Agent
Loaded: loaded (/lib/systemd/system/kubelet.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/kubelet.service.d
└─10-kubeadm.conf
Active: active (running) since Mon 2019-01-14 08:28:56 -05; 15min ago
Docs: https://kubernetes.io/docs/home/
Main PID: 7018 (kubelet)
Tasks: 25 (limit: 3319)
CGroup: /system.slice/kubelet.service
└─7018 /usr/bin/kubelet --bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes
kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8smaster Ready master 47h v1.13.2
k8snode1 Ready <none> 45h v1.13.2
k8snode2 Ready <none> 45h v1.13.2
Я не запускал это.
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
вызвал проблему.
ip route добавить по умолчанию через xxx.xxx.xxx.xxx на мастере k8s
$ kubectl применить -f Deployment.yaml
не удалось распознать «Deployment.yaml»: получить http://localhost :8080/api?timeout=32s: набрать tcp 127.0.0.1:8080: подключиться: соединение отклонено
не удалось распознать «Deployment.yaml»: получить http://localhost :8080/api?timeout=32s: набрать tcp 127.0.0.1:8080: подключиться: соединение отклонено
Запустив Mac OS High Sierra, я решил эту проблему, включив Kubernetes, встроенный в сам Docker.
Оно работает. Довольно просто. Если вы используете настольное программное обеспечение, лучше сначала найти решение в настройках предпочтений. хаха.
Запустив Mac OS High Sierra, я решил эту проблему, включив Kubernetes, встроенный в сам Docker.
спасибо
ну, это может звучать глупо, но, возможно, вы не установили miniKube для локального запуска своего кластера
попробуйте переустановить minikube, если он у вас есть, или попробуйте использовать kubectl proxy --port=8080
.
Хорошо, в докере для Mac (v 2.0.5.0) есть ДВЕ настройки, которые нужно переключать.
docker rm -f $(docker ps -aq)
systemctl restart kubelet
[ mayuchau@cg-id .kube]$ kubectl получить узлы
В соединении с сервером localhost:8080 было отказано - вы указали правильный хост или порт?
Я получаю выше ошибки. Я пробовал вышеупомянутые решения, но это не сработало для меня.
[ mayuchau@cg-id .kube]$ kubectl получить узлы
В соединении с сервером localhost:8080 было отказано - вы указали правильный хост или порт?Я получаю выше ошибки. Я пробовал вышеупомянутые решения, но это не сработало для меня.
Проблема решена после проверки разрешений /var/run/docker.sock на главном узле.
Вот как я решил это:
Убедитесь, что kubectl установлен. Проверьте это с помощью:
gcloud components list
Если нет, сначала установите kubectl.
Перейдите в консоль движка Kubernetes вашего проекта на платформе gcloud.
Там подключитесь к кластеру, в котором находится ваш проект. Это даст вам команду, которую вы запустили в локальной командной строке/терминале. Например, это будет выглядеть так:
gcloud container clusters get-credentials <Cluster_Name> --zone <Zone> --project <Project_Id>
После успешного запуска этой команды вы сможете запустить:
kubectl get nodes
Просматривая это руководство по локальной настройке kubernetes через докер, я получаю сообщение об ошибке, как указано выше.
Предпринятые шаги:
export K8S_VERSION='1.3.0-alpha.1'
(пробовал и 1.2.0)- скопируйте и вставьте команду
docker run
- загрузите соответствующий двоичный файл
kubectl
и вставьте в негоPATH
(работаетwhich kubectl
)- (опционально) настроить кластер
- запустить
kubectl get nodes
Короче говоря, никакой магии. Я запускаю это локально на Ubuntu 14.04, докер 1.10.3. Если вам нужна дополнительная информация, дайте мне знать
Спасибо!!!
Это напомнило мне, что у меня не было экспорта переменной в файле ~/.bashrc для системной переменной KUBEKONFIG.
Добавление, которое исправило мою проблему!
Например:
### ADD in ~/.bashrc
export KUBECONFIG=$HOME/.kube/eksctl/clusters/serv-eks-dev
одной из возможных причин этой проблемы является то, что current context
в конфигурации kube удаляется с помощью какого-либо инструмента, и текущий контекст не остается.
проверить с:
kubectl config get-contexts
и если нет контекста current
, сделайте его текущим с помощью:
kubectl config use-context <context name>
Я столкнулся с аналогичной проблемой, которая была решена с помощью
export KUBECONFIG=/etc/kubernetes/admin.conf
Если это кому-то поможет (я пришел сюда через поиск Google по ошибке), мой Docker Desktop для Mac по умолчанию отключил Kubernetes. Отметка Enabled Kubernetes
и Apply & Restart
устранила ошибку.
В Mac OS: я запускаю Kubernetes локально через Docker, если быть точным, https://k3d.io/- Итак, после установки, после создания кластера, если я выполню команду kubectl cluster-info
, возвращается
В соединении с сервером 0.0.0.0:51939 было отказано - вы указали правильный хост или порт? У кого-нибудь есть указатели на эту проблему?
PS: Docker, докер-машина, установленная через Homebrew
Что kubectl config get-contexts
возвращает @navkmurthy?
navkmurthy$ k3d cluster create -p 5432:30080@agent [0] -p 9082:30081@agent [0] --agents 3 --update-default-kubeconfig
INFO[0000] Создана сеть 'k3d-k3s-default'
INFO[0000] Создан том 'k3d-k3s-default-images'
INFO[0001] Создание узла «k3d-k3s-default-server-0»
INFO[0001] Создание узла «k3d-k3s-default-agent-0»
INFO[0002] Создание узла «k3d-k3s-default-agent-1»
INFO[0003] Создание узла «k3d-k3s-default-agent-2»
INFO[0004] Создание LoadBalancer 'k3d-k3s-default-serverlb'
INFO[0024] Кластер 'k3s-default' успешно создан!
INFO[0024] Теперь вы можете использовать его следующим образом:
информация о кластере kubectl
navkmurthy$ kubectl информация о кластере
Для дальнейшей отладки и диагностики проблем с кластером используйте «дамп информации о кластере kubectl».
В соединении с сервером 0.0.0.0:53706 было отказано - вы указали правильный хост или порт?
Конфигурация navkmurthy$ kubectl get-contexts
ТЕКУЩЕЕ НАЗВАНИЕ КЛАСТЕРА AUTHINFO NAMESPACE
Самый полезный комментарий
Вы можете решить это с помощью «kubectl config»: