K8s 经防火墙访问外部业务系统问题

2022-10-27 22:05:54 +08:00
 clintme

k8s 集群部署业务系统 1,通过防火墙访问外部业务系统 2,需要在防火墙上开通 k8s 上所有 worker 节点访问系统 2 的策略。问题是当我在 k8s 新增 worker 节点,都需要重新开通防火墙,有什么办法可以解决吗。如下图。

2021 次点击
所在节点    Kubernetes
11 条回复
xzysaber
2022-10-27 22:14:03 +08:00
1 、防火墙源地址可以使用网段
2 、业务系统可以放在一个反向代理后面,worker 节点全部访问 worker 节点。防火墙策略只通过这个反向代理进入
...
yimiaoxiehou
2022-10-28 08:13:48 +08:00
改 iptables ,让其他节点只通过 node1 访问业务系统,防火墙只需要配置 node1 ,不过就单点了
clintme
2022-10-28 08:45:36 +08:00
@xzysaber 管理要求需要最小化开墙,方法一使用网段不大可行。第二个方法是不是起一个反向代理的工作负载,通过节点亲和固定到 2-3 个节点上,访问业务系统 2 都通过工作负载。
clintme
2022-10-28 08:46:29 +08:00
@yimiaoxiehou 对,生产业务,单点不行。
xzysaber
2022-10-28 09:04:00 +08:00
@clintme "是起一个反向代理的工作负载,通过节点亲和固定到 2-3 个节点上,访问业务系统 2 都通过工作负载",是的。
xzysaber
2022-10-28 09:05:34 +08:00
"业务系统可以放在一个反向代理后面,worker 节点全部访问 worker 节点。防火墙策略只通过这个反向代理进入",不好意思,现在才发现打错字了,
业务系统 2 可以放在一个反向代理后面,worker 节点全部访问 该反向代理。防火墙策略只允许这个来自改反向代理的流量通过。
mooyo
2022-10-28 13:17:54 +08:00
egress ?
retanoj
2022-10-28 15:46:26 +08:00
一个外挂防火墙管着一个集群的 ip ,防火墙策略还得配固定的源地址,源地址还可能变化(增多或减少),这就很麻烦
Waffle
2022-10-28 18:03:58 +08:00
可以让所有集群节点通过统一的网关(唯一 IP )访问外部,例如 GCP 上对应的产品叫 Cloud NAT ,AWS 上对应的产品叫 NAT Gateway 。
参考文档: https://docs.aws.amazon.com/vpc/latest/userguide/nat-gateway-scenarios.html#private-nat-allowed-range

如果不好改集群架构,那就考虑 1 楼说的方法 2
seers
2022-10-28 23:50:07 +08:00
我正好前段时间碰到过这个问题,我们 20 几个 ip 要访问银行的服务器,结果他们只开一个 ip 防火墙,最后找了个第三方服务器,把请求发到三方服务器,三方服务器转发到银行那边,这样银行防火墙只要添加一个 ip ,即三方服务器 ip 即可。
clintme
2022-10-29 14:33:53 +08:00
@seers 第三方服务器确实可以,你们第三方服务器有做高可用吗。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/890510

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX