Docker для рабочего стола Kubernetes Невозможно подключиться к серверу: наберите tcp [:: 1]: 6445

Я использую Docker для рабочего стола в Windows 10 Professional с Hyper-V, также я не использую minikube. Я установил кластер Kubernetes через Docker для рабочего стола, как показано ниже:

введите описание изображения здесь

Это показывает, что Kubernetes успешно установлен и работает.

Когда я запускаю следующую команду:

kubectl config view

Получаю следующий результат:

apiVersion: v1
clusters:
- cluster:
  insecure-skip-tls-verify: true
  server: https://localhost:6445
  name: docker-for-desktop-cluster
contexts:
 - context:
   cluster: docker-for-desktop-cluster
   user: docker-for-desktop
   name: docker-for-desktop
   current-context: docker-for-desktop
kind: Config
preferences: {}
users:
- name: docker-for-desktop
user:
  client-certificate-data: REDACTED
  client-key-data: REDACTED

Однако когда я запускаю

kubectl cluster-info

Я получаю следующую ошибку:

Unable to connect to the server: dial tcp [::1]:6445: connectex: No connection could be made because the target machine actively refused it.

Похоже, возникла проблема с сетью, я не знаю, как ее решить.


person Adnan Mian    schedule 31.07.2019    source источник


Ответы (1)


Я знаю, что это старый вопрос, но следующее помогло мне решить аналогичную проблему. Основная причина заключалась в том, что у меня ранее был установлен minikube, который использовался в качестве контекста по умолчанию. Я получал следующую ошибку:

Unable to connect to the server: dial tcp 192.168.1.8:8443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.

В оболочке питания выполните следующую команду:

> kubectl config get-contexts
CURRENT   NAME                 CLUSTER          AUTHINFO         NAMESPACE
      docker-desktop       docker-desktop   docker-desktop
      docker-for-desktop   docker-desktop   docker-desktop
*     minikube             minikube         minikube

это перечислит все контексты и увидит, есть ли их несколько. Если вы ранее устанавливали minikube, в качестве текущего выбранного контекста по умолчанию будет отображаться значок *. Вы можете изменить это так, чтобы оно указывало на контекст docker-desktop следующим образом:

> kubectl config use-context docker-desktop

Снова запустите команду get-contextxts, чтобы проверить отметку *.

Теперь должна работать следующая команда:

> kubectl get pods
person Sunil Kpmbl    schedule 21.12.2019
comment
Ничего себе это было сложно найти :) - person Jay; 28.12.2020