UNHEALTHY Workspaces starten Lambda neu, das in Python umgeschrieben wurde

Ich werde auch dieses Jahr den Hands Lab Adventskalender machen

Überblick

Wir verwenden Workspaces, einen Dienst, der virtuelle Desktops für AWS bereitstellt. Manchmal fällt es mit ungesund

Es ist kaputt gegangen, obwohl ich nichts getan habe

In den meisten Fällen hilft ein Neustart normalerweise, wenn die Last vorübergehend angelegt wird und abfällt. Deshalb muss ich Lambda vorerst neu starten Da es in Node.js geschrieben ist, unterstützt es häufig auftretende Versions-Upgrades ...

Es ist ein einfacher Code, also dachte ich, ich würde ihn trotzdem in Python umschreiben.

Prozessablauf

Ich fragte mich, warum ich die Reihenfolge überprüfte. Ich fragte mich, ob ich nicht neu starten würde, indem ich direkt die fehlerhafte Arbeitsbereich-ID angab. Da es aus den Warnungsinformationen abgerufen wird, habe ich interpretiert, dass ich nicht für jeden Arbeitsbereich eine Warnung in CloudWatch festlegen wollte und diese nicht geändert habe

Ergebnis des Umschreibens

Umgebungseinstellung

Quellcode

import boto3

sns = boto3.client('sns')
workspaces = boto3.client('workspaces')


def lambda_handler(event, context):

  workspaces_client_list = workspaces.describe_workspaces()

  for workspaces_info in workspaces_client_list['Workspaces']:
    workspace_id = workspaces_info['WorkspaceId']
    workspace_state = workspaces_info['State']

    if workspace_state == 'UNHEALTHY':
      reboot_workspaces(workspace_id)


def reboot_workspaces(workspace_id):

  workspaces.reboot_workspaces(
    RebootWorkspaceRequests = [
      {
        'WorkspaceId': workspace_id
      },
    ]
  )

das Ende

Unabhängig davon, für welche Sprache Sie sich entscheiden, können Sie sich der Upgrade-Unterstützung nicht entziehen. Vor kurzem ist der Python-Fluss in unser Unternehmen gekommen, daher war es schön, die Gelegenheit zu haben, ihn zu schreiben.

Morgen ist @fasahina!

Recommended Posts

UNHEALTHY Workspaces starten Lambda neu, das in Python umgeschrieben wurde
Wie benutzt man Python Lambda?
[Einführung in die Udemy Python3 + -Anwendung] 58. Lambda
[Lambda] [Python] Von Lambda auf Twitter posten!
Zugriff auf RDS von Lambda (Python)
Stellen Sie mit AWS Lambda Python eine Verbindung zu s3 her
[Road to Intermediate Python] Verwenden Sie Lambda-Ausdrücke
Auf Python 2.7.9 aktualisiert
Python: Ich konnte in Lambda rekursieren
Beispiel für eine Slack-Benachrichtigung mit Python Lambda
Exportieren Sie den RDS-Snapshot mit Lambda (Python) nach S3.
[AWS / Lambda] Laden einer externen Python-Bibliothek
Laden Sie Dateien mit Lambda (Python) auf Google Drive hoch.
Zusammenfassung des Studiums von Python zur Verwendung von AWS Lambda
"Backport" zu Python 2
[Einführung in Python] Grundlegende Verwendung von Lambda-Ausdrücken
Schreiben Sie mit Lambda (Python, JavaScript) mehrere Datensätze in DynamoDB.
Ich möchte Lambda mit Python auf Mac AWS!
Python: Kann in Lambda wiederholt werden
Betreff: Python Lambda ist nutzlos ^ H ^ H ^ H ^ H ^ H Schwer zu bedienen
So installieren Sie Python
Änderungen von Python 3.0 zu Python 3.5
Änderungen von Python 2 zu Python 3.0
Pythons Lambda-Ausdruck ...
Schreiben Sie Python2-Code in Python3 um (2to3)
Wie man Gunicorn neu startet
Einführung in die Python-Sprache
Einführung in OpenCV (Python) - (2)
Beachten Sie, dass Python ein Daemon ist
Einführung von Python 2.7 in CentOS 6.6
Verbinden Sie Python mit MySQL
Gepostet als Anhang zu Slack auf AWS Lambda (Python)
So importieren Sie die in EFS eingerichtete Python-Bibliothek in Lambda
Herausforderung Problem 5 mit Python: Lambda ... Ich habe mich entschieden, ohne zu kopieren
[Python] Exportieren Sie regelmäßig mit Lambda aus CloudWatch-Protokollen nach S3
[Python] Ermöglicht den Import von pip3-Paketen in AWS Lambda
Informationen zur Ordnerstruktur beim Hochladen von Python-Modulen auf Lambda Layer