Windows宿主机实战:基于VMware与CentOS7构建OpenStack私有云实验环境
1. 环境准备从零搭建实验平台在Windows系统上构建OpenStack私有云实验环境就像在自家后院搭建一个小型数据中心。我去年第一次尝试时花了整整三天时间踩坑现在把最稳妥的配置方案分享给你。这套方案在我的联想小新Pro13i5-1135G7/16GB内存/512GB SSD上实测流畅运行建议你的电脑至少满足CPU支持虚拟化的Intel VT-x/AMD-V技术任务管理器-性能选项卡可查看内存16GB起步控制器节点8GB计算节点4GB宿主机预留存储SSD剩余空间100GB以上系统盘镜像存储注意VMware Workstation Pro 17对Windows 11的兼容性最好如果遇到蓝屏问题建议关闭Windows Defender的内存完整性功能安装VMware时有个隐藏技巧勾选增强型键盘驱动程序能显著提升虚拟机键盘响应速度。我习惯把安装路径改为D:\VMware避免C盘空间被大量占用。安装完成后务必在编辑-首选项中把工作区和虚拟机默认路径都改到非系统盘。2. CentOS7虚拟机部署实战2.1 镜像获取的三种姿势官方镜像下载慢得像蜗牛试试这些方法阿里云镜像站https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/下载CentOS-7-x86_64-DVD-2009.iso清华大学镜像源替换URL中的aliyun为tuna.tsinghua.edu.cn速度更快离线传输用手机4G网络下载后通过数据线传输实测比办公室WiFi快3倍我最近发现个宝藏工具Motrix下载器开源免费搭配镜像站链接能跑满带宽。下载完成后一定要校验SHA256曾经我就因为镜像损坏导致安装失败certutil -hashfile CentOS-7-x86_64-DVD-2009.iso SHA2562.2 虚拟机创建的关键参数点击新建虚拟机时这些设置决定后续成败硬件兼容性选择Workstation 16.x兼容性最广固件类型BIOS避免UEFI带来的grub引导问题磁盘配置控制器节点系统盘40GB精简置备 100GB块存储计算节点系统盘40GB 200GB额外存储网络适配器两个都选仅主机模式VMnet1和VMnet2内存分配有个经验公式宿主机内存 - 4GB 虚拟机可用内存。我的16GB笔记本会给controller分配6GBcompute分配4GB剩下6GB给Windows系统。3. 系统配置的魔鬼细节3.1 网络配置的坑我帮你踩过了安装完CentOS7后第一件事就是配置双网卡。ens33通常对应第一个网卡但有时会变成ens37这种随机命名。用这个命令查看实际网卡名称nmcli device status修改网络配置时这几个参数必须核对BOOTPROTOstatic ONBOOTyes IPADDR192.168.187.10 # controller节点 # 或 IPADDR192.168.187.20 # compute节点 NETMASK255.255.255.0 GATEWAY192.168.187.1血泪教训VMnet1和VMnet2的子网地址要在VMware的虚拟网络编辑器中确认如果显示192.168.10.0那么虚拟机IP就要改成192.168.10.x段3.2 系统优化四件套关闭SELinuxsetenforce 0 sed -i s/SELINUXenforcing/SELINUXdisabled/g /etc/selinux/config防火墙策略systemctl stop firewalld systemctl disable firewalld时间同步yum install chrony -y systemctl start chronyd systemctl enable chronydHosts文件两台机器都要配置192.168.187.10 controller 192.168.187.20 compute4. OpenStack部署全流程解析4.1 基础服务搭建先配置本地yum源比在线安装快10倍mkdir -p /opt/{centos,iaas} mount -o loop CentOS-7-x86_64-DVD-2009.iso /mnt/ cp -rvf /mnt/* /opt/centos/ umount /mnt创建本地repo文件cat /etc/yum.repos.d/local.repo EOF [local] namelocal baseurlfile:///opt/centos gpgcheck0 enabled1 EOF4.2 核心组件安装在controller节点执行iaas-install-mysql.sh iaas-install-keystone.sh iaas-install-glance.sh遇到报错Error: Package: openstack-keystone-13.0.0-1.el7.noarch时先执行yum install python-openstackclient -ycompute节点需要特别注意# 修改nova配置文件 vi /etc/nova/nova.conf # 找到[neutron]部分添加 url http://controller:9696 auth_url http://controller:353575. 运维实战技巧5.1 常见故障排查Dashboard无法访问检查httpd服务状态systemctl status httpd查看防火墙规则iptables -L -n验证SELinux状态getenforce虚拟机启动失败# 查看nova日志 tail -f /var/log/nova/nova-compute.log # 检查libvirt状态 systemctl status libvirtd5.2 性能优化方案QEMU加速yum install qemu-kvm-ev -y内存气球技术 在VMware虚拟机设置中启用内存气球驱动程序磁盘IO优化echo vm.dirty_ratio 10 /etc/sysctl.conf echo vm.dirty_background_ratio 5 /etc/sysctl.conf sysctl -p这套环境我反复搭建过二十多次最稳定的组合是VMware 17.0.2 CentOS 7.9 OpenStack Train版本。记得在controller节点上定期执行nova-manage service list检查服务状态compute节点容易出现XXX down的情况通常重启对应服务即可恢复。