This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.11.7. 将 linuxptp 服务配置为边界时钟
PTP Operator 将 PtpConfig.ptp.openshift.io
自定义资源定义 (CRD) 添加至 OpenShift Container Platform。您可以通过创建 PtpConfig
自定义资源 (CR) 对象来配置 linuxptp
服务(ptp4l
、phc2sys
)。
先决条件
-
安装 OpenShift CLI(
oc
)。 -
以具有
cluster-admin
权限的用户身份登录。 - 安装 PTP Operator。
流程
创建以下
PtpConfig
CR,然后在boundaries-clock-ptp-config.yaml
文件中保存 YAML。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
PtpConfig
CR 的名称。- 2
- 指定包括一个或多个
profile
的数组。 - 3
- 指定唯一标识配置集对象的配置集对象的名称。
- 4
- 对于边界时钟,此字段应保持为空。
- 5
- 为
ptp4l
服务指定系统配置选项,例如-2
。该选项不应包含网络接口名称-i <interface>
和服务配置文件-f /etc/ptp4l.conf
,因为网络接口名称和服务配置文件会被自动附加。 - 6
- 指定启动
ptp4l
作为边界时钟所需的配置。例如,ens1f0
同步来自 Pumaster 时钟,ens1f3
同步连接的设备。 - 7
- 要从中同步的接口名称。
- 8
- 用于同步连接到接口的设备的接口。
- 9
- 对于 Intel Columbiaville 800 系列 NIC,请确保
boundary_clock_jbod
设置为0。
对于 Intel Fortville X710 系列 NIC,请确保boundary_clock_jbod
设置为1
。 - 10
- 为
phc2sys
服务指定系统配置选项,如-a -r
。如果此字段为空,PTP Operator 不会启动phc2sys
服务。 - 11
- ptp4l 和 phc2sys 进程的调度策略。默认值为
SCHED_OTHER
。在支持 FIFO 调度的系统上使用SCHED_FIFO
。 - 12
- 当
ptpSchedulingPolicy
设置为SCHED_FIFO
时,用于为ptp4l
和phc2sys
进程设置 FIFO 优先级的整数值(1 到 65)。当ptpSchedulingPolicy
设置为SCHED_OTHER
时,不使用ptpSchedulingPriority
字段。 - 13
- 指定包括一个或多个
recommend
对象的数组,该数组定义了如何将配置集
应用到节点的规则。 - 14
- 指定
profile
部分中定义的profile
对象名称。 - 15
- 使用
0
到99
之间的一个整数值指定priority
。大数值的优先级较低,因此优先级99
低于优先级10
。如果节点可以根据match
字段中定义的规则与多个配置集匹配,则优先级较高的配置集会应用到该节点。 - 16
- 使用
nodeLabel
或nodeName
指定match
规则。 - 17
- 指定
nodeLabel
,它带有来自节点对象的node.Labels
的key
(可以通过运行oc get nodes --show-labels
命令找出这些信息)。 - 18
- 指定
nodeName
,它带有来自节点对象的node.Name
(可以通过运行oc get nodes
命令找到这些信息)。
运行以下命令来创建 CR:
oc create -f boundary-clock-ptp-config.yaml
$ oc create -f boundary-clock-ptp-config.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证步骤
检查
PtpConfig
配置集是否已应用到节点。运行以下命令,获取
openshift-ptp
命名空间中的 pod 列表:oc get pods -n openshift-ptp -o wide
$ oc get pods -n openshift-ptp -o wide
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME READY STATUS RESTARTS AGE IP NODE linuxptp-daemon-4xkbb 1/1 Running 0 43m 10.1.196.24 compute-0.example.com linuxptp-daemon-tdspf 1/1 Running 0 43m 10.1.196.25 compute-1.example.com ptp-operator-657bbb64c8-2f8sj 1/1 Running 0 43m 10.129.0.61 control-plane-1.example.com
NAME READY STATUS RESTARTS AGE IP NODE linuxptp-daemon-4xkbb 1/1 Running 0 43m 10.1.196.24 compute-0.example.com linuxptp-daemon-tdspf 1/1 Running 0 43m 10.1.196.25 compute-1.example.com ptp-operator-657bbb64c8-2f8sj 1/1 Running 0 43m 10.129.0.61 control-plane-1.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检查配置集是否正确。检查与
PtpConfig
配置集中指定的节点对应的linuxptp
守护进程的日志。运行以下命令:oc logs linuxptp-daemon-4xkbb -n openshift-ptp -c linuxptp-daemon-container
$ oc logs linuxptp-daemon-4xkbb -n openshift-ptp -c linuxptp-daemon-container
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow