第 VI 部分 电信功能配置 #
本节记录并解释了通过 SUSE Telco Cloud 部署的集群上电信特定功能的配置。
使用了定向网络配置部署方法,如 自动配置 (第 VII 部分 “全自动定向网络配置”) 一节所述。
本节涵盖以下主题:
实时内核镜像 (第 34 章 “实时内核镜像”):实时内核使用的内核镜像。
低延迟和高性能的内核参数 (第 35 章 “用于低延迟和高性能的内核参数”):用于运行电信工作负载以实现最高性能和低延迟的内核参数。
主机上的 CPU 绑定 (第 36 章 “主机上的 CPU 绑定”):通过内核参数和 TuneD 控制文件隔离 CPU。
Kubernetes 上的 CPU 绑定 (第 37 章 “Kubernetes 上的 CPU 绑定”):通过 Kubelet 配置在 Kubernetes 上隔离 CPU。
CNI 配置 (第 38 章 “CNI 配置”):Kubernetes 集群使用的 CNI 配置。
SR-IOV 配置 (第 39 章 “SR-IOV”):Kubernetes 工作负载使用的 SR-IOV 配置。
DPDK 配置 (第 40 章 “DPDK”):系统使用的 DPDK 配置。
vRAN 加速 (第 41 章 “vRAN 加速 (
Intel ACC100/VRB1/VRB2)”):将 FEC 算法计算卸载到 vRAN 加速卡。大页 (第 42 章 “大页”):供 Kubernetes 工作负载使用的大页配置。
NUMA 感知调度配置 (第 43 章 “NUMA 感知调度”):供 Kubernetes 工作负载使用的 NUMA 感知调度配置。
Metal LB 配置 (第 44 章 “Metal LB”):供 Kubernetes 工作负载使用的 Metal LB 配置。
私有镜像仓库配置 (第 45 章 “私有镜像仓库配置”):供 Kubernetes 工作负载使用的私有镜像仓库配置。
精确时间协议配置 (第 46 章 “精确时间协议”):用于运行 PTP 电信控制文件的配置文件。
SCTP 配置 (第 47 章 “SCTP - 流控制传输协议”):在 Linux 内核 IP 协议栈中启用 SCTP 层。
- 34 实时内核镜像
实时内核镜像并不一定比标准内核更好。 它是一个针对特定用例进行调优的不同内核。实时内核针对更低的延迟进行了调优,但代价是吞吐量降低。不建议将实时内核用于通用目的,但在我们的案例中,这是延迟为关键因素的电信工作负载的推荐内核。
- 35 用于低延迟和高性能的内核参数
配置适当的内核参数对于优化性能、实现低延迟以及确保电信工作负载的集群部署成功至关重要。虽然某些参数是专门为使实时内核发挥最佳功能而设计的,但本节适用于 RT 和默认内核配置。此外,某些参数对于定向网络配置 (Directed Network Provisioning) 方法成功部署下游集群节点是强制性的。
- 36 主机上的 CPU 绑定
CPU 绑定(也称为处理器亲和性)是一种将进程或线程绑定到特定 CPU 内核的技术,可防止操作系统的调度程序对其进行移动。通过确保进程始终在同一个内核上运行,它能够受益于对保留在该内核缓存内存中的数据的更快访问。这种做法在高性能计算环境中很常见,因为它能显著提高性能并减少开销。
- 37 Kubernetes 上的 CPU 绑定
通过编辑 RKE2 配置文件,在您的 RKE2 集群中启用 CPU 绑定。在
/etc/rancher/rke2/config.yaml文件中添加以下 kubelet 参数。确保在kubelet-reserved和system-reserved参数中指定内务管理内核:- 38 CNI 配置
Cilium是 SUSE Telco Cloud 的默认 CNI 插件。 要在 RKE2 集群上启用 Cilium 作为默认插件,需要在/etc/rancher/rke2/config.yaml文件中进行以下配置:- 39 SR-IOV
SR-IOV(单根 I/O 虚拟化)允许单个物理设备(例如网络适配器)将其资源分散到多个
PCIe硬件功能中。这使得各种应用程序能够直接访问资源。- 40 DPDK
DPDK(Data Plane Development Kit) 是一组用于快速数据包处理的库和驱动程序。它用于加速在各种 CPU 架构上运行的数据包处理工作负载。 DPDK 包括数据平面库和针对以下内容优化的网络接口卡 (NIC) 驱动程序:- 41 vRAN 加速 (
Intel ACC100/VRB1/VRB2) 随着通信服务提供商从 4G 网络转向 5G 网络,许多提供商正在采用虚拟化无线接入网 (vRAN) 架构,以实现更高的信道容量,并更轻松地部署基于边缘的服务和应用程序。vRAN 解决方案非常适合提供低延迟服务,并能够根据实时流量和网络需求灵活地增加或减少容量。
- 42 大页
当进程使用
RAM时,CPU会将其标记为该进程正在使用。为了提高效率,CPU以块为单位分配RAM,4K字节是许多平台上的默认值。这些块被称为页。页可以交换到磁盘等。- 43 NUMA 感知调度
非一致性内存访问或非一致性内存架构 (
NUMA) 是一种用于SMP(多处理器)架构的物理内存设计,其中内存访问时间取决于内存相对于处理器的位置。在NUMA下,处理器访问其本地内存的速度比访问非本地内存(即另一个处理器的本地内存或处理器间共享的内存)要快。- 44 Metal LB
MetalLB是一种用于裸机 Kubernetes 集群的负载均衡器实现,使用L2和BGP等标准路由协议作为通告协议。它是一种网络负载均衡器,由于在裸机上需要使用 Kubernetes 服务类型LoadBalancer,因此可用于将 Kubernetes 集群中的服务暴露给外部世界。- 45 私有镜像仓库配置
可以配置
Containerd以连接到私有镜像仓库,并使用它们在每个节点上拉取私有镜像。- 46 精确时间协议
精确时间协议 (PTP) 是由电气电子工程师学会 (IEEE) 开发的一种网络协议,旨在实现计算机网络中的亚微秒级时间同步。自诞生以来的二十多年里,PTP 已在许多行业中得到应用。最近,它在电信网络中得到了越来越多的采用,成为 5G 网络的重要组成部分。虽然它是一个相对简单的协议,但其配置可能会根据应用程序发生显著变化。因此,人们定义并标准化了多种控制文件。
- 47 SCTP - 流控制传输协议