Installing the SR-IOV Network Operator

You can install the Single Root I/O Virtualization (SR-IOV) Network Operator on your cluster to manage SR-IOV network devices and network attachments.

Installing SR-IOV Network Operator

As a cluster administrator, you can install the SR-IOV Network Operator by using the OKD CLI or the web console.

CLI: Installing the SR-IOV Network Operator

As a cluster administrator, you can install the Operator using the CLI.

Prerequisites

  • A cluster installed on bare-metal hardware with nodes that have hardware that supports SR-IOV.

  • Install the OpenShift CLI (oc).

  • An account with cluster-admin privileges.

Procedure

  1. To create the openshift-sriov-network-operator namespace, enter the following command:

    1. $ cat << EOF| oc create -f -
    2. apiVersion: v1
    3. kind: Namespace
    4. metadata:
    5. name: openshift-sriov-network-operator
    6. EOF
  2. To create an OperatorGroup CR, enter the following command:

    1. $ cat << EOF| oc create -f -
    2. apiVersion: operators.coreos.com/v1
    3. kind: OperatorGroup
    4. metadata:
    5. name: sriov-network-operators
    6. namespace: openshift-sriov-network-operator
    7. spec:
    8. targetNamespaces:
    9. - openshift-sriov-network-operator
    10. EOF
  3. Subscribe to the SR-IOV Network Operator.

    1. Run the following command to get the OKD major and minor version. It is required for the channel value in the next step.

      1. $ OC_VERSION=$(oc version -o yaml | grep openshiftVersion | \
      2. grep -o '[0-9]*[.][0-9]*' | head -1)
    2. To create a Subscription CR for the SR-IOV Network Operator, enter the following command:

      1. $ cat << EOF| oc create -f -
      2. apiVersion: operators.coreos.com/v1alpha1
      3. kind: Subscription
      4. metadata:
      5. name: sriov-network-operator-subscription
      6. namespace: openshift-sriov-network-operator
      7. spec:
      8. channel: "${OC_VERSION}"
      9. name: sriov-network-operator
      10. source: redhat-operators
      11. sourceNamespace: openshift-marketplace
      12. EOF
  4. To verify that the Operator is installed, enter the following command:

    1. $ oc get csv -n openshift-sriov-network-operator \
    2. -o custom-columns=Name:.metadata.name,Phase:.status.phase

    Example output

    1. Name Phase
    2. sriov-network-operator.4.4.0-202006160135 Succeeded

Web console: Installing the SR-IOV Network Operator

As a cluster administrator, you can install the Operator using the web console.

You must create the operator group by using the CLI.

Prerequisites

  • A cluster installed on bare-metal hardware with nodes that have hardware that supports SR-IOV.

  • Install the OpenShift CLI (oc).

  • An account with cluster-admin privileges.

Procedure

  1. Create a namespace for the SR-IOV Network Operator:

    1. In the OKD web console, click AdministrationNamespaces.

    2. Click Create Namespace.

    3. In the Name field, enter openshift-sriov-network-operator, and then click Create.

  2. Install the SR-IOV Network Operator:

    1. In the OKD web console, click OperatorsOperatorHub.

    2. Select SR-IOV Network Operator from the list of available Operators, and then click Install.

    3. On the Install Operator page, under A specific namespace on the cluster, select openshift-sriov-network-operator.

    4. Click Install.

  3. Verify that the SR-IOV Network Operator is installed successfully:

    1. Navigate to the OperatorsInstalled Operators page.

    2. Ensure that SR-IOV Network Operator is listed in the openshift-sriov-network-operator project with a Status of InstallSucceeded.

      During installation an Operator might display a Failed status. If the installation later succeeds with an InstallSucceeded message, you can ignore the Failed message.

      If the operator does not appear as installed, to troubleshoot further:

      • Inspect the Operator Subscriptions and Install Plans tabs for any failure or errors under Status.

      • Navigate to the WorkloadsPods page and check the logs for pods in the openshift-sriov-network-operator project.

Next steps