Kubernetes 使Istio忽略同一部署中两个容器之间的连接
我有一个OpenShift部署,它有两个容器:主java应用程序和一个定制的sidecar,用于对主应用程序进行jmx监控。因此,当我不使用注释sidecar.Istio.io/inject注入Istio sidecar时:“false”一切都按照我的预期工作,jmx sidecar可以建立连接。但当我注入Istio侧车时,我的连接出现了问题 有如下注释: traffic.sidecar.istio.io/excludeinboundport traffic.sidecar.istio.io/excludeOutboundPorts traffic.sidecar.istio.io/includeInboundport 但它们似乎不起作用,至少在我的情况下,我找不到关于它们的很多信息 这是我的部署yaml,其中包含的相关信息适用于“false”,而不适用于“true”Istio侧车注入选项Kubernetes 使Istio忽略同一部署中两个容器之间的连接,kubernetes,openshift,istio,Kubernetes,Openshift,Istio,我有一个OpenShift部署,它有两个容器:主java应用程序和一个定制的sidecar,用于对主应用程序进行jmx监控。因此,当我不使用注释sidecar.Istio.io/inject注入Istio sidecar时:“false”一切都按照我的预期工作,jmx sidecar可以建立连接。但当我注入Istio侧车时,我的连接出现了问题 有如下注释: traffic.sidecar.istio.io/excludeinboundport traffic.sidecar.istio.io/e
apiVersion: apps/v1beta1
kind: Deployment
spec:
template:
metadata:
annotations:
sidecar.istio.io/inject: 'true'
spec:
containers:
- image: mainjavaappsource
ports:
- containerPort: 9090
- image: jmxsidecarsource
dnsPolicy: ClusterFirst
因此,问题是-如何排除同一部署中容器之间的连接被Istio sidecar拦截?防止代理拦截流量,基本上意味着从网格中排除该服务。简单地说,不要注入侧车,将该服务保持在网格之外,并创建一个ServiceEntry。问题是,我需要我的主应用程序在网格中可见,这样我就不能真正排除遥测意义上的Istio侧车可见了?一般来说,我认为。路由到我的应用程序使用Istio工作。但现在,当我添加自定义侧车进行监控时,它不起作用,除非我禁用了Istio,这不是解决方案,因为前面提到的原因,您如何尝试从一个连接到另一个?在同一个pod中,您应该能够使用localhost作为主机名。你犯了什么错误?它只是同一个吊舱内的连接,还是您试图在同一部署中的吊舱之间建立连接?它是同一个吊舱内的连接。是的,我可以使用localhost:MyJMX连接url字符串使用localhost-service:mx:rmi://localhost:9911/jndi/rmi://localhost:9911/jmxrmi 我的jmx库给出了连接重置错误java.rmi.connectionException:JRMP连接建立期间的错误。