第 5 章 在 Compute 节点上配置内存


作为云管理员,您可以通过创建自定义类别以目标特殊工作负载(包括 NFV 和高性能计算(HPC))来配置实例调度和放置,以获得最佳性能。

使用以下功能调整实例:

  • 过度分配 :将虚拟内存连接到物理 RAM 分配比率。
  • 交换 :调整分配的交换大小,以处理内存过量使用。
  • 巨页 :为普通内存(4k 页)和巨页(2 MB 或 1 GB 页)调整实例内存分配策略。
  • 文件支持的内存 :使用 扩展您的 Compute 节点内存容量。
  • SEV :使用使您的云用户创建使用内存加密的实例。

5.1. 为过度分配配置内存

当您使用内存过量使用(ram_allocation_ratio >= 1.0)时,您需要使用足够的 swap 空间进行部署来支持分配比率。

注意

如果您的 ram_allocation_ratio 参数设置为 < 1,请按照 RHEL 的 swap 大小指导操作。如需更多信息,请参阅 RHEL 管理存储设备中 的推荐的系统交换空间

先决条件

  • 您已计算了节点所需的 swap 大小。如需更多信息,请参阅 计算交换大小

流程

  1. 为您要更新的节点集打开 OpenStackDataPlaneNodeSet CR 定义文件,如 my_data_plane_node_set.yaml
  2. ansibleVars 下添加所需的配置或修改现有的配置:

    apiVersion: dataplane.openstack.org/v1beta1
    kind: OpenStackDataPlaneNodeSet
    metadata:
      name: my-data-plane-node-set
    spec:
      ...
      nodeTemplate:
        ...
        ansible:
          ansibleVars:
             edpm_bootstrap_swap_size_megabytes: 1024
             edpm_bootstrap_swap_path: /swap
             edpm_bootstrap_swap_partition_enabled: false
             edpm_bootstrap_swap_partition_label: swap1
             ...
  3. 保存 OpenStackDataPlaneNodeSet CR 定义文件。
  4. 应用更新的 OpenStackDataPlaneNodeSet CR 配置:

    $ oc apply -f my_data_plane_node_set.yaml -n openstack
  5. 验证 data plane 资源是否已更新:

    $ oc get openstackdataplanenodeset

    输出示例:

    NAME                     STATUS MESSAGE
    my-data-plane-node-set   False  Deployment not started
  6. 在工作站上创建一个文件来定义 OpenStackDataPlaneDeployment CR,如 my_data_plane_deploy.yaml

    apiVersion: dataplane.openstack.org/v1beta1
    kind: OpenStackDataPlaneDeployment
    metadata:
      name: my-data-plane-deploy
    提示

    为定义文件和 OpenStackDataPlaneDeployment CR 指定一个唯一的描述性名称,指示修改的节点集的目的。

  7. 添加您修改的 OpenStackDataPlaneNodeSet CR:

    spec:
      nodeSets:
        - my-data-plane-node-set
  8. 保存 OpenStackDataPlaneDeployment CR 部署文件。
  9. 部署修改后的 OpenStackDataPlaneNodeSet CR:

    $ oc create -f my_data_plane_deploy.yaml -n openstack
  10. 您可以在部署执行时查看 Ansible 日志:

    $ oc get pod -l app=openstackansibleee -n openstack -w
    $ oc logs -l app=openstackansibleee -n openstack -f \
    --max-log-requests 10
  11. 验证修改后的 OpenStackDataPlaneNodeSet CR 是否已部署:

    例如:

    $ oc get openstackdataplanedeployment -n openstack

    输出示例:

    NAME                     STATUS   MESSAGE
    my-data-plane-node-set   True     Setup Complete
  12. 重复 oc get 命令,直到您看到 NodeSet Ready 信息:

    例如:

    $ oc get openstackdataplanenodeset -n openstack

    输出示例:

    NAME                     STATUS   MESSAGE
    my-data-plane-node-set   True     NodeSet Ready

    如需有关返回状态的含义的信息,请参阅 在 OpenShift 上部署 Red Hat OpenStack Services 中的 Data plane 条件和状态

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

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

让开源更具包容性

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

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部