18.6. Dépannage des problèmes courants de l'opérateur PTP
Dépannez les problèmes courants de l'opérateur PTP en procédant comme suit.
Conditions préalables
-
Installez le CLI OpenShift Container Platform (
oc
). -
Connectez-vous en tant qu'utilisateur disposant des privilèges
cluster-admin
. - Installez l'opérateur PTP sur un cluster bare-metal avec des hôtes qui prennent en charge PTP.
Procédure
Vérifiez que l'opérateur et les opérandes ont bien été déployés dans le cluster pour les nœuds configurés.
$ oc get pods -n openshift-ptp -o wide
Exemple de sortie
NAME READY STATUS RESTARTS AGE IP NODE linuxptp-daemon-lmvgn 3/3 Running 0 4d17h 10.1.196.24 compute-0.example.com linuxptp-daemon-qhfg7 3/3 Running 0 4d17h 10.1.196.25 compute-1.example.com ptp-operator-6b8dcbf7f4-zndk7 1/1 Running 0 5d7h 10.129.0.61 control-plane-1.example.com
NoteLorsque le bus d'événements rapides PTP est activé, le nombre de pods
linuxptp-daemon
prêts est3/3
. Si le bus d'événements rapides PTP n'est pas activé,2/2
est affiché.Vérifiez que le matériel pris en charge est présent dans le cluster.
$ oc -n openshift-ptp get nodeptpdevices.ptp.openshift.io
Exemple de sortie
NAME AGE control-plane-0.example.com 10d control-plane-1.example.com 10d compute-0.example.com 10d compute-1.example.com 10d compute-2.example.com 10d
Vérifiez les interfaces réseau PTP disponibles pour un nœud :
oc -n openshift-ptp get nodeptpdevices.ptp.openshift.io <node_name> -o yaml
où :
- <node_name>
Spécifie le nœud que vous souhaitez interroger, par exemple,
compute-0.example.com
.Exemple de sortie
apiVersion: ptp.openshift.io/v1 kind: NodePtpDevice metadata: creationTimestamp: "2021-09-14T16:52:33Z" generation: 1 name: compute-0.example.com namespace: openshift-ptp resourceVersion: "177400" uid: 30413db0-4d8d-46da-9bef-737bacd548fd spec: {} status: devices: - name: eno1 - name: eno2 - name: eno3 - name: eno4 - name: enp5s0f0 - name: enp5s0f1
Vérifiez que l'interface PTP est bien synchronisée avec l'horloge primaire en accédant au pod
linuxptp-daemon
pour le nœud correspondant.Obtenez le nom du pod
linuxptp-daemon
et du nœud correspondant que vous souhaitez dépanner en exécutant la commande suivante :$ oc get pods -n openshift-ptp -o wide
Exemple de sortie
NAME READY STATUS RESTARTS AGE IP NODE linuxptp-daemon-lmvgn 3/3 Running 0 4d17h 10.1.196.24 compute-0.example.com linuxptp-daemon-qhfg7 3/3 Running 0 4d17h 10.1.196.25 compute-1.example.com ptp-operator-6b8dcbf7f4-zndk7 1/1 Running 0 5d7h 10.129.0.61 control-plane-1.example.com
Remote shell dans le conteneur
linuxptp-daemon
requis :oc rsh -n openshift-ptp -c linuxptp-daemon-container <linux_daemon_container>
où :
- <linux_daemon_container>
-
est le conteneur que vous voulez diagnostiquer, par exemple
linuxptp-daemon-lmvgn
.
Dans la connexion shell à distance au conteneur
linuxptp-daemon
, utilisez l'outil PTP Management Client (pmc
) pour diagnostiquer l'interface réseau. Exécutez la commande suivantepmc
pour vérifier l'état de synchronisation du dispositif PTP, par exempleptp4l
.# pmc -u -f /var/run/ptp4l.0.config -b 0 'GET PORT_DATA_SET'
Exemple de sortie lorsque le nœud est synchronisé avec succès sur l'horloge primaire
sending: GET PORT_DATA_SET 40a6b7.fffe.166ef0-1 seq 0 RESPONSE MANAGEMENT PORT_DATA_SET portIdentity 40a6b7.fffe.166ef0-1 portState SLAVE logMinDelayReqInterval -4 peerMeanPathDelay 0 logAnnounceInterval -3 announceReceiptTimeout 3 logSyncInterval -4 delayMechanism 1 logMinPdelayReqInterval -4 versionNumber 2