Aktionen für AWS Fargate Betriebssystem-Patching-Ereignisse festlegen - Amazon EKS

Hilf mit, diese Seite zu verbessern

Möchten Sie zu diesem Benutzerhandbuch beitragen? Scrollen Sie zum Ende dieser Seite und wählen Sie Diese Seite bearbeiten am aus GitHub. Ihre Beiträge werden dazu beitragen, unser Benutzerhandbuch für alle zu verbessern.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Aktionen für AWS Fargate Betriebssystem-Patching-Ereignisse festlegen

Wichtig

AWS Fargate mit Amazon EKS ist in AWS GovCloud (USA-Ost) und AWS GovCloud (US-West) nicht verfügbar.

Amazon EKS patcht das Betriebssystem regelmäßig für AWS Fargate Knoten, um deren Sicherheit zu gewährleisten. Im Rahmen des Patching-Prozesses werden die Knoten recycelt, um Betriebssystem-Patches zu installieren. Updates werden so durchgeführt, dass sie Ihre Services möglichst wenig beeinflussen. Wenn Pods jedoch nicht erfolgreich bereinigt wurden, kann es sein, dass sie gelöscht werden müssen. Die folgenden Maßnahmen können Ihnen helfen, potenzielle Unterbrechungen zu minimieren:

  • Legen Sie angemessene Budgets für Pod Störungen (PDBs) fest, um zu kontrollierenPods, wie viele Störungen gleichzeitig ausfallen.

  • Erstellen Sie EventBridge Amazon-Regeln, um fehlgeschlagene Räumungen zu behandeln, bevor sie gelöscht Pods werden.

  • Erstellen Sie eine Benachrichtigungskonfiguration unter AWS Benutzerbenachrichtigungen.

Amazon EKS arbeitet eng mit der Kubernetes Community zusammen, um Bugfixes und Sicherheitspatches so schnell wie möglich verfügbar zu machen. Alle Fargate Pods beginnen mit der neuesten Kubernetes Patch-Version, die bei Amazon EKS für die Kubernetes Version Ihres Clusters erhältlich ist. Wenn Sie eine Pod mit einer älteren Patch-Version haben, recycelt Amazon sie EKS möglicherweise, um sie auf die neueste Version zu aktualisieren. Das stellt sicher, dass Ihre Pods mit den neuesten Sicherheitsupdates ausgestattet sind. Auf diese Weise sind Sie immer auf dem Laufenden, wenn es ein kritisches Problem mit dem Namen Common Vulnerabilities and Exposures (CVE) gibt, um Sicherheitsrisiken zu reduzieren.

Sie können Budgets für Pod Betriebsunterbrechungen festlegen (PDBs)Pods, um die Anzahl der gleichzeitig ausgefallenen Dateien zu begrenzen, wenn sie recycelt Pods werden. Sie können dies verwendenPDBs, um die Mindestverfügbarkeit auf der Grundlage der Anforderungen Ihrer einzelnen Anwendungen zu definieren und gleichzeitig Aktualisierungen zuzulassen. Weitere Informationen finden Sie unter Specifying a Disruption Budget for your Application (Angabe eines Unterbrechungsbudgets in Ihrer Anwendung) in der Kubernetes-Dokumentation.

Amazon EKS verwendet Eviction, um die Datei sicher API zu entleeren Pod und dabei die Einstellungen zu respektierenPDBs, die Sie für die Anwendung festgelegt haben. Pods werden von der Availability Zone bereinigt, um Auswirkungen zu minimieren. Wenn die Bereinigung erfolgreich ist, erhält der neue Pod den aktuellsten Patch und es sind keine weiteren Maßnahmen erforderlich.

Wenn die Räumung aufgrund einer Pod fehlgeschlagenen Räumung fehlschlägt, EKS sendet Amazon ein Ereignis mit Informationen über Pods die gescheiterte Räumung an Ihr Konto. Sie können vor der geplanten Beendigungszeit auf die Nachricht reagieren. Die spezifische Zeit variiert je nach Dringlichkeit des Patches. Wenn es soweit ist, EKS versucht Amazon erneut, sie zu vertreiben. Pods Diesmal wird jedoch kein neues Ereignis gesendet, wenn die Bereinigung fehlschlägt. Wenn die Bereinigung erneut fehlschlägt, werden Ihre vorhandenen Pods regelmäßig gelöscht, damit neue Pods den aktuellsten Patch haben.

Im Folgenden sehen Sie ein Beispielereignis, das Sie erhalten könnten, wenn die Pod-Bereinigung fehlschlägt. Es enthält Informationen über den Cluster, den Pod-Namen, den Pod-Namespace, das Fargate-Profil und die geplante Beendigungszeit.

{ "version": "0", "id": "12345678-90ab-cdef-0123-4567890abcde", "detail-type": "EKS Fargate Pod Scheduled Termination", "source": "aws.eks", "account": "111122223333", "time": "2021-06-27T12:52:44Z", "region": "region-code", "resources": [ "default/my-database-deployment" ], "detail": { "clusterName": "my-cluster", "fargateProfileName": "my-fargate-profile", "podName": "my-pod-name", "podNamespace": "default", "evictErrorMessage": "Cannot evict pod as it would violate the pod's disruption budget", "scheduledTerminationTime": "2021-06-30T12:52:44.832Z[UTC]" } }

Wenn mehrere Personen mit einem PDBs verknüpft sind, Pod kann dies außerdem dazu führen, dass die Räumung fehlschlägt. In diesem Fall gibt das Ereignis die folgende Fehlernachricht zurück.

"evictErrorMessage": "This pod has multiple PodDisruptionBudget, which the eviction subresource does not support",

Basierend auf diesem Ereignis können Sie eine gewünschte Aktion erstellen. Sie können beispielsweise Ihr Budget für Pod Betriebsunterbrechungen (PDB) anpassen, um zu kontrollieren, wie die Personen geräumt Pods werden. Nehmen wir genauer an, dass Sie mit einem beginnenPDB, das angibt, wie viel Prozent Pods davon verfügbar sind. Bevor Sie während eines Upgrades zwangsweise beendet Pods werden, können Sie den PDB auf einen anderen Prozentsatz von einstellenPods. Um dieses Ereignis zu empfangen, müssen Sie eine EventBridge Amazon-Regel in dem AWS-Konto und erstellen AWS-Region , zu dem der Cluster gehört. Die Regel muss das folgende benutzerdefinierte Muster verwenden. Weitere Informationen finden Sie im EventBridge Amazon-Benutzerhandbuch unter Erstellen von EventBridge Amazon-Regeln, die auf Ereignisse reagieren.

{ "source": ["aws.eks"], "detail-type": ["EKS Fargate Pod Scheduled Termination"] }

Es kann ein geeignetes Ziel zur Erfassung durch das Ereignis festgelegt werden. Eine vollständige Liste der verfügbaren Ziele finden Sie unter EventBridge Amazon-Ziele im EventBridge Amazon-Benutzerhandbuch. Sie können auch eine Benachrichtigungskonfiguration unter AWS Benutzerbenachrichtigungen erstellen. Wenn Sie AWS Management Console zum Erstellen der Benachrichtigung verwenden, wählen Sie unter Event Rules Elastic Kubernetes Service (EKS) als AWS -Service Namen und EKSFargate Pod Scheduled Termination als Ereignistyp. Weitere Informationen finden Sie unter Erste Schritte mit AWS Benutzerbenachrichtigungen im Benutzerhandbuch für AWS Benutzerbenachrichtigungen.