PTP Operator version 4.18 is incorrectly installed on OpenShift 4.17 or older clusters

Solution Verified - Updated

Environment

  • Red Hat OpenShift Container Platform (RHOCP)
    • < 4.18
  • PTP Operator 4.18

Issue

After a catalog update, the PTP Operator may have been upgraded to version 4.18, which is not supported on OpenShift Container Platform (OCP) versions 4.17 or older.

Administrators can check if the 4.18 PTP Operator is installed by running the following:

$ oc get deployment -n openshift-ptp ptp-operator -o yaml | grep RELEASE -A 1

If the output is as shown below then the 4.18 PTP Operator is installed on the cluster.

        - name: RELEASE_VERSION
          value: v4.18.0

Resolution

The remediation strategy is to perform a targeted downgrade by uninstalling the 4.18 PTP Operator and reinstalling the version compatible with your cluster.

First, backup your ptpoperatorconfigs and ptpconfigs.

$ oc get -n openshift-ptp ptpoperatorconfigs.ptp.openshift.io default  -o yaml > ptp-operator-config.yaml
$ oc get -n openshift-ptp ptpconfigs.ptp.openshift.io  -o yaml > ptpconfigs.yaml

Then remove the metadata fields from the ptp-operator-config.yaml file:

$ sed -r -i '/^[[:space:]]+(creationTimestamp|generation|resourceVersion|uid):([[:space:]]|$)/d' ptp-operator-config.yaml

Next you must delete the openshift-ptp namespace.
CAUTION: This removes the linuxptp-daemon pod. After this point the clocks will not be actively synchronized. However this procedure is short so any drift should be small and will be quickly corrected once the linuxptp-daemon starts.

$ oc delete namespaces openshift-ptp

Then, reinstall the PTP Operator. Feel free to consult the RHOCP documentation for your version for specific instructions. However, the following instructions should work for the affected versions.

$ cat <<EOF > 01-ptp-namespace.yaml
apiVersion: v1
kind: Namespace
metadata:
  name: openshift-ptp
  annotations:
    workload.openshift.io/allowed: management
  labels:
    name: openshift-ptp
    openshift.io/cluster-monitoring: "true"
EOF

$ cat <<EOF > 02-ptp-operatorgroup.yaml
apiVersion: operators.coreos.com/v1
kind: OperatorGroup
metadata:
  name: ptp-operators
  namespace: openshift-ptp
spec:
  targetNamespaces:
  - openshift-ptp
EOF

$ cat <<EOF > 03-ptp-sub.yaml
apiVersion: operators.coreos.com/v1alpha1
kind: Subscription
metadata:
  name: ptp-operator-subscription
  namespace: openshift-ptp
spec:
  channel: "stable"
  name: ptp-operator
  source: redhat-operators
  sourceNamespace: openshift-marketplace
EOF

$ oc apply -f 01-ptp-namespace.yaml && oc apply -f 02-ptp-operatorgroup.yaml && oc apply -f 03-ptp-sub.yaml

Verify the successful installation.

$ oc get csv -n openshift-ptp

Check you have the correct version of the operator installed by rerunning the version check command (Note y should now match your RHOCP version):

$ oc get deployment -n openshift-ptp ptp-operator -o yaml | grep RELEASE -A 1
        - name: RELEASE_VERSION
          value: v4.y.0

Finally, restore the ptpoperatorconfigs and ptpconfigs.

$ oc apply -f ptp-operator-config.yaml
$ oc apply -f ptpconfigs.yaml

Diagnostic Steps

For several hours on February 3, 2026, Red Hat released 4.18 Red Hat Operators catalog content into 4.12-4.17 clusters.

For more information, including Diagnostic Steps, please refer to Red Hat Operator has version higher than the cluster version.


This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.