ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

华为FusionCompute生产级配置实战:存储网络主机三链路调通指南

华为FusionCompute生产级配置实战:存储网络主机三链路调通指南 简介本资源是一份面向企业云平台运维工程师与虚拟化技术学习者的《华为FusionCompute配置笔记》实战指南聚焦FC平台核心配置场景与典型问题解决路径。内容覆盖FC-SAN存储对接含HBA卡WWN号查看与多路径配置、网络资源精细化管理主备/负荷分担网卡绑定、分布式交换机创建与上行链路配置、三类存储类型虚拟化/非虚拟化/裸设备映射的选型依据与实操差异、集群IMC策略启用条件、时钟同步与告警阈值设置、共享磁盘绑定及权限管理等关键模块兼具原理说明与界面操作指引。资源为单个PDF文件大小2.27MB结构清晰、图文结合适合作为日常运维速查手册或认证备考补充材料。目前已有828人学习下载内容源自一线实践知识点颗粒度细、场景真实可直接用于环境部署与故障排查参考。1. FusionCompute 配置笔记不是“装完就跑”的虚拟化平台而是要亲手调通存储、网络、主机三根筋的生产级底座很多人第一次打开 FusionCompute 管理界面点开“集群 → 添加主机”填完 IP 和密码看到主机状态变成“运行中”就以为配置完成了。结果第二天业务上线虚拟机启动失败、迁移卡在 95%、存储卷挂载超时——问题全出在安装后那几十分钟没做对的底层配置上。这份《华为 FusionCompute 配置笔记》不是安装向导的复刻它记录的是我在 7 个政企私有云项目里踩出来的硬核路径如何让 CNA 主机真正“认得清”存储 LUN、让 VRM 能稳稳接管跨网段的管理流量、让虚拟交换机 vSwitch 不在高并发时丢包、让模板克隆不因磁盘模式选错而集体只读。它面向的是已经拿到 ISO 镜像、手握物理服务器和光纤交换机的现场工程师不是刚下载完软件的初学者。如果你正被“主机离线”“存储未识别”“虚拟机无法获取 IP”反复折磨或者正在为等保三级中“虚拟化平台安全配置基线”做整改这篇笔记里的每一步命令、每个参数、每个检查点都来自真实机房的黑匣子日志和抓包分析。2. 从裸金属到可信主机CNA 节点部署与基础服务校准FusionCompute 的稳定起点不在 VRM而在每一台 CNAComputing Node Agent物理服务器。很多翻车源于把 CNA 当成普通 Linux 安装——它本质是定制化精简内核KVMVRM Agent 的融合体必须用官方 ISO 启动并走完整向导流程跳过任何“手动分区”或“联网安装”。2.1 使用 FusionCompute 6.5.1 ISO 完成 CNA 标准化部署含 RAID 与 BIOS 关键项华为 FusionCompute 对硬件兼容性极敏感尤其在存储链路上。我们坚持使用FusionCompute 6.5.1 U3Build 6.5.1.120版本截至 2024 年 Q3 最稳定商用版其 CNA ISO 内置 Avago/LSI RAID 驱动能直接识别华为 RH2288H V3/V5、RH5885H V3 等主流机型的 RAID 卡。提示BIOS 必须关闭 C-statesC1E/C6和 Intel VT-d若非 SR-IOV 场景原因C-states 会导致 CNA 在低负载时进入深度休眠VRM 心跳探测超时误判为主机离线VT-d 开启后部分老型号 RAID 卡驱动加载失败表现为“/dev/sdX 不存在”。安装过程关键操作如下全程通过 iBMC 远程控制台操作# 1. 启动 ISO 后在 GRUB 引导菜单按 e 编辑启动参数在 linux 行末尾追加 # biosdevname0 net.ifnames0 crashkernelauto consolettyS1,115200n8 # 强制传统网卡命名 eth0/eth1禁用 systemd 网络名启用串口调试 # 2. 进入图形安装向导后选择 Install FusionCompute CNA # 3. 分区方案必须选择 Use All Space自动创建 /boot、/、/var/log、/opt/fusioncompute 四个分区 # * 禁止手动创建 LVM 或加密分区 —— CNA 内核不支持 # 4. 网络配置为管理网口如 eth0分配静态 IP例192.168.10.11/24网关指向管理网关192.168.10.1 # * 注意此处 IP 是 CNA 自身管理地址不是虚拟机业务网安装完成后重启登录 CNA 控制台root / Huawei12#$验证核心服务# 检查 VRM Agent 连接状态必须显示 connected [rootcna-node ~]# service vrma status vrma (pid 1234) is running... Connected to VRM: 192.168.10.100 # 检查 KVM 模块加载无输出即失败 [rootcna-node ~]# lsmod | grep kvm kvm_intel 204800 0 kvm 655360 1 kvm_intel # 检查 RAID 卡识别以 LSI MegaRAID SAS 9361-8i 为例 [rootcna-node ~]# /opt/MegaRAID/MegaCli/MegaCli64 -AdpAllInfo -aALL | grep Product Name Product Name : LSI MegaRAID SAS 9361-8i参数说明biosdevname0禁用 BIOS 设备名如 ens3f0强制使用 eth0/eth1避免 VRM 识别网卡失败net.ifnames0关闭 systemd 网络设备命名规则确保/etc/sysconfig/network-scripts/ifcfg-eth0配置生效/opt/fusioncompute分区专用于存放虚拟机磁盘镜像vhd 文件必须独立于/否则系统升级可能清空数据。2.2 VRM 管理节点部署与高可用HA初始化VRMVirtual Resource Manager是 FusionCompute 的大脑单节点可测试但生产环境必须部署双机 HA。我们采用VRM 6.5.1 U3 外置 PostgreSQL 12.10华为定制版组合数据库不与 VRM 共机规避单点故障。部署前准备三台服务器建议最小配置VRM-A/VRM-B 各 16C32GDB 服务器 8C16G角色IP 地址用途VRM-A192.168.10.100主 VRM 节点安装 VRM ISOVRM-B192.168.10.101备 VRM 节点安装 VRM ISODB-Server192.168.10.200外置 PostgreSQL 数据库VRM 双机部署核心步骤在 VRM-A 上安装 VRM ISO安装向导中选择 “Primary Node”数据库类型选 “External PostgreSQL”输入 DB-Server 的 IP192.168.10.200、端口5432、数据库名fusioncompute、用户名fcuser、密码Huawei123在 VRM-B 上安装相同 ISO安装向导中选择 “Standby Node”不配置数据库仅指定主节点 IP192.168.10.100安装完成后登录 VRM-A 的 Web 界面https://192.168.10.100:8443进入 “系统 高可用性 配置 HA”点击 “启用 HA”系统自动同步配置至 VRM-B并建立心跳链路默认使用管理网口可通过ha_status命令验证# 在 VRM-A 执行需 root 权限 [rootvrm-a ~]# ha_status HA Status: ENABLED Local Node: vrm-a (192.168.10.100) Remote Node: vrm-b (192.168.10.101) Heartbeat Status: OK Replication Status: SYNCED关键参数解释Replication Status: SYNCED表示 VRM 配置库含主机、存储、网络拓扑已实时同步至备节点心跳检测间隔默认 3 秒超时阈值 10 秒不可修改——这是华为闭源 HA 模块的硬编码策略若显示SYNC FAILED90% 原因为 DB-Server 的 PostgreSQL 未开放pg_hba.conf中host fusioncompute fcuser 192.168.10.0/24 md5规则。3. 存储配置绕过“LUN 未识别”玄学直击多路径与存储池映射链路FusionCompute 中“存储未识别”是最高频报障点。现象是CNA 主机已添加但在 VRM 界面中“存储 添加存储资源”时扫描不到任何 LUN。这不是软件 Bug而是存储链路中某一层未打通。我们按“物理层 → 驱动层 → 多路径层 → FusionCompute 层”四阶排查法落地。3.1 光纤通道FC存储链路验证从 HBA 卡到 LUN 映射假设使用华为 OceanStor 5300 V5 存储CNA 服务器配双口 Emulex LPe16002 FC HBA 卡Step 1确认 HBA 卡被 CNA 内核识别# 在 CNA 主机执行root [rootcna-node ~]# lspci | grep -i fibre 04:00.0 Fibre Channel: Emulex Corporation Saturn-X: LightPulse Fibre Channel Host Adapter (rev 03) 04:00.1 Fibre Channel: Emulex Corporation Saturn-X: LightPulse Fibre Channel Host Adapter (rev 03) # 查看 HBA 卡 WWPN全球端口名用于存储侧 Zone 配置 [rootcna-node ~]# systool -c fc_host -v | grep port_name port_name 0x20000024ff3a1b8c port_name 0x20000024ff3a1b8dStep 2在存储侧完成 LUN 映射与 Zone 配置登录 OceanStor DeviceManagerhttps://192.168.20.10执行创建主机组Host Group添加 CNA 主机WWPN 填20000024ff3a1b8c和20000024ff3a1b8d创建 LUN例LUN ID 101容量 500GBRAID 5创建映射视图Mapping View将主机组 LUN 绑定关键动作在光纤交换机如华为 USG6600上配置 Zone将 CNA 的两个 WWPN 与存储控制器的 WWPN例500000e010000001划入同一 Zone并激活 Zone Set。注意Zone 必须包含 CNA 的两个 WWPN 和存储的两个控制器 WWPNA/B 控制器否则多路径失效Step 3CNA 主机侧多路径Multipath配置FusionCompute CNA 自带device-mapper-multipath但默认未启用。需手动配置# 编辑多路径配置文件 [rootcna-node ~]# vi /etc/multipath.conf # 在 defaults { } 块内添加 defaults { user_friendly_names yes find_multipaths yes path_grouping_policy multibus failback immediate } # 在 devices { } 块内添加 OceanStor 识别规则 devices { device { vendor HUAWEI product XSG1 path_grouping_policy group_by_prio features 1 queue_if_no_path hardware_handler 1 alua prio alua } } # 重启多路径服务 [rootcna-node ~]# systemctl restart multipathd [rootcna-node ~]# multipath -ll 360022a1100000000000000000000006c dm-0 HUAWEI,XSG1 size500G features1 queue_if_no_path hwhandler1 alua wprw |-- policyround-robin 0 prio50 statusactive | |- 4:0:0:101 sdb 8:16 active ready running | - 5:0:0:101 sdc 8:32 active ready running -- policyround-robin 0 prio10 statusenabled |- 4:0:1:101 sdd 8:48 active ready running - 5:0:1:101 sde 8:64 active ready running现象解读multipath -ll输出中出现dm-0设备且状态为active ready证明多路径链路已通。此时/dev/mapper/360022a1100000000000000000000006c即为 FusionCompute 可识别的存储设备。3.2 在 VRM 中添加存储资源SAN 存储池配置实操登录 VRM Web 界面https://192.168.10.100:8443→ “存储 存储资源 添加存储资源”参数值说明存储类型FC SAN不可选 iSCSIFC 场景必须选此项存储名称huawei-oceanstor-5300自定义建议含厂商型号存储描述生产存储池LUN101-LUN110记录实际 LUN 范围主机列表选中所有已添加的 CNA 主机必须全选否则部分主机无法访问该存储扫描方式手动扫描点击“扫描”后VRM 会向各 CNA 发送ls /dev/mapper/命令列出所有 multipath 设备成功标志扫描后列表中出现360022a1100000000000000000000006c勾选它点击“确定”。稍等 2 分钟该存储资源状态变为“在线”容量显示为 500GB。避坑为什么扫描不到 LUN现象扫描后列表为空或仅显示本地磁盘/dev/sda原因 1CNA 主机未执行systemctl restart multipathdmultipath -ll无输出原因 2存储侧 Zone 未激活fcinfo -p在 CNA 上查不到远程 WWPN原因 3VRM 与 CNA 时间不同步误差 5 分钟导致 SSL 证书校验失败VRM 无法下发扫描指令检查date命令输出。4. 网络配置虚拟交换机vSwitch与端口组的三层穿透设计FusionCompute 的网络模型常被误解为“画个逻辑图就行”。实际上虚拟交换机vSwitch的底层绑定、端口组 VLAN 设置、以及上行链路物理交换机配置三者必须严格对齐否则虚拟机 ping 不通网关是常态。我们以“管理网、业务网、存储网”三网分离架构为例给出可落地的配置矩阵。4.1 vSwitch 创建与上行链路绑定物理网口到虚拟交换机的硬连接在 VRM 界面 → “网络 分布式交换机 添加分布式交换机”参数值说明交换机名称dvs-management建议按用途命名避免 generic-dvs交换机类型标准交换机Standard Switch分布式交换机DVS需额外 License标准场景用标准交换机足够上行链路eth0必须填写 CNA 主机上实际存在的物理网口名eth0/eth1MTU1500若启用 jumbo frame此处需设为 9000且物理交换机端口必须同步配置关键动作为每个 CNA 主机单独绑定上行链路在“主机 主机列表 选中 CNA-A 配置 网络 vSwitch”中点击“编辑”将“上行链路”从eth0改为eth1若业务网走 eth1不能在 VRM 全局设置一个 vSwitch 绑定所有主机——每台 CNA 的物理网口规划可能不同。4.2 端口组Port Group配置VLAN 透传与虚拟机网络策略创建端口组是虚拟机获取 IP 的前提。以业务网为例VLAN 100参数值说明端口组名称pg-business-vlan100清晰标识 VLAN ID所属交换机dvs-business对应上一步创建的 vSwitchVLAN ID100必须与物理交换机接入端口的 PVID 一致广播抑制10%防止 ARP 泛洪冲击物理交换机MAC 地址更改拒绝安全基线要求防止虚拟机伪造 MAC物理交换机侧必须同步配置华为 S5735-S24P 为例# 进入接入端口连接 CNA eth1 的端口 HUAWEI system-view [HUAWEI] interface gigabitethernet 0/0/1 # 配置为 Trunk允许 VLAN 100 通过 [HUAWEI-GigabitEthernet0/0/1] port link-type trunk [HUAWEI-GigabitEthernet0/0/1] port trunk allow-pass vlan 100 # 关闭 STPvSwitch 已处理生成树 [HUAWEI-GigabitEthernet0/0/1] stp disable验证虚拟机网络连通性创建虚拟机网卡“网络”选择pg-business-vlan100启动后登录虚拟机执行ip addr show eth0确认获取到业务网段 IP如 192.168.100.10/24ping 192.168.100.1业务网关若通则证明 VLAN 透传成功tcpdump -i eth0 vlan 100抓包确认进出包均带 VLAN 100 Tag。提示若虚拟机获取不到 IP请立即检查 DHCP 服务器是否监听在 VLAN 100 接口而非物理网卡主接口4.3 管理网与存储网隔离为什么不能共用一个 vSwitch新手常将管理网192.168.10.0/24、业务网192.168.100.0/24、存储网192.168.200.0/24全塞进一个 vSwitch认为“省事”。这会导致严重后果管理流量与存储流量争抢带宽CNA 主机向 VRM 上报心跳、向存储写入镜像均走同一物理网口高负载时管理通道中断VRM 误判主机离线VLAN 混淆风险一个 vSwitch 下多个 Port Group 若 VLAN ID 配置错误虚拟机可能跨网段通信违反安全域划分排错困难tcpdump抓包时无法区分管理包与存储包。正确做法为每类流量创建独立 vSwitch 独立物理网口流量类型vSwitch 名称绑定物理口VLAN ID用途管理网dvs-managementeth0无Native VLANVRM 与 CNA 通信业务网dvs-businesseth1100虚拟机对外提供服务存储网dvs-storageeth2200CNA 与 OceanStor 间 SCSI 流量血泪经验某项目曾因 eth2 未绑定 dvs-storage导致存储网流量被迫走 eth0管理网VRM 频繁告警“主机响应超时”排查耗时 16 小时。最终在 CNA 上执行ethtool eth2发现其 Link 状态为 DOWN原因为物理交换机端口未开启。5. 避坑指南FusionCompute 配置中 5 个高频翻车点与硬核解法配置 FusionCompute 不是线性流程而是不断在“看似正常”和“突然崩塌”之间横跳。以下是我在交付现场记录的 5 个最痛踩坑点每一条都附带现象、根因和可立即执行的解决命令。5.1 现象主机状态为“维护中”无法退出维护模式原因VRM 数据库中该主机的host_state字段被异常置为maintaining且无对应维护任务在队列中。常见于强制关机后 VRM 未收到下线通知。解决# 登录 DB-Server进入 PostgreSQL [rootdb-server ~]# psql -U fcuser -d fusioncompute fusioncompute# UPDATE t_host SET host_statenormal WHERE host_ip192.168.10.11; fusioncompute# \q # 重启 VRM 服务使变更生效 [rootvrm-a ~]# service vrmd restart5.2 现象虚拟机克隆失败报错“磁盘格式不支持”原因源虚拟机磁盘为“精简置备Thin Provisioning”而目标存储池不支持 Thin或 VRM 版本低于 6.5.0旧版不支持 Thin 克隆。解决方案 A推荐在克隆前右键源虚拟机 → “更多操作 转换磁盘格式 转换为厚置备延迟置零”方案 B在 VRM “存储 存储资源”中选中目标存储池 → “配置 高级设置”勾选 “启用精简置备”需存储本身支持。5.3 现象添加主机时提示“VRM 与主机时间不同步”原因CNA 主机 NTP 未配置或与 VRM 时间差超过 5 分钟SSL 证书校验硬限制。解决# 在 CNA 主机执行root [rootcna-node ~]# echo server 192.168.10.100 iburst /etc/chrony.conf [rootcna-node ~]# systemctl restart chronyd [rootcna-node ~]# chronyc sources -v # 确认同步状态 [rootcna-node ~]# date -s $(curl -s http://192.168.10.100:8080/time) # 紧急手动校时5.4 现象虚拟机无法从 PXE 启动DHCP Offer 不可达原因vSwitch 的上行链路未启用“DHCP 中继”或物理交换机未配置 DHCP Snooping 信任端口。解决在物理交换机连接 CNA 的端口下执行[HUAWEI-GigabitEthernet0/0/1] dhcp snooping trusted [HUAWEI-GigabitEthernet0/0/1] dhcp relay server-ip 192.168.100.200 # DHCP 服务器 IP5.5 现象VRM Web 界面登录缓慢F12 查看 Network 面板大量 504 错误原因VRM-A 与 VRM-B 间 HA 心跳正常但数据库同步延迟过高导致 Web 请求等待超时。解决# 在 DB-Server 检查 PostgreSQL 复制延迟 [rootdb-server ~]# su - postgres $ psql -c SELECT client_addr, state, sync_state, sync_priority FROM pg_stat_replication; # 若 sync_state 为 async 且 replay_lsn 落后主库 10MB执行 $ psql -c SELECT pg_switch_wal(); # 重启 VRM 数据库连接池 [rootvrm-a ~]# service vrmd restart6. 进阶技巧用 Python 脚本批量校验 50 台 CNA 主机的存储与网络健康状态当管理规模超过 20 台 CNA 时人工登录每台主机执行multipath -ll、ip addr、ethtool eth0已不现实。我编写了一个轻量级 Python 脚本依赖 paramiko可一键并发扫描所有主机生成 HTML 报告。它不替代 Zabbix但能让你在巡检时 5 分钟内掌握全局健康水位。6.1 脚本核心逻辑与参数说明脚本fusioncheck.py从hosts.csv读取主机列表格式hostname,ip,username,password并发执行以下检查检查项命令成功标志失败影响SSH 连通性echo ok返回 ok主机宕机或防火墙拦截多路径状态multipath -ll | grep -c active ready≥ 2双路径存储单链路高风险网卡 UP 状态ip link show eth0 | grep state UP匹配成功管理网中断VRM 失联存储设备存在ls /dev/mapper/360022a11\* | wc -l≥ 1LUN 未映射或 multipath 未启脚本执行命令# 安装依赖 pip3 install paramiko jinja2 # 准备 hosts.csv示例 $ cat hosts.csv cna-web01,192.168.10.11,root,Huawei12#$ cna-app01,192.168.10.12,root,Huawei12#$ cna-db01,192.168.10.13,root,Huawei12#$ # 运行脚本-t 30 为超时秒数-p 10 为并发数 python3 fusioncheck.py -f hosts.csv -t 30 -p 10 # 输出 report.html用浏览器打开即可查看红绿灯状态6.2 关键代码片段与容错设计# fusioncheck.py 核心片段简化版 import paramiko, threading, queue, jinja2 def check_host(host_info): ip, user, pwd host_info[ip], host_info[user], host_info[pwd] result {hostname: host_info[hostname], ip: ip, status: UNKNOWN} try: # 建立 SSH 连接禁用密钥检查生产环境请改用 key ssh paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(ip, usernameuser, passwordpwd, timeout10) # 检查 multipath关键 stdin, stdout, stderr ssh.exec_command(multipath -ll 2/dev/null | grep -c active ready) mp_count int(stdout.read().decode().strip() or 0) result[multipath] OK if mp_count 2 else fFAIL ({mp_count}) # 检查网卡 stdin, stdout, stderr ssh.exec_command(ip link show eth0 2/dev/null | grep -c state UP) eth0_up int(stdout.read().decode().strip() or 0) result[eth0] UP if eth0_up 1 else DOWN ssh.close() result[status] HEALTHY except Exception as e: result[status] fERROR: {str(e)} return result # 并发执行使用线程池 def main(): hosts load_hosts_from_csv(args.file) results [] with concurrent.futures.ThreadPoolExecutor(max_workersargs.parallel) as executor: future_to_host {executor.submit(check_host, h): h for h in hosts} for future in concurrent.futures.as_completed(future_to_host): results.append(future.result()) # 生成 HTML 报告 template jinja2.Template(open(report.html.j2).read()) open(report.html, w).write(template.render(resultsresults))参数说明-p 10并发 10 台避免对 VRM 或存储造成压力multipath -ll 2/dev/null屏蔽警告信息只取关键行grep -c active ready统计 active 状态路径数双路径必须 ≥2若某台主机返回ERROR: Authentication failed说明密码错误或账号被锁需人工介入。6.3 我的运维习惯每周一凌晨 3 点自动执行健康扫描我把这个脚本加入 crontab每周一凌晨 3:00 自动运行并邮件发送报告# 编辑 crontab 0 3 * * 1 /usr/bin/python3 /opt/fusioncheck/fusioncheck.py -f /opt/fusioncheck/hosts.csv -p 5 /opt/fusioncheck/last.log 21 # 邮件发送使用 mailx 0 3 * * 1 /usr/bin/python3 /opt/fusioncheck/fusioncheck.py -f /opt/fusioncheck/hosts.csv -p 5 \ echo FusionCompute 健康报告已生成 | mailx -s 【自动】FusionCompute 周一健康检查 admincompany.com -A /opt/fusioncheck/report.html为什么是周一凌晨避开业务高峰不影响虚拟机性能周一早会前可快速定位周末可能发生的硬件故障如 HBA 卡掉线报告 HTML 文件保留 7 天形成趋势基线例如 multipath 路径数从 2 降到 1预示光纤链路老化。希望帮到你。本文还有配套的精品资源点击获取
返回列表