如何访问IP地址&;Kubernetes中另一个节点的节点端口
我有一个有两个pod的应用程序,其中一个pod正在接收数据,另一个想要使用它。 我正在尝试单节点Kubernetes设置。 现在:如何访问IP地址&;Kubernetes中另一个节点的节点端口,kubernetes,service,dns,Kubernetes,Service,Dns,我有一个有两个pod的应用程序,其中一个pod正在接收数据,另一个想要使用它。 我正在尝试单节点Kubernetes设置。 现在: `in pod1` - name: ingest_cfg value: zmq_tcp,0.0.0.0:9000 [where pod1 is publishing on port 9000, even this I want to be dynamically configurable] `in pod2` -
`in pod1`
- name: ingest_cfg
value: zmq_tcp,0.0.0.0:9000 [where pod1 is publishing on port 9000, even this I want to be dynamically configurable]
`in pod2`
- name: ingest_cfg
value: "zmq_tcp,IPadd:pv" [where IPadd should be Ip address where pod 1 is publishing and pv is port number where pod1 has published]
现在,我需要知道如何在代码中配置它。我不想硬编码IP地址和端口。任何指针都会非常有用。
我尝试使用服务名称,但它指向群集IP地址。我建议您对每个应用程序使用一个。在每个部署的顶部创建一个。然后从数据使用者可以指向kubernetes提供的内部dns服务
假设您的数据摄取服务是:
apiVersion: v1
kind: Service
metadata:
name: my-service
spec:
selector:
app: ingestion
ports:
- protocol: TCP
port: 80
targetPort: 9090
您可以使用myservice.default.svc.cluster.local的dns如果我有一个pod而不是部署,它会不起作用吗?在pod2中,在环境变量中——我应该编写我的服务而不是IPadd:pv?但是这不起作用是的,Pod规范还有一个可选的子域字段,可以用来指定它的子域。例如,名称空间“my namespace”中主机名设置为“foo”、子域设置为“bar”的Pod将具有完全限定域名(FQDN)“foo.bar.my namespace.svc.cluster domain.example”。看到这个了吗