问题描述
我正在尝试仅在 kubernetes 中创建内部服务。它是一个 clamav 服务,docker 容器在端口 3310 上运行。我已经创建了一个部署和一个服务。
我已将服务和部署放在“clamav”命名空间中
我已经端口转发了服务和 Pod,并且可以确认它按预期工作。
如果我直接连接到 pod 并运行 curl localhost:3310
它很好,如果我 curl clamav
(没有端口,因为我将 80 配置为传入服务端口)(其中 clamav 是服务名称)我得到以下 503 错误:
upstream connect error or disconnect/reset before headers. reset reason: connection termination
如果我连接到不同的服务并尝试相同的 curl clamav.clamav
,我会遇到相同的错误。 (没有端口,因为我配置了80作为传入的服务端口)
除了服务和部署之外,我是否还需要其他东西,或者某些东西配置有误?
服务规范如下所示。
spec:
clusterIP: 10.10.255.194
ports:
- name: http
port: 80
protocol: TCP
targetPort: 3310
selector:
app: clamav
sessionAffinity: None
type: ClusterIP
我已尝试将名称更改为“3310-3310”并将端口也更改为“3310”...必须更新 curl 命令以使端口为 :3310...但同样的错误。
另外补充一点,我确实在这个集群中运行并注入了 istio 服务网格。
谢谢 凯文
解决方法
对此的答案是服务,将其更改为:
spec:
clusterIP: 10.10.255.194
ports:
- name: tcp-clamav
port: 80
targetPort: 3310
selector:
app: clamav
sessionAffinity: None
type: ClusterIP
已解决问题