V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jdOY
V2EX  ›  程序员

微服务架构中,是否需要出口网关

  •  
  •   jdOY · 2022-05-01 02:02:20 +08:00 · 2026 次点击
    这是一个创建于 945 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题,一般常见的微服务架构中都有诸如 gateway 等一类的,api 入口网关,那是否需要一个出口网关来统一进行请求外部接口的操作呢?

    8 条回复    2022-05-01 15:49:34 +08:00
    q1angch0u
        1
    q1angch0u  
       2022-05-01 03:15:55 +08:00 via iPhone
    入口 gateway 是为了做高可用,牺牲了 slb 的流量费用,出口做 proxy 是为了什么呢?
    sharpnk
        2
    sharpnk  
       2022-05-01 08:22:12 +08:00   ❤️ 1
    我司用 istio ,出口网管可以用来做 policy enforcement 。好比指定那些域名 /ip 可以出口访问,还有出口的时候是否强制要求 mtls 之类的。另外所有 egress traffic 都走这个 gateway 的话也可以很方便的去 monitor 。
    janxin
        3
    janxin  
       2022-05-01 08:52:36 +08:00
    出口网关需要根据需求来的,看你是否有一些功能需求,又不是为有而加
    byte10
        4
    byte10  
       2022-05-01 09:25:00 +08:00   ❤️ 1
    @q1angch0u 入口有网关是为了服务发现,微服务扩容方便。当然 nginx 写插件 也可以做到服务发现。
    @sharpnk 回答正确。

    关于出口网关其实很简单,做过安全都懂,统一出入口方便管理。但是一般不用 gateway 作为流量出口网关,一般用 http 代理服务器作为统一流量出口,这个代理服务器一般交给运维去处理,限制白名单域名。做到了这些之后,挖矿的程序进来也无法访问网络出去了,但是大多数的企业都没有做到这一点,只有头部一些互联网或者安全要求高的金融公司。出口的流量其实非常的重要,可以让恶意脚本或者程序进来 也无法出去,只能自己在内网搞搞破坏啥的。安全其实很简单,就像带口罩防病毒,贵重东西不要放客厅,不要仍在院子、出门要锁门,保险箱密码要复杂,这些都是基本的常识。但是大多数的人和公司都没有基本常识,这个导致很多悲剧。
    cxytz01
        5
    cxytz01  
       2022-05-01 09:33:26 +08:00
    除非你的资产很重要,或者资产受影响之后影响面很广,否则不需要。

    大厂一般这么做:生产环境默认禁止出口流量,需要出口流量申请,限制 ip 、端口、协议、目的地址。
    甚至办公环境,把全部流量 hook 到指定 proxy ,proxy 做黑白名单处理。
    ratazzi
        6
    ratazzi  
       2022-05-01 11:04:13 +08:00 via iPhone
    webhook ?
    gtx990
        7
    gtx990  
       2022-05-01 11:34:36 +08:00 via Android
    vpc
    jdOY
        8
    jdOY  
    OP
       2022-05-01 15:49:34 +08:00
    @byte10 感谢老哥们答疑
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2859 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:28 · PVG 20:28 · LAX 04:28 · JFK 07:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.