Auditierbare Operations: SSH-Sessions und CLI-Aktivitäten mit Polycrate API
TL;DR Polycrate protokolliert nicht nur Action Runs (Ansible-Playbooks), sondern auch SSH-Sessions, …
Diese Serie zeigt Schritt für Schritt, wie Ansible mit Polycrate zu einer strukturierten, teilbaren und compliance-fähigen Automatisierungsplattform wird – von den Grundlagen bis zu Enterprise-Szenarien.
workspace.poly).Mit plain Ansible sieht Automatisierung oft so aus:
Ansible ist ein exzellentes Automatisierungswerkzeug – aber es bringt von Haus aus keine zentrale Plattform für Teams mit. Genau hier setzt Polycrate an: Ansible läuft immer in einem Container mit definierter Toolchain, und mit der Polycrate API wird daraus eine Enterprise-Plattform.
Die Polycrate API bietet Ihnen:
Mehr technische Details finden Sie in der API-Dokumentation.
Polycrate strukturiert Automatisierung über Workspaces und Blöcke. Die API kennt diese Struktur und macht sie für Teams nutzbar.
Ein typischer Workspace könnte so aussehen:
# workspace.poly
name: acme-corp-automation
organization: acme
blocks:
- name: linux-patch
from: linux-patch
config:
target_hosts: "all"
- name: windows-patching
from: cargo.ayedo.cloud/ayedo/infra/windows-patching:0.4.2
config:
maintenance_window: "Sun 02:00-04:00"Die API weiß:
:latest).Ein Block, den Sie lokal entwickeln, sieht z. B. so aus:
# blocks/linux-patch/block.poly
name: linux-patch
version: 0.1.0
kind: generic
config:
target_hosts: "all"
actions:
- name: patch
description: "Security-Patches auf Linux-Servern"
playbook: patch.ymlDas entsprechende Inventory liegt – wie von Polycrate vorgegeben – im Workspace-Root:
# inventory.yml
all:
hosts:
server01.acme-corp.com:
ansible_user: ubuntu
server02.acme-corp.com:
ansible_user: ubuntuWichtig: Polycrate führt alle Playbooks in einem Container aus. Das eliminiert das klassische Dependency-Problem (unterschiedliche Ansible- oder Python-Versionen, fehlende Tools) und schafft reproduzierbare Ergebnisse – egal ob Sie lokal arbeiten oder die Polycrate API triggert.
In vielen Teams sieht eine CI/CD-Integration mit plain Ansible heute so aus:
# Build-Agent (z. B. GitLab Runner)
pip install ansible==9.4.0
ansible-playbook -i inventory.yml deploy.ymlOder Sie bauen eigene Docker-Images mit Ansible und Tooling, die Sie in allen Pipelines pflegen müssen. Beides erzeugt Pflegeaufwand und Supply-Chain-Risiken.
Mit Polycrate reicht ein zentral betriebener Polycrate-API-Endpoint. Ihre Pipeline muss nur noch einen HTTP-Call ausführen, das eigentliche polycrate run läuft in der Plattform:
# Beispiel: Action lokal ausführen (nur zum Vergleich)
polycrate run linux-patch patchIn der CI/CD-Pipeline ruft Ihr Job stattdessen die API auf, z. B.:
curl -X POST \
-H "Authorization: Bearer $POLYCRATE_TOKEN" \
-H "Content-Type: application/json" \
https://polycrate.example.com/api/v1/workspaces/acme-corp-automation/actions \
-d '{
"block": "linux-patch",
"action": "patch",
"reason": "Nightly patch run from CI",
"parameters": {
"extra_vars": {
"patch_profile": "security-only"
}
}
}'Das ist eine vereinfachte Darstellung: Exakter Pfad, Authentifizierung und Request-Body richten sich nach Ihrer API-Version und der OpenAPI-Spezifikation Ihrer Instanz.
Die API:
linux-patch und die Action patch definiert sind.Im Gegensatz zu einem direkt in der Pipeline ausgeführten ansible-playbook profitieren Sie von:
Wenn mehrere Teams denselben Block verwenden – z. B. einen offiziellen ayedo-Block aus dem PolyHub – wollen Sie sicherstellen, dass:
Die Polycrate API kann Workspaces validieren:
from:-Referenzen auf bekannte Registries und Block-Namen gerichtet?Diese Validierung lässt sich ebenfalls per Remote-Trigger auslösen – etwa als Quality-Gate in einer GitOps-Pipeline, bevor ein Merge in den main-Branch erfolgt. Details zu Best Practices für Blöcke und Versionierung finden Sie in den Polycrate-Best-Practices.
So wird die Polycrate API zum technischen Enforcer Ihrer Architektur- und Compliance-Vorgaben, ohne dass jedes Team eigene Validierungs-Skripte pflegen muss.
workspace.poly)Das in der Polycrate API gebündelte Endpoint-Monitoring (Erreichbarkeit von URLs/Hosts per HTTP und ICMP, Agenten, Auswertung in der API) ist ein eigenes Subsystem: Es arbeitet mit Endpoint-Ressourcen in der API und Monitoring-Agenten – nicht mit einem Ansible-Block im workspace.poly, wie man ihn für polycrate run verwendet. In Kubernetes-Umgebungen spielt der Polycrate Operator eine zentrale Rolle (u. a. Endpoint-Discovery aus Ingress, Synchronisation mit der API). Details: Polycrate Operator und API-Dokumentation.
Unabhängig davon können Sie über Remote-Triggering weiterhin beliebige Actions ausführen – etwa den oben gezeigten Block linux-patch für Wartungsläufe. Das ist dasselbe Muster wie in den Abschnitten „Architektur“ und „Remote-Triggering“; es ersetzt nicht das integrierte Endpoint-Monitoring der Plattform.
Polycrate bringt eingebaute Workspace-Verschlüsselung mit age mit. Sensible Dateien – etwa artifacts/secrets/kubeconfig.yml oder SSH-Schlüssel – können Sie so sicher im Git-Repo versionieren. Die Details dazu finden Sie in der Dokumentation zur Workspace-Verschlüsselung.
Ohne Polycrate API bedeutet das in der Praxis oft:
Die Polycrate API ergänzt dies um:
Die Verschlüsselung selbst definieren und initialisieren Sie weiterhin mit der CLI, z. B.:
# Workspace verschlüsseln (vereinfacht)
polycrate workspace encrypt --age-recipient age1...Die Verwaltung der Keys – zu welchen Workspaces sie gehören, wer sie nutzen darf, wie Rotation organisiert wird – übernimmt die API. Für Compliance-Teams ist das ein zentraler Baustein: Schlüsselverwaltung wird nachvollziehbar, dokumentiert und revisionssicher.
Die Polycrate-Weboberfläche auf Basis der API ist der Blick ins Innere Ihrer Automatisierungsplattform. Typische Sichten für Team-Leads und Compliance-Verantwortliche:
Workspaces-Übersicht
Liste aller registrierten Workspaces, inkl. Metadaten (Owner, letzte Aktivität, Anzahl Blöcke, Verschlüsselungsstatus).
Action Runs
Zeitliche Darstellung aller Runs – filterbar nach Workspace, Block, Action, Status oder auslösendem System (z. B. “GitLab CI”, “ServiceNow”, “manuell über CLI”). Aus jedem Eintrag können Sie Logs und relevante Artefakte öffnen.
SSH-Sessions
Transparenz über alle SSH-Verbindungen, die via Polycrate aufgebaut wurden – inklusive User, Ziel-Host, Zeitpunkt und optionalem Zweck-Tag. Für viele Compliance-Anforderungen (z. B. ISO 27001, SOC 2) ist das ein großer Schritt nach vorne.
Compliance-Ansicht
Übersicht, welche Workspaces validiert sind, wo veraltete Block-Versionen verwendet werden oder welche Workspaces nicht verschlüsselt sind. Das macht die Polycrate API zum praktischen Compliance-Backbone.
In vielen Platform Engineering-Initiativen ist genau diese Transparenz gefragt: Automatisierung soll skalieren, ohne dass Governance auf der Strecke bleibt. Die Polycrate API liefert die dafür nötigen Daten und Schnittstellen – und ayedo unterstützt Sie bei Bedarf mit unsere Beratung, diese Daten sinnvoll in Ihre Prozesse einzubetten.
Regulatorische Anforderungen wie die DSGVO (in der EU seit dem 25.05.2018 verbindlich) oder branchenspezifische Normen verlangen nachvollziehbare Prozesse:
Mit der Polycrate API konsolidieren Sie:
Statt verstreuter Logfiles, unterschiedlichen Ansible-Versionen und individuell geschriebenen Auswertungs-Skripten haben Sie eine zentrale, dokumentierte API, die als Basis für Berichte, Dashboards und Audits dient. Für Enterprise-Architekten und Compliance-Verantwortliche ist das der Schritt von “Automatisierung funktioniert irgendwie” zu “Automatisierung ist ein klarer, kontrollierter Prozess”.
Weitere technische Details zur Polycrate API finden Sie in der offiziellen API-Dokumentation.
Nein. Polycrate funktioniert auch ohne API rein über die CLI – inklusive Container-Ausführung, Workspaces, Blöcke, Workspace-Verschlüsselung und Registry-Integration. Die Polycrate API kommt ins Spiel, wenn Sie:
Kurz: Für Einzelanwender oder kleine Teams reicht die CLI. Für Enterprise-Szenarien spielt die API ihre Stärken aus.
Viele Unternehmen bauen sich interne “Ansible-Runner” mit ein bisschen REST-API, ein paar Docker-Containern und einer Datenbank. Das kann funktionieren, bedeutet aber:
Polycrate bringt diese Aspekte als Produkt mit:
Sie müssen keinen eigenen Orchestrator erfinden, sondern können auf eine dokumentierte, erprobte Plattform setzen.
ayedo entwickelt und betreibt Polycrate und unterstützt Sie:
Ob Sie einen dedizierten Enterprise-Betrieb wünschen oder Polycrate in eine bestehende Plattform integrieren wollen – wir bringen Erfahrung aus vielen Projekten mit und passen Lösungen an Ihre Umgebung an.
Weitere Fragen? Siehe unsere FAQ
Mit der Polycrate API wird aus einem starken Automatisierungswerkzeug eine zentrale Plattform für Teams und Unternehmen: Workspaces, Blöcke und Actions werden nicht mehr nur lokal über die CLI bedient, sondern stehen als klar definierte Services zur Verfügung – inklusive Remote-Triggering, Monitoring, Workspace-Validierung und Encryption Key Management.
In diesem Beitrag haben Sie gesehen, wie:
Für viele Organisationen fügt sich die Polycrate API nahtlos in bestehende Platform Engineering-Initiativen ein: Sie erhalten eine wiederverwendbare Grundlage für Automatisierung, die von Linux- und Windows-Admins über IoT-Teams bis hin zu Compliance-Verantwortlichen gleichermaßen genutzt werden kann. Wenn Sie dabei Unterstützung bei Architektur, Integration oder Block-Design wünschen, steht Ihnen ayedo mit unsere Beratung zur Seite.
Wenn Sie die Polycrate API als Enterprise-Feature in Ihrer Umgebung evaluieren möchten, starten Sie am besten mit einem fokussierten Use Case – etwa der Ablösung lokaler ansible-playbook-Aufrufe in einer CI/CD-Pipeline durch Remote-Triggering über die API. Genau dort werden die Vorteile von Standardisierung, Nachvollziehbarkeit und zentralem Monitoring besonders schnell sichtbar.
Gute nächste Schritte:
TL;DR Polycrate protokolliert nicht nur Action Runs (Ansible-Playbooks), sondern auch SSH-Sessions, …
TL;DR Das Model Context Protocol (MCP) ist ein offener Standard: KI-Clients sprechen per JSON-RPC …
TL;DR Du baust einen wiederverwendbaren Polycrate-Block, der Nginx und Let’s Encrypt (via …