Skip to content

Commit 5d25202

Browse files
committed
docs: document expected machine interfaces
Explain the interface roles and IP allocation policies available during Expected Machine ingestion. Cover segment selection, Host BMC compatibility, legacy aliases, update behavior, and reservation-only network segments. This supports #4151 Signed-off-by: Chet Nichols III <chetn@nvidia.com>
1 parent 9d296f6 commit 5d25202

7 files changed

Lines changed: 526 additions & 69 deletions

File tree

docs/index.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,8 @@ navigation:
117117
path: provisioning/ingesting-hosts.md
118118
- page: Ingesting Hosts (REST API)
119119
path: provisioning/ingesting-hosts-rest-api.md
120+
- page: Configure Expected Machine Interfaces
121+
path: provisioning/expected-machine-interfaces.md
120122
- page: Site Setup API Parity
121123
path: provisioning/site-setup-api-parity.md
122124
- page: Boot Interfaces and DPU Policies

docs/manuals/nico-admin-cli/commands/expected-machine/expected-machine-add.md

Lines changed: 49 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,12 @@ nico-admin-cli-expected-machine-add - Add expected machine
1313
\[**-p**\|**--bmc-password**\] \<**-s**\|**--chassis-serial-number**\>
1414
\[**-d**\|**--fallback-dpu-serial-number**\] \[**--meta-name**\]
1515
\[**--meta-description**\] \[**--label**\] \[**--sku-id**\] \[**--id**\]
16-
\[**--host_nics**\] \[**--rack_id**\]
16+
\[**--interfaces**\] \[**--rack_id**\]
1717
\[**--default_pause_ingestion_and_poweron**\] \[**--dpf-enabled**\]
1818
\[**--extended**\] \[**--bmc-ip-address**\]
1919
\[**--bmc-retain-credentials**\] \[**--dpu-policy**\]
20-
\[**--disable-lockdown**\] \[**--sort-by**\] \[**-h**\|**--help**\]
20+
\[**--bmc-ip-allocation**\] \[**--disable-lockdown**\] \[**--sort-by**\]
21+
\[**-h**\|**--help**\]
2122

2223
## DESCRIPTION
2324

@@ -63,9 +64,18 @@ A SKU ID that will be added for the newly created Machine.
6364
**--id** *\<UUID\>*
6465
Optional unique ID to assign to the ExpectedMachine on create
6566

66-
**--host_nics** *\<HOST_NICS\>*
67-
Host NICs as a JSON array of ExpectedHostNic objects (fields:
68-
mac_address, nic_type, fixed_ip, fixed_mask, fixed_gateway, primary)
67+
**--interfaces** *\<INTERFACES\>*\
68+
Interfaces as a JSON array of ExpectedInterface objects (fields:
69+
mac_address, role, ip_allocation, network_segment_type, fixed_ip,
70+
fixed_mask, fixed_gateway, primary; legacy: nic_type). Accepted values:
71+
role=host\|dpu_os\|dpu_bmc\|host_bmc and
72+
ip_allocation=dynamic\|fixed\|retained. An omitted role defaults to host.
73+
When ip_allocation is omitted, fixed_ip implies fixed; without fixed_ip,
74+
host_bmc defaults to retained and every other role defaults to dynamic.
75+
Explicit fixed policies, DPU fixed addresses, and inferred host_bmc fixed
76+
addresses with a segment guard must fall within a configured managed
77+
prefix. Legacy host entries with an omitted policy and unguarded inferred
78+
host_bmc fixed addresses keep the static-assignments fallback.
6979

7080
**--rack_id** *\<RACK_ID\>*
7181
Rack ID for this machine
@@ -132,6 +142,29 @@ The previous \`use-as-nic\` value remains accepted as an alias. The legacy
132142

133143
- ignore
134144

145+
**--bmc-ip-allocation** *\<BMC_IP_ALLOCATION\>*\
146+
Per-host control over how this BMC's IP is assigned and retained.
147+
\`auto\` (default): infer from \`--bmc-ip-address\` -- a configured
148+
address is \`fixed\`, no address is \`retained\`; \`dynamic\`: a normal
149+
DHCP lease that may expire and change; \`fixed\`: the operator-specified
150+
\`--bmc-ip-address\` (static); \`retained\`: an auto-allocated address
151+
kept Static for the lifetime of its interface record. Unset defers to
152+
the server default (\`auto\`). See
153+
[Retained Address Lifetime](../../../../provisioning/expected-machine-interfaces.md#retained-address-lifetime).\
154+
155+
\
156+
*Possible values:*
157+
158+
- unspecified
159+
160+
- auto
161+
162+
- dynamic
163+
164+
- fixed
165+
166+
- retained
167+
135168
**--disable-lockdown** *\<DISABLE_LOCKDOWN\>*
136169
If true, do not lock down the server as part of lifecycle management
137170
within the state machine. If unset or false, preserve the default
@@ -159,11 +192,18 @@ Print help (see a summary with -h)
159192

160193
## Examples
161194

195+
> **Security:** Values passed to `--bmc-password` can appear in shell history
196+
> and process listings. Substitute credentials only in a protected
197+
> administrative environment and follow your site's secret-handling policy.
198+
162199
```sh
163-
nico-admin-cli expected-machine add --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password mypassword --chassis-serial-number sample_serial-1
164-
nico-admin-cli expected-machine add --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password mypassword --chassis-serial-number sample_serial-1 --meta-name MyMachine --label DATACENTER:XYZ --sku-id DGX-H100-640GB
165-
nico-admin-cli expected-machine add --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password mypassword --chassis-serial-number sample_serial-1 --bmc-ip-address 192.0.2.20
166-
nico-admin-cli expected-machine add --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password mypassword --chassis-serial-number sample_serial-1 --dpu-policy nic
200+
nico-admin-cli expected-machine add --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password '<bmc-password>' --chassis-serial-number sample_serial-1
201+
nico-admin-cli expected-machine add --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password '<bmc-password>' --chassis-serial-number sample_serial-1 --meta-name MyMachine --label DATACENTER:XYZ --sku-id DGX-H100-640GB
202+
nico-admin-cli expected-machine add --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password '<bmc-password>' --chassis-serial-number sample_serial-1 --bmc-ip-address 192.0.2.20
203+
nico-admin-cli expected-machine add --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password '<bmc-password>' --chassis-serial-number sample_serial-1 --dpu-policy nic
204+
nico-admin-cli expected-machine add --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password '<bmc-password>' --chassis-serial-number sample_serial-1 --interfaces '[{"mac_address":"00:11:22:33:44:55","role":"host_bmc","ip_allocation":"retained"}]'
205+
nico-admin-cli expected-machine add --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password '<bmc-password>' --chassis-serial-number sample_serial-1 --interfaces '[{"mac_address":"02:00:00:00:20:01","role":"dpu_os","ip_allocation":"fixed","fixed_ip":"192.0.2.10"}]'
206+
nico-admin-cli expected-machine add --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password '<bmc-password>' --chassis-serial-number sample_serial-1 --bmc-ip-allocation retained
167207
```
168208

169209
---

docs/manuals/nico-admin-cli/commands/expected-machine/expected-machine-patch.md

Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ update, preserves unprovided fields).
1818
\[**--rack-id**\] \[**--default_pause_ingestion_and_poweron**\]
1919
\[**--dpf-enabled**\] \[**--bmc-ip-address**\] \[**--extended**\]
2020
\[**--bmc-retain-credentials**\] \[**--dpu-policy**\]
21+
\[**--bmc-ip-allocation**\] \[**--interfaces**\]
2122
\[**--disable-lockdown**\] \[**--sort-by**\] \[**-h**\|**--help**\]
2223

2324
## DESCRIPTION
@@ -138,6 +139,40 @@ to \`ignore\`.\
138139

139140
- ignore
140141

142+
**--bmc-ip-allocation** *\<BMC_IP_ALLOCATION\>*\
143+
Per-host control over how this BMC's IP is assigned and retained.
144+
\`auto\` (default): infer from \`--bmc-ip-address\` -- a configured
145+
address is \`fixed\`, no address is \`retained\`; \`dynamic\`: a normal
146+
DHCP lease that may expire and change; \`fixed\`: the operator-specified
147+
\`--bmc-ip-address\` (static); \`retained\`: an auto-allocated address
148+
kept Static for the lifetime of its interface record. Unset preserves
149+
the existing per-host value. See
150+
[Retained Address Lifetime](../../../../provisioning/expected-machine-interfaces.md#retained-address-lifetime).\
151+
152+
\
153+
*Possible values:*
154+
155+
- unspecified
156+
157+
- auto
158+
159+
- dynamic
160+
161+
- fixed
162+
163+
- retained
164+
165+
**--interfaces** *\<INTERFACES\>*\
166+
Interfaces as a JSON array of ExpectedInterface objects (fields:
167+
mac_address, role, ip_allocation, network_segment_type, fixed_ip,
168+
fixed_mask, fixed_gateway, primary; legacy: nic_type). Accepted values:
169+
role=host\|dpu_os\|dpu_bmc\|host_bmc\|unspecified and
170+
ip_allocation=dynamic\|fixed\|retained\|unspecified. Replaces the
171+
machine's full interface list. For a matching stored MAC, omitting role
172+
preserves the stored role; role=unspecified resets it to host. Omitting
173+
ip_allocation preserves the stored policy when the presence of fixed_ip
174+
is unchanged; ip_allocation=unspecified resets it to fixed_ip inference.
175+
141176
**--disable-lockdown** *\<DISABLE_LOCKDOWN\>*
142177
If true, do not lock down the server as part of lifecycle management
143178
within the state machine. If unset or false, preserve the default
@@ -165,11 +200,18 @@ Print help (see a summary with -h)
165200

166201
## Examples
167202

203+
> **Security:** Values passed to `--bmc-password` can appear in shell history
204+
> and process listings. Substitute credentials only in a protected
205+
> administrative environment and follow your site's secret-handling policy.
206+
168207
```sh
169208
nico-admin-cli expected-machine patch --bmc-mac-address 00:11:22:33:44:55 --sku-id DGX-H100-640GB
170209
nico-admin-cli expected-machine patch --id 12345678-1234-5678-90ab-cdef01234567 --sku-id DGX-H100-640GB
171-
nico-admin-cli expected-machine patch --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password mynewpassword
210+
nico-admin-cli expected-machine patch --bmc-mac-address 00:11:22:33:44:55 --bmc-username admin --bmc-password '<bmc-password>'
172211
nico-admin-cli expected-machine patch --bmc-mac-address 00:11:22:33:44:55 --dpu-policy ignore
212+
nico-admin-cli expected-machine patch --bmc-mac-address 00:11:22:33:44:55 --bmc-ip-allocation retained
213+
nico-admin-cli expected-machine patch --bmc-mac-address 00:11:22:33:44:55 --interfaces '[{"mac_address":"02:00:00:00:20:01","fixed_ip":"192.0.2.10"}]'
214+
nico-admin-cli expected-machine patch --bmc-mac-address 00:11:22:33:44:55 --interfaces '[{"mac_address":"02:00:00:00:20:01","role":"unspecified","ip_allocation":"unspecified","fixed_ip":"192.0.2.10"}]'
173215
```
174216

175217
---

0 commit comments

Comments
 (0)