Zum Inhalt

Vorkonfigurierte Daten (Default Data Import)

Die Polycrate API wird seit Version 0.13.0 mit einem vollständigen Satz vorkonfigurierter Stammdaten ausgeliefert: Provider, PoPs (Rechenzentren) und DataSources (externe Status-Feeds). Diese Daten werden automatisch beim Start des Containers geladen.

Überblick

Kategorie Anzahl Beschreibung
Provider 15 Cloud-Anbieter (EU + Global)
PoPs 194 Rechenzentren und Regionen
DataSources 15 Externe Status-Feeds (RSS/API)

Das Seeding erfolgt beim Containerstart automatisch nach dem Datenbankmigrationsschritt. Der Befehl seed ist insert-only: Bestehende Einträge (gleicher natürlicher Schlüssel name) werden nicht überschrieben; fehlende Katalogzeilen aus den JSON-Dateien werden angelegt. Einträge, die nur in der Datenbank existieren (nicht mehr in den JSON-Dateien), bleiben erhalten.

Zum bewussten Zurücksetzen bzw. Überschreiben der Katalogdaten aus den JSON-Dateien dient ein separater Befehl seed_resync (entspricht früherem „immer update_or_create“-Verhalten). Nur für manuelle Ops gedacht, nicht als regulärer Container-Entrypoint.


Mitgelieferte Provider

Europäische Cloud-Provider (8)

Provider PoPs
Hetzner 4
OVHcloud 4
IONOS 3
Exoscale 5
UpCloud 5
Scaleway 4
STACKIT 2
Open Telekom Cloud 2

Globale Hyperscaler (7)

Provider PoPs
Amazon Web Services 29
Microsoft Azure 38
Google Cloud 38
DigitalOcean 11
Oracle Cloud Infrastructure 26
IBM Cloud 12
Alibaba Cloud 11

Mitgelieferte DataSources

DataSources sind externe Datenquellen, die die Polycrate API regelmäßig abruft und als Notes importiert. Die mitgelieferten Quellen umfassen Provider-Status-Feeds sowie einen Sicherheits-Newsfeed.

DataSource Typ Note-Art Provider
HETZNER Status RSS RSS Provider Status Hetzner
IONOS Status RSS RSS Provider Status IONOS
OVHcloud Public Cloud Status RSS Provider Status OVHcloud
OVHcloud Network Status RSS Provider Status OVHcloud
UpCloud Status RSS Provider Status UpCloud
Scaleway Status RSS Provider Status Scaleway
STACKIT Status RSS Provider Status STACKIT
AWS Service Status RSS Provider Status AWS
Azure Status RSS Provider Status Azure
Google Cloud Status RSS Provider Status Google Cloud
DigitalOcean Status RSS Provider Status DigitalOcean
Oracle Cloud Infrastructure Status RSS Provider Status OCI
Alibaba Cloud Service Notices RSS Provider Status Alibaba Cloud
Cloudflare Status API API Provider Status
Heise Security Alerts RSS News

DataSources sind standardmäßig deaktiviert

Alle mitgelieferten DataSources werden mit is_enabled=false angelegt. Sie müssen manuell aktiviert werden, bevor Daten synchronisiert werden.

DataSources aktivieren

  1. Öffnen Sie Administration → Data Sources
  2. Wählen Sie die gewünschte DataSource aus
  3. Setzen Sie Enabled auf aktiv
  4. Stellen Sie sicher, dass in der System Config unter Object Type Reconciliation der Eintrag Data Sources aktiviert ist

Manuelles Seeding

Falls Sie fehlende Stammdaten aus den JSON-Dateien anlegen möchten – etwa nach einer Neuinstallation oder nach Ergänzungen in den Dateien:

python manage.py seed --providers --pops --datasources

Bereits vorhandene Zeilen mit gleichem name werden dabei übersprungen (kein Überschreiben).

Die Flags können einzeln verwendet werden:

Flag Lädt
--providers Nur Provider
--pops Nur PoPs (benötigt Provider)
--datasources Nur DataSources (benötigt Provider)

Reihenfolge beachten: PoPs und DataSources referenzieren Provider über provider_name. Beim erstmaligen Import immer --providers zuerst ausführen.

Katalog aus JSON vollständig zurücksetzen (seed_resync)

Wenn Einträge in der Datenbank an die JSON-Dateien angeglichen werden sollen (Felder überschreiben, nicht nur fehlende Zeilen anlegen), verwenden Sie:

python manage.py seed_resync --providers --pops --datasources

seed_resync überschreibt Daten

Dieser Befehl aktualisiert bestehende Katalogzeilen aus den JSON-Defaults. Nur verwenden, wenn Sie die JSON-Dateien als Quelle der Wahrheit setzen möchten. Für den regulären Betrieb und nach manuellen Anpassungen in der Datenbank ist typischerweise seed (insert-only) die richtige Wahl.


Eigene Einträge hinzufügen

Die Seed-Daten liegen als JSON-Dateien im Repository:

src/pops/management/seed_data/
├── providers.json
├── pops.json
└── datasources.json

Neue Einträge können direkt in diesen Dateien ergänzt werden – kein Python-Code-Change erforderlich. Nach einem Containerstart oder manuellem seed-Aufruf werden die neuen Einträge angelegt (bestehende gleichnamige Einträge bleiben unverändert). Sollen bestehende Einträge aus den JSON-Dateien aktualisiert werden, seed_resync verwenden (siehe oben).

Abhängigkeiten:

  • PoP-Einträge benötigen einen gültigen provider_name (aus providers.json)
  • DataSource-Einträge können optional einen provider_name referenzieren

Siehe auch