简介这份资源是华为HCIP-Cloud Computing V4.0认证的FusionCompute实验指导手册面向准备参加该认证考试的学员以及需要系统掌握华为服务器虚拟化平台操作与运维的技术人员。内容围绕一个包含7个实验、分为四大部分的实训体系展开先在KVM嵌套虚拟化环境中完成从CNA到VRM的环境搭建再依次练习计算、存储与网络三类虚拟资源管理随后进入虚拟机发放与管理涉及Tools安装、模板封装、快照、规格调整、HA、热迁移与安全组配置最后以用户管理、管理数据备份和时间管理等日常运维实验收尾对理解FusionCompute架构与资源池管理较有帮助。资源包共1个文件为docx格式手册大小约10.53MB便于打印对照或按实验分节查阅。目前已有227人学习适合希望边做边学、补齐虚拟化实操短板的读者。1. 两节点起步这套实验手册真正值钱的是那张地址规划表多数人翻到 FusionCompute 实验手册的第一反应是找实验一 安装 CNA那一页然后照着截图一路点下去。我当初也是这么干的结果在添加主机这一步卡了四十分钟——不是步骤写错了而是手册第 6 页那张网络配置说明表被跳过了。这份 HCIP-Cloud Computing V4.0 配套的实验指导手册一共 7 个实验、四大块内容从环境搭建、计算存储网络三大资源池管理到虚拟机发放、模板封装、HA 与热迁移最后落到用户管理和数据备份这类日常运维。它面向的是要动手搭一套可验证虚拟化平台的人不是读一遍就完的概念书。而七个实验里真正决定成败的是开头那张写着 192.168.201.x 和 192.168.202.x 的地址表——管理平面和存储平面必须分开后面所有实验都建立在这个前提上。2. 环境搭建嵌套 KVM 里装 CNA 与 VRM 的六个关键选项手册明确写了这套实验依托 KVM 虚拟化嵌套环境实现这一句话背后藏着第一个门槛CNA 是直接装在裸金属上的它需要看到 CPU 的硬件虚拟化特性才能在自己的上面再跑虚拟机。如果你的实验环境本身就是一台物理机上的虚拟机宿主机不把 vmx/svm 透传下去CNA 装完能起来但一台虚拟机都开不出来报错还特别含糊。2.1 先确认嵌套虚拟化真的开了很多人以为在 BIOS 里开了 VT-x 就完事其实 KVM 默认是不把虚拟化指令集暴露给 guest 的需要显式打开 nested 参数。这个检查一定要在做任何安装之前完成装完再改就得重来。# 1. 确认物理 CPU 支持虚拟化返回值大于 0 才算支持 egrep -c (vmx|svm) /proc/cpuinfo # 2. 查看当前嵌套开关Y 表示已开启N 表示关闭 cat /sys/module/kvm_intel/parameters/nested # 3. 若为 N写入模块参数并重载AMD 平台把 kvm_intel 换成 kvm_amd echo options kvm_intel nested1 /etc/modprobe.d/kvm-nested.conf modprobe -r kvm_intel modprobe kvm_intel # 4. 再次确认此时应输出 Y cat /sys/module/kvm_intel/parameters/nested这里的逻辑是第 3 步的配置文件保证重启后参数依然生效modprobe -r再modprobe是一次不停机的重载。参数说明上nested1是唯一需要关心的值如果你还要在 CNA 上开多台虚拟机宿主机给这台模拟 CNA分配的核心数建议不少于 8 个内存不少于 16GB因为 VRM 本身还要占掉一部分。硬盘尽量放在 SSD 上机械盘跑两三台虚拟机的并发安装会慢到怀疑人生。提示CNA 的安装镜像对磁盘大小有下限要求给虚拟机配盘时不要卡着最小值给留出 20% 余量否则安装程序会直接拒绝继续。2.2 CNA 安装时那几个不能随手填的框CNA 安装过程是图形化向导看起来很简单但有四个地方一旦填错后面全是连锁反应。手册给的规划是这样的网元管理 IP存储 IP存储 VLAN说明CNA01192.168.201.101192.168.202.101202第一台计算节点CNA02192.168.201.102192.168.202.102202第二台计算节点VRM192.168.201.100192.168.201.11 / 192.168.202.112201 / 202双平面各一个地址四个关键选项分别是主机名、管理口 IP 与掩码、管理口 VLAN、root 密码。主机名建议和规划表一字不差地对应比如CNA01因为后面添加主机、看告警、做迁移全靠这个名字定位管理口 VLAN 如果实验交换机是 access 口就留空是 trunk 口就必须填对填错的直接表现是安装完成后 ping 不通网关。root 密码在两台 CNA 上保持一致会更省事因为添加主机时要逐个输入。安装完成后的第一件事不是打开浏览器而是从你的操作机 ssh 上去做一次自检# 登录 CNA01确认系统起来了 ssh root192.168.201.101 # 查看两个平面的地址是否都正确落位 ip -br addr # 确认版本信息排查后续功能差异 cat /etc/virtualization/version 2/dev/null || rpm -qa | grep -i cna # 从 CNA01 探测 CNA02 和 VRM 规划地址确认管理平面互通 ping -c 4 192.168.201.102 ping -c 4 192.168.201.100ip -br addr这个命令比ifconfig直观一屏就能看出哪个网口拿了 201 段、哪个拿了 202 段。如果发现存储口没拿到地址别急着往下走先回去查 VLAN 和交换机端口配置——第 3 章的端口绑定会依赖这个口此时不通后面一定翻车。2.3 VRM 安装它是虚拟机不是裸机软件新手最容易误解的一点VRM 不是装在物理机上的服务它是一个虚拟机通过 CNA 的界面挂载 VRM 镜像来部署。所以顺序必须是先 CNA 后 VRM而且 VRM 需要两块盘——系统盘和数据盘规划时别只给一块。VRM 安装过程中要填的地址比 CNA 多因为它有管理和存储两个平面。地址按上表填网关填管理平面的网关。安装完成后等待几分钟用浏览器访问https://192.168.201.100:84438443 是 FusionCompute 管理界面的固定端口别拿 443 去试。命令行侧可以先用 curl 探一下服务是否已经起来# -k 跳过自签证书校验-I 只看响应头能返回 200/302 就说明 Web 服务活了 curl -k -I https://192.168.201.100:8443 # 顺便确认 VRM 与两台 CNA 的时间偏差超过几分钟会引发证书和任务异常 for h in 192.168.201.101 192.168.201.102; do ssh root$h date %Y-%m-%d %H:%M:%S done date %Y-%m-%d %H:%M:%S时间同步这条经常被忽略但它会以非常诡异的方式表现出来登录界面能开点任何操作都提示会话超时或者干脆返回 502。血泪经验是VRM 装完第一件事就对着 CNA 校时别等到做实验五才发现。3. 计算与存储资源池集群、主机和 iSCSI 端口绑定的先后顺序资源池管理这块手册拆成了三个实验计算、存储、网络。实际动手时它们的顺序不能随意调换——先建集群、再加主机、然后配存储接口、最后才是存储资源和数据存储。这个顺序不是排版习惯而是因为存储接口是挂在主机上的主机没加进来你连配接口的入口都找不到。3.1 集群与主机为什么不能跳过集群直接加主机FusionCompute 里主机必须归属某个集群集群才是承载 HA、DRS 这些策略的最小单位。所以第一步永远是创建集群命名建议按业务或机房维度来比如Cluster-Prod、Cluster-Test两台 CNA 都加进同一个集群。添加主机时输入的是 CNA 的管理 IP 和 root 密码界面上会显示连接状态。如果一直转圈然后失败按这个顺序排查管理平面能不能 ping 通、root 密码在 CNA 上有没有被改过、两边的系统时间差多少、管理口的防火墙有没有拦。这套实验环境里最常见的是密码问题因为有人在装 CNA 时随手敲了个复杂密码装完就忘了。集群建好之后有一页策略配置参数不多但每个都有代价策略项实验环境建议说明HA开启主机故障后自动重启虚拟机前提是有共享存储和预留资源DRS开启模式选手动自动模式会在你不知情的时候搬虚拟机排查问题时很干扰电源管理关闭实验环境没有 BMC 对接开了只会报错主机故障响应重启虚拟机与 HA 配套不选这个 HA 等于白开准入控制按百分比预留预留 10%~20%防止 HA 切换时资源不够注意HA 的前提是虚拟机的磁盘在共享存储上。如果虚拟机用的是本地盘HA 开了也不会生效故障时虚拟机直接失联这一点在做实验六的时候会体现得非常明显。3.2 iSCSI 端口绑定整个手册里最容易静默失败的一步存储实验的第一段是存储接口配置包含三个动作修改主机 iSCSI 启动器名、配置端口绑定、添加存储接口。这三步任何一步做错最后的症状都一样——扫描不到 LUN。这就是它烦人的地方你没法从结果倒推是哪一步错了。先看启动器名。每台 CNA 出厂会生成一个默认的 IQN 名字形如iqn.2008-11.com.example:cna01如果不改两台机器的名字可能撞车存储侧做白名单时会互相覆盖。改完之后要带着这个名字去存储侧登记否则存储根本不认你。# 在 CNA 上查看当前 iSCSI 启动器名 cat /etc/iscsi/initiatorname.iscsi # 查看存储平面的网口是否已就位对应 192.168.202.x ip -br addr show | grep 192.168.202 # 端口绑定完成后确认 bond 的工作状态与双口是否都 up cat /proc/net/bonding/bond1第二段命令的用意是确认存储平面的物理口真的拿到了地址第三段是确认绑定关系成立。绑定模式通常选主备也就是一个口工作一个口待命存储侧如果是堆叠或者支持链路聚合也可以选 LACP但两边必须一致一边主备一边聚合是典型的看起来起来了其实不通。3.3 添加 IP-SAN 与扫描设备LUN 不会自己冒出来添加存储资源的参数不多但每一项都要和存储侧对齐参数值说明存储类型IP-SAN走 iSCSI 协议存储设备 IP192.168.202.200存储的业务口地址不是管理口端口3260iSCSI 默认端口改过的话要同步CHAP 认证按存储侧配置开了就必须填对应用户和密码填完之后点扫描存储设备这一步是在向存储发起 iSCSI 登录并枚举可用 LUN。扫描成功会列出 LUN 列表此时还没结束还要再添加数据存储把 LUN 格式化成 FusionCompute 能识别的存储单元虚拟机才能真正落在上面。扫描不到 LUN 的时候别在界面上反复点直接上命令行定位# 从 CNA 测试到存储 3260 端口的连通性不通就是网络或 VLAN 问题 nc -vz 192.168.202.200 3260 # 查看当前 iSCSI 会话能不能看到 target 名称 iscsiadm -m session -P 3 | grep -i target\|disk # 手动发起 discovery验证存储是否响应 iscsiadm -m discovery -t st -p 192.168.202.200:3260nc通但iscsiadm没会话八成是启动器名没在存储侧加白名单nc都不通回去看端口绑定和存储 VLAN。这个二分法能省掉大量瞎猜时间。3.4 精简磁盘容量可以超配但别把超配当免费实验里会建一块普通精简磁盘精简的意思是先分配逻辑容量实际空间按写入量增长。手动创建一个 1TB 的精简盘在只有 500GB 的数据存储上也能建成功因为此时只占了几 MB。问题出在写满的那一天——虚拟机磁盘写爆整个数据存储上的所有虚拟机一起受影响。实操上的经验值是超配比控制在 1.5 倍以内实验环境随便玩但你要知道这个数字在生产的含义。建盘时还有一个选项是厚置备一上来就把空间占满性能更稳定但没法超配。做实验验证功能用精简做性能对比用厚置备这个区分在做实验六的规格调整时很有用。4. 网络与虚拟机发放从 VLAN 池到模板封装的完整链路网络这块手册只给了四个小节创建分布式交换机、删除、添加上行链路、添加 VLAN 池、添加端口组。步骤看着少但顺序是死的交换机 → 上行链路 → VLAN 池 → 端口组。颠倒任何一步界面上对应的按钮就是灰的你还会以为是权限问题。4.1 分布式交换机的三个层次分布式交换机和物理交换机是对应关系上行链路就是它连到物理交换机的那根线。创建交换机时给它起个能看懂的名字比如DVS-Prod然后添加上行链路把 CNA 上真正的物理网口挂上去。两台 CNA 各挂一个口这样虚拟机跨主机迁移时网络配置能跟着走。VLAN 池是一个容易被当成可选步骤的东西其实它是端口组的前置条件之一。规划上按手册的地址表来端口组名VLAN ID用途网段pg-mgmt201管理平面192.168.201.0/24pg-storage202存储平面192.168.202.0/24pg-business203虚拟机业务10.10.203.0/24创建端口组时 VLAN ID 填错是最常见的失误而且它不会报错端口组照样建成功虚拟机照样能挂上去就是不通。这时候不要怀疑 FusionCompute去虚拟机里做一次带 VLAN 标签的验证# 在 Linux 虚拟机内创建带 VLAN 203 标签的子接口 ip link add link eth0 name eth0.203 type vlan id 203 ip addr add 10.10.203.10/24 dev eth0.203 ip link set eth0.203 up # 探测同网段网关通则说明 VLAN 通路没问题 ping -c 3 10.10.203.1 # 查看收发包计数确认是否有去无回 ip -s link show eth0.203如果 ping 不通但ip -s link显示 TX 有计数、RX 为 0基本可以断定是物理交换机上联口没放通 203或者端口组 VLAN ID 和这里填的不一致。这个判断方法比在界面上翻配置快得多。4.2 创建虚拟机与 Tools没有 Tools 的虚拟机是半残手册的虚拟机发放实验分了 Windows 和 CentOS 两个场景Windows 靠 VNC 装系统CentOS 用模板导入。两个场景的共同点是装完系统立刻装 Tools。Tools 提供的是 virtio 驱动、网卡驱动、气球驱动和心跳缺了它虚拟机的磁盘和网络性能会掉一个档次界面上也看不到内存和 CPU 的真实使用率。CentOS 装 Tools 有个前置条件很多人卡在这里Tools 安装程序要现场编译内核模块所以必须先把编译环境装好而且kernel-devel的版本必须和uname -r完全一致差一个小版本号都会编译失败。# 先装编译依赖kernel-devel 用 uname -r 锁定版本避免装成新版 yum -y install gcc make perl kernel-devel-$(uname -r) # 确认内核头文件目录存在不存在说明版本没对上 ls -d /usr/src/kernels/$(uname -r) # 挂载 Tools 光盘Tools 一般挂在虚拟光驱里 mkdir -p /mnt/tools mount /dev/sr0 /mnt/tools cd /mnt/tools ./install.sh安装脚本跑完后会提示重启重启前用lsmod | grep -i virtio看一眼驱动有没有加载上。如果kernel-devel那一步装的是新版内核的头文件ls -d会失败此时要么升级内核后重启要么用 yum 的历史版本功能把匹配的头文件装回来。这是我在 CentOS 场景里翻得最惨的一次车前后折腾了一个多小时。4.3 模板封装sysprep 与手工清理的分岔路模板这部分手册写得很细Windows 场景做模板导入、按模板部署、删除模板、制作模板、模板导出CentOS 场景走模板导入、按模板部署、Tools 安装、制作 Linux 模板。核心动作就一个——把一台配置好的虚拟机制成模板然后批量部署。但模板做不好的后果是灾难性的批量部署出来的虚拟机主机名一样、IP 一样、网卡顺序错乱。Windows 侧靠 sysprep 做 generalize把 SID 和计算机名清掉。Linux 侧没有 sysprep得手工清理而手册里的步骤只写了制作 Linux 模板具体清什么要自己补# 清理网卡持久化规则不清的话克隆出来的虚拟机网卡名会变成 eth1、eth2 rm -f /etc/udev/rules.d/70-persistent-net.rules # 清空 machine-id否则多台克隆机的 systemd 标识重复 truncate -s 0 /etc/machine-id # 清掉网络配置里的硬编码 IP 和 UUID rm -f /etc/sysconfig/network-scripts/ifcfg-eth0.bak # 清日志减小模板体积 rm -rf /var/log/* # 关机前卸载 Tools 光盘避免模板里绑着光驱 umount /mnt/toolsmachine-id这一条尤其关键systemd 系的系统用它做唯一标识重复会导致日志、DHCP 客户端行为异常。清理完之后关机在界面上执行制作模板模板导出成 OVF 格式再导入到另一套环境这套流程在两个场景里是通用的。5. 避坑与排查五条按「现象-原因-解决」记录的血泪账5.1 添加主机一直失败提示与主机通信异常现象输入 CNA 管理 IP 和密码后进度条走很久最后失败CNA 本身能 ping 通ssh 也能登。原因两个方向。一是管理平面在物理交换机上没放通对应 VLANICMP 能过但管理端口过不去二是 CNA 和 VRM 系统时间差超过容忍范围握手阶段被拒。解决先从操作机ssh root192.168.201.101确认不是网络问题再逐台比对date。时间差用 NTP 或者手工对齐对完重新添加主机。如果时间一致仍然失败检查物理交换机的 trunk 放通列表别只看 ping 的结果。5.2 扫描存储设备返回空列表现象添加 IP-SAN 存储时参数都填了点扫描存储设备没有任何 LUN 出现也没报错。原因按概率排序第一是 iSCSI 启动器名改了但存储侧没加白名单存储直接拒绝登录第二是端口绑定没生效存储平面实际走的是单口甚至不通第三是 CHAP 认证开了但密码填错。解决回到 CNA 上用iscsiadm -m discovery -t st -p 192.168.202.200:3260手动发现能列出 target 说明网络和白名单都没问题问题在 CHAP列不出来就查白名单和端口绑定。查绑定用cat /proc/net/bonding/bond1看两个网口是不是都 up。5.3 虚拟机能开但网络不通现象虚拟机正常启动系统里看网卡是 up 的就是 ping 不通网关同端口组的另一台虚拟机能通。原因最常见的是虚拟网卡类型选成了 e1000而系统里没装对应的驱动其次是端口组 VLAN ID 和虚拟机上配的标签不一致还有一种是虚拟机挂的端口组被误改。解决先在虚拟机里确认网卡型号lspci | grep -i ethernet看是 virtio 还是 e1000virtio 才对。再看端口组的 VLAN ID 和虚拟机上手工配的子接口是否一致。有条件的话在端口组对应的上行链路上抓包看报文到底有没有出去。5.4 热迁移失败提示资源不足或迁移超时现象手动发起热迁移任务卡在某个百分比然后失败虚拟机没受影响的继续跑着。原因热迁移要求虚拟机磁盘在共享存储上本地盘直接不支持另外两台主机的 CPU 特性不一致时内存状态没法兼容迁移还有一种情况是迁移网络没规划走管理平面导致带宽不够、超时。解决先确认虚拟机的磁盘位置在虚拟机详情里看存储是共享数据存储还是本地盘。CPU 特性不一致需要在集群维度开 EVC把两台主机的 CPU 基线拉到同一代。迁移网络这块规范做法是单独划一个 VLAN 专门跑迁移流量别和管理平面挤在一起。5.5 模板部署出来的虚拟机主机名和 IP 一样现象用模板批量部署三台虚拟机开机后三台的主机名完全相同IP 也冲突网络时通时不通。原因制作模板前没做封装。Windows 没跑 sysprepLinux 没清 machine-id 和网络配置模板里带着原来那台机器的身份信息。解决回炉重做模板。Windows 关机前执行sysprep /generalize /oobe /shutdownLinux 按 4.3 里那几条清理命令走一遍再关机。部署时如果是 Linux最好配合 cloud-init 注入主机名和 IP靠手工改在批量场景下不现实。6. 进阶验证HA 与热迁移能不能真跑通看这几个动作实验做到最后手册里的功能按钮你都会点了但点成功和真生效是两回事。HA 和热迁移这两个功能尤其如此界面上显示配置成功实际切换时可能一次都没成功过。我自己验证这两个功能有个固定套路分享出来可以直接抄。先做热迁移。找一台正在跑业务的虚拟机在它内部起一个持续 ping然后在界面上手动发起迁移同时观察丢包情况# 在虚拟机内持续探测网关每秒一次记录时间戳 while true; do date %T ping -c 1 -W 1 10.10.203.1 | tail -1 sleep 1 done预期结果是迁移过程中丢 1 到 3 个包时间窗口在几秒内之后就恢复。如果丢包持续十几秒甚至直接断流说明迁移走的是管理平面、带宽不够或者存储不是共享的、走了全量内存拷贝。这个数字比任何配置截图都有说服力。再做 HA。这个必须用拔网线级别的手段在界面上关主机是不算的。做法是在 CNA 上直接断电或者断掉管理网口然后盯着集群里那台虚拟机的状态变化。判断标准只有一条虚拟机会不会在另一台主机上重新起来起来之后业务能不能在几分钟内恢复。等待期间可以用一个脚本轮询状态比手动刷界面靠谱验证项观察点合格标准热迁移迁移期间丢包数1~3 个包几秒内恢复热迁移任务耗时同集群内一般 30 秒以内HA虚拟机重新拉起时间通常 1~3 分钟HA磁盘数据完整性重启后文件系统无损坏模板部署主机名与 IP每台唯一无冲突这里有个前提必须反复强调HA 生效依赖共享存储和资源预留。集群里如果没做准入控制故障时另一台主机剩余资源不够HA 会直接失败界面上只留一条不痛不痒的告警。所以做这个实验之前先把集群策略里的预留比例调出来看一眼。从那以后我每次拿到一份新的实验手册第一件事不是翻目录找第一步而是先把里面的地址规划表和参数表抄到一张纸上逐条对着自己的环境核一遍。这套 FusionCompute 的实验我按这个习惯跑了两轮第二轮几乎没有卡壳的地方因为所有会翻车的位置在第一轮都留下了记录。手册本身写得够细缺的从来不是步骤而是你对自己环境的那点确认。希望帮到你。本文还有配套的精品资源点击获取