Convert all ASCII CLI output tables to native markdown tables

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Maarten 2026-02-24 18:53:38 +01:00
parent 671d79b77f
commit 959cc0162c
4 changed files with 114 additions and 220 deletions

View File

@ -718,16 +718,12 @@ NOT instances on `ovn-net2`.
After all setup:
```
+----------+----------+---------+---------------+-------------+---------+
| NAME | TYPE | MANAGED | IPV4 | DESCRIPTION | STATE |
+----------+----------+---------+---------------+-------------+---------+
|----------|----------|---------|---------------|-------------|---------|
| UPLINK | physical | YES | | | CREATED |
| incusbr0 | bridge | YES | 10.0.0.1/24 | | CREATED |
| ovn-net1 | ovn | YES | 10.10.10.1/24 | | CREATED |
| ovn-net2 | ovn | YES | 10.10.20.1/24 | | CREATED |
+----------+----------+---------+---------------+-------------+---------+
```
### Network summary

View File

@ -180,15 +180,11 @@ operations-center provisioning update list
Actual output (after ~8 minutes; UUIDs are stable across deployments):
```
+--------------------------------------+---------------------+----------+--------------+----------+--------+
| UUID | Origin | Channels | Version | Severity | Status |
+--------------------------------------+---------------------+----------+--------------+----------+--------+
|------|--------|----------|---------|----------|--------|
| 82aefab7-fec7-5122-89fd-8412d3d2174c | linuxcontainers.org | stable | 202602200553 | none | ready |
| 5d6b1018-e534-5e54-aeb5-c9e6027ab31d | linuxcontainers.org | stable | 202602210344 | none | ready |
| c912a390-c38b-5bd9-b46f-ccaeba6da68a | linuxcontainers.org | stable | 202602230420 | none | ready |
+--------------------------------------+---------------------+----------+--------------+----------+--------+
```
The table also includes `Upstream Channels` and `Published At` columns (omitted
for width). All 3 updates may not be ready at the same time -- at least one
@ -208,13 +204,9 @@ operations-center provisioning token list
Actual output (UUID changes every run):
```
+--------------------------------------+----------------+-------------------------------+---------+-----------------------+
| UUID | Uses Remaining | Expire At | Channel | Description |
+--------------------------------------+----------------+-------------------------------+---------+-----------------------+
|------|----------------|-----------|---------|-------------|
| <token-UUID> | 5 | <30 days from now> | stable | OC-managed cluster v2 |
+--------------------------------------+----------------+-------------------------------+---------+-----------------------+
```
Save the `<token-UUID>` -- you'll need it for the next steps.
@ -340,16 +332,12 @@ operations-center provisioning server list
Actual output (key columns; full table includes Type, Channel, Certificate
Fingerprint, Public Connection URL, Last Updated, Last Seen):
```
+---------+-------------------+------------------------------+--------+----------------+
| Cluster | Name | Connection URL | Status | Update Status |
+---------+-------------------+------------------------------+--------+----------------+
|---------|------|----------------|--------|---------------|
| | oc-node-01 | https://192.168.102.140:8443 | ready | up to date |
| | oc-node-02 | https://192.168.102.141:8443 | ready | up to date |
| | oc-node-03 | https://192.168.102.142:8443 | ready | up to date |
| | operations-center | https://[::1]:8443 | ready | update pending |
+---------+-------------------+------------------------------+--------+----------------+
```
**Key**: all 3 nodes show **"up to date"** because OC delivered the
202602230420 update through its pipeline. This is what unlocks clustering.
@ -435,18 +423,11 @@ incus cluster list oc-node-01:
Actual output (key columns; full table includes FAILURE DOMAIN, DESCRIPTION):
```
+------------+------------------------------+-----------------+--------------+--------+-------------------+
| NAME | URL | ROLES | ARCHITECTURE | STATUS | MESSAGE |
+------------+------------------------------+-----------------+--------------+--------+-------------------+
| oc-node-01 | https://192.168.102.140:8443 | database-leader | x86_64 | ONLINE | Fully operational |
| | | database | | | |
+------------+------------------------------+-----------------+--------------+--------+-------------------+
|------|-----|-------|--------------|--------|---------|
| oc-node-01 | https://192.168.102.140:8443 | database-leader, database | x86_64 | ONLINE | Fully operational |
| oc-node-02 | https://192.168.102.141:8443 | database | x86_64 | ONLINE | Fully operational |
+------------+------------------------------+-----------------+--------------+--------+-------------------+
| oc-node-03 | https://192.168.102.142:8443 | database | x86_64 | ONLINE | Fully operational |
+------------+------------------------------+-----------------+--------------+--------+-------------------+
```
All 3 nodes ONLINE and Fully operational. The `ovn-chassis` role is added
later in Section 5.4.
@ -460,20 +441,14 @@ incus network list oc-node-01:
Actual output (incusbr0 subnet varies per deployment):
```
+-------+--------+--------------------------------------+---------+---------+
| NAME | DRIVER | DESCRIPTION | USED BY | STATE |
+-------+--------+--------------------------------------+---------+---------+
|------|--------|-------------|---------|-------|
| local | zfs | Local storage pool (on system drive) | 8 | CREATED |
+-------+--------+--------------------------------------+---------+---------+
+----------+--------+---------+-----------------+------------------------------+---------+
| NAME | TYPE | MANAGED | IPV4 | DESCRIPTION | USED BY |
+----------+--------+---------+-----------------+------------------------------+---------+
|------|------|---------|------|-------------|---------|
| incusbr0 | bridge | YES | 10.x.x.1/24 | Local network bridge (NAT) | 1 |
| meshbr0 | bridge | YES | none | Internal mesh network bridge | 1 |
+----------+--------+---------+-----------------+------------------------------+---------+
```
OC creates: `local` storage pool (ZFS), `incusbr0` bridge (NAT), and
`meshbr0` (OC-specific mesh network for inter-node communication). The
@ -606,16 +581,12 @@ incus network list oc-node-01:
Actual output:
```
+----------+----------+---------+----------------+------------------------------+---------+
| NAME | TYPE | MANAGED | IPV4 | DESCRIPTION | USED BY |
+----------+----------+---------+----------------+------------------------------+---------+
|------|------|---------|------|-------------|---------|
| UPLINK | physical | YES | | | 1 |
| incusbr0 | bridge | YES | 10.x.x.1/24 | Local network bridge (NAT) | 2 |
| meshbr0 | bridge | YES | none | Internal mesh network bridge | 1 |
| net-prod | ovn | YES | 10.10.10.1/24 | | 0 |
+----------+----------+---------+----------------+------------------------------+---------+
```
The incusbr0 subnet is randomly assigned per deployment. The USED BY count
for net-prod is 0 at this point (test containers deleted); it increases as
@ -754,16 +725,12 @@ incus list oc-node-01:
Actual output (key columns; full table includes IPv6, SNAPSHOTS):
```
+-------------+---------+-----------------------+-----------+------------+
| NAME | STATE | IPV4 | TYPE | LOCATION |
+-------------+---------+-----------------------+-----------+------------+
|------|-------|------|------|----------|
| ha-web-01 | RUNNING | 10.10.10.2 (eth0) | CONTAINER | oc-node-01 |
| ha-web-02 | RUNNING | 10.10.10.3 (eth0) | CONTAINER | oc-node-02 |
| ha-web-03 | RUNNING | 10.10.10.4 (eth0) | CONTAINER | oc-node-03 |
| ovn-central | RUNNING | 10.x.x.x (eth0) | CONTAINER | oc-node-01 |
+-------------+---------+-----------------------+-----------+------------+
```
The ovn-central container is on incusbr0 (random subnet per deployment).
The ha-web containers are on net-prod (10.10.10.0/24, fixed).
@ -788,16 +755,12 @@ operations-center inventory instance list --cluster oc-cluster
Actual output (UUIDs are deterministic based on name/project/cluster):
```
+--------------------------------------+-------------+---------+------------+------------+
| UUID | Name | Project | Cluster | Server |
+--------------------------------------+-------------+---------+------------+------------+
|------|------|---------|---------|--------|
| cf27717e-5f87-5a22-9e82-cc6616fd665d | ha-web-01 | default | oc-cluster | oc-node-01 |
| 657447d3-7773-5005-af07-b62d9f789ffc | ha-web-02 | default | oc-cluster | oc-node-02 |
| 7b79cab9-37f9-50d8-9d4f-20daafd3d932 | ha-web-03 | default | oc-cluster | oc-node-03 |
| 17133a45-6318-5aa5-b6a8-fc5a5871f679 | ovn-central | default | oc-cluster | oc-node-01 |
+--------------------------------------+-------------+---------+------------+------------+
```
The full table also includes a `Last Updated` column.
@ -807,16 +770,12 @@ operations-center inventory network list --cluster oc-cluster
Actual output:
```
+--------------------------------------+----------+----------+---------+------------+
| UUID | Name | Type | Project | Cluster |
+--------------------------------------+----------+----------+---------+------------+
|------|------|------|---------|---------|
| 628df562-c980-5c27-8268-2ba69211eb7f | UPLINK | physical | default | oc-cluster |
| e35ecd83-25c7-54ae-8fd9-66bc241a002f | incusbr0 | bridge | default | oc-cluster |
| 9cc58dd0-9821-5649-807a-88e0cbce8f5c | meshbr0 | bridge | default | oc-cluster |
| 9c3ee7cb-6b7e-5ea9-bf91-e8d44f0f04da | net-prod | ovn | default | oc-cluster |
+--------------------------------------+----------+----------+---------+------------+
```
The full table also includes a `Last Updated` column.
@ -836,16 +795,12 @@ operations-center provisioning server list
Actual output (key columns):
```
+------------+-------------------+------------------------------+--------+----------------+
| Cluster | Name | Connection URL | Status | Update Status |
+------------+-------------------+------------------------------+--------+----------------+
|---------|------|----------------|--------|---------------|
| oc-cluster | oc-node-01 | https://192.168.102.140:8443 | ready | up to date |
| oc-cluster | oc-node-02 | https://192.168.102.141:8443 | ready | up to date |
| oc-cluster | oc-node-03 | https://192.168.102.142:8443 | ready | up to date |
| | operations-center | https://[::1]:8443 | ready | update pending |
+------------+-------------------+------------------------------+--------+----------------+
```
Nodes now show their cluster membership. The OC server itself always shows
`update pending` (it cannot update itself via its own pipeline).

View File

@ -306,21 +306,16 @@ operations-center admin os show
Actual output:
```
+-------------------+----------------------------+
| PROPERTY | VALUE |
+-------------------+----------------------------+
|---------------|--------------------------------------------------------|
| hostname | lab-oc |
| os_version | 202602210344 |
| kernel | 6.12.13 |
| architecture | x86_64 |
| uptime | 4390 |
| addresses | 192.168.102.110/22 (mgmt) |
| | fd42:...:1 (incusbr0) |
| addresses | 192.168.102.110/22 (mgmt), fd42:...:1 (incusbr0) |
| storage_disks | /dev/sda (53.7GB, QEMU) |
| storage_pools | local (zfs, /dev/sda4) |
+-------------------+----------------------------+
```
### Check Application Status
@ -330,13 +325,9 @@ operations-center admin os application list
Actual output:
```
+--------------------+---------+
| NAME | STATUS |
+--------------------+---------+
|-------------------|---------|
| operations-center | running |
+--------------------+---------+
```
### Check for Updates
@ -355,10 +346,8 @@ operations-center admin os service list
Actual output:
```
+----------+---------+
| NAME | ENABLED |
+----------+---------+
|----------|---------|
| ovn | false |
| syslog | false |
| fan | false |
@ -366,8 +355,6 @@ Actual output:
| dns | false |
| metricsA | false |
| metricsB | false |
+----------+---------+
```
### Web UI Access
@ -434,14 +421,9 @@ incus cluster list lab-node-01:
Expected output:
```
+--------------+----------------------------+------------------+--------------+----------------+-------------+--------+-------------------+
| NAME | URL | ROLES | ARCHITECTURE | FAILURE DOMAIN | DESCRIPTION | STATE | MESSAGE |
+--------------+----------------------------+------------------+--------------+----------------+-------------+--------+-------------------+
| lab-node-01 | https://192.168.102.111:8443| database-leader | x86_64 | default | | ONLINE | Fully operational |
| | | database | | | | | |
+--------------+----------------------------+------------------+--------------+----------------+-------------+--------+-------------------+
```
|-------------|----------------------------------|--------------------------|--------------|----------------|-------------|--------|-------------------|
| lab-node-01 | https://192.168.102.111:8443 | database-leader, database | x86_64 | default | | ONLINE | Fully operational |
### 4.4 Join Node-02
@ -500,18 +482,11 @@ incus cluster list lab-node-01:
Expected output — 3 nodes, all ONLINE:
```
+--------------+----------------------------+------------------+--------------+----------------+-------------+--------+-------------------+
| NAME | URL | ROLES | ARCHITECTURE | FAILURE DOMAIN | DESCRIPTION | STATE | MESSAGE |
+--------------+----------------------------+------------------+--------------+----------------+-------------+--------+-------------------+
| lab-node-01 | https://192.168.102.111:8443| database-leader | x86_64 | default | | ONLINE | Fully operational |
| | | database | | | | | |
+--------------+----------------------------+------------------+--------------+----------------+-------------+--------+-------------------+
|-------------|----------------------------------|--------------------------|--------------|----------------|-------------|--------|-------------------|
| lab-node-01 | https://192.168.102.111:8443 | database-leader, database | x86_64 | default | | ONLINE | Fully operational |
| lab-node-02 | https://192.168.102.112:8443 | database | x86_64 | default | | ONLINE | Fully operational |
+--------------+----------------------------+------------------+--------------+----------------+-------------+--------+-------------------+
| lab-node-03 | https://192.168.102.113:8443 | database | x86_64 | default | | ONLINE | Fully operational |
+--------------+----------------------------+------------------+--------------+----------------+-------------+--------+-------------------+
```
Verify storage pool exists on all members:
@ -930,18 +905,14 @@ incus list lab-node-01: --columns nstL4 --format table
Expected layout:
```
+--------------+---------+-------------------+-------------+-----------------------+
| NAME | STATE | TYPE | LOCATION | IPV4 |
+--------------+---------+-------------------+-------------+-----------------------+
|-------------|---------|-----------------|-------------|-----------------------|
| ovn-central | RUNNING | CONTAINER | lab-node-01 | ... |
| prod-web-01 | RUNNING | CONTAINER | lab-node-01 | 10.10.10.x (net-prod) |
| prod-db-01 | RUNNING | VIRTUAL-MACHINE | lab-node-01 | 10.10.10.x (net-prod) |
| prod-web-02 | RUNNING | CONTAINER | lab-node-02 | 10.10.10.x (net-prod) |
| prod-app-01 | RUNNING | VIRTUAL-MACHINE | lab-node-02 | 10.10.10.x (net-prod) |
| prod-api-01 | RUNNING | CONTAINER | lab-node-03 | 10.10.10.x (net-prod) |
+--------------+---------+-------------------+-------------+-----------------------+
```
## Section 8: Network Isolation & Security
@ -1538,21 +1509,16 @@ operations-center admin os show
Actual output:
```
+-------------------+----------------------------+
| PROPERTY | VALUE |
+-------------------+----------------------------+
|---------------|--------------------------------------------------------|
| hostname | lab-oc |
| os_version | 202602210344 |
| kernel | 6.12.13 |
| architecture | x86_64 |
| uptime | 4390 |
| addresses | 192.168.102.110/22 (mgmt) |
| | fd42:...:1 (incusbr0) |
| addresses | 192.168.102.110/22 (mgmt), fd42:...:1 (incusbr0) |
| storage_disks | /dev/sda (53.7GB, QEMU) |
| storage_pools | local (zfs, /dev/sda4) |
+-------------------+----------------------------+
```
### Application Status
@ -1562,13 +1528,9 @@ operations-center admin os application list
Actual output:
```
+--------------------+---------+
| NAME | STATUS |
+--------------------+---------+
|-------------------|---------|
| operations-center | running |
+--------------------+---------+
```
### Service Status
@ -1578,10 +1540,8 @@ operations-center admin os service list
Actual output:
```
+----------+---------+
| NAME | ENABLED |
+----------+---------+
|----------|---------|
| ovn | false |
| syslog | false |
| fan | false |
@ -1589,8 +1549,6 @@ Actual output:
| dns | false |
| metricsA | false |
| metricsB | false |
+----------+---------+
```
### Web UI

View File

@ -177,21 +177,11 @@ incus cluster list oc-node-01:
Actual output:
```
+------------+------------------------------+-----------------+--------------+----------------+-------------+--------+-------------------+
| NAME | URL | ROLES | ARCHITECTURE | FAILURE DOMAIN | DESCRIPTION | STATUS | MESSAGE |
+------------+------------------------------+-----------------+--------------+----------------+-------------+--------+-------------------+
| oc-node-01 | https://192.168.102.140:8443 | ovn-chassis | x86_64 | default | | ONLINE | Fully operational |
| | | database-leader | | | | | |
| | | database | | | | | |
+------------+------------------------------+-----------------+--------------+----------------+-------------+--------+-------------------+
| oc-node-02 | https://192.168.102.141:8443 | ovn-chassis | x86_64 | default | | ONLINE | Fully operational |
| | | database | | | | | |
+------------+------------------------------+-----------------+--------------+----------------+-------------+--------+-------------------+
| oc-node-03 | https://192.168.102.142:8443 | ovn-chassis | x86_64 | default | | ONLINE | Fully operational |
| | | database | | | | | |
+------------+------------------------------+-----------------+--------------+----------------+-------------+--------+-------------------+
```
|------------|------------------------------|---------------------------------------------|--------------|----------------|-------------|--------|-------------------|
| oc-node-01 | https://192.168.102.140:8443 | ovn-chassis, database-leader, database | x86_64 | default | | ONLINE | Fully operational |
| oc-node-02 | https://192.168.102.141:8443 | ovn-chassis, database | x86_64 | default | | ONLINE | Fully operational |
| oc-node-03 | https://192.168.102.142:8443 | ovn-chassis, database | x86_64 | default | | ONLINE | Fully operational |
The `ovn-chassis` roles are from the [networking guide](networking-guide.md) —
they don't affect shared storage setup.
@ -882,15 +872,10 @@ incus storage list oc-node-01:
Actual output:
```
+--------+------------+--------------------------------------+---------+---------+
| NAME | DRIVER | DESCRIPTION | USED BY | STATE |
+--------+------------+--------------------------------------+---------+---------+
|--------|------------|--------------------------------------|---------|---------|
| local | zfs | Local storage pool (on system drive) | 17 | CREATED |
+--------+------------+--------------------------------------+---------+---------+
| shared | lvmcluster | | 1 | CREATED |
+--------+------------+--------------------------------------+---------+---------+
```
```bash
incus storage show oc-node-01:shared