云原生公私混合企业网

2020-10-05 18:36:19 +08:00
 jeffreystoke

我有个不成熟的企业网想法, 具体是实现如下功能:

  1. Kubernetes service 直访
  2. Kubernetes pod 隔离
  3. 总部, 分部均有私有云, 所有云之间能互访
  4. 公有云, 私有云互访
  5. 网络访问管理

我目前想法比较混乱, 暂时的想法是:

  1. 公有云部署一套 BGP 路由服务, 自定义路由策略和访问控制
  2. 私有云部署 calico 与公有云的 BGP peering, 传播 pod/service network 路由
  3. 公有云 BGP 过滤掉 pod network => 不同私有云的 pod network 可以重合
  4. calico 协调 ClusterIP => 所有云共用一个 service network
  5. 如果没有专线, 总部分部之间使用 wireguard 实现互联 (类似 tailscale 建立 mesh)

不知道有没有人这么做过, 或者有没有这种方案提供商.

非专业网工, 感觉还有很多问题在里面, 请大家多多指教!

3700 次点击
所在节点    奇思妙想
29 条回复
Sunmxt
2020-10-05 20:58:55 +08:00
有类似的想法。正在尝试做类似的开源项目。 不过目前在 Just for fun 的阶段:)
jeffreystoke
2020-10-05 23:00:28 +08:00
@Sunmxt 抱歉,因为好奇顺着你的用户名找了一下,如有冒犯还请见谅。不过你说的 poc 是指 https://github.com/CrossMesh/fabric 这个吗,刚刚大概看了一下好像和 tailscale 有点像,不知道我理解得对不对?
hrxlove
2020-10-05 23:21:24 +08:00
大体上可以走专线(电信有云专网,移动联通应该也有相应产品,可以接到几大公有云和地市),路由静态 or bgp,具体的访问控制可以在各接入点的防火墙控制
jeffreystoke
2020-10-05 23:40:41 +08:00
@hrxlove 用专线做基础架构肯定是可以,关于互联这块我想的主要是能不依赖专线就不依赖,甚至用家宽降低接入成本。

至于我的重点是在使用这种互联模式下暴露
Kubernetes service network 给所有集团网络,不知道有没有这样应用 BGP 的先例?
Sunmxt
2020-10-06 00:08:31 +08:00
@jeffreystoke 想做的是一个 overlay network tool 。在公有云、私有云互联的基础上,能方便创建和管理多个虚拟的二层网络(类似 flannel 已经砍掉的的 multiple network ?),并且能够将容器、虚拟机加入到某个虚拟的网络上。所以互联只是第一步?看了一下 tailscale,目前项目的样子确实比较像 tailscale (可能是因为还是 poc,在 early development 的阶段吧)。想得很多,但我觉得无论是 concept,还是最终设计,都还有不少工作要做。
jeffreystoke
2020-10-06 00:29:33 +08:00
@Sunmxt 是的,但是如果只是需要多网络,我觉得可以考虑基于 multus 做个 controller,加入多集群的控制支持。
Sunmxt
2020-10-06 01:07:41 +08:00
@jeffreystoke 嗯。楼主看起来对 k8s 比较了解。对于容器多网络的确比较想基于 multus 。但对于 underlay,项目本身也考虑整合非专线下的互联,其实就是控制面利用 gossip 协议传播 peer 间的网络信息,数据面利用内核支持的一些网络特性( ipsec,wireguard,gre 等等)来实现,这样使用会比较方便,这是目前我在做的。这样一说其实目前有一种实现了一个 功能不太多的 p2p vpn 的感觉。我感觉这个跟楼主的想法有点类似,就来回复啦:)。
Sunmxt
2020-10-06 01:13:51 +08:00
@jeffreystoke 仔细看了下楼主的想法。我们最终想实现的可能有点不一样?
jeffreystoke
2020-10-06 01:47:09 +08:00
@Sunmxt 你说的没错, 不过我现在还不太能理清我的想法, 目前看来我应该是要一个类似 network service mesh 的解决方案. 当然之前我只是提供我觉得可能有用的建议, 如有冒犯还请见谅.
Sunmxt
2020-10-06 02:05:05 +08:00
@jeffreystoke 我不是专业的。楼主的建议也对我有启发,并没有冒犯的说法:)。
jeffreystoke
2020-10-06 02:28:00 +08:00
@Sunmxt 我也是半吊子而已, 感觉要做的东西还是有点相似的, 有机会可以交流一下 XD
labulaka521
2020-10-06 10:27:11 +08:00
我目前也在做这方面的事,我想做的是一个类似 zerotier 的软件,主要想改善的一点就是协议的问题,目前也是早期阶段,可以一起交流哈
@Sunmxt
@jeffreystoke
tkl
2020-10-06 12:47:43 +08:00
你这和 k8s 有关系么 自己搞一个网络的控制面呗
ericbize
2020-10-06 13:29:57 +08:00
不跨境的话, 找线路商拉光纤 或者是 买带宽,不买 bgp 的话, 线路很便宜
jeffreystoke
2020-10-06 14:35:40 +08:00
@tkl 就是要 Kubernetes 控制网络啊,充分利用 calico 的 BGP 和 network policy,为什么还要自己搞一个控制面,你是说的数据面?
jeffreystoke
2020-10-06 14:46:47 +08:00
@ericbize 拉光纤买带宽不应该比 mpls-vpn 还贵吗?云原生不应该追求最低成本啊😂
jeffreystoke
2020-10-06 14:50:09 +08:00
@labulaka521 好啊,想法多一点不是坏事,不过我这只是个不成熟的想法,还没有实际去做的打算😂
ericbize
2020-10-06 14:53:44 +08:00
@jeffreystoke 单线移动 不超 10 元 /m, 两边 1G 也就 2w 一个月,1G 的公网 vpn 也可以了吧
jeffreystoke
2020-10-06 15:06:32 +08:00
@ericbize 这是 dc 的价格吧,但是如果说一个月只跑 1G,那 1M 的 mpls-vpn 不仅稳定,价格还更低。。而且代码,素材,数据库备份同步可能几天就有 1G 流量吧,不用说还有 voip,视频会议之类的。
Sunmxt
2020-10-06 16:27:39 +08:00
@labulaka521 可以来交流呀。

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

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

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

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

© 2021 V2EX