Skip to content

Commit 9c7ef06

Browse files
Updated docs for nova-04delta/vfio DT/VA
Add Nova migration SSH secret customization to nova04delta and nvidia-vfio Add finalize GPU installation steps to NVIDIA VFIO passthrough docs Co-authored-by: aider (gemini/gemini-2.5-pro) <[email protected]> Signed-off-by: Bohdan Dobrelia <[email protected]>
1 parent e5d1c0e commit 9c7ef06

File tree

2 files changed

+93
-12
lines changed

2 files changed

+93
-12
lines changed

examples/dt/nova/nova04delta/data-plane.md

Lines changed: 58 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,35 +12,81 @@ oc project openstack
1212
```
1313
Change to the nova/nova04delta directory
1414
```
15-
cd architecture/examples/va/nova/nova04delta/edpm
15+
cd architecture/examples/dt/nova/nova04delta/edpm
1616
```
17-
Edit the [nodeset/values.yaml](nodeset/values.yaml), [nodeset2/values.yaml](nodeset/values.yaml)
17+
Edit the [nodeset/values.yaml](nodeset/values.yaml), [nodeset2/values.yaml](nodeset2/values.yaml)
1818
and [deployment/values.yaml](deployment/values.yaml) files to suit
1919
your environment.
20+
In `nodeset/values.yaml` and `nodeset2/values.yaml`, pay special attention to the `baremetalhosts` section. You will need to provide details for each of your baremetal compute nodes, including:
21+
- `bmc.address`: The IP address of the Baseboard Management Controller (BMC).
22+
- `bootMACAddress`: The MAC address of the network interface that the node will use to PXE boot.
23+
- Other parameters as described in the main [README.md](README.md).
24+
25+
Additionally, you need to provide SSH keys for Nova live migration. The following keys in `nodeset/values.yaml` and `nodeset2/values.yaml` must be populated with base64 encoded values:
26+
- `nova.migration.ssh_keys.private`
27+
- `nova.migration.ssh_keys.public`
28+
29+
You can encode your keys using the `base64` command, for example: `cat ~/.ssh/id_rsa | base64 -w0`.
2030
```
2131
vi nodeset/values.yaml
2232
vi nodeset2/values.yaml
2333
vi deployment/values.yaml
2434
```
25-
Generate the dataplane nodeset CRs.
35+
36+
### Configure BMO - Provisioning to watch all namespaces
37+
2638
```
27-
kustomize build nodeset > dataplane-nodeset.yaml
28-
kustomize build nodeset2 > dataplane-nodeset2.yaml
39+
oc patch provisioning provisioning-configuration --type merge -p '{"spec":{"watchAllNamespaces": true }}'
2940
```
30-
Generate the dataplane deployment CR.
41+
42+
### Configure BMO - Provisioning to use external network for virtual-media
43+
3144
```
32-
kustomize build deployment > dataplane-deployment.yaml
45+
oc patch provisioning provisioning-configuration --type merge -p '{"spec":{"virtualMediaViaExternalNetwork": true }}'
46+
```
47+
48+
### Create the BareMetalHost CRs
49+
50+
Also, ensure the `bmhLabelSelector` in `baremetalSetTemplate` matches the labels you have defined for your `baremetalhosts`. For example, if you use `app: openstack`, your `baremetalhosts` should have a corresponding label.
51+
52+
Before applying the nodeset configuration, you must also create the `bmc-secret` secret that contains the BMC credentials. You can create it with the following command:
53+
```
54+
oc create secret generic bmc-secret --from-literal=username=CHANGEME --from-literal=password=CHANGEME
55+
```
56+
57+
Generate the dataplane nodeset CRs, which include the BareMetalHost definitions.
58+
```
59+
kustomize build nodeset > dataplane-nodeset.yaml
60+
kustomize build nodeset2 > dataplane-nodeset2.yaml
3361
```
3462

35-
## Create CRs
36-
Create the nodeset CR
63+
Apply the CRs to create the BareMetalHosts and the nodesets.
3764
```
3865
oc apply -f dataplane-nodeset.yaml
3966
oc apply -f dataplane-nodeset2.yaml
4067
```
41-
Wait for dataplane nodeset setup to finish
68+
69+
Wait for the BareMetalHosts to become available. You can monitor the status with:
70+
```
71+
oc get bmh -w
72+
```
73+
The state should change to `available`.
74+
75+
### Configure and deploy the dataplane
76+
77+
Edit `deployment/values.yaml` if needed.
78+
```
79+
vi deployment/values.yaml
80+
```
81+
Generate the dataplane deployment CR.
82+
```
83+
kustomize build deployment > dataplane-deployment.yaml
84+
```
85+
86+
Wait for dataplane nodesets setup to finish.
4287
```
4388
oc wait osdpns openstack-edpm --for condition=SetupReady --timeout=600s
89+
oc wait osdpns openstack-edpm-2 --for condition=SetupReady --timeout=600s
4490
```
4591

4692
Start the deployment
@@ -50,7 +96,7 @@ oc apply -f dataplane-deployment.yaml
5096

5197
Wait for dataplane deployment to finish
5298
```
53-
oc wait osdpns openstack-edpm --for condition=Ready --timeout=40m
99+
oc wait osdpd edpm-deployment --for condition=Ready --timeout=40m
54100
```
55101

56102
## Generate yamls necessary to finialize Nvidia GPU installation
@@ -80,4 +126,4 @@ oc apply -f dataplane-post-driver-deployment.yaml
80126
Wait for dataplane deployment to finish
81127
```
82128
oc wait osdpd edpm-deployment-post-driver --for condition=Ready --timeout=20m
83-
```
129+
```

examples/va/nvidia-vfio-passthrough/data-plane-pre.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,12 @@ Edit the `edpm/nodeset/values.yaml` file to suit your environment. Pay special a
3333
- `bootMACAddress`: The MAC address of the network interface that the node will use to PXE boot.
3434
- Other parameters as described in the main [README.md](README.md).
3535

36+
Additionally, you need to provide SSH keys for Nova live migration. The following keys in `edpm/nodeset/values.yaml` must be populated with base64 encoded values:
37+
- `nova.migration.ssh_keys.private`
38+
- `nova.migration.ssh_keys.public`
39+
40+
You can encode your keys using the `base64` command, for example: `cat ~/.ssh/id_rsa | base64 -w0`.
41+
3642
Also, ensure the `bmhLabelSelector` in `baremetalSetTemplate` matches the labels you have defined for your `baremetalhosts`. For example, if you use `app: openstack`, your `baremetalhosts` should have a corresponding label.
3743

3844
Before applying the nodeset configuration, you must also create the `bmc-secret` secret that contains the BMC credentials. You can create it with the following command:
@@ -80,3 +86,32 @@ Wait for dataplane deployment to finish.
8086
```
8187
oc wait osdpns openstack-edpm --for condition=Ready --timeout=60m
8288
```
89+
90+
## Generate yamls necessary to finialize Nvidia GPU installation
91+
After the Nvidia drivers have been blacklisted on the EDPM nodes, the computes need
92+
to be rebooted. Below explains the necessary steps to apply a reboot on the necessary nodesets.
93+
94+
Change to the nvidia-vfio-passthrough/edpm-post-driver directory
95+
```
96+
cd architecture/examples/va/nvidia-vfio-passthrough/edpm-post-driver/
97+
```
98+
Edit the [deployment/values.yaml](edpm-post-driver/deployment/values.yaml) files to suit
99+
your environment.
100+
```
101+
vi deployment/values.yaml
102+
```
103+
Generate the dataplane deployment CR.
104+
```
105+
kustomize build deployment > dataplane-post-driver-deployment.yaml
106+
```
107+
108+
## Create CRs to finalize GPU installation
109+
Start the deployment
110+
```
111+
oc apply -f dataplane-post-driver-deployment.yaml
112+
```
113+
114+
Wait for dataplane deployment to finish
115+
```
116+
oc wait osdpd edpm-deployment-post-driver --for condition=Ready --timeout=20m
117+
```

0 commit comments

Comments
 (0)