mirror of
https://github.com/openshift/openshift-docs.git
synced 2026-02-05 12:46:18 +01:00
140 lines
4.4 KiB
Plaintext
140 lines
4.4 KiB
Plaintext
// Module included in the following assemblies:
|
|
//
|
|
// *scalability_and_performance/cnf-numa-aware-scheduling.adoc
|
|
|
|
:_mod-docs-content-type: PROCEDURE
|
|
[id="cnf-creating-nrop-cr-hosted-control-plane_{context}"]
|
|
= Creating the NUMAResourcesOperator custom resource for {hcp}
|
|
|
|
After you install the NUMA Resources Operator, create the `NUMAResourcesOperator` custom resource (CR). The CR instructs the NUMA Resources Operator to install all the cluster infrastructure that is needed to support the NUMA-aware scheduler on {hcp}, including daemon sets and APIs.
|
|
|
|
--
|
|
:FeatureName: Creating the NUMAResourcesOperator custom resource for {hcp}
|
|
include::snippets/technology-preview.adoc[]
|
|
--
|
|
|
|
.Prerequisites
|
|
|
|
* Install the OpenShift CLI (`oc`).
|
|
* Log in as a user with `cluster-admin` privileges.
|
|
* Install the NUMA Resources Operator.
|
|
|
|
.Procedure
|
|
|
|
. Export the management cluster kubeconfig file by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ export KUBECONFIG=<path-to-management-cluster-kubeconfig>
|
|
----
|
|
|
|
. Find the `node-pool-name` for your cluster by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc --kubeconfig="$MGMT_KUBECONFIG" get np -A
|
|
----
|
|
+
|
|
.Example output
|
|
[source,terminal]
|
|
----
|
|
NAMESPACE NAME CLUSTER DESIRED NODES CURRENT NODES AUTOSCALING AUTOREPAIR VERSION UPDATINGVERSION UPDATINGCONFIG MESSAGE
|
|
clusters democluster-us-east-1a democluster 1 1 False False 4.21.0 False False
|
|
----
|
|
+
|
|
The `node-pool-name` is the `NAME` field in the output. In this example, the `node-pool-name` is `democluster-us-east-1a`.
|
|
|
|
. Create a YAML file named `nrop-hcp.yaml` with at least the following content:
|
|
+
|
|
[source,yaml]
|
|
----
|
|
apiVersion: nodetopology.openshift.io/v1
|
|
kind: NUMAResourcesOperator
|
|
metadata:
|
|
name: numaresourcesoperator
|
|
spec:
|
|
nodeGroups:
|
|
- poolName: democluster-us-east-1a <1>
|
|
----
|
|
+
|
|
<1> The `poolName` is the `node-pool-name` retrieved in step 2.
|
|
|
|
. On the management cluster, run the following command to list the available secrets:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc get secrets -n clusters
|
|
----
|
|
+
|
|
.Example output
|
|
[source,terminal]
|
|
----
|
|
NAME TYPE DATA AGE
|
|
builder-dockercfg-25qpp kubernetes.io/dockercfg 1 128m
|
|
default-dockercfg-mkvlz kubernetes.io/dockercfg 1 128m
|
|
democluster-admin-kubeconfig Opaque 1 127m
|
|
democluster-etcd-encryption-key Opaque 1 128m
|
|
democluster-kubeadmin-password Opaque 1 126m
|
|
democluster-pull-secret Opaque 1 128m
|
|
deployer-dockercfg-8lfpd kubernetes.io/dockercfg 1 128m
|
|
----
|
|
|
|
. Extract the `kubeconfig` file for the hosted cluster by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc get secret <SECRET_NAME> -n clusters -o jsonpath='{.data.kubeconfig}' | base64 -d > hosted-cluster-kubeconfig
|
|
----
|
|
+
|
|
.Example
|
|
[source,terminal]
|
|
----
|
|
$ oc get secret democluster-admin-kubeconfig -n clusters -o jsonpath='{.data.kubeconfig}' | base64 -d > hosted-cluster-kubeconfig
|
|
----
|
|
|
|
. Export the hosted cluster `kubeconfig` file by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ export HC_KUBECONFIG=<path_to_hosted-cluster-kubeconfig>
|
|
----
|
|
|
|
. Create the `NUMAResourcesOperator` CR by running the following command on the hosted cluster:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc create -f nrop-hcp.yaml
|
|
----
|
|
|
|
.Verification
|
|
|
|
. Verify that the NUMA Resources Operator deployed successfully by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc get numaresourcesoperators.nodetopology.openshift.io
|
|
----
|
|
+
|
|
.Example output
|
|
[source,terminal]
|
|
----
|
|
NAME AGE
|
|
numaresourcesoperator 27s
|
|
----
|
|
|
|
. After a few minutes, run the following command to verify that the required resources deployed successfully:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc get all -n openshift-numaresources
|
|
----
|
|
+
|
|
.Example output
|
|
[source,terminal]
|
|
----
|
|
NAME READY STATUS RESTARTS AGE
|
|
pod/numaresources-controller-manager-7d9d84c58d-qk2mr 1/1 Running 0 12m
|
|
pod/numaresourcesoperator-democluster-7d96r 2/2 Running 0 97s
|
|
pod/numaresourcesoperator-democluster-crsht 2/2 Running 0 97s
|
|
pod/numaresourcesoperator-democluster-jp9mw 2/2 Running 0 97s
|
|
---- |