首页/系统/信创系统运维速查/QEMU Guest Agent 状态自查
系统与安装65 条

QEMU Guest Agent 状态自查

KVM/信创超融合环境依赖 guest agent 与平台通信:确认服务、virtio 串口设备与握手状态,排查平台操作(关机、改密)不生效问题。

信创系统运维速查系统更新于 2026-10-13

guest agent 是平台与虚机之间的通道

在 KVM 及基于它的信创云平台、超融合环境里,虚拟机内部的 qemu-guest-agent 通过 virtio 串口设备与宿主机平台通信。平台侧的「优雅关机」「在线改密」「冻结文件系统做快照」等操作都依赖这条通道;agent 没就绪时,这些操作会失败、超时,或者被平台降级成硬关机。

基本信息

检查服务systemctl status qemu-guest-agent
设备文件/dev/virtio-ports/org.qemu.guest_agent.0
平台侧要求虚拟机配置中需有对应 channel 设备
常见依赖内核 virtio_console 模块与 qemu-guest-agent 包
权限要求root

典型使用场景

  • 平台侧发起优雅关机或重启失败、一直超时
  • 在线改密、在线调整配置在平台上不生效
  • 创建快照前需要冻结文件系统以保证一致性
  • 批量巡检确认所有虚机的 agent 是否就绪
  • 从其他平台迁移来的虚机补装 agent 后验证握手

自查命令

自查命令
systemctl status qemu-guest-agent --no-pager | head    # 服务是否 active
ls -l /dev/virtio-ports/ 2>/dev/null                   # virtio 串口设备是否存在
dmesg -T | grep -i virtio | head                       # 内核侧 virtio 设备注册情况
journalctl -u qemu-guest-agent --no-pager | tail -20   # agent 日志与握手记录
lsmod | grep virtio_console                            # 关键模块是否已加载
systemctl enable --now qemu-guest-agent                # 未启用时开启并设为开机自启
# 平台侧:确认虚拟机配置中存在 org.qemu.guest_agent.0 通道

状态逐项判读

检查项正常表现异常含义
服务状态active (running)inactive 表示 agent 未运行
串口设备存在 org.qemu.guest_agent.0不存在说明虚拟机缺 channel 配置
agent 日志能看到与平台的消息往来无日志说明通道没建立
平台侧显示显示已就绪未就绪则平台操作不可用
agent 未就绪时平台侧操作会失败或超时:排查顺序是先看虚机内的服务与设备,再看虚拟机的 channel 配置,最后才怀疑平台侧问题。
安全加固收紧 /dev/virtio-ports 权限后,agent 可能读不到设备:加固项调整时要把它纳入核查范围并复验平台操作是否仍可用。
批量巡检建议做成清单:逐台记录服务状态、串口设备是否存在、平台侧是否显示已就绪三项,任何一项不符就单独跟进,比逐台登录排查效率高很多。

易错点

  • 只装包不配 channel 设备:虚机内服务在跑但平台认不到,需要给虚拟机添加对应通道
  • 内核缺 virtio_console 模块:设备文件不会出现,先确认模块已加载
  • 安全加固收紧 /dev/virtio-ports 权限后不复验:平台操作又失效了
  • 从老平台迁来的虚机不验证直接上线:agent 版本或设备名不一致导致握手失败
  • 把平台操作失败一律归因于网络:这条通道走 virtio,不依赖虚机业务网络

数据来源与参考

  • QEMU Guest Agent 文档
  • 各超融合平台运维手册
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌