Enabling the Security Profiles Operator
Before you can use the Security Profiles Operator, you must ensure the Operator is deployed in the cluster.
Important
All cluster nodes must have the same release version in order for this Operator to function properly. As an example, for nodes running RHCOS, all nodes must have the same RHCOS version.
Important
The Security Profiles Operator supports only Red Hat Enterprise Linux CoreOS (RHCOS) worker nodes. Red Hat Enterprise Linux (RHEL) nodes are not supported.
Important
The Security Profiles Operator supports x86_64 and ppc64le architecture.
Installing the Security Profiles Operator
-
You must have access to the web console as a user with
cluster-adminprivileges.
-
In the OpenShift Container Platform web console, navigate to Ecosystem → Software Catalog.
-
Search for the Security Profiles Operator, then click Install.
-
Keep the default selection of Installation mode and namespace to ensure that the Operator will be installed to the
openshift-security-profilesnamespace. -
Click Install.
To confirm that the installation is successful:
-
Navigate to the Ecosystem → Installed Operators page.
-
Check that the Security Profiles Operator is installed in the
openshift-security-profilesnamespace and its status isSucceeded.
If the Operator is not installed successfully:
-
Navigate to the Ecosystem → Installed Operators page and inspect the
Statuscolumn for any errors or failures. -
Navigate to the Workloads → Pods page and check the logs in any pods in the
openshift-security-profilesproject that are reporting issues.
Installing the Security Profiles Operator using the CLI
-
You must have
cluster-adminprivileges.
-
Define a
Namespaceobject:Examplenamespace-object.yamlapiVersion: v1 kind: Namespace metadata: name: openshift-security-profiles labels: openshift.io/cluster-monitoring: "true" -
Create the
Namespaceobject:$ oc create -f namespace-object.yaml -
Define an
OperatorGroupobject:Exampleoperator-group-object.yamlapiVersion: operators.coreos.com/v1 kind: OperatorGroup metadata: name: security-profiles-operator namespace: openshift-security-profiles -
Create the
OperatorGroupobject:$ oc create -f operator-group-object.yaml -
Define a
Subscriptionobject:Examplesubscription-object.yamlapiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: security-profiles-operator-sub namespace: openshift-security-profiles spec: channel: release-alpha-rhel-8 installPlanApproval: Automatic name: security-profiles-operator source: redhat-operators sourceNamespace: openshift-marketplace -
Create the
Subscriptionobject:$ oc create -f subscription-object.yaml
Note
If you are setting the global scheduler feature and enable defaultNodeSelector, you must create the namespace manually and update the annotations of the openshift-security-profiles namespace, or the namespace where the Security Profiles Operator was installed, with openshift.io/node-selector: “”. This removes the default node selector and prevents deployment failures.
-
Verify the installation succeeded by inspecting the following CSV file:
$ oc get csv -n openshift-security-profiles -
Verify that the Security Profiles Operator is operational by running the following command:
$ oc get deploy -n openshift-security-profiles
Configuring logging verbosity
The Security Profiles Operator supports the default logging verbosity of 0 and an enhanced verbosity of 1.
-
To enable enhanced logging verbosity, patch the
spodconfiguration and adjust the value by running the following command:$ oc -n openshift-security-profiles patch spod \ spod --type=merge -p '{"spec":{"verbosity":1}}'Example outputsecurityprofilesoperatordaemon.security-profiles-operator.x-k8s.io/spod patched