V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Recommended Services
Amazon Web Services
LeanCloud
New Relic
ClearDB
quxuanxuan
V2EX  ›  云计算

安全组规则同步

  •  
  •   quxuanxuan · 2023-02-06 15:16:09 +08:00 · 1532 次点击
    这是一个创建于 689 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我在实现统一安全组同步逻辑,发现很多问题,求助下 v 友,看有没有更好的设计

    现有实现:

    • 本地会存储安全组及安全组下的基础规则
    • 存储本地安全组和各个云平台(阿里云,腾讯云,华为云,aws, etc...)的安全组 id 映射关系
    • 虚拟机创建时会根据虚拟机所在的 vpc 及本地安全组查找对应云平台的安全组映射
      • 如果找到直接使用对应云的安全组
      • 若没有找到就创建对应云的安全组并和本地安全组 id 做映射,以便下次使用
    • 本地安全组规则变更会同步本地安全组规则到各个云平台

    其中 1 2 3 步骤其实都没啥大问题,问题主要出现在 4 上

    由于各个云实现的安全组规则并不尽相同

    • 有的支持目标是安全组的安全组规则
    • 有的支持优先级有的不支持,优先级顺序及范围又不尽相同
    • 有的仅支持 allow 规则

    由于设计时是本地 1 对多个云平台,所以在同步规则时,或多或少会导致规则同步异常

    • 本地没支持目标是安全组的安全组规则,若云上刚好有一个这样的规则,在修改本地安全组后,对应的云平台的这条规则可能会被冲掉
    • 本地修改一条安全组规则,由于优先级的问题,可能会导致同步修改多条安全组规则
    • 同步会导致安全组规则和云上不一致

    现打算移除掉步骤 4 ,只第一次创建安全组时同时创建规则,后面的规则维护直接到各个云管理

    或者 v 友有没有好的方式去实现步骤 4

    2 条回复    2023-02-06 18:21:11 +08:00
    c9cc
        1
    c9cc  
       2023-02-06 15:48:29 +08:00
    试试用 terraform 管理安全组
    quxuanxuan
        2
    quxuanxuan  
    OP
       2023-02-06 18:21:11 +08:00
    terraform 对于指定的某个云应该可以,但是这里是得对应多个云平台
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1071 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 19:20 · PVG 03:20 · LAX 11:20 · JFK 14:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.