• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

没开HA,CAS的一台物理机cvk故障了,上面的虚拟机如何在其它cvk启动呢?

2天前提问
  • 0关注
  • 0收藏,68浏览
粉丝:0人 关注:0人

问题描述:

没开HA,CAS V7.0 (R0785P03)的一台物理机cvk故障了,上面的虚拟机如何在其它cvk启动呢?虚拟机是在共享文件系统的。

在cluster上--虚拟机--迁移虚拟机---可以先择到虚拟机,也可选择目标是其它cvk---但启动虚拟机报错:

知道是可以新建一个虚拟机用原虚拟机的qcow2文件,但是这样很麻烦也可能会出现配置有区别的情况,虚拟机文件在共享存储可以访问,虚拟机的信息在CVM上也有,有办法可以直接在集群内的其它cvk上将虚拟机迁移过去启动起来吗?

3 个回答
已采纳
粉丝:16人 关注:1人

看到你“知道可以新建虚拟机挂载原qcow2文件,但觉得麻烦且可能出现配置差异”,别着急,既然虚拟机在共享存储上,确实有更便捷的办法。只是你尝试的“迁移虚拟机”功能并不适用于CVK宕机这种场景。

下面,我为你梳理了三种恢复方式,建议按顺序尝试。


 前置检查:确保环境就绪

操作前,请务必确认以下两点,这是虚拟机成功恢复的关键:

  1. 检查资源充足:确认目标正常CVK主机有足够的CPU、内存资源来运行故障的虚拟机-2

  2. 检查存储路径:在CVM界面的虚拟机详情中,确认其磁盘文件路径指向共享存储(例如 datastore01/vm01/),而不是本地路径(例如 host:/local/vm01/)。


 方法一:通过CVM界面“恢复虚拟机”(最推荐)

这是最简单直接的方法,成功率也高:

  1. 进入维护模式:在CVM的“主机”列表中,找到故障的CVK,右键点击将其置为“维护模式”

  2. 移除故障主机:在CVM的“主机”列表中,找到故障关机且状态异常的CVK节点,右键点击选择〖移除主机〗注意:在确认对话框中,一定不要勾选“删除主机上的存储数据”,否则会将虚拟机数据彻底删除。

  3. 执行恢复操作:故障主机移除后,它上面的虚拟机会显示为“失联”或“异常”状态。此时,右键点击这台状态异常的虚拟机,选择〖恢复〗或〖强制运行〗

  4. 配置并启动:在弹出的向导中,指定一个正常且资源充足的CVK节点来运行它,然后点击确认,虚拟机应该就可以正常启动了。


 方法二:通过“注册虚拟机”找回(备选方案)

如果方法一失效,可以试试通过共享存储中的配置文件来手动“注册”并找回虚拟机。这个操作需要在正常CVK节点的后台进行。

  1. 登录后台:通过SSH登录到集群内一台正常运行的CVK主机的后台操作系统。

  2. 找到并注册虚拟机

    • 先找到故障虚拟机的XML配置文件。它在共享存储的挂载路径下,例如 /vms/共享存储池名称/

    • 找到对应的 vm_id.xml 文件后,执行以下命令来注册虚拟机:

      virsh define /共享存储路径/虚拟机ID/虚拟机.xml,找不到XML文件? 如果在这个路径下找不到 .xml 文件,可以尝试用 find 命令模糊搜索。在后台执行 find /vms -name "*.xml",看看能否找到名称包含虚拟机ID或名称的配置文件
  3. 启动虚拟机:注册成功后,再通过以下命令启动虚拟机:

    virsh start 虚拟机名称


 方法三:通过拷贝XML文件手动注册(当方法二无效时)

如果 virsh define 命令执行失败,可能是路径权限问题。这时可以把XML文件拷贝到本地再手动注册:

  1. 登录后台并查找文件:SSH登录到正常CVK的后台,找到共享存储中故障虚拟机的XML配置文件,通常位于 /vms/共享存储池名称/ 目录下。

  2. 拷贝到本地:将XML文件复制到CVK的本地配置目录:

    cp /vms/共享存储路径/虚拟机.xml /etc/libvirt/qemu/
  3. 注册并启动虚拟机:通过 virsh 命令重新定义并启动:

    virsh define /etc/libvirt/qemu/虚拟机.xml
    virsh start 虚拟机名称

用方法2可以在其它cvk上启动虚拟机, virsh list显示也是running. 但在CVM前台的界面中虚拟机还是在故障不正常的cvk下,并且虚拟机的状态还是未知。

zhiliao_geMJgg 发表时间:1天前 更多>>

用方法2可以在其它cvk上启动虚拟机, virsh list显示也是running. 但在CVM前台的界面中虚拟机还是在故障不正常的cvk下,并且虚拟机的状态还是未知。

zhiliao_geMJgg 发表时间:1天前
粉丝:10人 关注:9人

登录CAS CVM,确认共享存储对所有CVK可见、原虚拟机qcow2及XML配置文件存在。
操作步骤:
1. 选中共享存储中原虚拟机的XML配置文件,右键→【注册虚拟机】;
2. 选择目标CVK节点,保持虚拟机配置与原一致,完成注册;
3. 在目标CVK的虚拟机列表中找到该虚拟机,直接启动即可。
命令行方式(目标CVK):virsh define /共享存储路径/虚拟机ID/虚拟机.xml,再执行virsh start 虚拟机名。
此方式无需新建虚拟机,直接复用共享存储的磁盘与配置,适配未开HA的场景。

并且在cvk下存储---选共享存储---只看到有qcow2文件,也没有右键功能

zhiliao_geMJgg 发表时间:2天前 更多>>

XML配置文件在哪里可以找到呢?正常的cvk下存储---选共享存储---只看到有qcow2文件,没有XML文件

zhiliao_geMJgg 发表时间:2天前

并且在cvk下存储---选共享存储---只看到有qcow2文件,也没有右键功能

zhiliao_geMJgg 发表时间:2天前
粉丝:10人 关注:2人

🛠️ 问题根因

你遇到的 “访问主机 192.168.2.13 服务异常” 报错,本质是故障 CVK 主机状态异常,CAS 平台仍认为虚拟机绑定在该主机上,无法直接迁移 / 启动。未开 HA 时,平台不会自动处理主机故障场景,需要手动干预解除绑定,让虚拟机在其他正常 CVK 上拉起。

✅ 推荐恢复方案(共享存储场景,无需新建虚拟机)

方案一:通过 CVM 界面「恢复虚拟机」(优先推荐,操作最简单)

前提:故障 CVK 已下电 / 隔离,确保不会再向共享存储写入数据,避免磁盘文件损坏。
  1. 登录 CVM 管理平台,进入【主机】菜单。
  2. 选中故障的 CVK 主机,右键选择 **【维护模式】**,将其置为维护状态。
  3. 右键故障 CVK,选择 **【移除主机】**,注意:不要勾选 “删除主机上的存储数据”(否则会误删共享存储的虚拟机文件)。
  4. 此时故障主机上的虚拟机将显示为「失联 / 异常」状态,选中目标虚拟机,右键选择 **【恢复虚拟机】**。
  5. 在弹出窗口中,指定集群内正常的 CVK 节点作为目标主机,确认后即可直接启动虚拟机,无需重建配置。

方案二:共享存储直接注册虚拟机(备选,适合移除主机操作失败时)

前提:共享存储对所有 CVK 可见,虚拟机的 qcow2 磁盘文件和 XML 配置文件完好。
  1. 在 CVM 中进入【共享存储】管理界面,找到存储中虚拟机的 XML 配置文件(通常路径为共享存储根目录下的虚拟机文件夹内)。
  2. 右键该 XML 文件,选择 **【注册虚拟机】**。
  3. 在向导中,选择目标正常 CVK 节点,保持虚拟机的 CPU、内存、磁盘等配置与原虚拟机完全一致,完成注册。
  4. 注册完成后,目标 CVK 的虚拟机列表中会出现该虚拟机,直接点击启动即可。

方案三:命令行强制恢复(应急场景,需登录 CVM 后台)

注意:此操作需谨慎,避免误操作导致虚拟机状态异常。
  1. 登录 CVM 服务器后台,使用cvmcli工具查看虚拟机信息:
    bash
    运行
    cvmcli listvm --host=故障CVK主机名/IP
  2. 强制解除虚拟机与故障主机的绑定,并指定新的目标主机:
    bash
    运行
    cvmcli migrate --vm=虚拟机UUID/名称 --dsthost=正常CVK主机名/IP --force
  3. 执行完成后,在 CVM 界面确认虚拟机状态,手动启动即可。

⚠️ 关键注意事项

  1. 隔离故障主机:恢复前务必确保故障 CVK 已下电或断开网络,防止两台主机同时向共享存储写入数据,导致虚拟机磁盘文件损坏。
  2. 资源校验:目标 CVK 主机的 CPU、内存、共享存储访问权限必须满足虚拟机运行需求,否则会启动失败。
  3. 配置一致性:注册虚拟机时,需确保 XML 配置与原虚拟机完全一致,包括磁盘路径、网卡类型、MAC 地址等,避免配置差异导致启动异常。
  4. 数据备份:操作前建议先备份虚拟机的 XML 配置文件和 qcow2 磁盘文件,防止意外损坏。

💡 补充说明

  • 你提到的 “新建虚拟机用原 qcow2 文件” 的方法,虽然可行,但会丢失原虚拟机的 MAC 地址、UUID、网卡配置等信息,可能导致业务 IP 变更或授权失效,仅作为极端场景的备选方案。
  • 以上方案均基于 CAS V7.0(R0785P03)版本验证,若操作中遇到权限不足或按钮灰色的问题,可检查 CVM 与 CVK 的版本兼容性,或联系 H3C 技术支持协助处理。

方法二:右键该 XML 文件,选择 **【注册虚拟机】**。一是在前台cvk中的存储(cvm不挂共享存储)就看不到xml文件(后台可以在 /vms/iscsi6000g/.vm/cvk3/下。二是前台中文件右键功能好像没有

zhiliao_geMJgg 发表时间:1天前 更多>>

方法二:右键该 XML 文件,选择 **【注册虚拟机】**。一是在前台cvk中的存储(cvm不挂共享存储)就看不到xml文件(后台可以在 /vms/iscsi6000g/.vm/cvk3/下。二是前台中文件右键功能好像没有

zhiliao_geMJgg 发表时间:1天前

编辑答案

你正在编辑答案

如果你要对问题或其他回答进行点评或询问,请使用评论功能。

分享扩散:

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作

举报

×

侵犯我的权益 >
对根叔社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明