我是空缺/ OKD的新手。 我在空位上运行Strimzi。
我已经部署了包含Rest API的应用程序。 此应用程序具有Rest Api,并且可以从rest Api控制生产者和消费者。 我已经将应用程序的POD复制到了3。
为了更好地控制,我们希望亲自对每个Pod副本进行启动查询。例如我的应用程序kafka-testing
的pod-replica1启动生产者。我的应用程序kafka-testing
的pod-replica2启动使用者,依此类推。
我们如何才能分别访问每个Pod副本以执行测试?我们不能使用相同的源创建多个应用程序。
让我知道是否不清楚。
非常感谢
答案 0 :(得分:0)
如果您的应用程序也在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
,您可以通过kafka-0
或my-cluster-kafka-0
来访问my-cluster-kafka-0.<pod_namespace>.svc.cluster.local
如果您的应用程序在OpenShift外部运行,请配置strimzi external listeners。在设置external listeners的三个选项中,如果运行本地OKD,则NodePort
可能会更容易。
答案 1 :(得分:0)
如果您的statefulset
服务具有headless
,则可以使用$(podname).$(service name).$(namespace).svc
来访问每个吊舱
详细了解stable network id
here