kvm和Xen主机在线调整cpu核心数和内存大小
- kvm的cpu和内存调整
- kvm调整cpu核数
- kvm调整内存使用
- Xen主机的cpu核数和内存大小设置
说明
因为线上经常会遇到资源分配不均衡,我认为使用虚拟化主机主要原因:一是资源隔离,每台机负载一块任务,多台虚拟主机在资源有限情况下可以做到高可用; 二是尽可能的利用服务器的硬件资源,避免某些物理服务器异常繁忙或没有负载。 我一般的把服务器刚开始设置较低的配置,根据服务的运行负载情况调整cpu & mem
kvm的安装配置应用 & xen主机的安装配置应用 & kvm&Xen主机在线增加磁盘空间
kvm的cpu和内存调整
kvm我们用virsh控制台
关机状态下设置最大cpu颗数和最大内存使用量(此步骤必须):
# virsh list --all
Id Name State
-------------------------------------------------
- bbotte shut off
# virsh setvcpus bbotte --maximum 4 --config #最大cpu核数为4
# virsh setmaxmem bbotte 1048576 --config #最大内存为1G
# virsh dominfo bbotte #现在主机配置,2核,512M内存
Id: 2
Name: bbotte
UUID: bd22f444-ee7f-7f00-3d1b-1bb0d0857e43
OS Type: hvm
State: running
CPU(s): 2
CPU time: 152.3s
Max memory: 1048576 KiB #上面设置的最大可用内存
Used memory: 524288 KiB #现在使用的内存大小
Persistent: yes
Autostart: disable
Managed save: no
Security model: none
Security DOI: 0
# ps -C qemu-kvm -o rss,cmd
RSS CMD
388736 /usr/libexec/qemu-kvm -name bbotte -S -M rhel6.6.0 -enable-kvm -m 512 -realtime mlock
kvm调整cpu核数
virsh setvcpus [domain-name, domain-id or domain-uuid] [count]
从2颗cpu增至4颗
# virsh setvcpus bbotte 4
guest主机里面命令行会自动弹出log:
# CPU 2 got hotplugged
Booting Node 0 Processor 2 APIC 0x2
CPU 3 got hotplugged
kvm-clock: cpu 2, msr 0:23167c1, secondary cpu clock
Disabled fast string operations
kvm-stealtime: cpu 2, msr 230e880
Will online and init hotplugged CPU: 2
Booting Node 0 Processor 3 APIC 0x3
kvm-clock: cpu 3, msr 0:23967c1, secondary cpu clock
Disabled fast string operations
kvm-stealtime: cpu 3, msr 238e880
Will online and init hotplugged CPU: 3
kvm调整内存使用
virsh setmem [domain-id or domain-name] [count]
现在的内存为512M,调整为800M的话:
# virsh setmem bbotte 819200 --config --live
# virsh setmem bbotte 800M 或者用此命令更简洁
查看现在主机配置
# virsh dominfo bbotte
Id: 2
Name: bbotte
UUID: bd22f444-ee7f-7f00-3d1b-1bb0d0857e43
OS Type: hvm
State: running
CPU(s): 4
CPU time: 163.9s
Max memory: 1048576 KiB
Used memory: 819200 KiB
Persistent: yes
Autostart: disable
Managed save: no
Security model: none
Security DOI: 0
当然cpu核数和内存大小可用降低,往小调整的时候需要小心
Xen主机的cpu核数和内存大小设置
控制xen主机我们用自定义的配置文件,和设置kvm主机一样,需要事先定义一个变更大小的范围
# vim bbotte
name = "bbotte"
vcpus = 1 #开机的cpu核数
maxvcpus = 10 #可用调整最大的cpu核数
memory = 2048 #开机后的内存大小
maxmem = 20480 #可以调整的内存大小
disk = [ "file:/data/bbotte.qcow2,xvda,w", ]
vif = [ "bridge=br0" ]
on_reboot = "restart"
on_crash = "destroy"
上述xen虚拟主机,默认配置为1核,2G,可以调整最大的配置为:10核,20G
修改cpu: xm vcpu-list #查看cpu的使用 xm vcpu-set bbotte 6 #修改bbotte的cpu颗数为6
修改内存: xm mem-set bbotte 16384 #调整bbotte的内存为16G xm mem-set bbotte 20480 #调整bbotte的内存为20G
xm top #查看当前各主机的状态
虚拟主机改变配置就是这么方便 ^_^
2016年03月28日 于 linux工匠 发表