Proxmox VE 设置备忘
现在PROXMOX 虚拟机一共两个(使用的是N3700 cpu的一个小机器主要为了省电。)
一个是ROS,经过折腾,IK8速度还不错就是资源占用比较大特比下载数据大时对CPU占用很大;OpenWRT不知道为什么X86版安装后性能很差(加上现在去广告不太好用了,买的SSR服务器被封了)所以不用了;最后选用ROS性能不错占用资源超小。
第二个是DSM黑群辉,nextcloud除了免费没啥;esafile不错现在还有1000版,块技术速度也快,但有一点为了用他还的在装一个系统Ubuntu啥的我测试时安装的是Debian(proxmox 用的就是他本来想直接安装后来为了安稳没搞)这样用esafile还的浪费一个系统资源;最后选DSM很简单为了存储怎么也的安个系统就来个强大专业的。
先这样,用了一段时间PROXMOX感觉很不错比ESXI好用,PROXMOX 本身就是Debian系统可以实现一些其它功能比如ddns虚拟机处理方面也更灵活,现在ROS主要负责拨号上网;DSM负责存储远程下载,远程编辑文件,文件同步,资料备份,看视频。(wordpress)暂时没搞 还是习惯现在的方式。
-------------------------------------------------------------------------------------------------------------------------------------------------------------------
1 删除 lvmthin 感觉用文件形式硬盘更方便些 一般网上下载的虚拟机硬盘文件可以直接拿来用
1.1 进入控制台 数据中心->存储->local-lvm-> 删除
1.2
mkfs.ext4 /dev/pve/data mount -t ext4 /dev/pve/data /ssd 测试一下挂载 不加 -t ext4 有时会出现 “Couldn't mount as ext3 due to feature incompatibilities”错误 修改fstab vi /etc/fstab 加入 /dev/pve/data /ssd16 ext4 defaults 0 0 mount -a 测试fstab有没有错误。
配置iptables创建子网以实现nat
编辑配置文件/etc/interfaces
,以下是参考配置
auto vmbr2
iface vmbr2 inet static
address 10.0.0.254
netmask 255.255.255.0
bridge_ports none
bridge_stp off
bridge_fd 0
post-up echo 1 > /proc/sys/net/ipv4/ip_forward
post-up iptables -t nat -A POSTROUTING -s '10.0.0.0/24' -o vmbr0 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '10.0.0.0/24' -o vmbr0 -j MASQUERADE
以上配置创建了vmbr2
并且分配了一个子网10.0.0.0/24
,同时宿主机(同时亦为网关)在这个子网内的ip为10.0.0.254
。然后开启了内核的转发功能与iptables的NAT功能(其中vmbr0
为通向外部网络的设备)。
若想添加端口转发直接在iptables中增加相关条目即可。
例如想要将宿主机vmbr0
的80端口的tcp连接转发到10.0.0.102的80端口上:iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 80 -j DNAT --to 10.0.0.102:80
如果想保存转发规则,使之重启后依然有效,则需要在/etc/interfaces
相应位置加入
post-up iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 80 -j DNAT --to 10.0.0.102:80
post-down iptables -t nat -D PREROUTING -i vmbr0 -p tcp --dport 80 -j DNAT --to 10.0.0.102:80
通过以上方法就能组建一个灵活的子网了,kvm虚拟机和lxc虚拟机都可接入,并且都可以有端口转发。由于没有DHCP服务器所以要自行分配ip。注意创建虚拟机的时候将其挂载到vmbr2
端口下。
启用BBR优化网络
目前的Proxmox VE版本的linux内核版本比较新,已经包含了bbr模块了。
修改sysctl.conf
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
保存生效
sysctl -p
检测是否已启用bbr模块
lsmod | grep bbr
如果含有bbr即说明内核内已启用bbr模块