在Kubernetes中创建仅限内部的服务

在Kubernetes中创建仅限内部的服务,kubernetes,internals,clamav,Kubernetes,Internals,Clamav,我试图在kubernetes内部创建一个内部服务。这是一个clamav服务,docker容器在端口3310上运行。我已经创建了一个部署和一个服务 我已将服务和部署放在“clamav”命名空间中 我已经转发了服务和POD,并且可以确认它按预期工作 如果我直接连接到pod并运行curl localhost:3310这很好,如果我curl clamav(没有端口,因为我将80配置为传入服务端口)(哪个clamav是服务名称),我会得到以下503错误: upstream connect error or

我试图在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

修复了这个问题

我只想补充一点,我只是让它工作起来了。。Istio被注入所有的名称空间。。。我从这个名称空间和另一个名称空间中删除了istio注入,我可以在它们之间连接。。。将istio添加回并得到相同的错误,因此错误似乎与istio有关。。。我们确实需要istio。你能把评论中的信息粘贴到你的帖子上吗。您还可以提供更多详细信息(整个yaml文件)-您是否使用特定的教程进行设置?没有教程,但如果没有在我的clamav命名空间中运行istio,我可以很好地使用该服务,如果我在另一个命名空间中禁用istio,他们可以很好地通信。一旦我将istio添加回(特使代理)中,通信问题再次出现。您能否提供更多详细信息(整个yaml文件-服务、部署)-您正在处理的环境?