oxidecomputer / oxidecomputer/oxide-cloud-controller-manager

Human-readable instance-type node label

Open
#273 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Enhancement Kubernetes Cloud Controller Manager (CCM)
Dominant language
Go
Stars
6
Forks
2
Avg merge
2h 5m
Merged PRs (30d)
14

Description

Context

InstanceMetadata (internal/provider/instances_v2.go) formats the instance type as fmt.Sprintf("%d-%d", ncpus, memoryGiB), producing node.kubernetes.io/instance-type: "4-16" — cryptic in kubectl get nodes -L output.

Scope

Switch to a readable format such as 4vcpu-16gb.

⚠️ This changes the value of an existing node label. Scope includes checking how/whether the label updates on already-initialized nodes (the node controller generally only sets it at initialization) and documenting the behavior for existing clusters.

Done when

New nodes get the readable format and the migration behavior is documented.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in internal/provider/instances_v2.go at InstanceMetadata and trace where the instance-type node label is set during node initialization. Check how the node controller treats this label on already-initialized nodes, then document that migration behavior for existing clusters. Done means new nodes use the readable format and the existing-cluster behavior is documented.

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
Quiet
Clarity
Mostly clear
Newbie friendliness
58/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.