2016-03-03 3 views
2

Я пытаюсь начать работу с тканью 8 и открыть смену на докере. Открывается экземпляр с открытым сдвигом (контейнер с одним докером), как описано здесь: https://docs.openshift.org/latest/getting_started/administrators.html#running-in-a-docker-container. Я установил ткань 8 как http://fabric8.io/guide/getStarted/openshift.html, и теперь запущены основные стручки.Установите Fabric8 на экземпляр док-станции с открывающейся дверью

Но я не могу добраться до сервиса

oc get services 
NAME    CLUSTER_IP  EXTERNAL_IP PORT(S)     SELECTOR             AGE 
docker-registry 172.30.194.44 <none>  5000/TCP    docker-registry=default         18h 
fabric8   172.30.178.196     80/TCP     group=io.fabric8.apps,project=console,provider=fabric8 18h 
kubernetes  172.30.0.1  <none>  443/TCP,53/UDP,53/TCP <none>             20h 
router   172.30.77.252 <none>  80/TCP     router=router           18h 
oc describe service fabric8 
Name:   fabric8 
Namespace:  default 
Labels:   group=io.fabric8.apps,project=console,provider=fabric8,version=2.2.116 
Selector:  group=io.fabric8.apps,project=console,provider=fabric8 
Type:   LoadBalancer 
IP:   172.30.178.196 
Port:   <unnamed> 80/TCP 
NodePort:  <unnamed> 30308/TCP 
Endpoints:  172.17.0.2:9090 
Session Affinity: None 
No events. 

ping 172.17.0.2:9090 
ping: unknown host 172.17.0.2:9090 
[email protected]:~$ ping 172.30.178.196 
PING 172.30.178.196 (172.30.178.196) 56(84) bytes of data. 
From 62.218.18.245 icmp_seq=1 Destination Host Unreachable 
From 62.218.18.245 icmp_seq=2 Destination Host Unreachable 

В разделе поиска и устранения неисправностей: http://fabric8.io/guide/getStarted/openshift.html некоторых идей, как

corsAllowedOrigins: 
    - .* 

предложены. Но я не знаю, как включить их в контейнер докеров. У вас есть идеи, почему я не могу связаться с моей основной консолью fabric8?

+0

попробуйте ping/curl port 80? – lvthillo

ответ

3

Если вы пытаетесь получить доступ к службе на OpenShift удаленно, то вам необходимо убедиться, что вы уже развернуты маршрутизатор & добавил Route. Вы можете узнать больше о маршрутизации в OpenShift по адресу https://docs.openshift.com/enterprise/3.0/architecture/core_concepts/routes.html.

В этом случае, если вы добавите маршрут с:

cat <<EOF | kubectl create -f - apiVersion: v1 kind: Route metadata: name: fabric8-console pec: host: <EXTERNALLY_RESOLVE_DNS> to: kind: Service name: fabric8 EOF

В некоторой дополнительной информации, вы не можете ориентировать ping в порту. Ping использует другой сетевой протокол, ICMP, который не имеет понятия портов. Кроме того, обе службы & pods не отвечают на ping, поэтому вы не сможете их выполнить. Если вы пытаетесь проверить соединение, то вы можете использовать утилиту nc:

nc -v <address> <port> 

Это сообщит успех соединения, если адрес/порт доступен. Обратите внимание, что в OpenShift IP-адреса домена & IP-адреса службы обычно являются только маршрутизируемыми внутри кластера, то есть на узлах, поэтому попытка этого из-за пределов кластера, вероятно, завершится неудачей.

+0

Большое спасибо. Теперь у меня другая проблема. Http://chat.stackoverflow.com/rooms/105350/fabric8, пожалуйста, могу задать вам пару вопросов здесь. –

+0

Извините, недостаточно кармы. Я считаю, что это должен быть принятый ответ, а не другой. Вы можете поговорить с командой fabric8 в IRC на freenode.net # fabric8 –

+0

Исправлено изменение на лучшее решение –

1

Вы создали маршрут, чтобы добраться до контейнера fabric8 в спринклете?

oc get route