Management Commands¶
Diese Seite beschreibt ausgewählte Django-Management Commands der Polycrate API für Betrieb, Wartung und gelegentliche Datenbereinigung. Ausführung typischerweise im Backend-Container:
Die folgenden Abschnitte ersetzen keine vollständige --help-Ausgabe; sie fassen Zweck und typische Optionen zusammen.
Alerts¶
delete_old_firing_alerts¶
Entfernt Firing-Alerts, die älter als eine angegebene Schwelle (in Sekunden) sind. Hilfreich, um alte „hängende“ Firing-States zu bereinigen.
python manage.py delete_old_firing_alerts 86400 --dry-run
python manage.py delete_old_firing_alerts 86400
| Argument / Option | Bedeutung |
|---|---|
age_seconds (positional) | Alerts älter als diese Sekundenzahl werden berücksichtigt |
--dry-run | Nur anzeigen, nicht löschen |
--batch-size | Batch-Größe (Standard: 500) |
fix_alert_states¶
Setzt Alert-Status von DEGRADED auf READY (Reparatur nach inkonsistenten Zuständen), in Batches.
| Option | Bedeutung |
|---|---|
--dry-run | Vorschau ohne Änderung |
--batch-size | Batch-Größe (Standard: 500) |
Artefakte¶
delete_repository_artifacts¶
Löscht alle Artefakte in einem angegebenen Artifact Repository (UUID). Zerstörerisch; mit --dry-run prüfen.
python manage.py delete_repository_artifacts <repository-uuid> --dry-run
python manage.py delete_repository_artifacts <repository-uuid> --yes
| Option | Bedeutung |
|---|---|
--dry-run | Nur Auflistung |
--yes | Bestätigungsdialog überspringen |
--verbose | Details pro Artefakt |
Endpoints¶
cleanup_duplicate_endpoints¶
Findet doppelte Endpoints (gleiches Workspace + remote_address) und behält den ältesten Eintrag. Erfordert explizit Vorschau oder Löschung.
python manage.py cleanup_duplicate_endpoints --dry-run
python manage.py cleanup_duplicate_endpoints --delete
python manage.py cleanup_duplicate_endpoints --dry-run --workspace <Workspace-Name>
| Option | Bedeutung |
|---|---|
--dry-run | Nur anzeigen |
--delete | Duplikate wirklich löschen |
--workspace | Nur ein Workspace |
Hinweis: analyze_endpoint_results¶
Für den regulären Betrieb nicht erforderlich. Das Kommando wertet gespeicherte EndpointCheckResult-Daten aus (PoP-basiertes Monitoring): Filter nach Workspace, Organisation, PoP, Zeitraum; Ausgabe als Tabelle, JSON oder CSV. Sinnvoll für Support, Kapazitätsfragen oder wenn die Web-UI für eine Auswertung nicht ausreicht. Details und alle Flags: python manage.py analyze_endpoint_results --help.
IPAM¶
cleanup_orphaned_ip_addresses¶
Räumt IPAM-IP-Adressen auf, die keine sinnvolle managed_by-Beziehung haben (u. a. leere Referenzen oder verwaiste Zuordnungen). Typischer Ablauf: zuerst --dry-run, dann --delete.
python manage.py cleanup_orphaned_ip_addresses --dry-run
python manage.py cleanup_orphaned_ip_addresses --delete
LoadBalancer-spezifische Bereinigung erfolgt bei Bedarf über die Domänenlogik am Modell (LoadbalancerInstance.cleanup_orphaned_ip_addresses), nicht über ein separates Management Command.
Benachrichtigungen¶
setup_notification_sink¶
Legt den systemweiten Standard-Notification-Sink an oder aktualisiert ihn (is_system_default). Unterstützte Arten: mattermost, slack, msteams, email.
python manage.py setup_notification_sink --kind mattermost --webhook-url https://...
python manage.py setup_notification_sink --kind email --smtp-host mail.example.com --from-email noreply@example.com --to-emails ops@example.com
Pflicht je nach --kind (z. B. --webhook-url für Chat-Integrationen, für E-Mail u. a. SMTP und Empfänger). Optionen u. a.: --organization, --test, --disable. Vollständige Parameter: --help.
test_mattermost_sink¶
Testet die Mattermost Native API-Integration (Listen, Testnachrichten, Notifications zu Downtime/Maintenance/Notes). Für Diagnose und Verifikation von Notification-Sinks.
python manage.py test_mattermost_sink --list
python manage.py test_mattermost_sink --sink <Name-oder-ID> --send-message
Weitere Modi siehe python manage.py test_mattermost_sink --help.
Systemkonfiguration¶
assign_system_owner¶
Setzt oder leert die System-Owner-Organisation und/oder den Host-K8s-Cluster in der SystemConfig.
python manage.py assign_system_owner --organization <Name-oder-UUID>
python manage.py assign_system_owner --cluster <Name-oder-UUID>
python manage.py assign_system_owner --clear-organization
python manage.py assign_system_owner --clear-cluster
Pricing¶
match_host_products¶
Ordnet Hosts passenden Produkten zu (kind=host): zuerst über provider_type_id, sonst über CPU/RAM-Spezifikation in der Produktkonfiguration.
python manage.py match_host_products --dry-run
python manage.py match_host_products
python manage.py match_host_products --force --reconcile
| Option | Bedeutung |
|---|---|
--dry-run | Vorschau ohne Speichern |
--force | Auch Hosts mit bereits gesetztem Produkt neu zuordnen |
--reconcile | Zusätzlich reconcile_organization_product auslösen |
Ausführlicher Kontext: Pricing & Business Layer.
Workspaces¶
cleanup_offline_agents¶
Führt die gleiche Bereinigung aus wie der Hintergrundtask: Agents entfernen, die länger als die konfigurierte Retention offline sind (Retention u. a. über SystemConfig, Schlüssel AGENT_RETENTION_DAYS).
run_action¶
Startet eine ActionRun anhand ihrer numerischen ID (erneute Ausführung der zugehörigen Action). Ohne --force wird abgebrochen, wenn der Lauf bereits running, success oder failed ist.
Siehe auch¶
- Vorkonfigurierte Daten (Seed) –
seed/seed_resyncfür Provider, PoPs und DataSources - Endpoint-Monitoring – fachlicher Kontext zu Endpoint-Checks