Skip to content

[blueprint-planner] Don't fail on sleds with no zpools #8355

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

jgallagher
Copy link
Contributor

Fixes #7800. That issue notes that this is a minor inconvenience when adding a sled, but (a) it's easy to fix and (b) we hit it in colo in a different context (expunging all the disks on a sled). That combo made it seem worth it to go ahead and fix it.

Fixes #7800. That issue notes that this is a minor inconvenience when
adding a sled, but (a) it's easy to fix and (b) we hit it in colo in a
different context (expunging all the disks on a sled). That combo made
it seem worth it to go ahead and fix it.
blueprint 8da82a8e-bf97-4fbd-8ddd-9f6462732cf1
parent: dbcbd3d6-41ff-48ae-ac0b-1becc9b2fd21

sled: 00320471-945d-413c-85e7-03e091a70b3c (active, config generation 1)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll take this branch for an a4x2 run before merging to make sure having this empty config in the blueprint doesn't cause execution problems, but I think it should be fine.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems fine on a4x2. Added a sled, generated a blueprint that has an empty config:

root@oxz_switch:~# omdb nexus blueprints show current
...
  sled: 9a64bc86-2b6e-4299-bf61-13702a58bce5 (active, config generation 1)

    physical disks:
    -------------------------------------
    vendor   model   serial   disposition
    -------------------------------------


    datasets:
    ---------------------------------------------------------------------------
    dataset name   dataset id   disposition   quota   reservation   compression
    ---------------------------------------------------------------------------


    omicron zones:
    --------------------------------------------------------------
    zone type   zone id   image source   disposition   underlay IP
    --------------------------------------------------------------
...
 METADATA:
    created by:::::::::::::   b4ab66ba-c08b-461a-9dbd-5c90e0e180f3
    created at:::::::::::::   2025-06-17T18:32:25.600Z
    comment::::::::::::::::   skipping sled 9a64bc86-2b6e-4299-bf61-13702a58bce5: no zpools in service

Executing it shows no errors or warnings on the Nexus side, and resulted in the empty config being ledgered on the sled:

root@g2:~# cat /pool/int/1d8bafd3-bb55-4461-8fcf-8b9c91cd59b2/config/omicron-sled-config.json
{"generation":1,"disks":{},"datasets":{},"zones":{},"remove_mupdate_override":null}

Generating another blueprint later was also fine - we added disks and datasets and an NTP zone, and that config was ledgered correctly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

transient 500 error regenerating blueprint after adding a sled
1 participant