从VMware嵌套虚拟化到NFS共享存储:一份给运维新人的FusionCompute平台搭建避坑实录
刚接触云计算平台搭建的运维工程师,往往会被各种专业术语和复杂配置搞得晕头转向。华为FusionCompute作为企业级虚拟化平台,功能强大但入门门槛不低。本文将从一个运维新人的实操视角,分享在VMware嵌套虚拟化环境中搭建FusionCompute平台时可能遇到的典型问题及其解决方案。
1. 嵌套虚拟化环境准备
嵌套虚拟化是搭建FusionCompute实验环境的基础,但很多新手在这一步就会遇到各种问题。VMware Workstation默认并不开启嵌套虚拟化支持,需要手动配置。
首先检查主机CPU是否支持虚拟化技术。在Linux终端运行:
egrep -c '(vmx|svm)' /proc/cpuinfo如果返回值为0,说明CPU虚拟化支持未开启,需要进入BIOS设置启用Intel VT-x或AMD-V功能。
在VMware中启用嵌套虚拟化,需要修改虚拟机配置文件(.vmx):
vhv.enable = "TRUE" hypervisor.cpuid.v0 = "FALSE"注意:某些型号的CPU可能需要额外参数,如Intel的
vmx.allowNested=TRUE
常见问题排查:
- 错误现象:虚拟机启动时报"此主机不支持嵌套虚拟化"
- 检查BIOS中虚拟化选项是否开启
- 确认VMware版本支持嵌套虚拟化(Pro 15.5+)
- 性能问题:嵌套虚拟化会导致约20%的性能损失
- 为虚拟机分配足够资源(建议至少4核8GB内存)
- 关闭不必要的服务和进程
2. Ubuntu系统与KVM配置
选择Ubuntu作为宿主机系统时,KVM的配置直接影响后续FusionCompute的运行效果。以下是关键配置步骤:
安装KVM及相关组件:
sudo apt update sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager网络配置是新手最容易出错的地方。正确的网桥配置示例:
# /etc/netplan/01-netcfg.yaml network: version: 2 renderer: networkd ethernets: enp3s0: dhcp4: no bridges: br0: interfaces: [enp3s0] dhcp4: yes parameters: stp: false forward-delay: 0虚拟机网卡选择建议:
- e1000:兼容性最好,推荐用于实验环境
- virtio:性能最佳,但需要客户机驱动支持
- vmxnet3:高级功能支持,但配置复杂
3. NFS共享存储配置
FusionCompute需要共享存储才能实现完整功能,NFS是最常用的解决方案。以下是关键配置要点:
安装NFS服务器:
sudo apt install nfs-kernel-server配置共享目录权限:
sudo mkdir -p /nfs/share sudo chown nobody:nogroup /nfs/share sudo chmod 777 /nfs/share编辑/etc/exports文件:
/nfs/share *(rw,sync,no_subtree_check,no_root_squash)常见问题解决方案:
| 问题现象 | 可能原因 | 解决方法 |
|---|---|---|
| FC无法识别存储 | 防火墙阻止 | 开放2049端口 |
| 挂载超时 | 网络配置错误 | 检查路由和MTU设置 |
| 权限拒绝 | exports配置错误 | 检查no_root_squash设置 |
4. FusionCompute安装与配置
完成基础环境准备后,FusionCompute的安装相对简单,但仍需注意以下细节:
安装流程关键点:
- 确保系统时间准确(NTP同步)
- 磁盘分区建议:
- / 至少50GB
- /var 单独分区,建议100GB
- swap 大小为内存的1.5倍
- 网络配置:
- 管理网口建议千兆以上
- 避免使用DHCP分配管理IP
初始配置注意事项:
- 首次登录后立即修改默认密码
- 正确设置时区和NTP服务器
- 添加主机时选择正确的虚拟化类型(KVM)
5. 性能优化与监控
实验环境搭建完成后,还需要进行适当的优化:
内存优化参数:
# /etc/sysctl.conf vm.swappiness = 10 vm.dirty_ratio = 40 vm.dirty_background_ratio = 10存储性能测试方法:
# 测试IOPS fio --name=randwrite --ioengine=libaio --iodepth=32 --rw=randwrite --bs=4k --direct=1 --size=1G --numjobs=4 --runtime=60 --group_reporting监控建议:
- 使用Prometheus+Grafana监控平台
- 关键指标:CPU利用率、内存使用率、磁盘IO延迟
- 设置合理的告警阈值