Wie behebe ich 503-Fehler (Service nicht verfügbar) von meinem Application Load Balancer?

Lesedauer: 3 Minute
0

Ich erhalte einen HTTP 503-Fehler (Service nicht verfügbar) bei der Verwendung eines Application Load Balancers (ALB). Wie kann ich diesen Fehler beheben?

Kurzbeschreibung

Führen Sie einen der folgenden Schritte aus, um festzustellen, ob der Application Load Balancer die 503-Fehler generiert:

  • Greifen Sie auf Ihre CloudWatch-Metriken zu und suchen Sie nach einer Metrik mit der Bezeichnung HTTPCode_ELB_503_Count.
  • Führen Sie diesen CURL-Befehl aus. Falls die Antwort „503 Service Temporarily Unavailable“ (503-Service vorübergehend nicht verfügbar) enthält, kommt der Fehler vom Application Load Balancer.
    Ersetzen Sie MY_URL unbedingt durch die URL, die für den Zugriff auf den Application Load Balancer verwendet wird:
$ curl -IkL MY_URL
  • Überprüfen Sie Ihre Zugriffsprotokolle für Application Load Balancer. Vergewissern Sie sich, dass in den Protokollen ein elb_status_code = 503 vorhanden ist. Falls Sie an einer dieser Stellen 503-Fehler sehen, wird der Fehler von Ihrem Application Load Balancer generiert. Nutzen sie die folgenden Schritte, um den Fehler zu beheben.

Auflösung

Stellen Sie sicher, dass die Zielgruppe über registrierte Ziele verfügt

Überprüfen Sie unter Verwendung der EC2-Konsole

  1. Greifen Sie auf die Amazon-EC2-Konsole zu.
  2. Wählen Sie im Navigationsbereich unter Load Balancing (Lastenverteilung) Target Groups (Zielgruppen) aus.
  3. Wählen Sie den Namen der Zielgruppe, um deren Detailseite zu öffnen.
  4. Wählen Sie die Registerkarte Targets (Ziele).
  5. Überprüfen Sie, ob Ziele aufgeführt sind. Wenn sie aufgeführt sind, sind sie registriert.

Überprüfen Sie unter Verwendung der AWS-CLI

Hinweis: Wenn Sie beim Ausführen von AWS-CLI-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste Version der AWS CLI verwenden.

Verwenden Sie den Befehl describe-target-health, um Ziele mithilfe der AWS-CLI zu überprüfen.

Anmelden von Zielen

Wenn Sie keine angemeldeten Ziele sehen, melden Sie sie über die Konsole oder über die AWS-CLI an.

Stellen Sie sicher, dass die Zielgruppe mit einer Auto-Scaling-Gruppe verknüpft ist (falls Sie Auto Scaling verwenden)

Wenn Ihre Zielgruppe Teil einer Auto-Scaling-Gruppe ist, vergewissern Sie sich, dass beide korrekt zugeordnet sind. Falls dies nicht der Fall ist, fügen Sie die Gruppen an.

Überprüfen Sie unter Verwendung der EC2-Konsole:

  1. Öffnen Sie die Amazon-EC2-Konsole.
  2. Wählen Sie im Navigationsbereich unter Auto Scaling die Option Auto Scaling Groups (Auto-Scaling-Gruppen) aus.
  3. Wählen Sie die Auto-Scaling-Gruppe aus, die Sie überprüfen möchten.
  4. Vergewissern Sie sich unter Load Balancing (Lastenverteilung), dass die Zielgruppe des Application Load Balancer der Auto-Scaling-Gruppe zugeordnet ist.

Überprüfen Sie unter Verwendung der AWS-CLI

Führen Sie den Befehl describe-auto-scaling aus. Achten Sie darauf, MY-ASG durch den Namen Ihrer Auto-Scaling-Gruppe zu ersetzen. Ersetzen Sie AWS-REGION durch Ihre spezifische AWS-Region.

$ aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name MY-ASG --region AWS-REGION

Vergewissern Sie sich in der Befehlsausgabe, dass die Zielgruppe unter TargetGroupARNs aufgeführt ist.

Fügen Sie die Zielgruppe an

Wenn die Zielgruppen nicht der Auto-Scaling-Gruppe angefügt sind, ordnen Sie die Gruppen über die Konsole oder über die CLI zu.

Überprüfen Sie den Zustand des Ziels

Wenn Sie bestätigt haben, dass Ihre Ziele angemeldet sind, stellen Sie sicher, dass sie sich in einem gesunden Zustand befinden. Mehr Informationen finden Sie unter Wie behebe ich Fehler bei Zustandsprüfungen für Application Load Balancers?


Ähnliche Informationen

DeregisterTargets

AttachLoadBalancerTargetGroups

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 2 Jahren