为什么要这么做?
容器化的话,安装和卸载一些网络功能就不至于留下一地狼藉了。想象一下你编译一些稀奇古怪的软件后留下一些自己都不知道的无用依赖。或者用包管理卸载软件但卸载不干净,还是会留下一些无用依赖浪费空间。
更灵活的网络功能编排。我可以轻松地安排一台或多台完全功能的,独立的虚拟路由器,让它们运行在不同的网络命名空间里。
物理规格的展望?
宿主机上要装什么?
怎么实现路由器功能?
在宿主机上创建至少一个业务网络命名空间,并让虚拟路由器功能容器使用它。
我目前想到了两种路线:
网络功能如何运行在容器里?
运行虚拟机?
1
465456 13 天前
openwrt 里面装个 docker
|
2
CatCode 13 天前
想法很好 就差一个程序员来写了
|
4
maybeonly 13 天前
并不疯狂,我已经用了好多年了,运行良好,方便折腾。
在 netns (容器)之间转发的数据和一般的来自外部网卡的数据,对于内核来说有略微的不同,可能线路 B 会遇到这方面的问题。 我的做法是,直接在母鸡上操作各 netns (容器)的网络设置……比较暴力,但是省事——都在一起了,还折腾什么鸟( bird )事? 以及,只有容器的话不是很需要 SR-IOV 的感觉。 而且我在很多场景下只分了 netns 。 还有一个坑,做这种东西的时候不可避免的会用到 iptables/nft ,特别是 iptables 因为内核版本的差异可能根本不好用,者也是只虚拟化 netns 的一大原因(其实刚开始做这套的时候才是 centos7 ,那时候默认还只是传统的 iptables ) |
5
Immunize 13 天前
挺好的,可以了解下 SONiC ,大厂的自研白盒交换机就是基于 SONiC + 一堆容器服务实现的。
|
6
julyclyde 13 天前
把容器作为目标而非手段
是一种病 |
7
terrancesiu 13 天前
你这个不疯狂,大厂的设计都这样,用 linux 但是走用户空间,然后管理和数据分离。他们的进程管理也是用自己的方式,容器也是一种方式。
|
8
dalaoshu25 13 天前
OpenWRT 不说,OP 不知道 RouterOS 7.4 之后就支持 container 了?既然能访问 V2EX ,为什么不在妄想之前先 google 一下?重新发明车轮很有意思吗?
|
9
thereone 13 天前
最终目标是是什么,就是为了容器化而容器化?
不是和业务和需求相关的?真想要那就直接上现成的 NFV 何必搞这么多容器 H3C VSR1000 vyos routeros 华为 AR1000V openwrt 也可以实现。需要区分用 vxlan 就行,如果用的 PVE8 那自带的 SDN 功能不就可以了,上 VXLAN 加 vyos 或者 H3C VSR1000 |
10
yyysuo 12 天前
v6 怎么处理。
|
11
youx 9 天前
sdn + nfv
|