2016-12-30 4 views
0

У меня есть кластер с множеством хостов с 2 рабочими, как описано в учебном пособии по ядро-бродяге [1].не может получить доступ к kubernetes Служба от NodePort

Я не могу получить доступ к моим развернутым службам извне. В настоящее время я пытаюсь использовать NodePort. Все сервисы - это базовые API-интерфейсы без аутентификации. В сервисе с именем curly его порт 6001 [2] должен быть доступен на 32001 против моего кластера [3]. Мое развертывание & Сервисные конфигурации показаны ниже.

Кластер & услуги до:

$ kubectl cluster-info 
Kubernetes master is running at https://172.17.4.101:443 
... 

$ kubectl get services 
NAME   CLUSTER-IP EXTERNAL-IP PORT(S)   AGE 
kubernetes  10.3.0.1  <none>  443/TCP   1d 
stooge-curly 10.3.0.254 <nodes>  6001:32001/TCP 15m 
stooge-larry 10.3.0.72 <nodes>  6001:32002/TCP 15m 
stooge-moe  10.3.0.219 <nodes>  6003:32003/TCP 15m 

Попытка GET http://172.17.4.101:32001/ или GET http://10.0.2.15:32001/ как только повесить. 172.17.4.101 - мой мастер. 10.0.2.15 является одним из моих IP-адресов бродячих работников [4].

ответ

1

< NodeAddress>: < NodePort> работала, однако, label с в каждом Deployment не были уникальными. в каждом развертывании был общий label (run: stooges), но каждый также нуждался в чем-то еще в хэш-метке. то есть каждый набор знаков Deployment должен быть уникальным.

NodeAddress Я попытался выше, был неверен. kubectl describe pods дал мне узел, где мои службы запущены. поэтому, GET 172.17.4.202:32001 с ответом за ожидание