在istio中连接到mysql(aws rds)

mwyxok5s  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(967)

我们有一个问题,连接到istio服务网格中的aws rds会导致 upstream connect error or disconnect/reset before header . 我们的出口规则如下

apiVersion: config.istio.io/v1alpha2
 kind: EgressRule
 metadata:
     namespace: <our-namespace>
     name: rds-egress-rule-with
 spec:
     destination:
     service: <RDS End point> 
 ports:
     - port: 80
       protocol: http
     - port: 443
       protocol: https
     - port: 3306
       protocol: https

到mysql的连接在ec2的独立mysql中运行良好。与aws rds的连接在没有istio的情况下工作正常。这个问题只发生在istio服务mesh中。
我们正在禁用相互tls配置中使用istio。

mkh04yzy

mkh04yzy1#

你家里的协议 EgressRule 定义应该是 tcp . 这个 service 应包含ip地址或cidr表示法中的ip地址范围。
或者,您可以使用 --includeIPRangesistioctl kube-inject ,以指定istio处理的ip范围。istio不会干扰未包含的ip地址,只允许流量通过。
参考文献:
https://istio.io/latest/blog/2018/egress-tcp/
https://istio.io/latest/docs/tasks/traffic-management/egress/egress-control/#direct-获得外部服务

相关问题