×

vDU 集群主机的推荐固件配置

将下表作为在 OpenShift Container Platform 4.17 上运行 vDU 应用程序的集群主机固件配置的基础。

下表是 vDU 集群主机固件配置的一般建议。 确切的固件设置将取决于您的需求和具体的硬件平台。 零接触配置管道不处理固件的自动设置。

表 1. 推荐的集群主机固件设置
固件设置 配置 描述

超传输 (HT)

已启用

超传输 (HT) 总线是 AMD 开发的一种总线技术。 HT 提供主机内存中的组件和其他系统外设之间的高速链路。

UEFI

已启用

启用从 UEFI 引导 vDU 主机。

CPU 电源和性能策略

性能

将 CPU 电源和性能策略设置为优化系统以提高性能而不是能效。

非核心频率缩放

已禁用

禁用非核心频率缩放以防止独立设置 CPU 非核心部分的电压和频率。

非核心频率

最大值

将 CPU 的非核心部分(例如缓存和内存控制器)设置为其最大可能的运行频率。

性能 P-limit

已禁用

禁用性能 P-limit 以防止处理器的非核心频率协调。

增强型英特尔® SpeedStep 技术

已启用

启用增强型英特尔 SpeedStep 以允许系统动态调整处理器电压和核心频率,从而降低主机的功耗和热量产生。

英特尔® Turbo Boost 技术

已启用

为基于英特尔的 CPU 启用 Turbo Boost 技术,以便如果处理器在低于功耗、电流和温度规格限制的情况下运行,则可以自动允许处理器核心运行速度高于额定工作频率。

英特尔可配置 TDP

已启用

启用 CPU 的热设计功耗 (TDP)。

可配置 TDP 级别

级别 2

TDP 级别设置特定性能等级所需的 CPU 功耗。 TDP 级别 2 将 CPU 设置为最稳定的性能级别,但代价是功耗。

节能 Turbo

已禁用

禁用节能 Turbo 以防止处理器使用基于节能的策略。

硬件 P 状态

已启用或已禁用

启用操作系统控制的 P 状态以允许每 Pod 电力管理。 禁用P 状态(性能状态)以优化操作系统和 CPU 以提高性能而不是功耗。

封装 C 状态

C0/C1 状态

使用 C0 或 C1 状态将处理器设置为完全活动状态 (C0) 或停止在软件中运行的 CPU 内部时钟 (C1)。

C1E

已禁用

CPU 增强型暂停 (C1E) 是英特尔芯片中的节能功能。 禁用 C1E 可防止操作系统在不活动时向 CPU 发送暂停命令。

处理器 C6

已禁用

C6 节能是 CPU 功能,可自动禁用空闲的 CPU 核心和缓存。 禁用 C6 可以提高系统性能。

子 NUMA 集群

已禁用

子 NUMA 集群将处理器核心、缓存和内存划分为多个 NUMA 域。 禁用此选项可以提高对延迟敏感的工作负载的性能。

为主机中的固件启用全局 SR-IOV 和 VT-d 设置。 这些设置与裸机环境相关。

启用C 状态和操作系统控制的P 状态以允许每 Pod 电力管理。

运行 vDU 应用程序的推荐集群配置

运行虚拟化分布式单元 (vDU) 应用程序的集群需要高度调整和优化的配置。 以下信息描述了在 OpenShift Container Platform 4.17 集群中支持 vDU 工作负载所需的各种元素。

检查从ztp-site-generate容器中提取的MachineConfig自定义资源 (CR) 是否已应用到集群中。这些 CR 位于提取的out/source-crs/extra-manifest/文件夹中。

来自ztp-site-generate容器的以下MachineConfig CR 配置集群主机

表 2. 建议的 GitOps ZTP MachineConfig CR
MachineConfig CR 描述

01-container-mount-ns-and-kubelet-conf-master.yaml

01-container-mount-ns-and-kubelet-conf-worker.yaml

配置容器挂载命名空间和 kubelet 配置。

03-sctp-machine-config-master.yaml

03-sctp-machine-config-worker.yaml

加载 SCTP 内核模块。这些MachineConfig CR 是可选的,如果不需要此内核模块,可以省略。

05-kdump-config-master.yaml

05-kdump-config-worker.yaml

06-kdump-master.yaml

06-kdump-worker.yaml

配置集群的 kdump 崩溃报告。

07-sriov-related-kernel-args-master.yaml

配置集群中的 SR-IOV 内核参数。

08-set-rcu-normal-master.yaml

08-set-rcu-normal-worker.yaml

在集群重新引导后禁用rcu_expedited模式。

99-crio-disable-wipe-master.yaml

99-crio-disable-wipe-worker.yaml

禁用集群重启后自动清除 CRI-O 缓存。

99-sync-time-once-master.yaml

99-sync-time-once-worker.yaml

配置 Chrony 服务对系统时钟进行一次性检查和调整。

enable-crun-master.yaml

enable-crun-worker.yaml

启用crun OCI 容器运行时。

extra-manifest/enable-cgroups-v1.yaml

source-crs/extra-manifest/enable-cgroups-v1.yaml

在集群安装期间以及生成 RHACM 集群策略时启用 cgroups v1。

在 OpenShift Container Platform 4.14 及更高版本中,您可以使用SiteConfig CR 中的cpuPartitioningMode字段配置工作负载分区。

运行虚拟化分布式单元 (vDU) 应用程序的集群需要以下 Operators,它们是基线参考配置的一部分

  • 节点调优 Operator (NTO)。NTO 打包了以前由性能附加组件 Operator 提供的功能,该 Operator 现在是 NTO 的一部分。

  • PTP Operator

  • SR-IOV 网络 Operator

  • Red Hat OpenShift 日志 Operator

  • 本地存储 Operator

始终在您的集群中使用最新支持的实时内核版本。确保您在集群中应用以下配置

  1. 确保在集群性能配置文件中设置以下additionalKernelArgs

    apiVersion: performance.openshift.io/v2
    kind: PerformanceProfile
    # ...
    spec:
      additionalKernelArgs:
      - "rcupdate.rcu_normal_after_boot=0"
      - "efi=runtime"
      - "vfio_pci.enable_sriov=1"
      - "vfio_pci.disable_idle_d3=1"
      - "module_blacklist=irdma"
    
      # ...
  2. 可选:在hardwareTuning字段下设置 CPU 频率

    您可以使用硬件调优来调整保留和隔离核心 CPU 的 CPU 频率。对于 FlexRAN 等应用程序,硬件供应商建议您将 CPU 频率运行在低于提供的默认频率。强烈建议您在设置任何频率之前,参考硬件供应商关于您处理器代的最高频率设置的指南。此示例显示 Sapphire Rapid 硬件的保留和隔离 CPU 的频率

    apiVersion: performance.openshift.io/v2
    kind: PerformanceProfile
    metadata:
      name: openshift-node-performance-profile
    spec:
          cpu:
            isolated: "2-19,22-39"
            reserved: "0-1,20-21"
          hugepages:
            defaultHugepagesSize: 1G
            pages:
              - size: 1G
                count: 32
          realTimeKernel:
              enabled: true
          hardwareTuning:
              isolatedCpuFreq: 2500000
              reservedCpuFreq: 2800000
  3. 确保Tuned CR 中的performance-patch配置文件配置与相关PerformanceProfile CR 中的isolated CPU 集匹配的正确 CPU 隔离集,例如

    apiVersion: tuned.openshift.io/v1
    kind: Tuned
    metadata:
      name: performance-patch
      namespace: openshift-cluster-node-tuning-operator
      annotations:
        ran.openshift.io/ztp-deploy-wave: "10"
    spec:
      profile:
        - name: performance-patch
          # The 'include' line must match the associated PerformanceProfile name, for example:
          # include=openshift-node-performance-${PerformanceProfile.metadata.name}
          # When using the standard (non-realtime) kernel, remove the kernel.timer_migration override from the [sysctl] section
          data: |
            [main]
            summary=Configuration changes profile inherited from performance created tuned
            include=openshift-node-performance-openshift-node-performance-profile
            [scheduler]
            group.ice-ptp=0:f:10:*:ice-ptp.*
            group.ice-gnss=0:f:10:*:ice-gnss.*
            group.ice-dplls=0:f:10:*:ice-dplls.*
            [service]
            service.stalld=start,enable
            service.chronyd=stop,disable
    # ...

检查实时内核版本

始终在您的 OpenShift Container Platform 集群中使用最新版本的实时内核。如果您不确定集群中正在使用的内核版本,您可以按照以下步骤将当前实时内核版本与发行版本进行比较。

先决条件
  • 您已安装 OpenShift CLI (oc)。

  • 您已以具有cluster-admin权限的用户身份登录。

  • 您已安装podman

步骤
  1. 运行以下命令以获取集群版本

    $ OCP_VERSION=$(oc get clusterversion version -o jsonpath='{.status.desired.version}{"\n"}')
  2. 获取发行版镜像 SHA 号

    $ DTK_IMAGE=$(oc adm release info --image-for=driver-toolkit quay.io/openshift-release-dev/ocp-release:$OCP_VERSION-x86_64)
  3. 运行发行版镜像容器并提取与集群当前发行版打包在一起的内核版本

    $ podman run --rm $DTK_IMAGE rpm -qa | grep 'kernel-rt-core-' | sed 's#kernel-rt-core-##'
    示例输出
    4.18.0-305.49.1.rt7.121.el8_4.x86_64

    这是发行版附带的默认实时内核版本。

    实时内核由内核版本中的字符串.rt表示。

验证

检查集群当前发行版列出的内核版本是否与集群中运行的实际实时内核匹配。运行以下命令以检查正在运行的实时内核版本

  1. 打开到集群节点的远程 shell 连接

    $ oc debug node/<node_name>
  2. 检查实时内核版本

    sh-4.4# uname -r
    示例输出
    4.18.0-305.49.1.rt7.121.el8_4.x86_64

检查是否应用了推荐的集群配置

您可以检查集群是否正在运行正确的配置。以下步骤描述了如何检查在 OpenShift Container Platform 4.17 集群中部署 DU 应用程序所需的各种配置。

先决条件
  • 您已部署集群并对其进行了 vDU 工作负载的调优。

  • 您已安装 OpenShift CLI (oc)。

  • 您已以具有cluster-admin权限的用户身份登录。

步骤
  1. 检查默认的 OperatorHub 源是否已禁用。运行以下命令

    $ oc get operatorhub cluster -o yaml
    示例输出
    spec:
        disableAllDefaultSources: true
  2. 通过运行以下命令检查所有必需的CatalogSource资源是否已为工作负载分区(PreferredDuringScheduling)添加注释

    $ oc get catalogsource -A -o jsonpath='{range .items[*]}{.metadata.name}{" -- "}{.metadata.annotations.target\.workload\.openshift\.io/management}{"\n"}{end}'
    示例输出
    certified-operators -- {"effect": "PreferredDuringScheduling"}
    community-operators -- {"effect": "PreferredDuringScheduling"}
    ran-operators (1)
    redhat-marketplace -- {"effect": "PreferredDuringScheduling"}
    redhat-operators -- {"effect": "PreferredDuringScheduling"}
    1 未添加注释的CatalogSource资源也会返回。在此示例中,ran-operators CatalogSource资源未添加注释,并且没有PreferredDuringScheduling注释。

    在正确配置的 vDU 集群中,只会列出一个带注释的目录源。

  3. 检查所有适用的 OpenShift Container Platform Operator 命名空间是否已为工作负载分区添加注释。这包括使用核心 OpenShift Container Platform 安装的所有 Operators 以及参考 DU 调优配置中包含的额外 Operators 集。运行以下命令

    $ oc get namespaces -A -o jsonpath='{range .items[*]}{.metadata.name}{" -- "}{.metadata.annotations.workload\.openshift\.io/allowed}{"\n"}{end}'
    示例输出
    default --
    openshift-apiserver -- management
    openshift-apiserver-operator -- management
    openshift-authentication -- management
    openshift-authentication-operator -- management

    不应为工作负载分区添加额外 Operators 的注释。在前面命令的输出中,应列出额外的 Operators,在--分隔符的右侧没有任何值。

  4. 检查ClusterLogging配置是否正确。运行以下命令

    1. 验证是否配置了相应的输入和输出日志

      $ oc get -n openshift-logging ClusterLogForwarder instance -o yaml
      示例输出
      apiVersion: logging.openshift.io/v1
      kind: ClusterLogForwarder
      metadata:
        creationTimestamp: "2022-07-19T21:51:41Z"
        generation: 1
        name: instance
        namespace: openshift-logging
        resourceVersion: "1030342"
        uid: 8c1a842d-80c5-447a-9150-40350bdf40f0
      spec:
        inputs:
        - infrastructure: {}
          name: infra-logs
        outputs:
        - name: kafka-open
          type: kafka
          url: tcp://10.46.55.190:9092/test
        pipelines:
        - inputRefs:
          - audit
          name: audit-logs
          outputRefs:
          - kafka-open
        - inputRefs:
          - infrastructure
          name: infrastructure-logs
          outputRefs:
          - kafka-open
      ...
    2. 检查管理计划是否适合您的应用程序

      $ oc get -n openshift-logging clusterloggings.logging.openshift.io instance -o yaml
      示例输出
      apiVersion: logging.openshift.io/v1
      kind: ClusterLogging
      metadata:
        creationTimestamp: "2022-07-07T18:22:56Z"
        generation: 1
        name: instance
        namespace: openshift-logging
        resourceVersion: "235796"
        uid: ef67b9b8-0e65-4a10-88ff-ec06922ea796
      spec:
        collection:
          logs:
            fluentd: {}
            type: fluentd
        curation:
          curator:
            schedule: 30 3 * * *
          type: curator
        managementState: Managed
      ...
  5. 检查 Web 控制台是否已禁用 (managementState: Removed),方法是运行以下命令

    $ oc get consoles.operator.openshift.io cluster -o jsonpath="{ .spec.managementState }"
    示例输出
    Removed
  6. 检查集群节点上是否已禁用chronyd,方法是运行以下命令

    $ oc debug node/<node_name>

    检查节点上chronyd的状态

    sh-4.4# chroot /host
    sh-4.4# systemctl status chronyd
    示例输出
    ● chronyd.service - NTP client/server
        Loaded: loaded (/usr/lib/systemd/system/chronyd.service; disabled; vendor preset: enabled)
        Active: inactive (dead)
          Docs: man:chronyd(8)
                man:chrony.conf(5)
  7. 使用到linuxptp-daemon容器的远程 shell 连接和 PTP 管理客户端 (pmc) 工具,检查 PTP 接口是否已成功与主时钟同步

    1. 通过运行以下命令,使用linuxptp-daemon pod 的名称设置$PTP_POD_NAME变量

      $ PTP_POD_NAME=$(oc get pods -n openshift-ptp -l app=linuxptp-daemon -o name)
    2. 运行以下命令以检查 PTP 设备的同步状态

      $ oc -n openshift-ptp rsh -c linuxptp-daemon-container ${PTP_POD_NAME} pmc -u -f /var/run/ptp4l.0.config -b 0 'GET PORT_DATA_SET'
      示例输出
      sending: GET PORT_DATA_SET
        3cecef.fffe.7a7020-1 seq 0 RESPONSE MANAGEMENT PORT_DATA_SET
          portIdentity            3cecef.fffe.7a7020-1
          portState               SLAVE
          logMinDelayReqInterval  -4
          peerMeanPathDelay       0
          logAnnounceInterval     1
          announceReceiptTimeout  3
          logSyncInterval         0
          delayMechanism          1
          logMinPdelayReqInterval 0
          versionNumber           2
        3cecef.fffe.7a7020-2 seq 0 RESPONSE MANAGEMENT PORT_DATA_SET
          portIdentity            3cecef.fffe.7a7020-2
          portState               LISTENING
          logMinDelayReqInterval  0
          peerMeanPathDelay       0
          logAnnounceInterval     1
          announceReceiptTimeout  3
          logSyncInterval         0
          delayMechanism          1
          logMinPdelayReqInterval 0
          versionNumber           2
    3. 运行以下pmc命令以检查 PTP 时钟状态

      $ oc -n openshift-ptp rsh -c linuxptp-daemon-container ${PTP_POD_NAME} pmc -u -f /var/run/ptp4l.0.config -b 0 'GET TIME_STATUS_NP'
      示例输出
      sending: GET TIME_STATUS_NP
        3cecef.fffe.7a7020-0 seq 0 RESPONSE MANAGEMENT TIME_STATUS_NP
          master_offset              10 (1)
          ingress_time               1657275432697400530
          cumulativeScaledRateOffset +0.000000000
          scaledLastGmPhaseChange    0
          gmTimeBaseIndicator        0
          lastGmPhaseChange          0x0000'0000000000000000.0000
          gmPresent                  true (2)
          gmIdentity                 3c2c30.ffff.670e00
      1 master_offset应在 -100 到 100 ns 之间。
      2 表示 PTP 时钟已与主时钟同步,并且本地时钟不是主时钟。
    4. 检查在/var/run/ptp4l.0.config中找到的预期master offset值是否在linuxptp-daemon-container日志中。

      $ oc logs $PTP_POD_NAME -n openshift-ptp -c linuxptp-daemon-container
      示例输出
      phc2sys[56020.341]: [ptp4l.1.config] CLOCK_REALTIME phc offset  -1731092 s2 freq -1546242 delay    497
      ptp4l[56020.390]: [ptp4l.1.config] master offset         -2 s2 freq   -5863 path delay       541
      ptp4l[56020.390]: [ptp4l.0.config] master offset         -8 s2 freq  -10699 path delay       533
  8. 通过运行以下命令检查 SR-IOV 配置是否正确

    1. 检查SriovOperatorConfig资源中的disableDrain值是否设置为true

      $ oc get sriovoperatorconfig -n openshift-sriov-network-operator default -o jsonpath="{.spec.disableDrain}{'\n'}"
      示例输出
      true
    2. 通过运行以下命令检查SriovNetworkNodeState同步状态是否为Succeeded

      $ oc get SriovNetworkNodeStates -n openshift-sriov-network-operator -o jsonpath="{.items[*].status.syncStatus}{'\n'}"
      示例输出
      Succeeded
    3. 验证每个为 SR-IOV 配置的接口下虚拟函数 (Vfs) 的数量和配置是否在 .status.interfaces 字段中正确显示。例如

      $ oc get SriovNetworkNodeStates -n openshift-sriov-network-operator -o yaml
      示例输出
      apiVersion: v1
      items:
      - apiVersion: sriovnetwork.openshift.io/v1
        kind: SriovNetworkNodeState
      ...
        status:
          interfaces:
          ...
          - Vfs:
            - deviceID: 154c
              driver: vfio-pci
              pciAddress: 0000:3b:0a.0
              vendor: "8086"
              vfID: 0
            - deviceID: 154c
              driver: vfio-pci
              pciAddress: 0000:3b:0a.1
              vendor: "8086"
              vfID: 1
            - deviceID: 154c
              driver: vfio-pci
              pciAddress: 0000:3b:0a.2
              vendor: "8086"
              vfID: 2
            - deviceID: 154c
              driver: vfio-pci
              pciAddress: 0000:3b:0a.3
              vendor: "8086"
              vfID: 3
            - deviceID: 154c
              driver: vfio-pci
              pciAddress: 0000:3b:0a.4
              vendor: "8086"
              vfID: 4
            - deviceID: 154c
              driver: vfio-pci
              pciAddress: 0000:3b:0a.5
              vendor: "8086"
              vfID: 5
            - deviceID: 154c
              driver: vfio-pci
              pciAddress: 0000:3b:0a.6
              vendor: "8086"
              vfID: 6
            - deviceID: 154c
              driver: vfio-pci
              pciAddress: 0000:3b:0a.7
              vendor: "8086"
              vfID: 7
  9. 检查集群性能配置文件是否正确。cpuhugepages 部分将根据您的硬件配置而有所不同。运行以下命令

    $ oc get PerformanceProfile openshift-node-performance-profile -o yaml
    示例输出
    apiVersion: performance.openshift.io/v2
    kind: PerformanceProfile
    metadata:
      creationTimestamp: "2022-07-19T21:51:31Z"
      finalizers:
      - foreground-deletion
      generation: 1
      name: openshift-node-performance-profile
      resourceVersion: "33558"
      uid: 217958c0-9122-4c62-9d4d-fdc27c31118c
    spec:
      additionalKernelArgs:
      - idle=poll
      - rcupdate.rcu_normal_after_boot=0
      - efi=runtime
      cpu:
        isolated: 2-51,54-103
        reserved: 0-1,52-53
      hugepages:
        defaultHugepagesSize: 1G
        pages:
        - count: 32
          size: 1G
      machineConfigPoolSelector:
        pools.operator.machineconfiguration.openshift.io/master: ""
      net:
        userLevelNetworking: true
      nodeSelector:
        node-role.kubernetes.io/master: ""
      numa:
        topologyPolicy: restricted
      realTimeKernel:
        enabled: true
    status:
      conditions:
      - lastHeartbeatTime: "2022-07-19T21:51:31Z"
        lastTransitionTime: "2022-07-19T21:51:31Z"
        status: "True"
        type: Available
      - lastHeartbeatTime: "2022-07-19T21:51:31Z"
        lastTransitionTime: "2022-07-19T21:51:31Z"
        status: "True"
        type: Upgradeable
      - lastHeartbeatTime: "2022-07-19T21:51:31Z"
        lastTransitionTime: "2022-07-19T21:51:31Z"
        status: "False"
        type: Progressing
      - lastHeartbeatTime: "2022-07-19T21:51:31Z"
        lastTransitionTime: "2022-07-19T21:51:31Z"
        status: "False"
        type: Degraded
      runtimeClass: performance-openshift-node-performance-profile
      tuned: openshift-cluster-node-tuning-operator/openshift-node-performance-openshift-node-performance-profile

    CPU 设置取决于服务器上可用的核心数量,应与工作负载分区设置保持一致。hugepages 配置取决于服务器和应用程序。

  10. 运行以下命令检查PerformanceProfile 是否已成功应用于集群

    $ oc get performanceprofile openshift-node-performance-profile -o jsonpath="{range .status.conditions[*]}{ @.type }{' -- '}{@.status}{'\n'}{end}"
    示例输出
    Available -- True
    Upgradeable -- True
    Progressing -- False
    Degraded -- False
  11. 运行以下命令检查Tuned 性能补丁设置

    $ oc get tuneds.tuned.openshift.io -n openshift-cluster-node-tuning-operator performance-patch -o yaml
    示例输出
    apiVersion: tuned.openshift.io/v1
    kind: Tuned
    metadata:
      creationTimestamp: "2022-07-18T10:33:52Z"
      generation: 1
      name: performance-patch
      namespace: openshift-cluster-node-tuning-operator
      resourceVersion: "34024"
      uid: f9799811-f744-4179-bf00-32d4436c08fd
    spec:
      profile:
      - data: |
          [main]
          summary=Configuration changes profile inherited from performance created tuned
          include=openshift-node-performance-openshift-node-performance-profile
          [bootloader]
          cmdline_crash=nohz_full=2-23,26-47 (1)
          [sysctl]
          kernel.timer_migration=1
          [scheduler]
          group.ice-ptp=0:f:10:*:ice-ptp.*
          [service]
          service.stalld=start,enable
          service.chronyd=stop,disable
        name: performance-patch
      recommend:
      - machineConfigLabels:
          machineconfiguration.openshift.io/role: master
        priority: 19
        profile: performance-patch
    1 cmdline=nohz_full= 中的 cpu 列表将根据您的硬件配置而有所不同。
  12. 运行以下命令检查集群网络诊断是否已禁用

    $ oc get networks.operator.openshift.io cluster -o jsonpath='{.spec.disableNetworkDiagnostics}'
    示例输出
    true
  13. 检查Kubelet 的清理间隔是否已调整为较慢的速率。这在 containerMountNS 机器配置中设置。运行以下命令

    $ oc describe machineconfig container-mount-namespace-and-kubelet-conf-master | grep OPENSHIFT_MAX_HOUSEKEEPING_INTERVAL_DURATION
    示例输出
    Environment="OPENSHIFT_MAX_HOUSEKEEPING_INTERVAL_DURATION=60s"
  14. 运行以下命令检查 Grafana 和 alertManagerMain 是否已禁用,以及 Prometheus 保留期是否设置为 24 小时

    $ oc get configmap cluster-monitoring-config -n openshift-monitoring -o jsonpath="{ .data.config\.yaml }"
    示例输出
    grafana:
      enabled: false
    alertmanagerMain:
      enabled: false
    prometheusK8s:
       retention: 24h
    1. 使用以下命令验证在集群中找不到 Grafana 和 alertManagerMain 路由

      $ oc get route -n openshift-monitoring alertmanager-main
      $ oc get route -n openshift-monitoring grafana

      两个查询都应返回 Error from server (NotFound) 消息。

  15. 运行以下命令检查是否至少为每个PerformanceProfileTuned 性能补丁、工作负载分区和内核命令行参数分配了 4 个作为reserved 的 CPU

    $ oc get performanceprofile -o jsonpath="{ .items[0].spec.cpu.reserved }"
    示例输出
    0-3

    根据您的工作负载要求,您可能需要分配额外的保留 CPU。