【问题标题】:Install Fabric8 on openshift docker instance在 openshift docker 实例上安装 Fabric8
【发布时间】:2016-03-03 07:55:29
【问题描述】:

我尝试开始使用 fabric 8 并在 docker 上打开 shift。一个开放的班次实例(单个 docker 容器)正在运行,如下所述:https://docs.openshift.org/latest/getting_started/administrators.html#running-in-a-docker-container。我将 Fabric 8 安装为 http://fabric8.io/guide/getStarted/openshift.html,现在基本的 pod 正在运行。

但我无法访问服务

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
gheiler@testCluster:~$ 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:
  - .*

建议。但我不知道如何在 docker 容器中启用它们。您知道为什么我无法访问基本的 fabric8 控制台吗?

【问题讨论】:

  • 尝试 ping/curl 端口 80?

标签: docker openshift-origin fabric8


【解决方案1】:

如果您尝试远程访问 OpenShift 上的服务,则需要确保您已部署路由器并添加了Route。您可以在 https://docs.openshift.com/enterprise/3.0/architecture/core_concepts/routes.html 阅读有关 OpenShift 中路由的更多信息。

在这种情况下,如果您添加一条路线:

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,它没有端口的概念。此外,服务和 Pod 都不会响应 ping,因此您将无法 ping 它们。如果您尝试检查连接,则可以使用nc 实用程序:

nc -v  <address> <port>

如果地址/端口可达,这将报告连接成功。请注意,在 OpenShift 中,pod IP 和服务 IP 通常只能在集群内部(即节点上)路由,因此从集群外部尝试此操作可能会失败。

【讨论】:

  • 非常感谢。现在我有一个不同的问题chat.stackoverflow.com/rooms/105350/fabric8 请在这里问你几个问题。
  • 对不起,业力不足 - 我觉得这应该是公认的答案,而不是另一个。您可以在 freenode.net #fabric8 上与 IRC 上的 fabric8 团队交谈#fabric8
  • 固定更改为更好的解决方案
【解决方案2】:

您是否在 openshift 中创建了到达 fabric8 pod 的路线?

oc get route

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-24
    • 2019-10-04
    • 1970-01-01
    相关资源
    最近更新 更多