Nas系统:Proxmox VE
- 系统
- 6天前
- 33热度
- 0评论
Proxmox VE是一款基于Debian为底层的、完整的、开源的,企业级服务器虚拟化管理平台。同时支持KVM(虚拟机)和LXC(容器)两种虚拟化技术。
所以Proxmox VE是相对理想的一套虚拟化方案,主要有以下几个原因:
- 够成熟,有一定的使用规模,网络上也有不少教程。
- 一站式解决方案,使用相对简单。KVM太底层,折腾起来费劲。 OpenStack太庞大。
- 免费。Vmware要收费,而且挑硬件。(也有免费的)
- 不挑硬件。得益于底层是Debian Linux,所以不论是服务器(Dell PowerEdge R630),工作站(Dell Precision Workstation T5810),还是个人电脑(英特尔酷睿 i3-4170)均可以成功安装
1、安装
这个比较简单,下载 ProxmoxVE 社区版的镜像:官网地址
刻录到 U 盘里,然后安装到物理机上就可以了,和安装一套linux系统差不多。
想要教程的建议看底部的参考资料,2篇教程[1][2],很详细了。
注意:如果使用个人PC,请一定要在BIOS中打开虚拟化技术(Intel (VMX) Virtuallzation Technology或AMD SVM Mode)。
2、配置
Proxmox VE安装之后,有2个储存点。
- local-lvm
位置在/dev/pve,储存镜像。 - local
位置在/var/lib/vz/template/iso,储存iso镜像 。直接点击local——内容——点击上传就可以上传ISO。
3、直通
3.1、直通硬盘
进入PVE的SSH,或者直接进入PVE管理网页Shell
查看你现在的存储设备的序列号:
ls /dev/disk/by-id
然后就能看到所有存储设备的序列号
比如我的软路由主机上有两块硬盘,一个东芝SSD,一个是西数的硬盘,需要挂载的是西数的硬盘
我的西数硬盘序列号是ata-WDC_WDXXXX_XXXX_XXXX,记住这个序列号
然后输入以下代码(请把硬盘序列号换成你硬盘的,100换成你LEDE的虚拟机ID)
qm set 100 -sata1 /dev/disk/by-id/ata-WDC_WDXXXX_XXXX_XXXX
如果返回以下信息,说明已成功挂载
update VM 100: -sata1 /dev/disk/by-id/ata-WDC_WDXXXX_XXXX_XXXX
然后可以进入PVE管理网页,查看是否真的挂载成功.如果看到LEDE虚拟机硬件设备里有这个,就说明成功。
3.2、直通GPU
gpu虚拟化还未能在proxmox的web管理界面提供支持,因此,要启用这个功能,得登录proxmox所在宿主机的系统debian,进行如下操作:
修改grub(与centos稍有差异)。编辑文件/etc/default/grub,修改行“GRUB_CMDLINE_LINUX_DEFAULT="quiet",使其为“GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on" 。执行指令“update-grub” 使修改生效。
root@pve55:~# update-grub
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-4.15.17-1-pve
Found initrd image: /boot/initrd.img-4.15.17-1-pve
Found memtest86+ image: /boot/memtest86+.bin
Found memtest86+ multiboot image: /boot/memtest86+_multiboot.bin
Adding boot menu entry for EFI firmware configuration
done
为检验其效果,用一下指令验证其有效性。
root@pve55:~# dmesg | grep -e DMAR -e IOMMU
[ 0.000000] ACPI: DMAR 0x00000000C88CAD70 0000B8 (v01 INTEL HSW 00000001 INTL 00000001)
[ 0.000000] DMAR: Host address width 39
[ 0.000000] DMAR: DRHD base: 0x000000fed90000 flags: 0x0
[ 0.000000] DMAR: dmar0: reg_base_addr fed90000 ver 1:0 cap c0000020660462 ecap f0101a
[ 0.000000] DMAR: DRHD base: 0x000000fed91000 flags: 0x1
[ 0.000000] DMAR: dmar1: reg_base_addr fed91000 ver 1:0 cap d2008020660462 ecap f010da
[ 0.000000] DMAR: RMRR base: 0x000000c883b000 end: 0x000000c8847fff
[ 0.000000] DMAR: RMRR base: 0x000000cb000000 end: 0x000000cf1fffff
[ 0.000000] DMAR-IR: IOAPIC id 8 under DRHD base 0xfed91000 IOMMU 1
[ 0.000000] DMAR-IR: HPET id 0 under DRHD base 0xfed91000
[ 0.000000] DMAR-IR: Queued invalidation will be enabled to support x2apic and Intr-remapping.
[ 0.000000] DMAR-IR: Enabled IRQ remapping in x2apic mode
如果执行“dmesg | grep -e DMAR -e IOMMU”没有输出,则表明存在问题。极有可能是bios设置的问题,需要启动cpu的vt-x支持。对于amd类型的cpu,/etc/default/grub文件对于修改为“GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on”。该项目还支持几个值,可根据情况增加。
新增模块。修改文件/etc/modules,加入如下的行(默认为空):
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
IOMMU隔离校验。执行指令 “find /sys/kernel/iommu_groups/ -type l”,有输出则表示正常
root@pve55:~# find /sys/kernel/iommu_groups/ -type l
/sys/kernel/iommu_groups/7/devices/0000:00:1b.0
/sys/kernel/iommu_groups/5/devices/0000:00:16.0
/sys/kernel/iommu_groups/13/devices/0000:03:00.0
/sys/kernel/iommu_groups/3/devices/0000:00:03.0
/sys/kernel/iommu_groups/11/devices/0000:00:1d.0
/sys/kernel/iommu_groups/1/devices/0000:01:00.1