4.6. Telco RAN DU 参考组件


以下小节描述了用于配置和部署集群来运行 RAN DU 工作负载的各种 OpenShift Container Platform 组件和配置。

图 4.2. Telco RAN DU 参考组件

注意

确保没有在电信 RAN DU 配置集中指定的其他组件不会影响分配给工作负载应用程序的 CPU 资源。

重要

不支持在树外驱动程序中。5g RAN 应用程序组件不包含在 RAN DU 配置集中,必须针对分配给应用程序的资源(CPU)进行设计。

4.6.1. 主机固件调整

这个版本中的新内容
  • 这个版本没有参考设计更新
描述

在初始集群部署期间调优主机固件设置以获得最佳的性能。如需更多信息,请参阅"为 vDU 应用程序工作负载推荐单节点 OpenShift 集群配置"。在初始部署期间应用主机固件中的调优设置。如需更多信息,请参阅“使用 GitOps ZTP 管理主机固件设置”。受管集群主机固件设置在 hub 集群中作为使用 ClusterInstance CR 和 GitOps ZTP 部署受管集群时创建的独立 BareMetalHost 自定义资源(CR)提供。

注意

根据提供的参考 example-sno.yaml CR 创建 ClusterInstance CR。

限制和要求
  • 您必须在主机固件设置中启用 Hyper-Threading
工程考虑
  • 调优所有固件设置以获得最佳性能。
  • 除非需要针对节能进行调优,否则所有设置都是针对实现最大性能而设计的。
  • 如果需要,您可以针对实现节能目的而对主机固件进行调优,这会牺牲性能。
  • 启用安全引导。启用安全引导后,内核只载入签名的内核模块。不支持树外驱动程序。

4.6.2. CPU 分区和性能调整

这个版本中的新内容
  • 这个版本没有参考设计更新
描述
RAN DU 使用模型包括通过 PerformanceProfile CR 进行集群性能调优,以实现低延迟性能。RAN DU 用例需要针对低延迟性能调整集群。Node Tuning Operator 协调 PerformanceProfile CR。有关使用 PerformanceProfile CR 进行节点调整的详情,请参阅"使用性能配置集为低延迟的节点"。
限制和要求

Node Tuning Operator 使用 PerformanceProfile CR 来配置集群。您必须在 Tel RAN DU 配置集 PerformanceProfile CR 中配置以下设置:

  • 为以下任何一个 CPU 设置保留的 cpuset 为 4 个或更多线程,相当于 4 个超线程(2 个内核):

    • Intel 3rd Generation Xeon (IceLake) 2.20 GHz 或更好的 CPU,带有调整主机固件以获得最大性能
    • AMD EPYC Zen 4 CPU (Genoa、Bergamo)。

      注意

      AMD EPYC Zen 4 CPU (Genoa、Bergamo)被完全支持。功耗评估正在进行。建议评估功能,如每个 pod 电源管理,以确定对性能的潜在影响。

  • 将保留的 cpuset 设置为包括每个包含的内核的超线程同级功能。Unreserved 内核可作为可分配 CPU 用于调度工作负载。
  • 确保超线程不会跨保留和隔离的内核进行分割。
  • 确保保留和隔离的 CPU 包括 CPU 中所有内核的所有线程。
  • 在保留 CPU 集中包含每个 NUMA 节点的 Core 0。
  • 将巨页大小设置为 1G。
  • 仅固定 OpenShift Container Platform pod,这些 pod 配置为管理工作负载分区的一部分到保留内核。
  • 当硬件厂商建议时,使用 hardwareTuning 部分为保留和隔离的 CPU 设置最大 CPU 频率。
工程考虑
  • 满足完整的性能指标需要使用 RT 内核。如果需要,您可以使用非 RT 内核,这会对集群性能产生相应的影响。
  • 您配置的巨页数量取决于应用程序工作负载要求。这个参数中的变化是正常的,并允许。
  • 根据所选硬件和系统中使用的其他组件,预计在保留和隔离的 CPU 集的配置中有变化。变体必须仍然符合指定的限制。
  • 没有 IRQ 关联性支持的硬件会影响隔离的 CPU。为确保具有保证整个 CPU QoS 的 pod 完全使用分配的 CPU,服务器中的所有硬件都必须支持 IRQ 关联性。
  • 如果您在部署过程中通过将 cpuPartitioningMode 设置为 AllNodes 来启用工作负载分区,则必须使用 PerformanceProfile CR 来分配足够的 CPU 来支持操作系统、中断和 OpenShift Container Platform pod。
  • 参考性能配置集包括 vfio_pci 的额外内核参数设置。包括这些参数以支持设备,如 FEC 加速器。如果您的工作负载不需要,可以省略它们。

4.6.3. PTP Operator

这个版本中的新内容
  • 启用 PTP 普通时钟的双端口 NIC。
  • PTP 事件 REST API v1 和事件消费者应用程序 sidecar 支持会被删除。
  • T-GM 现在支持最多 3 Westport 频道 NIC 配置。
描述
在带有 RAN DU 的 PTPConfig CR 的集群节点中使用 Grandmaster 时钟(T-GM)支持的功能通过 GPS、普通时钟(OC)、边界时钟(T-BC)、双边界时钟、高可用性(HA)和可选快速事件通知配置 PTP。PTP 在 RAN 环境中确保精确的时间和可靠性。
限制和要求
  • 限制为具有双 NIC 和 HA 的节点的两个边界时钟
  • 限制为 T-GM 的 3 个 Westport 频道 NIC 配置
工程考虑
  • RAN DU RDS 配置是为普通时钟、边界时钟、P grandmaster 时钟和高可用性双 NIC 边界时钟提供的。
  • PTP 快速事件通知使用 ConfigMap CR 来持久保留订阅者详情。
  • PTP 事件不支持在 O-RAN 规格中所述的分级事件订阅。
  • PTP fast 事件 REST API v1 是生命周期结束。

4.6.4. SR-IOV Operator

这个版本中的新内容
描述
SR-IOV Operator 置备并配置 SR-IOV CNI 和设备插件。netdevice (内核 VF)和 vfio (DPDK) 设备都被支持,并适用于 RAN DU 使用模型。
限制和要求
  • 使用 OpenShift Container Platform 支持的设备。如需更多信息,请参阅"支持设备"。
  • 主机固件设置中的 SR-IOV 和 IOMMU 启用 :SR-IOV Network Operator 会在内核命令行中自动启用 IOMMU。
  • SR-IOV VF 不会从 PF 接收链路状态更新。如果需要链接检测,则必须在协议级别进行配置。
工程考虑
  • 带有 vfio 驱动程序类型的 SR-IOV 接口通常用于为需要高吞吐量或低延迟的应用程序启用额外的二级网络。
  • 期望客户对 SriovNetworkSriovNetworkNodePolicy 自定义资源 (CR) 的配置和数量变化。
  • IOMMU 内核命令行设置会在安装时使用 MachineConfig CR 应用。这样可确保 SriovOperator CR 在添加节点时不会导致节点重启。
  • SR-IOV 支持并行排空节点,不适用于单节点 OpenShift 集群。
  • 您必须在部署中包含 SriovOperatorConfig CR;不会自动创建 CR。此 CR 包含在初始部署期间应用的引用配置策略中。
  • 如果您将工作负载固定到特定的节点,SR-IOV 并行节点排空功能不会重新调度 pod。在这些情况下,SR-IOV Operator 会禁用并行节点排空功能。
  • 不支持使用安全引导或内核锁定进行固件更新的 NIC 必须预先配置足够的虚拟功能(VF),以支持应用程序工作负载所需的 VF 数量。对于 Mellanox NIC,您必须在 SR-IOV Network Operator 中禁用 Mellanox vendor 插件。如需更多信息,请参阅"启用安全引导时在 Mellanox 卡中配置 SR-IOV Network Operator"。
  • 要在 pod 启动后更改虚拟功能的 MTU 值,请不要在 SriovNetworkNodePolicy CR 中配置 MTU 字段。相反,请配置网络管理器,或使用自定义 systemd 脚本将物理功能的 MTU 设置为适当的值。例如:

    # ip link set dev <physical_function> mtu 9000
    Copy to Clipboard Toggle word wrap

4.6.5. 日志记录

这个版本中的新内容
  • 这个版本没有参考设计更新
描述
使用日志记录从最边缘节点收集日志进行远程分析。推荐的日志收集器是 Vector。
工程考虑
  • 例如,处理基础架构和审计日志以外的日志,例如,应用程序工作负载会根据额外的日志记录率需要额外的 CPU 和网络带宽。
  • 从 OpenShift Container Platform 4.14 开始,Vector 是引用日志收集器。在 RAN 使用模型中使用 fluentd 已被弃用。

4.6.6. SRIOV-FEC Operator

这个版本中的新内容
  • 这个版本没有参考设计更新
描述
SRIOV-FEC Operator 是一个可选的第三方认证 Operator,支持 FEC 加速器硬件。
限制和要求
  • 从 FEC Operator v2.7.0 开始:

    • 支持安全引导
    • PF 的 vfio 驱动程序需要使用注入 pod 的 vfio-token。pod 中的应用程序可以使用 EAL 参数 --vfio-vf-token 将 VF 令牌传递给 DPDK。
工程考虑
  • SRIOV-FEC Operator 使用隔离 CPU 集合的 CPU 内核。
  • 您可以作为应用程序部署的预检查的一部分来验证 FEC 就绪,例如通过扩展验证策略。

4.6.7. 生命周期代理

这个版本中的新内容
  • 这个版本没有参考设计更新
描述
Lifecycle Agent 为基于单节点 OpenShift 集群的基于镜像的升级提供本地生命周期管理服务。基于镜像的升级是单节点 OpenShift 集群的建议升级方法。
限制和要求
  • Lifecycle Agent 不适用于带有额外 worker 的多节点集群或单节点 OpenShift 集群。
  • Lifecycle Agent 需要您在安装集群时创建的持久性卷。

有关分区要求的更多信息,请参阅"在使用 GitOps ZTP 时在 ostree stateroot 之间配置共享容器目录"。

4.6.8. Local Storage Operator

这个版本中的新内容
  • 这个版本没有参考设计更新
描述
您可以使用 Local Storage Operator 创建可用作 PVC 资源的持久性卷。您创建的 PV 资源的数量和类型取决于您的要求。
工程考虑
  • 在创建 PV 之前,为 PV CR 创建后备存储。这可以是分区、本地卷、LVM 卷或完整磁盘。
  • 请参阅 LocalVolume CR 中的设备列表,访问每个设备以确保正确分配磁盘和分区,例如 /dev/disk/by-path/<id>。无法保证在节点重启后逻辑名称(例如 /dev/sda)一致。

4.6.9. 逻辑卷管理器存储

这个版本中的新内容
  • 这个版本没有参考设计更新
描述
逻辑卷管理器 (LVM) 存储是一个可选组件。它通过从本地设备创建逻辑卷来提供块存储和文件存储的动态置备,这些逻辑卷可以被应用程序用作持久性卷声明(PVC)资源。也可以进行卷扩展和快照。RDS 中提供了带有 StorageLVMCluster.yaml 文件的示例配置。
限制和要求
  • 在单节点 OpenShift 集群中,持久性存储必须由 LVM Storage 或本地存储提供,不能同时由这两个存储提供。
  • 参考配置中排除卷快照。
工程考虑
  • LVM 存储可用作 RAN DU 用例的本地存储实现。当 LVM 存储用作存储解决方案时,它会替换 Local Storage Operator,并将所需的 CPU 分配给管理分区作为平台开销。参考配置必须包含这些存储解决方案中的一个,但不能同时包含这两个解决方案。
  • 确保有足够的磁盘或分区来满足存储要求。

4.6.10. 工作负载分区

这个版本中的新内容
  • 这个版本没有参考设计更新
描述
工作负载分区将作为 DU 配置集一部分的 OpenShift Container Platform 和第 2 天 Operator pod 固定到保留的 CPU 集,并从节点核算中删除保留的 CPU。这会保留所有非保留 CPU 内核供用户工作负载使用。这会保留所有非保留 CPU 内核供用户工作负载使用。工作负载分区通过安装参数中设置的能力启用:cpuPartitioningMode: AllNodes。使用您在 PerformanceProfile CR 中配置的保留 CPU 集设置管理分区内核。
限制和要求
  • 必须注解 NamespacePod CR,以允许将 pod 应用到管理分区
  • 具有 CPU 限制的 Pod 无法分配给分区。这是因为 mutation 可以更改 pod QoS。
  • 有关可分配给管理分区的最小 CPU 数量的更多信息,请参阅"Node Tuning Operator"。
工程考虑
  • 工作负载分区将所有管理 pod 固定到保留内核。必须将足够数量的内核分配给保留集以考虑操作系统、管理 pod,以及工作负载启动时发生 CPU 使用的预期激增、节点重启或其他系统事件。

4.6.11. 集群调整

这个版本中的新内容
  • 这个版本没有参考设计更新
描述
有关使用集群功能功能禁用的组件的完整列表,请参阅"集群功能"。
限制和要求
  • 集群功能不适用于安装程序置备的安装方法。

下表列出了所需的平台调优配置:

Expand
表 4.2. 集群功能配置
功能描述

删除可选集群功能

通过在单节点 OpenShift 集群上禁用可选集群 Operator 来减少 OpenShift Container Platform 占用空间。

  • 删除除 Node Tuning Operator、Operator Lifecycle Manager 和 Ingress Operator 以外的所有可选 Operator。

配置集群监控

通过执行以下操作配置监控堆栈以减少占用空间:

  • 禁用本地 alertmanagertelemeter 组件。
  • 如果使用 RHACM observability,则必须与适当的 additionalAlertManagerConfigs CR 增强,才能将警报转发到 hub 集群。
  • Prometheus 保留周期减少 24h。

    注意

    RHACM hub 集群聚合受管集群指标。

禁用网络诊断

为单节点 OpenShift 禁用网络诊断,因为它们不是必需的。

配置单个 OperatorHub 目录源

将集群配置为使用单个目录源,它只包含 RAN DU 部署所需的 Operator。每个目录源会增加集群中的 CPU 使用量。使用单个 CatalogSource 适合平台 CPU 预算。

禁用 Console Operator

如果集群在禁用控制台的情况下部署,则不需要 Console CR (ConsoleOperatorDisable.yaml)。如果集群是在启用了控制台的情况下部署的,则必须应用 Console CR。

工程考虑

4.6.12. 机器配置

这个版本中的新内容
  • 这个版本没有参考设计更新
限制和要求
  • CRI-O 擦除禁用 MachineConfig CR 假设磁盘上的镜像是静态的镜像,而不是在定义的维护窗口中调度的维护期间使用。为确保镜像是静态的,请不要将 pod imagePullPolicy 字段设置为 Always
  • 此表中的配置 CR 是必需的组件,除非另有说明。
Expand
表 4.3. 机器配置选项
功能描述

容器运行时

将所有节点角色的容器运行时设为 crun

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

减少 kubelet 内务和驱除监控的频率,从而减少 CPU 用量

SCTP

可选配置(默认为启用)

Kdump

可选配置(默认启用)启用 kdump 在内核 panic 发生时捕获调试信息。启用 kdump 的参考 CR 根据参考配置中包含的驱动程序和内核模块集合增加内存保留。

CRI-O 擦除禁用

在未清除关闭后禁用 CRI-O 镜像缓存的自动擦除。

与 SR-IOV 相关的内核参数

在内核命令行中包括额外的 SR-IOV 相关参数。

设置 RCU Normal

在系统完成启动后设置 rcu_normal 的 systemd 服务

一次性时间同步

为 control plane 或 worker 节点运行一次性 NTP 系统时间同步作业。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat