Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Make load balancer names collision-proof

Aperta
#264 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
55/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
go, kubernetes

Direzione di ricerca

Inizia in internal/provider/load_balancer.go, in GetLoadBalancerName, e confronta la sua logica di denominazione con l’upstream cloudprovider.DefaultLoadBalancerName idiom. Definisci come il service UID suffix preserva l’unicità dopo il troncamento, quindi documenta un percorso di migrazione oppure una ricerca di compatibilità per le floating IP esistenti. Il lavoro è completato quando nomi di servizio troncati in modo identico ricevono floating IP distinte senza lasciare orfane quelle esistenti.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Bug Kubernetes Cloud Controller Manager (CCM)

Context

GetLoadBalancerName (internal/provider/load_balancer.go) builds cluster-namespace-service and truncates at 63 chars. Two long-named services can truncate to the identical name and end up sharing one floating IP — each reconcile loop steals it from the other, silently.

Scope

Add a suffix derived from the service UID (the upstream cloudprovider.DefaultLoadBalancerName idiom) so truncated names remain unique.

⚠️ This changes the computed name for existing floating IPs. Include a migration note or a name-compatibility lookup in the design so existing services don't orphan their floating IPs on upgrade.

Done when

Two services whose composite names truncate identically get distinct floating IPs, with a documented upgrade path.

Related: ownership verification before delete (ships best in the same release, single migration note).

Lingua principale
Go
Stelle
6
Fork
2
Merge medio
3h
PR unite (30g)
6

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di oxidecomputer/oxide-cloud-controller-manager

Tutte le issue di oxidecomputer/oxide-cloud-controller-manager

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.