aws / aws/aws-node-termination-handler

Handle ELB instance deregistration

Offen
#316 25 Kommentare 27 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Priority: Medium stalebot-ignore Type: Enhancement
Vorherrschende Sprache
Go
Sterne
1.8k
Forks
286
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

We've noticed in our production environment that we have a need for something to deregister nodes from load balancers as part of the draining procedure, before the instance is terminated. We're currently using [lifecycle-manager](https://github.com/keikoproj/lifecycle-manager) for this, but it would be nice if this was handled by the AWS Node Termination Handler instead.

The reason this is needed is that if the instance is terminated before it's deregistered from an ELB, a number of connections will fail until the health check starts failing. This is particularly noticeable on ELBv2 (NLB+ALB), which seem to take several minutes to react, so we need to have fairly high timeout times on the health checks.

The behaviour we're looking for is that the node termination handler finds a list of classic ELBs and target groups that it's a member of, sends a deregistration request and then waits for the deregistration to finish before marking the instance as being ready to terminate.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Das Issue nennt keine Dateien, Tests oder Einstiegspunkte. Beginne damit, den Ablauf der Node-Terminierung und des Dränens nachzuverfolgen, und ermittle anschließend die beteiligten AWS ELB- und target-group APIs; abgeschlossen ist die Aufgabe, wenn die Instanz aus allen relevanten Load Balancers deregistriert wurde und die Deregistrierung abgewartet wird, bevor die Terminierung fortgesetzt wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
aws, go, kubernetes
Bereich
cloud, devops
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.