4
4
5
5
Warning: Experimental workflow subject to change
6
6
7
- This section documents the workflow for building OFED packages for Release train integration.
8
-
9
- The workflow builds the OFED kernel modules against the latest available kernel in Release train
10
- (as configured in SKC) and compiles them into RPM packages to be uploaded to Ark. Addtionally,
11
- this workflow downloads the userspace OFED packages from the Nvidia repository and uploads these
12
- to Ark.
7
+ The Nvidia DOCA framework is distributed as part of StackHPC Release Train for OFED driver support,
8
+ this repository is synced into Ark as part of the Release Train worfkflows, however to ensure
9
+ compatibility with Release Train packages, we are required to build OFED modules with support for
10
+ the latest Release Train kernel.
13
11
14
12
Workflow
15
13
========
16
14
17
15
The workflow uses workflow_dispatch to manually request an OFED build, which will deploy a builder
18
16
VM, apply kayobe config to the builder, upgrade the kernel, reboot, then run two Ansible playbooks
19
- for building and uploading OFED to Ark.
17
+ for building and uploading OFED modules to Ark.
20
18
21
19
Pre-requisites
22
20
--------------
@@ -25,31 +23,48 @@ Before building OFED packages, the workflow will ensure that:
25
23
26
24
* A full distro-sync has taken place, ensuring the kernel is upgraded.
27
25
28
- * The bootloader has been configured to use the latest kernel
26
+ * The bootloader has been configured to use the latest kernel (reset-bls-entries.yml)
29
27
30
28
* noexec is disabled in the temporary logical volume.
31
29
32
30
build-ofed
33
31
----------
34
32
35
- Currently we only support building Rocky Linux 9 OFED packages.
36
-
37
- In order to setup OFED, we're required to build kernel modules for the OFED drivers as
38
- the kernels we provide in release train are unsupported by OFED. To accomplish this we
39
- will need to use the doca-kernel-support from the doca-extra repository.
33
+ Currently we only support building Rocky Linux 9 OFED kerenl module packages.
40
34
41
- We will need to instll dependencies in order to build the OFED kernel modules, and these
42
- are installed at the beginning of the build playbook. We also install base and appstream
43
- dependencies of userspace OFED packages here, this is intended to stop these dependencies
44
- being pulled in later when we download the OFED packages from the doca-host repository.
35
+ The Build OFED module workflow will check that the filesystem is configured (noexec disabled)
36
+ to allow the DOCA build script to run. The workflow will also install any necessary dependencies
37
+ for the module build.
45
38
46
- At the end of the playbook following the kernel module build, the OFED userspace packages
47
- are downloaded from the upstream repository in order to upload these to Ark.
39
+ The build script will output a ``doca-kernel-repo `` RPM which contains all kernel modules built
40
+ as part of the workflow. When this RPM is installed, the repofile is created pointing to the
41
+ modules in `/usr/share/doca-host-<doca-version>/Modules/<kernel-version>/ ` on the host.
48
42
49
43
push-ofed
50
44
---------
51
45
52
- As we're not syncing OFED from any upstream source, and are instead creating our own
53
- repository of custom packages, we will be required to setup the Pulp distribution/publication
54
- and upload the content directly to Ark. This playbook uses the Pulp CLI to upload the RPMs
55
- to Ark.
46
+ As mentioned above, the DOCA repository is synced into the `doca ` repository in Ark. This workflow
47
+ will upload the ``doca-kernel-repo `` RPM to a seperate repository named `doca-modules `. The version
48
+ for this repository is set in `pulp-repo-versions.yml ` and is disabled for local pulp syncs by
49
+ default.
50
+
51
+ Install process
52
+ ===============
53
+
54
+ Pre-requisites
55
+ --------------
56
+
57
+ * Ensure the OFED hosts are upgraded with the latest packages in the point release.
58
+
59
+ * The bootloader has been configured to use the latest kernel (reset-bls-entries.yml)
60
+
61
+ install-doca
62
+ ------------
63
+
64
+ A playbook is provided to install DOCA on hosts in the `mlnx ` group. Ensure this group
65
+ is configured to include the hosts you wish to install DOCA on. To run the install
66
+ playbook:
67
+
68
+ .. code-block :: console
69
+
70
+ kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/install-doca.yml
0 commit comments