3.2. 配置仿真程序线程
Compute 节点具有与每个实例的虚拟机监控程序关联的开销任务,称为仿真程序线程。默认情况下,仿真程序线程在与实例相同的 CPU 上运行,这会影响实例的性能。
您可以将仿真程序线程策略配置为在单独的 CPU 上运行仿真程序线程与实例使用。
为避免数据包丢失,您永远不会在 NFV 部署中抢占 vCPU。
流程
-
以
stack用户的身份登录 undercloud。 - 打开您的 Compute 环境文件。
要为需要 CPU 固定的实例保留物理 CPU 内核,请在 Compute 环境文件中配置
NovaComputeCpuDedicatedSet参数。例如,以下配置使用 32 核 CPU 在 Compute 节点上设置专用 CPU:parameter_defaults: ... NovaComputeCpuDedicatedSet: 2-15,18-31 ...
parameter_defaults: ... NovaComputeCpuDedicatedSet: 2-15,18-31 ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如需更多信息,请参阅在 Compute 节点上配置 CPU 固定。
要为仿真程序线程保留物理 CPU 内核,请在 Compute 环境文件中配置
NovaComputeCpuSharedSet参数。例如,以下配置使用 32 核 CPU 在 Compute 节点上设置共享 CPU:parameter_defaults: ... NovaComputeCpuSharedSet: 0,1,16,17 ...
parameter_defaults: ... NovaComputeCpuSharedSet: 0,1,16,17 ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意计算调度程序还将共享集合中的 CPU 用于在共享或浮动 CPU 上运行的实例。如需更多信息,请参阅在 Compute 节点上配置 CPU 固定
-
将 Compute 调度程序过滤器
NUMATopologyFilter添加到NovaSchedulerEnabledFilters参数(如果尚不存在)。 使用其他环境文件将计算环境文件添加到堆栈中,并部署 overcloud:
openstack overcloud deploy --templates \ -e [your environment files] \ -e /home/stack/templates/<compute_environment_file>.yaml
(undercloud)$ openstack overcloud deploy --templates \ -e [your environment files] \ -e /home/stack/templates/<compute_environment_file>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 配置一个类别,它在专用 CPU 上运行实例的仿真程序线程,该 CPU 从使用
NovaComputeCpuSharedSet配置的共享 CPU 中选择:openstack flavor set --property hw:cpu_policy=dedicated \ --property hw:emulator_threads_policy=share \ dedicated_emulator_threads
(overcloud)$ openstack flavor set --property hw:cpu_policy=dedicated \ --property hw:emulator_threads_policy=share \ dedicated_emulator_threadsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 有关
hw:emulator_threads_policy的配置选项的更多信息,请参阅 类别元数据中的 Emulator 线程策略。