Automatisieren Sie die Scaleway-Server-Informationsabfrage & Filtern Sie Daten sofort
Die manuelle Konsolidierung und Filterung von Scaleway-Serverdetails über mehrere Regionen und Servertypen hinweg ist zeitaufwändig und fehleranfällig. Dieser n8n-Workflow automatisiert das Abrufen umfassender Informationen für alle Scaleway-Instanzen und Baremetal-Server und filtert dann dynamisch die Ergebnisse nach Tags, Name, IP oder Zone für sofortige, umsetzbare Einsichten.

Documentation
Automatisierte Scaleway-Serverinformationen & Filterung
Dieser n8n-Workflow vereinfacht das Abrufen umfassender Daten für alle Ihre Scaleway-Server, einschließlich Compute-Instanzen und Baremetal-Maschinen, aus dynamisch definierten Zonen. Er aggregiert diese Informationen in einem einheitlichen Datensatz und ermöglicht es Benutzern, Ergebnisse basierend auf spezifischen Kriterien wie Name, Tags, öffentlicher IP-Adresse oder Zone zu filtern – alles bereitgestellt über einen sicheren Webhook.
Hauptfunktionen
- Umfassende Datensammlung: Erfasst detaillierte Informationen von Scaleway Compute-Instanzen und Baremetal-Servern.
- Multi-Zonen-Unterstützung: Ruft dynamisch Serverdaten aus vordefinierten Scaleway-Zonen ab (z. B. fr-par-1, nl-ams-1, pl-waw-1 usw.).
- Dynamische Filterung: Filtern Sie Serverlisten nach Tags, Name, public_ip oder Zone mit einer einfachen API-Anfrage.
- Standardisiertes Ausgabeformat: Normalisiert unterschiedliche API-Antworten in ein konsistentes JSON-Format, einschließlich Name, Tags, public_ip, Typ, Status, Zone und Benutzer.
- Webhook-Integration: Leicht in externe Anwendungen oder andere Workflows über einen sicheren Webhook-Endpunkt integrierbar.
- Fehlerbehandlung: Liefert klare Fehlermeldungen für ungültige Suchkriterien.
So funktioniert es
Dieser n8n-Workflow ruft effizient und automatisiert Scaleway-Serverdaten strukturiert ab und verarbeitet sie.
1. Workflow auslösen
Der Workflow wird durch eine HTTP-POST-Anfrage an seinen Webhook-Endpunkt aktiviert. Diese Anfrage muss eine Basis-Authentifizierung sowie eine JSON-Payload enthalten, die das 'search_by'-Kriterium (z. B. "tags", "name", "public_ip", "zone") und das entsprechende 'search'-Schlüsselwort angibt.
2. Parameter konfigurieren
Ein 'Set'-Knoten erfasst die eingehenden 'search_by' und 'search' Parameter vom Webhook. Ebenso definiert er wichtige Konfigurationsdetails, einschließlich Ihres Scaleway-Authentifizierungstokens ('Scaleway-X-Auth-Token') und Listen der Zonen für die Serverabfrage von Instanzen ('ZONE_INSTANCE') und Baremetal-Servern ('ZONE_BAREMETAL').
3. Serverdaten über Zonen abrufen
Der Workflow verarbeitet die Serverdaten intelligent, indem er zuerst die vordefinierte Liste 'ZONE_INSTANCE' aufteilt und jede Zone durchläuft. Für jede Zone prüft er dynamisch, ob Baremetal-Server konfiguriert sind, und führt dann HTTP-GET-Anfragen an die entsprechenden Scaleway-API-Endpunkte (Instance API und gegebenenfalls Baremetal API) mit Ihrem 'X-Auth-Token' durch, um rohe Serverdaten aus jeder Zone abzurufen.
4. Daten verarbeiten und normalisieren
Ein 'Code'-Knoten aggregiert alle Antworten der API-Aufrufe. Er nutzt benutzerdefinierte JavaScript-Funktionen ('extractServers', 'getPublicIPs', 'getUser'), um wichtige Serverdetails zu extrahieren und zu standardisieren. Dazu gehören Felder wie 'name', 'tags', 'public_ip' (mit Priorität auf IPv4), 'type' (unter Berücksichtigung von 'commercial_type' und 'offer_name'), 'state' (beinhaltet 'state' und 'status'), 'zone' und 'user' (aus verschiedenen möglichen Quellen). Das Ergebnis ist ein einheitliches Array strukturierter Serverobjekte.
5. Ergebnisse dynamisch filtern
Ein 'Switch'-Knoten analysiert den im ursprünglichen Webhook-Request übergebenen 'search_by'-Parameter. Abhängig vom angegebenen Filtertyp ('tags', 'name', 'public_ip' oder 'zone') leitet der Workflow die aggregierten Serverdaten zu einem spezifizierten 'Code'-Knoten. Diese spezialisierten 'Code'-Knoten filtern die Liste und geben nur Server zurück, die dem 'search'-Schlüsselwort entsprechen.
6. Auf Anfrage antworten
Abschließend sendet ein 'Respond to Webhook'-Knoten die gefilterte Liste von Serverobjekten als JSON-Array an den Anforderer zurück. Wurde ein ungültiger 'search_by'-Wert übergeben, wird stattdessen eine informative Fehler-JSON-Nachricht mit den gültigen Filteroptionen zurückgegeben, um klare Kommunikation zu gewährleisten.
Beispielanwendung
Um diesen Workflow auszulösen und gefilterte Scaleway-Serverdaten abzurufen, senden Sie eine HTTP-POST-Anfrage an Ihre Webhook-URL mit Basis-Authentifizierung und einem JSON-Body wie im Beispiel unten:
{ "search_by": "tags", "search": "Apiv1" }
Die erfolgreiche Ausführung gibt ein JSON-Array zurück, wobei jedes Objekt einen Server mit normalisierten Feldern wie 'name', 'tags', 'public_ip', 'type', 'state', 'zone' und 'user' darstellt.