Wie aktiviere ich Zugriffsprotokolle für Ihren Application Load Balancer?

Wie Aktiviere Ich Zugriffsprotokolle Fur Ihren Application Load Balancer



Ein Application Load Balancer (ALB) verteilt den Datenverkehr effizient auf verschiedene Server oder Knoten. Dies verhindert, dass die Anwendung zusammenbricht, und bietet den Clients hohe Verfügbarkeit, erhöhte Kapazität und verbesserte Leistung. Darüber hinaus wird die an den Application Load Balancer gestellte Anfrage auch in der Form „ Zugriffsprotokolle “. Auf diese Ansichtsprotokolle können Benutzer über das Dashboard zugreifen, um das Verkehrsmuster zu analysieren und Probleme zu beheben.

Kurzer Überblick

Dieser Artikel veranschaulicht die folgenden Aspekte:

Was ist ein Zugriffsprotokoll?

Der Zugriffsprotokoll ist ein optionale Funktion des Anwendungs-Load-Balancers, der detaillierte Informationen über die an den Load-Balancer gesendete Anfrage erfasst. Diese detaillierten Informationen enthalten Datum und Uhrzeit des Empfangs der Anfrage, Client-IP-Adresse, Latenzen, Port usw. in Form von „Zugriffsprotokolldateien“ . Im Application Load Balancer (ALB) muss diese Funktion manuell aktiviert werden. Diese Zugriffsprotokolle werden dann vom S3-Bucket empfangen, von wo aus sie vom Benutzer abgerufen und angezeigt werden können.







Was sind Zugriffsprotokolldateien?

Die Zugriffsprotokolle enthalten „Zugriffsprotokolldateien“ die alle 5 Minuten für jeden Load Balancer-Knoten veröffentlicht werden. Wenn auf der Website viel Verkehr herrscht, können mehrere Protokolle vorhanden sein. Die Zugriffsprotokolldateien folgen einem bestimmten Format:



Eimer [ / Präfix ] / AWSLogs / aws - Konto - Ausweis / elastischer Lastausgleich / Region / jjjj / mm / dd / aws - Konto - id_elasticloadbalancing_region_app. Belastung - Balancer - id_end - time_ip - adresse_zufällig - Zeichenfolge. Protokoll . gz
  • Eimer ”: Das Feld enthält den Namen des Buckets, der die Protokolldateien empfängt.
  • Präfix ': es ist optional. Dieses Feld enthält einen Wert, wenn der Benutzer zum Zeitpunkt der Erstellung des S3-Buckets Präfixe angegeben hat. Das Präfix darf nicht das „“ enthalten. AWSLogs ' Stichwort.
  • „aws-account-id“ : enthält die AWS-Konto-ID des Eigentümers.
  • Region ”: Feld enthält die Region des Load Balancers.
  • jjj/mm/tt ”: gibt die Daten an, zu denen das Protokoll geliefert wurde.
  • Load-Balancer-ID ”: gibt die spezifische ID des Load Balancers an. Darüber hinaus werden die Schrägstriche in der ID durch die Punkte (.) ersetzt.
  • Endzeit ”: Gibt das Enddatum und die Uhrzeit für das Protokollierungsintervall an.
  • IP Adresse ”: Gibt die IP-Adresse an, unter der der Load Balancer arbeitet
  • Zufallszeichenfolge ”: enthält eine vom System generierte Zufallszeichenfolge.

Was sind Zugriffsprotokolleinträge?

Diese Zugriffsprotokolleinträge enthalten Informationen zu jeder einzelnen Anfrage, die an den Application Load Balancer gestellt wurde. Solche Einzelanfragen werden als bezeichnet 'Log Eintrag' . Zu diesen Protokolleinträgen gehören auch die fehlerhaften Anfragen, d. h. die Anfrage, die es nie an den Load Balancer (ALB) geschafft hat. Wenn die an den Load Balancer gestellten Anfragen Web-Sockets betreffen, wird dieser Protokolleintrag nur aufgezeichnet, wenn die Verbindung geschlossen wird.



Wie werden Zugriffsprotokolldateien verarbeitet?

Standardmäßig ist die Zugriff auf Protokolldateien Sind komprimiert . Daher müssen diese Dateien beim Herunterladen zunächst dekomprimiert werden, um die Informationen anzuzeigen. Mithilfe der S3-Konsole kann der Benutzer die Informationen dieser Protokolldateien jedoch direkt anzeigen.





Diese Protokolldateien werden als Ergebnis der an die gerichteten Anfrage generiert Lastenausgleicher . Wenn derzeit viel Verkehr auf der Website herrscht, enthalten die vom Load Balancer generierten Protokolldateien die Daten in Gigabyte. So große Datenmengen können sein verarbeitet durch die Nutzung Analysewerkzeuge wie Amazon Athena, Splunk, Sumo Logic usw.

Wie aktiviere ich Zugriffsprotokolle für den Application Load Balancer?

Zugriffsprotokolle können für verschiedene Regionen mithilfe der folgenden Methoden konfiguriert werden:



  • Methode 1: Zugriffsprotokolle für Regionen, die vor August 2022 verfügbar sind
  • Methode 2: Zugriffsprotokolle für Regionen, die ab August 2022 oder später verfügbar sind

Methode 1: Zugriffsprotokolle für Regionen, die vor August 2022 verfügbar sind

Um die Zugriffsprotokolle für die Regionen zu konfigurieren, die vor August 2022 verfügbar waren, führen Sie die folgenden Schritte aus:

  • Schritt 1: Erstellen Sie den S3-Bucket
  • Schritt 2: Load Balancer-Attribute bearbeiten
  • Schritt 3: Verifizierung

Schritt 1: Erstellen Sie den S3-Bucket

Der erste Schritt besteht darin, den S3-Bucket zu erstellen, um das Zugriffsprotokoll für den ALB zu aktivieren. Greifen Sie zu diesem Zweck auf den S3-Bucket-Dienst zu, indem Sie ihn in der Suchleiste des suchen AWS-Managementkonsole:

Von dem S3-Dashboard , drücke den „Eimer erstellen“ Taste:

Im Allgemeine Konfiguration Geben Sie eine global eindeutige Kennung für den S3-Bucket im Feld „ Bucket-Name ' Textfeld. Es ist wichtig zu bedenken, dass „ AWS-Region „sollte der Region des Load Balancers ähneln:

Wenn Sie die restlichen Einstellungen als Standard beibehalten, klicken Sie auf „ Bucket erstellen ”-Schaltfläche unten auf der Benutzeroberfläche:

Der Eimer wurde erfolgreich erstellt:

Von dem S3-Bucket-Dashboard , tippen Sie auf die ' S3 „Bucket-Name zum Konfigurieren der Berechtigungen:

Von dem S3-Bucket-Konsole , drücke den ' Berechtigungen Registerkarte „“:

Scrollen Sie in der Benutzeroberfläche nach unten und klicken Sie auf „ Bearbeiten ”-Taste aus dem „ Bucket-Richtlinie ' Abschnitt:

Im Editor , fügen Sie die folgende Richtlinie ein und ersetzen Sie die folgenden Variablen:

{
'Ausführung' : „17.10.2012“ ,
'Stellungnahme' : [
{
'Wirkung' : 'Erlauben' ,
'Wesentlich' : {
„AWS“ : „arn:aws:iam::elb-account-id:root“
} ,
'Aktion' : „s3:PutObject“ ,
'Ressource' : „mein-s3-arn“
}
]
}
  • elb-Konto-ID : Geben Sie in diesem Feld die ID der AWS-Region an. Diese IDs sind in der angegeben offizielle AWS-Dokumentation . Scrollen Sie nach unten zu „ Zugriffsprotokolle für Regionen verfügbar vor August 2022 „Abschnitt und unter der Richtlinie werden die Regionen mit ihren jeweiligen IDs erwähnt:

  • mein-s3-arn : Der ARN des S3-Buckets kann durch die Verwendung von zwei Formaten ersetzt werden:
    • Format 1: ARN mit Präfix
    • Format 2: ARN ohne Präfix

Format 1: ARN mit Präfix : Dieses Format ist einzuhalten, wenn Ihr Bucket den Präfixwert enthält:

arn:aws:s3:::bucket-name / Präfix / AWSLogs / aws-Konto-ID /*
  • Bucket-Name : Ersetzen Sie dieses Feld durch den ursprünglichen Namen des Buckets.
  • Präfix : Geben Sie das Präfix an, falls Ihr Bucket eines enthält. Der Wert des Präfixes ist erforderlich, da er in diesem Format angegeben wird.
  • aws-Konto-ID: Geben Sie in diesem Feld die AWS-Konto-ID ein. Tippen Sie dazu auf den Namen des AWS-Kontos, das in der oberen linken Ecke der Benutzeroberfläche angegeben ist. Kopieren Sie aus dem Dropdown-Menü die Konto-ID:

Format 2: ARN ohne Präfix : Dieses Format soll verwendet werden, wenn der Bucket kein Präfix enthält. Alle angegebenen Felder bleiben die gleichen wie im oben genannten ARN. Der einzige Unterschied besteht darin, dass dies „ RNA „enthält kein „Präfix“-Feld:

arn:aws:s3:::bucket-name / AWSLogs / aws-Konto-ID /*

Hier das Politik ist gewesen ersetzt :

Scrollen Sie nach unten zum unteren Rand der Benutzeroberfläche und klicken Sie auf 'Änderungen speichern' Schaltfläche zum Übernehmen der Änderungen:

Der Politik wurde bearbeitet erfolgreich :

Schritt 2: Load Balancer-Attribute bearbeiten

Von dem EC2-Dashboard , Klick auf das „Load Balancer“ Option unter der 'Lastverteilung' Abschnitt aus dem Navigationsbereich:

Von dem Load Balancer-Dashboard , klicken Sie auf den Namen des Load Balancers, auf den Sie zugreifen möchten Zugriffsprotokolle aktivieren . Für diese Demo ist ein Load Balancer vorhanden bereits erstellt und läuft:

Unter dem ' Einzelheiten Im Abschnitt „“ stehen mehrere verschiedene Optionen zur Verfügung. Drücke den ' Attribute Registerkarte „“:

Von dem ' Attribute Klicken Sie auf der Registerkarte „ Bearbeiten ' Taste:

Scrollen Sie auf der nächsten Oberfläche nach unten zu „ Überwachung ' Abschnitt. Schalten Sie das „ Zugriffsprotokolle ”-Taste, um die zu aktivieren Zugriffsprotokollfunktion . Klicken Sie anschließend auf „S3 durchsuchen“ Klicken Sie auf die Schaltfläche, um den Eimer auszuwählen:

Nach dem Klicken auf „S3 durchsuchen“ Klicken Sie auf die Schaltfläche. Es erscheint ein Popup-Fenster. Wählen Sie den S3-Bucket und klicken Sie auf „ Wählen ' Taste:

Klicken Sie nach dem Hinzufügen des Buckets auf „ Änderungen speichern ' Taste:

AWS zeigt a an Bestätigungsmeldung nach erfolgreicher Konfiguration des S3-Buckets zu den Zugriffsprotokollen:

Schritt 3: Verifizierung

Um zu überprüfen, ob der Bucket hinzugefügt wurde, besuchen Sie das S3-Dashboard und wählen Sie den Bucket aus:

Hier enthält dieser Bucket jetzt einen Ordner „AWSLogs/“ . Dieser Ordner enthält alle Informationen zu Zugriffsprotokollen:

Methode 2: Zugriffsprotokolle für Regionen, die ab August 2022 oder später verfügbar sind

Um Zugriffsprotokolle für die ab August 2022 oder später verfügbaren Regionen zu aktivieren, führen Sie die folgenden Schritte aus:

  • Erstellen Sie den S3-Bucket.
  • Tippen Sie nach dem Erstellen des S3-Buckets auf „ Berechtigungen ” Registerkarte. Tippen Sie auf die ' Bearbeiten „Schaltfläche“ aus dem folgenden Abschnitt.
  • Ersetzen Sie die vorhandene Richtlinie durch die folgende genannte Richtlinie:
{
'Ausführung' : „17.10.2012“ ,
'Stellungnahme' : [
{
'Wirkung' : 'Erlauben' ,
'Wesentlich' : {
'Service' : „logdelivery.elasticloadbalancing.amazonaws.com“
} ,
'Aktion' : „s3:PutObject“ ,
'Ressource' : „arn:aws:s3:::bucket-name/prefix/AWSLogs/aws-account-id/*“
}
]
}

Ersetzen Sie in der oben genannten Richtlinie die folgenden Variablen:

  • Bucket-Name : Ersetzen Sie dieses Feld durch den ursprünglichen Bucket-Namen.
  • Präfix (optional) : Es ist ein optionales Feld. Wenn Ihr Bucket ein Präfix enthält, geben Sie in diesem Feld den Namen des Präfixes ein. Der Benutzer kann dieses Feld jedoch auch überspringen, wenn keine Präfixe anzugeben sind.

Nachdem Sie diese Richtlinie angegeben haben, klicken Sie auf „ Änderungen speichern ”-Taste, um die Änderungen zu übernehmen. Die restlichen Schritte werden in der gleichen Reihenfolge ausgeführt wie in Methode 1 angegeben.

Bonus-Tipp: Deaktivieren Sie die Zugriffsprotokolle

Um die Zugriffsprotokolle in der Anwendung zu deaktivieren, führen Sie die folgenden Schritte aus:

  • Wählen Sie den Load Balancer im Load Balancer Dashboard aus.
  • Scrollen Sie in der Benutzeroberfläche nach unten und klicken Sie auf „ Attribute ” Registerkarte.
  • Innerhalb der ' Attribute Tippen Sie im Abschnitt auf die Schaltfläche „ Bearbeiten ' Taste.
  • Scrollen Sie nach unten zu „ Überwachung ' Abschnitt. Hier kann der Benutzer das Zugriffsprotokoll deaktivieren, indem er die folgende hervorgehobene Schaltfläche umschaltet. Schlagen Sie die 'Änderungen speichern' Schaltfläche zum Speichern und Anwenden von Änderungen:

- Der Zugriffsprotokoll ist gewesen erfolgreich deaktiviert und die Attribute werden geändert:

Das ist alles aus diesem Leitfaden

Abschluss

Um die Zugriffsprotokolle für den Load Balancer zu aktivieren, bearbeiten Sie die genannte Richtlinie im erstellten S3-Bucket auf der Registerkarte „Berechtigungen“ und klicken Sie auf die Schaltfläche „Änderungen speichern“. Auf die Informationen in diesen Protokolldateien kann direkt über die S3-Bucket-Konsole zugegriffen werden. Der Benutzer kann die Protokolldateien auch herunterladen und entpacken, um ihren Inhalt anzuzeigen. Dieser Blog ist eine Schritt-für-Schritt-Demonstration zum Aktivieren und Deaktivieren des Zugriffsprotokolls des Load Balancers.