Direkt zum Inhalt

Wie kann ich ein Protokollpaket für meine Amazon EKS-Instances generieren?

Lesedauer: 2 Minute
0

Ich behebe Probleme mit einer Amazon Elastic Kubernetes Service (Amazon EKS)-Instance. Ich muss alle relevanten Amazon EKS-Protokolle sammeln, die mit dieser Instance verbunden sind.

Kurzbeschreibung

Verwende das AWSSupport-CollectEKSInstanceLogs-Runbook, um deine Amazon EKS-Protokolle zu sammeln.

Wichtig: Damit die Automatisierung funktioniert, musst du den AWS-Systems-Manager-Agent (SSM-Agent) auf deiner Amazon EKS-Instance installieren und ausführen.

Lösung

Hinweis: Die folgende Lösung funktioniert nur für Worker-Knoten in Amazon EKS für Linux.

Gehe wie folgt vor, um ein Protokollpaket für Amazon EKS-Instances zu generieren:

  1. Öffne die AWS Systems Manager-Konsole.
  2. Wähle im Navigationsbereich Automation (Automatisierung) aus.
  3. Wähle Execute automation (Automatisierung ausführen).
  4. Gib auf der Registerkarte Owned by Amazon (Eigentum von Amazon) im Suchfeld Automation document (Automatisierungsdokument) den Text EKSInstanceLogs ein. Wähle dann AWSSupport-CollectEKSInstanceLogs aus.
  5. Wähle Next (Weiter).
  6. Gib auf der Seite Automation Inputs (Automatisierungseingaben) für EKSInstanceId die ID deiner Ziel-Amazon EKS-Instance ein.
  7. Lege die Parameter LogDestination und AutomationAssumeRole fest.
    Hinweis: Das Protokollpaket wird in den Amazon Simple Storage Service (Amazon S3)-Bucket hochgeladen, der im Feld LogDestination angegeben ist. Wenn du keinen Bucket angegeben hast, kannst du das Protokollpaket von der Instance abrufen. Das Protokollpaket wird lokal im Pfad /var/log/ gespeichert.
  8. Wähle Execute automation (Automatisierung ausführen).

Wenn du AWSSupport-CollectEKSInstanceLogs ausführst, wende die folgenden bewährten Methoden und Anforderungen an:

  • Es hat sich bewährt, die von Amazon verwaltete Richtlinie AmazonSSMManagedInstanceCore der entsprechenden AWS Identity and Access Management (IAM)-Rolle zuzuordnen. Diese IAM-Rolle ist für die Amazon Elastic Compute Cloud (Amazon EC2)-Instance vorgesehen, die auf Automatisierung ausgerichtet ist.
  • Wenn du im Feld LogDestination den S3-Bucket-Namen angibst, bevor die Automatisierung ausgeführt wird, kann das Instance-Profil in den Bucket schreiben.
  • Um die Automatisierung auszuführen und den Befehl an die Instance zu senden, musst du mindestens über die Berechtigungen ssm:ExecuteAutomation und ssm:SendCommand verfügen.
  • Um die Automatisierungsausgabe lesen zu können, benötigst du die Berechtigung ssm:GetAutomationExecution.
  • Für Amazon Linux 2 unterstützen IMDS-Endpunkte standardmäßig sowohl IMDSv2 als auch IMDSv1. Wenn du IMDSv2 konfigurierst, funktioniert die andere Version nicht mehr. Da AWSSupport-CollectEKSInstanceLogs IMDSv1 verwendet, wird beim Hochladen der gesammelten Protokolle möglicherweise der Schritt Pending (Ausstehend) angezeigt.

Weitere Informationen

Konfigurieren von erforderlichen Instance-Berechtigungen für Systems Manager

EKS Logs Collector auf der GitHub-Website