Skip to content
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

many Reconfigurator execution steps are fatal that shouldn't be #6999

Open
davepacheco opened this issue Nov 5, 2024 · 4 comments · May be fixed by #7286
Open

many Reconfigurator execution steps are fatal that shouldn't be #6999

davepacheco opened this issue Nov 5, 2024 · 4 comments · May be fixed by #7286
Assignees

Comments

@davepacheco
Copy link
Collaborator

Right now, failure at many blueprint execution steps causes all of execution to stop. That feels like the conservative thing to do, but it's not necessarily. When fixing a broken system requires Reconfigurator to proceed despite some failures, this choice is problematic. This came up in a colo incident a few weeks ago where we wanted to use Reconfigurator to repair the system by deploying a second Oximeter zone. In trying to do so, execution failed because it couldn't deploy datasets to a sled agent that was known to be broken (and unrelated to the problem we were trying to repair). There's no reason that failure to deploy datasets to one sled should prevent Reconfigurator from trying to deploy zones to a different sled. Arguably, it's wrong to say that failing to deploy datasets to a sled should prevent us from trying to deploy zones to the same sled. After all, it's totally possible that we successfully deployed datasets during a previous execution, or that there are no new datasets to be created there. We could instead leave it to the sled agent to check this dependency, failing the zones request if it's missing some dataset that needs to be there.

In today's update call I proposed a pattern where:

  • we build the individual execution operations such that when they have strict dependencies like this, the request fails cleanly when the dependency is not satisfied (i.e., PUT /omicron-zones should fail if the body refers to datasets that haven't been configured).
  • having done that, it's generally safe to call these operations even if their dependencies haven't succeeded; this allows Reconfigurator execution to always try to do these operations rather than skipping them if some dependent operation seems to have failed

The conclusion was that this is directionally a good pattern, but it's not clear how unsafe it would be to just ignore these dependencies today. So the proposal here is:

  • build new operations using this pattern where possible
  • for existing operations, evaluate them to determine if we can do things this way and convert them where possible
@andrewjstone
Copy link
Contributor

I just hit this issue. I'm on a4x2 and am trying to test clickhouse keeper addition failures. In order to do so I generated a blueprint, saw that the new keeper was going to be deployed to node g2 and than ran pfexec ./a4x2 hyperstop g2 to stop the whole node.

I expected to see the reconfiguration request start and continuously fail because the new node isn't available to start. When this didn't happen after a few minutes I realized that I probably needed to make the clickhouse parts of the executor skip failures just like I did in #7059 for @plotnick's single-node clickhouse PR.

I took a look at the blueprint executor via omdb nexus background-tasks show blueprint_executor and noticed a failure I didn't expect, but which also makes sense.

root@oxz_switch:~# omdb nexus background-tasks show blueprint_executor
note: Nexus URL not specified.  Will pick one from DNS.
note: using DNS server for subnet fd00:1122:3344::/48
note: (if this is not right, use --dns-server to specify an alternate DNS server)
note: using Nexus URL http://[fd00:1122:3344:101::5]:12221
task: "blueprint_executor"
  configured period: every 1m
  currently executing: iter 76, triggered by a periodic timer firing
    started at 2024-11-13T23:35:27.057Z, running for 35377ms
  last completed activation: iter 75, triggered by a periodic timer firing
    started at 2024-11-13T23:34:26.887Z (95s ago) and ran for 60173ms
    target blueprint: 0ea78350-42c8-4a4d-9fc4-a248e8e73d8c
    execution:        enabled
    status:           failed at: Deploy physical disks (step 3/15)
    error:            step failed: Deploy physical disks
      caused by:      Failed to put OmicronPhysicalDisksConfig {
                          generation: Generation(
                              1,
                          ),
                          disks: [
                              OmicronPhysicalDiskConfig {
                                  identity: DiskIdentity {
                                      vendor: "synthetic-vendor",
                                      model: "synthetic-model-U2",
                                      serial: "synthetic-serial-g2_1",
                                  },
                                  id: 4674336e-78a6-4951-a885-000ae0a4e6ee,
                                  pool_id: c8a66f0a-7fd6-4b80-b557-965950d3c522 (zpool),
                              },
                              OmicronPhysicalDiskConfig {
                                  identity: DiskIdentity {
                                      vendor: "synthetic-vendor",
                                      model: "synthetic-model-U2",
                                      serial: "synthetic-serial-g2_3",
                                  },
                                  id: 52c51b24-2f1c-46d6-949b-901fb6619460,
                                  pool_id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),
                              },
                              OmicronPhysicalDiskConfig {
                                  identity: DiskIdentity {
                                      vendor: "synthetic-vendor",
                                      model: "synthetic-model-U2",
                                      serial: "synthetic-serial-g2_2",
                                  },
                                  id: 6d0bfe97-cc5c-494f-9d7e-fe0d81814588,
                                  pool_id: fa867f0b-d06c-4aba-b496-60f1c30d4479 (zpool),
                              },
                              OmicronPhysicalDiskConfig {
                                  identity: DiskIdentity {
                                      vendor: "synthetic-vendor",
                                      model: "synthetic-model-U2",
                                      serial: "synthetic-serial-g2_4",
                                  },
                                  id: cd42924a-8c27-466a-826f-f0e1ea1140b9,
                                  pool_id: b66de2d9-088e-4a1e-88dc-5d60d36bcd00 (zpool),
                              },
                              OmicronPhysicalDiskConfig {
                                  identity: DiskIdentity {
                                      vendor: "synthetic-vendor",
                                      model: "synthetic-model-U2",
                                      serial: "synthetic-serial-g2_0",
                                  },
                                  id: dbfe2ae2-a534-4eb5-82f5-8eb1dc106ffe,
                                  pool_id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),
                              },
                          ],
                      } to sled 2a7dc7cb-fea5-42ec-82c4-5184b7cef251
      caused by:      Communication Error: error sending request for url (http://[fd00:1122:3344:103::1]:12345/omicron-physical-disks)
      caused by:      error sending request for url (http://[fd00:1122:3344:103::1]:12345/omicron-physical-disks)
      caused by:      operation timed out

I think we decided we wanted to skip this as well and have any dependencies fail if their datasets aren't there. I plan to take care of the multi-node clickhouse bits, but this is slightly outside my wheelhouse. I can probably take a stab at it if we agree this is the way to go though.

@andrewjstone
Copy link
Contributor

I expected after restarting sled g2 with hyperstart for everything to resume. Unfortunately I see another error in the executor now

root@oxz_switch:~# omdb nexus background-tasks show blueprint_executor
note: Nexus URL not specified.  Will pick one from DNS.
note: using DNS server for subnet fd00:1122:3344::/48
note: (if this is not right, use --dns-server to specify an alternate DNS server)
note: using Nexus URL http://[fd00:1122:3344:101::5]:12221
task: "blueprint_executor"
  configured period: every 1m
  currently executing: no
  last completed activation: iter 91, triggered by a periodic timer firing
    started at 2024-11-13T23:50:30.080Z (58s ago) and ran for 35917ms
    target blueprint: 0ea78350-42c8-4a4d-9fc4-a248e8e73d8c                                                                                                                                                                                                                                                                                
    execution:        enabled                                                                                                                                                                                                                                                                                                             
    status:           failed at: Deploy Omicron zones (step 5/15)                                                                                                                                                                                                                                                                         
    error:            step failed: Deploy Omicron zones                                                                                                                                                                                                                                                                                   
      caused by:      Failed to put OmicronZonesConfig {                                                                                                                                                                                                                                                                                  
                          generation: Generation(                                                                                                                                                                                                                                                                                         
                              7,                                                                                                                                                                                                                                                                                                          
                          ),                                                                                                                                                                                                                                                                                                              
                          zones: [                                                                                                                                                                                                                                                                                                        
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 50ea458a-7693-4aa6-b8d3-73abab683d3d (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Clickhouse {                                                                                                                                                                                                                                                                                 
                                      address: [fd00:1122:3344:103::5]:8123,                                                                                                                                                                                                                                                              
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 33d3b0c9-a772-43b5-af50-165f1240b294 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: ClickhouseKeeper {                                                                                                                                                                                                                                                                           
                                      address: [fd00:1122:3344:103::21]:9181,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 8d99f77a-438e-4ca2-8f33-aae634738243 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: ClickhouseKeeper {                                                                                                                                                                                                                                                                           
                                      address: [fd00:1122:3344:103::23]:9181,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 5f6fc75d-f629-4940-a6f4-72fa70385a3f (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: ClickhouseServer {                                                                                                                                                                                                                                                                           
                                      address: [fd00:1122:3344:103::22]:8123,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: a56b7a62-831b-4355-89f2-c093163f99ea (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: CockroachDb {                                                                                                                                                                                                                                                                                
                                      address: [fd00:1122:3344:103::3]:32221,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 26d7f69e-9c50-4095-8d3a-98588437a404 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: fa867f0b-d06c-4aba-b496-60f1c30d4479 (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Crucible {                                                                                                                                                                                                                                                                                   
                                      address: [fd00:1122:3344:103::8]:32345,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: fa867f0b-d06c-4aba-b496-60f1c30d4479 (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 3cad0b50-41a6-47c1-b76b-80a6e558299b (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: b66de2d9-088e-4a1e-88dc-5d60d36bcd00 (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Crucible {                                                                                                                                                                                                                                                                                   
                                      address: [fd00:1122:3344:103::a]:32345,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: b66de2d9-088e-4a1e-88dc-5d60d36bcd00 (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 89d8ade8-2498-4c87-b43e-4867abd812e2 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Crucible {                                                                                                                                                                                                                                                                                   
                                      address: [fd00:1122:3344:103::9]:32345,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 9c5e2197-75e7-40a7-b26c-46e1f0d109f2 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Crucible {                                                                                                                                                                                                                                                                                   
                                      address: [fd00:1122:3344:103::6]:32345,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: f5898e24-9735-4183-8716-403a0da453e4 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: c8a66f0a-7fd6-4b80-b557-965950d3c522 (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Crucible {                                                                                                                                                                                                                                                                                   
                                      address: [fd00:1122:3344:103::7]:32345,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: c8a66f0a-7fd6-4b80-b557-965950d3c522 (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: fbde8ef1-8103-405a-9f3c-495584b53ca0 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: InternalDns {                                                                                                                                                                                                                                                                                
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                      http_address: [fd00:1122:3344:3::1]:5353,                                                                                                                                                                                                                                                           
                                      dns_address: [fd00:1122:3344:3::1]:53,                                                                                                                                                                                                                                                              
                                      gz_address: fd00:1122:3344:3::2,                                                                                                                                                                                                                                                                    
                                      gz_address_index: 2,                                                                                                                                                                                                                                                                                
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 9d5a0733-0d79-4b9a-a91b-8c4496146a22 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: InternalNtp {                                                                                                                                                                                                                                                                                
                                      address: [fd00:1122:3344:103::b]:123,                                                                                                                                                                                                                                                               
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 1f839743-db45-4500-bd83-dd78aad0be42 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: fa867f0b-d06c-4aba-b496-60f1c30d4479 (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Nexus {                                                                                                                                                                                                                                                                                      
                                      internal_address: [fd00:1122:3344:103::4]:12221,                                                                                                                                                                                                                                                    
                                      external_ip: 198.51.100.22,                                                                                                                                                                                                                                                                         
                                      nic: NetworkInterface {                                                                                                                                                                                                                                                                             
                                          id: 51960e68-b42d-43ed-a2e4-8fa36e225a94,                                                                                                                                                                                                                                                       
                                          kind: Service {                                                                                                                                                                                                                                                                                 
                                              id: 1f839743-db45-4500-bd83-dd78aad0be42,                                                                                                                                                                                                                                                   
                                          },                                                                                                                                                                                                                                                                                              
                                          name: Name(                                                                                                                                                                                                                                                                                     
                                              "nexus-1f839743-db45-4500-bd83-dd78aad0be42",                                                                                                                                                                                                                                               
                                          ),                                                                                                                                                                                                                                                                                              
                                          ip: 172.30.2.5,                                                                                                                                                                                                                                                                                 
                                          mac: MacAddr(                                                                                                                                                                                                                                                                                   
                                              MacAddr6(                                                                                                                                                                                                                                                                                   
                                                  [                                                                                                                                                                                                                                                                                       
                                                      168,                                                                                                                                                                                                                                                                                
                                                      64,                                                                                                                                                                                                                                                                                 
                                                      37,                                                                                                                                                                                                                                                                                 
                                                      255,                                                                                                                                                                                                                                                                                
                                                      152,                                                                                                                                                                                                                                                                                
                                                      176,                                                                                                                                                                                                                                                                                
                                                  ],                                                                                                                                                                                                                                                                                      
                                              ),                                                                                                                                                                                                                                                                                          
                                          ),                                                                                                                                                                                                                                                                                              
                                          subnet: V4(                                                                                                                                                                                                                                                                                     
                                              Ipv4Net {                                                                                                                                                                                                                                                                                   
                                                  addr: 172.30.2.0,                                                                                                                                                                                                                                                                       
                                                  width: 24,                                                                                                                                                                                                                                                                              
                                              },                                                                                                                                                                                                                                                                                          
                                          ),                                                                                                                                                                                                                                                                                              
                                          vni: Vni(                                                                                                                                                                                                                                                                                       
                                              100,                                                                                                                                                                                                                                                                                        
                                          ),                                                                                                                                                                                                                                                                                              
                                          primary: true,                                                                                                                                                                                                                                                                                  
                                          slot: 0,                                                                                                                                                                                                                                                                                        
                                          transit_ips: [],                                                                                                                                                                                                                                                                                
                                      },                                                                                                                                                                                                                                                                                                  
                                      external_tls: false,                                                                                                                                                                                                                                                                                
                                      external_dns_servers: [                                                                                                                                                                                                                                                                             
                                          1.1.1.1,                                                                                                                                                                                                                                                                                        
                                          9.9.9.9,                                                                                                                                                                                                                                                                                        
                                      ],                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                          ],                                                                                                                                                                                                                                                                                                              
                      } to sled 2a7dc7cb-fea5-42ec-82c4-5184b7cef251                                                                                                                                                                                                                                                                      
      caused by:      Error Response: status: 500 Internal Server Error; headers: {"content-type": "application/json", "x-request-id": "ba797391-0b99-412e-baa1-1455a938eb97", "content-length": "124", "date": "Wed, 13 Nov 2024 23:43:08 GMT"}; value: Error { error_code: Some("Internal"), message: "Internal Server Error", request_id: "ba797391-0b99-412e-baa1-1455a938eb97" }

@andrewjstone
Copy link
Contributor

andrewjstone commented Nov 13, 2024

I expected after restarting sled g2 with hyperstart for everything to resume. Unfortunately I see another error in the executor now

root@oxz_switch:~# omdb nexus background-tasks show blueprint_executor
note: Nexus URL not specified.  Will pick one from DNS.
note: using DNS server for subnet fd00:1122:3344::/48
note: (if this is not right, use --dns-server to specify an alternate DNS server)
note: using Nexus URL http://[fd00:1122:3344:101::5]:12221
task: "blueprint_executor"
  configured period: every 1m
  currently executing: no
  last completed activation: iter 91, triggered by a periodic timer firing
    started at 2024-11-13T23:50:30.080Z (58s ago) and ran for 35917ms
    target blueprint: 0ea78350-42c8-4a4d-9fc4-a248e8e73d8c                                                                                                                                                                                                                                                                                
    execution:        enabled                                                                                                                                                                                                                                                                                                             
    status:           failed at: Deploy Omicron zones (step 5/15)                                                                                                                                                                                                                                                                         
    error:            step failed: Deploy Omicron zones                                                                                                                                                                                                                                                                                   
      caused by:      Failed to put OmicronZonesConfig {                                                                                                                                                                                                                                                                                  
                          generation: Generation(                                                                                                                                                                                                                                                                                         
                              7,                                                                                                                                                                                                                                                                                                          
                          ),                                                                                                                                                                                                                                                                                                              
                          zones: [                                                                                                                                                                                                                                                                                                        
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 50ea458a-7693-4aa6-b8d3-73abab683d3d (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Clickhouse {                                                                                                                                                                                                                                                                                 
                                      address: [fd00:1122:3344:103::5]:8123,                                                                                                                                                                                                                                                              
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 33d3b0c9-a772-43b5-af50-165f1240b294 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: ClickhouseKeeper {                                                                                                                                                                                                                                                                           
                                      address: [fd00:1122:3344:103::21]:9181,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 8d99f77a-438e-4ca2-8f33-aae634738243 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: ClickhouseKeeper {                                                                                                                                                                                                                                                                           
                                      address: [fd00:1122:3344:103::23]:9181,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 5f6fc75d-f629-4940-a6f4-72fa70385a3f (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: ClickhouseServer {                                                                                                                                                                                                                                                                           
                                      address: [fd00:1122:3344:103::22]:8123,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: a56b7a62-831b-4355-89f2-c093163f99ea (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: CockroachDb {                                                                                                                                                                                                                                                                                
                                      address: [fd00:1122:3344:103::3]:32221,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 26d7f69e-9c50-4095-8d3a-98588437a404 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: fa867f0b-d06c-4aba-b496-60f1c30d4479 (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Crucible {                                                                                                                                                                                                                                                                                   
                                      address: [fd00:1122:3344:103::8]:32345,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: fa867f0b-d06c-4aba-b496-60f1c30d4479 (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 3cad0b50-41a6-47c1-b76b-80a6e558299b (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: b66de2d9-088e-4a1e-88dc-5d60d36bcd00 (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Crucible {                                                                                                                                                                                                                                                                                   
                                      address: [fd00:1122:3344:103::a]:32345,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: b66de2d9-088e-4a1e-88dc-5d60d36bcd00 (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 89d8ade8-2498-4c87-b43e-4867abd812e2 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Crucible {                                                                                                                                                                                                                                                                                   
                                      address: [fd00:1122:3344:103::9]:32345,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: 6174a348-c6a4-4568-aeec-3f832cadbd4d (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 9c5e2197-75e7-40a7-b26c-46e1f0d109f2 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Crucible {                                                                                                                                                                                                                                                                                   
                                      address: [fd00:1122:3344:103::6]:32345,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: f5898e24-9735-4183-8716-403a0da453e4 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: c8a66f0a-7fd6-4b80-b557-965950d3c522 (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Crucible {                                                                                                                                                                                                                                                                                   
                                      address: [fd00:1122:3344:103::7]:32345,                                                                                                                                                                                                                                                             
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: c8a66f0a-7fd6-4b80-b557-965950d3c522 (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: fbde8ef1-8103-405a-9f3c-495584b53ca0 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: InternalDns {                                                                                                                                                                                                                                                                                
                                      dataset: OmicronZoneDataset {                                                                                                                                                                                                                                                                       
                                          pool_name: ZpoolName {                                                                                                                                                                                                                                                                          
                                              id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                           
                                              kind: External,                                                                                                                                                                                                                                                                             
                                          },                                                                                                                                                                                                                                                                                              
                                      },                                                                                                                                                                                                                                                                                                  
                                      http_address: [fd00:1122:3344:3::1]:5353,                                                                                                                                                                                                                                                           
                                      dns_address: [fd00:1122:3344:3::1]:53,                                                                                                                                                                                                                                                              
                                      gz_address: fd00:1122:3344:3::2,                                                                                                                                                                                                                                                                    
                                      gz_address_index: 2,                                                                                                                                                                                                                                                                                
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 9d5a0733-0d79-4b9a-a91b-8c4496146a22 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: aad6b32b-fd1f-4602-a5ac-d87361eb1d4f (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: InternalNtp {                                                                                                                                                                                                                                                                                
                                      address: [fd00:1122:3344:103::b]:123,                                                                                                                                                                                                                                                               
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                              OmicronZoneConfig {                                                                                                                                                                                                                                                                                         
                                  id: 1f839743-db45-4500-bd83-dd78aad0be42 (service),                                                                                                                                                                                                                                                     
                                  filesystem_pool: Some(                                                                                                                                                                                                                                                                                  
                                      ZpoolName {                                                                                                                                                                                                                                                                                         
                                          id: fa867f0b-d06c-4aba-b496-60f1c30d4479 (zpool),                                                                                                                                                                                                                                               
                                          kind: External,                                                                                                                                                                                                                                                                                 
                                      },                                                                                                                                                                                                                                                                                                  
                                  ),                                                                                                                                                                                                                                                                                                      
                                  zone_type: Nexus {                                                                                                                                                                                                                                                                                      
                                      internal_address: [fd00:1122:3344:103::4]:12221,                                                                                                                                                                                                                                                    
                                      external_ip: 198.51.100.22,                                                                                                                                                                                                                                                                         
                                      nic: NetworkInterface {                                                                                                                                                                                                                                                                             
                                          id: 51960e68-b42d-43ed-a2e4-8fa36e225a94,                                                                                                                                                                                                                                                       
                                          kind: Service {                                                                                                                                                                                                                                                                                 
                                              id: 1f839743-db45-4500-bd83-dd78aad0be42,                                                                                                                                                                                                                                                   
                                          },                                                                                                                                                                                                                                                                                              
                                          name: Name(                                                                                                                                                                                                                                                                                     
                                              "nexus-1f839743-db45-4500-bd83-dd78aad0be42",                                                                                                                                                                                                                                               
                                          ),                                                                                                                                                                                                                                                                                              
                                          ip: 172.30.2.5,                                                                                                                                                                                                                                                                                 
                                          mac: MacAddr(                                                                                                                                                                                                                                                                                   
                                              MacAddr6(                                                                                                                                                                                                                                                                                   
                                                  [                                                                                                                                                                                                                                                                                       
                                                      168,                                                                                                                                                                                                                                                                                
                                                      64,                                                                                                                                                                                                                                                                                 
                                                      37,                                                                                                                                                                                                                                                                                 
                                                      255,                                                                                                                                                                                                                                                                                
                                                      152,                                                                                                                                                                                                                                                                                
                                                      176,                                                                                                                                                                                                                                                                                
                                                  ],                                                                                                                                                                                                                                                                                      
                                              ),                                                                                                                                                                                                                                                                                          
                                          ),                                                                                                                                                                                                                                                                                              
                                          subnet: V4(                                                                                                                                                                                                                                                                                     
                                              Ipv4Net {                                                                                                                                                                                                                                                                                   
                                                  addr: 172.30.2.0,                                                                                                                                                                                                                                                                       
                                                  width: 24,                                                                                                                                                                                                                                                                              
                                              },                                                                                                                                                                                                                                                                                          
                                          ),                                                                                                                                                                                                                                                                                              
                                          vni: Vni(                                                                                                                                                                                                                                                                                       
                                              100,                                                                                                                                                                                                                                                                                        
                                          ),                                                                                                                                                                                                                                                                                              
                                          primary: true,                                                                                                                                                                                                                                                                                  
                                          slot: 0,                                                                                                                                                                                                                                                                                        
                                          transit_ips: [],                                                                                                                                                                                                                                                                                
                                      },                                                                                                                                                                                                                                                                                                  
                                      external_tls: false,                                                                                                                                                                                                                                                                                
                                      external_dns_servers: [                                                                                                                                                                                                                                                                             
                                          1.1.1.1,                                                                                                                                                                                                                                                                                        
                                          9.9.9.9,                                                                                                                                                                                                                                                                                        
                                      ],                                                                                                                                                                                                                                                                                                  
                                  },                                                                                                                                                                                                                                                                                                      
                              },                                                                                                                                                                                                                                                                                                          
                          ],                                                                                                                                                                                                                                                                                                              
                      } to sled 2a7dc7cb-fea5-42ec-82c4-5184b7cef251                                                                                                                                                                                                                                                                      
      caused by:      Error Response: status: 500 Internal Server Error; headers: {"content-type": "application/json", "x-request-id": "ba797391-0b99-412e-baa1-1455a938eb97", "content-length": "124", "date": "Wed, 13 Nov 2024 23:43:08 GMT"}; value: Error { error_code: Some("Internal"), message: "Internal Server Error", request_id: "ba797391-0b99-412e-baa1-1455a938eb97" }

Ha, I just didn't wait long enough! Everything resumed and the reconfiguration started.

KEEPER MEMBERSHIP

    queried keeper: 1
    leader_committed_log_index: 7658
    raft config: 1, 2, 3, 4, 5, 6

    queried keeper: 2
    leader_committed_log_index: 7664
    raft config: 1, 2, 3, 4, 5, 6

    queried keeper: 3
    leader_committed_log_index: 7670
    raft config: 1, 2, 3, 4, 5, 6

    queried keeper: 4
    leader_committed_log_index: 7676
    raft config: 1, 2, 3, 4, 5, 6

    queried keeper: 5
    leader_committed_log_index: 7688
    raft config: 1, 2, 3, 4, 5, 6

    queried keeper: 6
    leader_committed_log_index: 7682
    raft config: 1, 2, 3, 4, 5, 6

@andrewjstone andrewjstone self-assigned this Nov 14, 2024
@andrewjstone
Copy link
Contributor

@davepacheco @sunshowers @jgallagher @smklein I've been thinking about the value of returning errors and it's really handy to be able to see them in omdb nexus background-tasks show blueprint_executor. We don't want these errors to halt execution, but we do want to see them.

We have a way to add to the execution report with StepWarning, but I don't think that's visible via omdb yet. Should we also add the ability to see warnings in the background-task view, or is that redundant?

andrewjstone added a commit that referenced this issue Dec 19, 2024
This PR is intended to fix #6999 and #7098.

The executor steps are all independent already except those that will be
fixed in this PR. A disk disposition was added to the blueprint and gets
changed from `InService` to `Expunged` when the `PlanningInput` changes.
A disk state was also added that goes from `Active` -> `Decommissioned`.
This disk state changes when the parent sled is expunged or the
sled-agent has been guaranteed to have seen the disk expungement as
reported via inventory.

This code fully implements the planner bits. The exucutor bits are
going to be pulled in from the [fewer-fatal-errors-in-executor-branch](main...fewer-fatal-errors-in-executor).
The executor bits are going to be expanded to implement the expunge and
decommission as dictated by the blueprint. Because the planner changes
are tightly coupled with the executor,  they will all come in this PR.

Further code will also be added to represent the disk disposition and
state in the blueprint and diff tables for omdb output. This PR is primarily
blocked on [revamping the diff system](#7240).
This is particularly necessary because we need to change those tables
and want to do it rigorously after we have a visitor based mechanism
for doing so.

There is some more cleanup to do here as well, in particular around
the `physical_disk_filter` and things that may not be needed when the
executor bits get fully implemented.
@andrewjstone andrewjstone linked a pull request Dec 19, 2024 that will close this issue
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 a pull request may close this issue.

2 participants