3.2. 配置仿真程序线程


Compute 节点具有与每个实例的虚拟机监控程序关联的开销任务,称为仿真程序线程。默认情况下,仿真程序线程在与实例相同的 CPU 上运行,这会影响实例的性能。

您可以将仿真程序线程策略配置为在单独的 CPU 上运行仿真程序线程与实例使用。

注意

为避免数据包丢失,您永远不会在 NFV 部署中抢占 vCPU。

流程

  1. stack 用户的身份登录 undercloud。
  2. 打开您的 Compute 环境文件。
  3. 要为需要 CPU 固定的实例保留物理 CPU 内核,请在 Compute 环境文件中配置 NovaComputeCpuDedicatedSet 参数。例如,以下配置使用 32 核 CPU 在 Compute 节点上设置专用 CPU:

    parameter_defaults:
      ...
      NovaComputeCpuDedicatedSet: 2-15,18-31
      ...
    Copy to Clipboard Toggle word wrap

    如需更多信息,请参阅在 Compute 节点上配置 CPU 固定

  4. 要为仿真程序线程保留物理 CPU 内核,请在 Compute 环境文件中配置 NovaComputeCpuSharedSet 参数。例如,以下配置使用 32 核 CPU 在 Compute 节点上设置共享 CPU:

    parameter_defaults:
      ...
      NovaComputeCpuSharedSet: 0,1,16,17
      ...
    Copy to Clipboard Toggle word wrap
    注意

    计算调度程序还将共享集合中的 CPU 用于在共享或浮动 CPU 上运行的实例。如需更多信息,请参阅在 Compute 节点上配置 CPU 固定

  5. 将 Compute 调度程序过滤器 NUMATopologyFilter 添加到 NovaSchedulerEnabledFilters 参数(如果尚不存在)。
  6. 使用其他环境文件将计算环境文件添加到堆栈中,并部署 overcloud:

    (undercloud)$ openstack overcloud deploy --templates \
     -e [your environment files] \
     -e /home/stack/templates/<compute_environment_file>.yaml
    Copy to Clipboard Toggle word wrap
  7. 配置一个类别,它在专用 CPU 上运行实例的仿真程序线程,该 CPU 从使用 NovaComputeCpuSharedSet 配置的共享 CPU 中选择:

    (overcloud)$ openstack flavor set --property hw:cpu_policy=dedicated \
     --property hw:emulator_threads_policy=share \
     dedicated_emulator_threads
    Copy to Clipboard Toggle word wrap

    有关 hw:emulator_threads_policy 的配置选项的更多信息,请参阅 类别元数据中的 Emulator 线程策略

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat