比如ESXI,可以进行CPU、内存等动态资源池设置,为每个虚拟机分配CPU时间而不是CPU核,并将空余的CPU时间和内存作为动态资源池,为不同的虚拟机在负荷突然增加时提供动态资源。
在高级的虚拟化系统里,CPU的核已经不是关键,只是为了满足虚拟化系统本身的要求而已,而关键的是CPU时间的分配,这个是可以进行全局的负载调度的。
1.查看当前调度策略
tuned-adm active
2.tuned查看可用的调优方式
tuned-adm profile
2.隔离核
首先在/etc/default/grub文件中最后一行添加参数isolcpu
GRUB_CMDLINE_LINUX_DEFAULT=“quiet splash isolcpus=1,3”(这里表示1和3两个cpu被隔离,cpu序号从0开始)或者添加到:
GRUB_CMDLINE_LINUX=“isolcpus=1,3”
vim /etc/default/grub
GRUB_CMDLINE_LINUX=“crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap no_timer_check clocksource=tsc tsc=perfect intel_pstate=disable selinux=0 enforcing=0 nmi_watchdog=0 softlockup_panic=0 isolcpus=1-39 nohz_full=0-39 idle=poll default_hugepagesz=1G hugepagesz=1G hugepages=16 rcu_nocbs=1-39 kthread_cpus=0 irqaffinity=0 rcu_nocb_poll rhgb quiet”
更新grub
sudo update-grub
查看参数是否生效
cat /proc/cmdline