Skip to content

Commit e0baca3

Browse files
Copilotmythi
andauthored
OPENSHIFT.md: update NFD URLs to 4.21, add vfio-pci.ids comment, remove merge note, move GPU last
Agent-Logs-Url: https://github.com/intel/intel-device-plugins-for-kubernetes/sessions/6ed9e8c8-ccc6-444b-a2f4-68a666fbf934 Co-authored-by: mythi <1049565+mythi@users.noreply.github.com>
1 parent b35f805 commit e0baca3

1 file changed

Lines changed: 70 additions & 72 deletions

File tree

OPENSHIFT.md

Lines changed: 70 additions & 72 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,16 @@ DSA, and GPU resources to workloads.
2424
- [Installation via CLI](#installation-via-cli)
2525
- [Verify Installation](#verify-operator-installation)
2626
- [Creating Device Plugin Custom Resources](#creating-device-plugin-custom-resources)
27-
- [Intel GPU Device Plugin](#intel-gpu-device-plugin)
2827
- [Intel QAT Device Plugin](#intel-qat-device-plugin)
2928
- [Intel SGX Device Plugin](#intel-sgx-device-plugin)
3029
- [Intel DSA Device Plugin](#intel-dsa-device-plugin)
30+
- [Intel GPU Device Plugin](#intel-gpu-device-plugin)
3131
- [Resources Provided by Intel Device Plugins](#resources-provided-by-intel-device-plugins)
3232

3333
## Prerequisites
3434

3535
- A provisioned RHOCP cluster (bare-metal multi-node is recommended). See
36-
[Red Hat's installation documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/4.18/html/installation_overview/ocp-installation-overview)
36+
[Red Hat's installation documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/4.21/html/installation_overview/ocp-installation-overview)
3737
for cluster provisioning instructions.
3838
- `oc` CLI tool installed and configured with cluster-admin privileges.
3939
- Intel hardware present in worker nodes (see [BIOS Configuration](#bios-configuration)
@@ -77,6 +77,7 @@ spec:
7777
ignition:
7878
version: 3.2.0
7979
kernelArguments:
80+
# The vfio-pci.ids below are examples; add any supported QAT VF or DSA PF PCI IDs for your hardware
8081
- intel_iommu=on,sm_on modules_load=vfio-pci vfio-pci.ids=8086:4941,8086:4943
8182
```
8283
@@ -104,7 +105,7 @@ lsmod | grep vfio_pci
104105

105106
## Node Feature Discovery
106107

107-
[Node Feature Discovery (NFD)](https://docs.redhat.com/en/documentation/openshift_container_platform/4.18/html/specialized_hardware_and_driver_enablement/psap-node-feature-discovery-operator)
108+
[Node Feature Discovery (NFD)](https://docs.redhat.com/en/documentation/openshift_container_platform/4.21/html/specialized_hardware_and_driver_enablement/psap-node-feature-discovery-operator)
108109
detects hardware features and system configuration on cluster nodes and exposes
109110
them as node labels. These labels are used by the Intel Device Plugins Operator
110111
to schedule device plugin pods on appropriate nodes.
@@ -113,12 +114,12 @@ to schedule device plugin pods on appropriate nodes.
113114

114115
Follow the Red Hat documentation to install the NFD Operator:
115116

116-
- [Install from the CLI](https://docs.redhat.com/en/documentation/openshift_container_platform/4.18/html/specialized_hardware_and_driver_enablement/psap-node-feature-discovery-operator#install-operator-cli_psap-node-feature-discovery-operator)
117-
- [Install from the web console](https://docs.redhat.com/en/documentation/openshift_container_platform/4.18/html/specialized_hardware_and_driver_enablement/psap-node-feature-discovery-operator#install-operator-web-console_psap-node-feature-discovery-operator)
117+
- [Install from the CLI](https://docs.redhat.com/en/documentation/openshift_container_platform/4.21/html/specialized_hardware_and_driver_enablement/psap-node-feature-discovery-operator#install-operator-cli_psap-node-feature-discovery-operator)
118+
- [Install from the web console](https://docs.redhat.com/en/documentation/openshift_container_platform/4.21/html/specialized_hardware_and_driver_enablement/psap-node-feature-discovery-operator#install-operator-web-console_psap-node-feature-discovery-operator)
118119

119120
After installing the operator, create a `NodeFeatureDiscovery` CR instance
120121
following the
121-
[Red Hat NFD documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/4.18/html/specialized_hardware_and_driver_enablement/psap-node-feature-discovery-operator#creating-nfd-cr-cli_psap-node-feature-discovery-operator).
122+
[Red Hat NFD documentation](https://docs.redhat.com/en/documentation/openshift_container_platform/4.21/html/specialized_hardware_and_driver_enablement/psap-node-feature-discovery-operator#creating-nfd-cr-cli_psap-node-feature-discovery-operator).
122123

123124
### NodeFeatureRules for Intel Devices
124125

@@ -197,9 +198,6 @@ oc apply -f node-feature-rules.yaml
197198
> typically loaded automatically when the corresponding hardware is present and
198199
> properly configured.
199200

200-
> **Note:** As a cluster administrator, you may need to merge these rules with
201-
> other `NodeFeatureRule` resources already applied on your cluster.
202-
203201
### NFD Verification
204202

205203
Use the following commands to verify that nodes are labeled correctly:
@@ -292,69 +290,6 @@ via `oc` CLI.
292290
> check the [Red Hat Ecosystem Catalog](https://catalog.redhat.com/software/container-stacks/detail/61e9f2d7b9cdd99018fc5736)
293291
> for the latest certified image digests.
294292

295-
### Intel GPU Device Plugin
296-
297-
#### Prerequisites
298-
299-
- NFD labels indicating GPU presence on worker nodes.
300-
301-
#### Create via Web Console
302-
303-
1. Go to **Operator** → **Installed Operators**.
304-
2. Open **Intel Device Plugins Operator**.
305-
3. Navigate to the **Intel GPU Device Plugin** tab.
306-
4. Click **Create GpuDevicePlugin** → set parameters → click **Create**.
307-
308-
#### Create via CLI
309-
310-
```yaml
311-
apiVersion: deviceplugin.intel.com/v1
312-
kind: GpuDevicePlugin
313-
metadata:
314-
name: gpudeviceplugin-sample
315-
spec:
316-
image: registry.connect.redhat.com/intel/intel-gpu-plugin@sha256:e2c2ce658e78c35c425f16a4f8e85c5f32ce31848d9b53a644a05e7f8b7f71b0 # check Red Hat Ecosystem Catalog for latest digest
317-
preferredAllocationPolicy: none
318-
sharedDevNum: 1
319-
logLevel: 4
320-
nodeSelector:
321-
intel.feature.node.kubernetes.io/gpu: "true"
322-
```
323-
324-
Save and apply:
325-
326-
```bash
327-
oc apply -f gpu-device-plugin.yaml
328-
```
329-
330-
#### Verify
331-
332-
```bash
333-
oc get GpuDevicePlugin
334-
```
335-
336-
Example output:
337-
338-
```
339-
NAME DESIRED READY NODE SELECTOR AGE
340-
gpudeviceplugin-sample 1 1 {"intel.feature.node.kubernetes.io/gpu":"true"} 3m
341-
```
342-
343-
#### Using GPU Resources
344-
345-
When claiming `i915` resources in your workload, set both limits and requests:
346-
347-
```yaml
348-
spec:
349-
containers:
350-
- name: gpu-workload
351-
resources:
352-
limits:
353-
gpu.intel.com/i915: 1
354-
requests:
355-
gpu.intel.com/i915: 1
356-
```
357-
358293
### Intel QAT Device Plugin
359294

360295
#### Prerequisites
@@ -583,6 +518,69 @@ configuration:
583518
2. Reference the ConfigMap name in the `provisioningConfig` field of the
584519
`DsaDevicePlugin` CR.
585520

521+
### Intel GPU Device Plugin
522+
523+
#### Prerequisites
524+
525+
- NFD labels indicating GPU presence on worker nodes.
526+
527+
#### Create via Web Console
528+
529+
1. Go to **Operator** → **Installed Operators**.
530+
2. Open **Intel Device Plugins Operator**.
531+
3. Navigate to the **Intel GPU Device Plugin** tab.
532+
4. Click **Create GpuDevicePlugin** → set parameters → click **Create**.
533+
534+
#### Create via CLI
535+
536+
```yaml
537+
apiVersion: deviceplugin.intel.com/v1
538+
kind: GpuDevicePlugin
539+
metadata:
540+
name: gpudeviceplugin-sample
541+
spec:
542+
image: registry.connect.redhat.com/intel/intel-gpu-plugin@sha256:e2c2ce658e78c35c425f16a4f8e85c5f32ce31848d9b53a644a05e7f8b7f71b0 # check Red Hat Ecosystem Catalog for latest digest
543+
preferredAllocationPolicy: none
544+
sharedDevNum: 1
545+
logLevel: 4
546+
nodeSelector:
547+
intel.feature.node.kubernetes.io/gpu: "true"
548+
```
549+
550+
Save and apply:
551+
552+
```bash
553+
oc apply -f gpu-device-plugin.yaml
554+
```
555+
556+
#### Verify
557+
558+
```bash
559+
oc get GpuDevicePlugin
560+
```
561+
562+
Example output:
563+
564+
```
565+
NAME DESIRED READY NODE SELECTOR AGE
566+
gpudeviceplugin-sample 1 1 {"intel.feature.node.kubernetes.io/gpu":"true"} 3m
567+
```
568+
569+
#### Using GPU Resources
570+
571+
When claiming `i915` resources in your workload, set both limits and requests:
572+
573+
```yaml
574+
spec:
575+
containers:
576+
- name: gpu-workload
577+
resources:
578+
limits:
579+
gpu.intel.com/i915: 1
580+
requests:
581+
gpu.intel.com/i915: 1
582+
```
583+
586584
## Resources Provided by Intel Device Plugins
587585

588586
The table below summarizes the Kubernetes resources exposed by each device

0 commit comments

Comments
 (0)