镜像配置
- 镜像需要安装 qemu-agent,一般情况下 libvirtio 驱动包里面都带;
- 镜像上传到 openstack 中时,需要配置
hw_qemu_guest_agent
的属性为yes
,dashboard 可以从镜像元数据
添加,命令行--property hw_qemu_guest_agent=yes
- 默认情况下,linux 修改
root
密码,windows 修改Administrator
密码;如果需要修改指定用户名的密码,需要给镜像添加属性os_admin_user=<username>
# 为现有镜像添加属性
openstack image set --property hw_qemu_guest_agent=yes --property os_admin_user=centos <image-name>
# 上传镜像配置属性
openstack image create --public --file <file.raw> --property hw_qemu_guest_agent=yes --property os_admin_user=Administrator <image-name>
检查方法:openstack image show <image-name> | grep properities
修改密码方法
nova set-password <vm-name>
or
openstack server set --root-password <vm-name>
按提示输入 new pass,运行后无任何提示,表示修改成功。
可能出现的报错:
ERROR (Conflict): Failed to set admin password on xxx because error setting admin password (HTTP 409) (Request-ID: req-xxx)
这种情况说明当前虚机系统内没有对应的(默认)用户名,需要确认该主机的 os_admin_user 属性为系统内存在的用户ERROR (Conflict): QEMU guest agent is not enabled (HTTP 409) (Request-ID: req-xxx)
这种情况说明当前虚机 qemu-guest-agent 出错或虚机 hw_qemu_guest_agent 属性出错,检查并修改。
qemu-guest-agent 检查方法
-
确认当前虚机或其镜像属性正确
# 检查虚机属性 openstack server show <vm-name> # 检查虚机所属镜像的属性 openstack image show <image-name> | grep qemu
两者任一存在
hw_qemu_guest_agent='yes'
均可。 -
检查虚机所在计算节点,检查虚机 qemu-guest-agent 服务
- 登录虚机,检查虚机中 qemu-guest-agent 是否运行
- linux:
systemctl status qemu-guest-agent
,服务为启动状态 - windwos 打开服务,检查 qemu-guest-agent 服务是否运行且为自动启动
- linux:
- 登录虚机所在计算节点
回显信息有ps -ef | grep <vm-uuid> | grep qemu.guest_agent
chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0
说明正常。
- 登录虚机,检查虚机中 qemu-guest-agent 是否运行