云计算
本文件由成都征天科技有限公司天极云团队原创出品,请注明出处。 征天科技致力于为企业和个人提供专业的云计算IaaS和PaaS层产品和服务。 官方网站地址:欢迎访问www.tjiyun.com。
本文档主要介绍了Qemu/KVM虚拟机硬件的热添加和收缩操作。
一.基础环境要求
1 .软件版本要求
操作系统: CentOS7或更高版本
QEMU版本: 2.4以上
2 .虚拟机启动参数要求
要使Qemu虚拟机执行热添加操作,必须在虚拟机启动命令中添加以下配置,打开虚拟机控制台功能,然后登录到虚拟机控制台以执行热添加和收缩操作:
-monitor telnet:127.0.0.1:10001、server和nowait
二. CPU热添加
1 .云主机启动命令
要使qmu虚拟机执行CPU热添加操作,必须在虚拟机启动命令中添加以下配置:
-smp 2,maxcpus=32
#表示此虚拟机初始使用2个核心的CPU,最多可添加32个核心
2.CPU热添加操作
通过运行以下命令将CPU热添加到虚拟机
)1)登录虚拟机控制台
# telnet 127.0.0.1 10001
)2)执行CPU热附加命令
( qemu ) cpu-add cpu-id
注: cpu-id是热附加处理器在系统中的id号,范围为1到31。 最大值取决于为虚拟机启动参数设置的最大CPUs值。 添加到同一虚拟机的cpu-id号不能相同。 否则会发生id冲突
)3)退出虚机控制台
退出qemu控制台。 在使用quit命令退出telnet终端之前,按ctrl ]键退出qemu控制台,并将提示符从( qemu )更改为telnet。 请注意,不会直接在qemu控制台上输入quit退出。 否则,当前虚拟机系统将被强制完全关闭。
3 .登录虚拟机系统,激活并验证新添加的CPU
)1)激活新添加的CPU
登录虚拟机操作系统,执行以下命令激活新添加的CPU : 这里以CentOS系统为例
# echo1/sys/devices/system/CPU/CPU-id/online
注: cpu-id是系统中热添加的CPU的id号,范围为1到31,最大值取决于在虚拟机启动参数中设置的最大CPU值。
CentOS7系统支持自动联机添加的CPU,因此不需要执行上述激活操作。
)2)验证CPU热添加操作是否成功
# cat /proc/interrupts
3 .添加内存热
1 .云主机启动命令
qmu虚拟机必须执行内存热添加操作,并在虚拟机启动命令中添加以下配置:
-m 2G,slots=32,maxmem=64G
#表示此虚拟机初始使用2G内存,最多可添加到64G内存中
2 .内存热添加操作
通过运行以下命令将Mem热添加到虚拟机
)1)登录虚拟机控制台
# telnet 127.0.0.1 10001
)2)执行热添加Mem命令
( qemu ) object_add memory-backend-ram,id=ram2,size=2G
( qemu ) device_add pc-dimm,id=dimm2,memdev=ram2
注: ram2是热附加内存的设备id号,范围为1到31,最大值取决于在虚拟机启动参数中设置的slots值。 添加到同一虚拟机的mem-id号不能相同。 否则会发生id冲突。 每块新添加的内存容量最好不要超过4G,目前最多支持5G的容量。
)3)退出虚机控制台
参考CPU部分完成控制台操作。
3 .登录虚拟机系统,启用并验证新添加的内存块
)1)激活新添加的内存块
登录到虚拟机的操作系统,然后运行以下命令激活新添加的内存块: 这里以CentOS系统为例。
a .查看系统中现有的内存块
# ll /sys/devices/system/memory/
b .插入新内存后,会看到多余的内存块
c .启用新添加的内存块
# echo online/sys/devices/system/memory/memory2/state
注: memory2是热加载到操作系统的内存编号。
CentOS7.2或更高版本的系统支持通过自动联机添加的内存加速,因此不需要执行上述激活操作。
)2)检查内存块热添加操作是否成功
# free -m
四.磁盘热添加和减少
1 .磁盘热添加操作
通过运行以下命令将磁盘热添加到虚拟机
)1)登录虚拟机控制台
# telnet 127.0.0.1 10001
)2)执行磁盘热添加命令
( qemu ) drive _ a dd0 file=/home/VM/VM disk/data disk 02,format=qcow2,id=drive-virtio0-disk-01,if=none
( qemu ) device_add virtio-blk-pci,scsi=on,drive=drive-virtio0-disk-01,id=disk-01
)3)运行散热磁盘命令
( qemu ) device_del disk-01
注:磁盘- 01是热添加/精简磁盘的设备id号,在执行操作时必须匹配。
)4)退出虚机控制台
参考CPU部分完成控制台操作。
3 .登录虚拟机系统验证磁盘操作
运行以下命令以验证是否成功添加或删除磁盘
# parted -l
5 .热添加和减少网卡
1 .网卡热添加操作
通过运行以下命令将NIC热添加到虚拟机
)1)登录虚拟机控制台
# telnet 127.0.0.1 10001
)2)对网卡执行热添加命令
( qemu ) netdev_add tap,ifname=tap-7e03bc209a,id=hostnet-7e03bc209a,vnet_hdr=on,vhost=on,script=/
( qemu ) device_add virtio-net-pci,netdev=hostnet-7e03bc209a,id=net-7e03bc209a,MAC=52:54:00:00:00
)3)运行散热NIC命令
( qemu ) device_del net-7e03bc209a
( qemu ) netdev_del hostnet-7e03bc209a
注: 7e03bc209a是用于添加和折叠网卡的设备标识号,在执行操作时必须匹配。
)4)退出虚机控制台
参考CPU部分完成控制台操作。
3 .登录虚拟机系统验证网卡操作
运行以下命令以验证是否成功添加或删除了NIC
# ip addr
如果您有疑问,欢迎与我们交流。 微信号ztkj_tjiyun
详情请访问云服务器、域名注册、虚拟主机的问题,请访问西部数码代理商官方网站: www.chenqinet.cn