找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 42069|回复: 127

[openwrt(x86)] pve里LXC跑openwrt X86软路由的最佳方法(附nfs解决方案)

 火.. [复制链接]
本帖最后由 hehe8899 于 2021-1-19 11:54 编辑

经过多方研究与摸索,找到一个pve下跑Openwrt的最佳方案!

先说下配置及需求(all in one):
CPU:10代G6400
渣主板昂达H410SD4
内存:杂牌4Gx2 2400
网卡:主板自带1个螃蟹千兆,加一块pci Intel双口千兆,还有一块螃蟹pci 8125B 2.5G,共有3个千兆及1个2.5G网口
硬盘:三块2.5作数据盘,板载M.2一块nvme固态做pve和虚拟机系统电源:ATX 90瓦直插电源
虚拟机服务应用需求:日常跑3-4个虚拟机:Openwrt为主路由加下载机;一个NAS作网盘及数据分享;一个DSM作影音视频媒体服务器。偶尔开几个虚拟机作编译或实验研究用。这其中Openwrt软路由是主要需求。

其他虚拟机服务需求没啥可说的,主要的Openwrt一般都是用qm来创建虚拟机应用,很方便,但是跑下来感觉系统损耗不小。这是因为qm的虚拟化会更高,导致系统损耗加大!当然用硬件直通会提高一些效能,但是有没有更好的方法呢?
有的,就是用pve里的lxc来跑Openwrt相。对于普通的虚拟机,lxc用的是容器技术,和docker容器不一样的是这个是完整的系统容器!
我们知道pve实际是Debian系统加虚拟机扩展,lxc就是Debian里的一个容器,lxc里跑一个新系统,可以看作宿主机的内核加上系统的扩展应用,本质非常接近裸装Debian系统本身。所以用lxc来跑Openwrt相当于用Debian的内核本身加上Openwrt的路由应用来跑软路由,这个效能是最佳的!
具体实施步骤:普通的Debian跑路由缺少一些东西,比如pppoe拨号、模拟硬件NAT等等,所以要在pve内核里打包进这些功能包,另外还需要对普通的pve做些配置调整,具体编译新内核及安装Openwrt的步骤本坛 skill7899 已给出方法并提供好编译的内核文件可以直接使用!看这里:
https://www.right.com.cn/forum/thread-4053183-1-1.html

提醒下,pve这种linux内核为主的服务系统,默认安装完是运行于高效能模式的,如果你用的CPU和我一样属于性能好的CPU(比如奔腾、I3以上的,这些U在这种应用场景已经算比较好的CPU了),特别建议在pve里开启内核节能睿频模式,温度功耗都会有大幅的改善。
具体方法已经有人做了工具,除了可以调整CPU的效能模式,还附带很多pve优化工具,特别推荐!看这里:
https://github.com/ivanhao/pvetools

我的这套配置按这个方法弄好后,日常跑3-4个虚拟机,一般待机工作情况功耗20瓦左右,扣除插入的两块网卡以及3个2.5寸硬盘,估计功耗也就10瓦左右!平时上上网,CPU负载几乎不动,偶尔下载大文件浏览在线高清视频,cpu占用都是个位数,nas下载大文件跑满2.5G带宽也只有10几%的占用,室温20度下cpu温度只有35度!拉满功耗会去到50瓦左右,性能杠杠的。对比下,原来用qm虚拟机跑同样的应用,日常应用,openwrt里CPU很容易上10%以上(配置为2个cpu,2G内存),下载大文件浏览在线高清视频会跑到20%以上,如果从nas下载文件跑满2.5G带宽,会飙到4、50%!

lxc跑openwrt目前发现的一些小问题:
一是openwrt里无法跑docker了,再有就是openwrt里的NFS也无法使用,原因是openwrt的路由等功能需要调用特殊的内核应用,在lxc创建时需要配置为无特权容器为“否”,而这样会造成一些系统内核服务上的冲突!
docker的解决办法很简单:新开一个LXC无特权为“是”的Debian或Ubuntu镜像装个docker完事。
Openwrt自带的NFS因为是系统级应用,在无特权容器为“否”的容器里是无法使用的,这类应用需要换成用户级别的应用才能使用。NFS用户级别的linux应用有NFS-ganesha、unfs3等,不过Openwrt因为属于linux嵌入式系统,很多普通的linux应用缺乏对应的资料库文件而无法使用,需要自己编写!
有没有简单的方法?有的,就是在openwrt上安装Entware扩展,而Entware扩展里已经有unfs3应用可以直接下载安装了!Entware本身就是属于用户级别应用的资料扩展库,而Entware已经有几千个应用可以直接使用,这样就完美的解决了lxc下Openwrt换用户级别应用的问题,稍微有点遗憾是unfs3的nfs版本目前最高只支持ver3,不过日常用用已经相当足够了。
安装Entware的方法看这里:
https://www.right.com.cn/forum/thread-260766-1-1.html

安装unfs3的具体办法:安装好Entware后,在Openwrt里执行如下命令:
opkg update
opkg install unfs3 portmap
安装成功后执行
vim /opt/etc/exports
输入需要挂载出去的NFS目录,比如:
/mnt/sdb1 192.168.16.0/255.255.255.0(rw,sync,insecure,no_root_squash)
前面的/mnt/sdb1改成你要挂载的目录,中间的192.168.16.0/255.255.255.0是可以允许访问的本地网段,括号里面的按我的写就好了。
退出保存后,输入以下命令关闭rpcbind服务(与unfs3需要的portmap有冲突),然后启动portmap与unfs3服务:
/etc/init.d/rpcbind disable
/etc/init.d/rpcbind stop
/opt/etc/init.d/S55portmap enable
/opt/etc/init.d/S55portmap start
/opt/etc/init.d/S56unfsd enable
/opt/etc/init.d/S56unfsd start

最后晒张这套系统在日常工作时的负载与温度图


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
看不懂的路过..........
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
非常稳定,lxc与pve内核的融合浑然天成,效能实在赞!
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

本帖最后由 时光雕刻人生 于 2021-1-17 12:18 编辑

新开一个LXC无特权为“是”的Debian或Ubuntu镜像装个docker
Debian或Ubuntu怎么安装啊

点评

pve的CT模版里有很多lxc镜像,直接下载安装就可以了  详情 回复 发表于 2021-1-17 20:55
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
时光雕刻人生 发表于 2021-1-17 12:16
新开一个LXC无特权为“是”的Debian或Ubuntu镜像装个docker
Debian或Ubuntu怎么安装啊

pve的CT模版里有很多lxc镜像,直接下载安装就可以了

点评

好的 谢谢!  详情 回复 发表于 2021-1-17 21:27
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

hehe8899 发表于 2021-1-17 20:55
pve的CT模版里有很多lxc镜像,直接下载安装就可以了

好的
谢谢!
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

可以装个omv,在这个下面可以装docker

点评

效能比不上lxc里跑docker吧  详情 回复 发表于 2021-1-19 11:51
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

又是一位技术大神,感谢分享,小白受教
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
yyljt 发表于 2021-1-17 23:56
可以装个omv,在这个下面可以装docker

效能比不上lxc里跑docker吧
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

让我看看
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

我来学习下
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报


我来学习下
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

学习看看,谢谢楼主
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

LXC的openwrt 能否PPPOE?

点评

没仔细看贴吧?安装相应的pve内核可破  详情 回复 发表于 2021-1-23 12:05
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| | 显示全部楼层
The_Catalyst 发表于 2021-1-23 12:02
LXC的openwrt 能否PPPOE?

没仔细看贴吧?安装相应的pve内核可破

点评

感谢..  详情 回复 发表于 2021-1-23 17:50
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-29 21:33

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表