oxidecomputer / oxidecomputer/oxide-cloud-controller-manager
[RI-20] Populate Kubernetes topology labels from Oxide failure domains
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 6
- Forks
- 2
- Avg merge
- 2h 5m
- Merged PRs (30d)
- 14
Description
The CCM’s InstanceMetadata implementation returns provider ID, instance type, and node addresses but omits zone and region metadata. Kubernetes consequently receives no topology.kubernetes.io/zone label and cannot use scheduler topology constraints to spread workloads across Oxide failure domains.
Populate a stable, distinct topology value for each Oxide failure domain through InstanceMetadata.Zone. This may depend on the Oxide API exposing a tenant-visible instance-to-failure-domain identifier; coordinate that dependency rather than assigning every node the generic value sled.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the CCM’s InstanceMetadata implementation and its Zone method, then trace how the Oxide API could expose a tenant-visible instance-to-failure-domain identifier. Coordinate that API dependency and verify that each failure domain produces a stable, distinct topology value so Kubernetes receives topology.kubernetes.io/zone labels rather than the generic sled value.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kubernetes
- Domain
- cloud, infrastructure
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100