vds_bootstrap 流程分析(Red Hat Virtualization)-3

virtExplorer osExplorer And kernelArgs 


virtExplorer

virtExplorer主要是来验证虚拟化环境的,主要做以下这几个方面的事.

1. 确认bios启用vmx或者svm

2. 确认cpu支持vmx或者svm

vmx和svm是虚拟化必须的硬件支持,所以virtExplorer主要做环境的确认。

vmx针对Intel的cpu,svm是针对AMD的cpu。

summary:bios要开启VT-D 和 超线程来支持虚拟化


osExplorer

osExplorer主要用来检查系统环境是否满足虚拟化的要求。

1. release是否大于等于最低版本

2. kernel的version是否大于等于最低版本

summary:RHEL6的最低release版本是6.0, kernel最低版本是2.6.30-150


kernelArgs

设置启动参数

完整命令应该是:

grubby --update-kernel DEFAULT --args elevator=deadline processor.max_cstate=1

- DEFAULT 指示修改的入口,这里应该是默认启动项,如果是ALL是所有的启动项都要修改

- elevator=deadline I/O的调度器使用deadline I/O 调度器

The deadline I/O scheduler attempts to provide a guaranteed latency for requests. It is important to note that the latency measurement only starts when the requests gets down to the I/O scheduler (this is an important distinction, as an application may be put to sleep waiting for request descriptors to be freed). By default, reads are given priority over writes, since applications are more likely to block on read I/O.

Deadline dispatches I/Os in batches. A batch is a sequence of either read or write I/Os which are in increasing LBA order (the one-way elevator). After processing each batch, the I/O scheduler checks to see whether write requests have been starved for too long, and then decides whether to start a new batch of reads or writes. The FIFO list of requests is only checked for expired requests at the start of each batch, and then only for the data direction of that batch. So, if a write batch is selected, and there is an expired read request, that read request will not get serviced until the write batch completes.

- processor.max_cstate=1 锁定cpu的state级别为1,cpu级别c0-c6, c6最节能。

feichashao.com/c-state/

summary:对系统进行优化,让他更适合虚拟化环境

你可能感兴趣的:(vds_bootstrap 流程分析(Red Hat Virtualization)-3)