【问题标题】:OpenShift / OKD Specify URL for each Pod ReplicaOpenShift / OKD 为每个 Pod Replica 指定 URL
【发布时间】:2019-08-01 20:25:36
【问题描述】:

我是 Open shift / OKD 的新手。 我在开放班次上运行 Strimzi。

我已经部署了一个包含 Rest API 的应用程序。 此应用程序具有 Rest Api,并且可以从 Rest Api 控制生产者和消费者。 我已将我的应用程序的 POD 复制到 3。

为了更好地控制,我们希望亲自对每个 pod 副本进行触发查询。前任。我的应用程序kafka-testing 的pod-replica1 来启动我的应用程序kafka-testing 的producer.pod-replica2 来启动消费者等等。

我们如何单独访问每个 pod 副本来执行测试?我们不能使用相同的源创建多个应用程序。

如果有不清楚的地方请告诉我。

非常感谢

【问题讨论】:

标签: kubernetes openshift openshift-origin okd strimzi


【解决方案1】:

如果您的应用程序也在 OpenShift 中运行,请运行 oc get svc 以查找每个代理的名称。请注意,这些名称只能在 OpenShift 集群内访问。

例如,如果oc get svc 返回:

> oc get svc
NAME                                  TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)                      AGE
my-cluster-kafka-0                    ClusterIP   172.30.210.241   <none>        9094/TCP                     109d
my-cluster-kafka-1                    ClusterIP   172.30.39.25     <none>        9094/TCP                     109d
my-cluster-kafka-2                    ClusterIP   172.30.93.193    <none>        9094/TCP                     109d

,您可以通过my-cluster-kafka-0my-cluster-kafka-0.&lt;pod_namespace&gt;.svc.cluster.local访问kafka-0

如果您的应用程序在 OpenShift 之外运行,请配置 srimzi external listeners。在设置external listeners 的三个选项中,NodePort 如果您运行本地 OKD 可能会更容易。

【讨论】:

【解决方案2】:

如果您有 statefulsetheadless 服务,那么您可以使用 $(podname).$(service name).$(namespace).svc 访问每个 pod

阅读更多关于stable network idhere

【讨论】:

    猜你喜欢
    • 2019-11-19
    • 1970-01-01
    • 2021-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多