Zum Inhalt springen

Twins und Recovery-Tests

Ein Twin ist eine Kopie eines Production- oder Staging-Hosts: dasselbe Release und dieselbe Umgebung aus Git, auf einem neuen Server in einem zweiten Hetzner-Projekt. Er besteht für eine Aufgabe und wird danach gelöscht.

Terminal-Fenster
pbx twin create --production web-1 --task task-42 --branch agent/task-42 --ttl 4
  • Wo: in deinem Twin-Projekt, festgelegt bei pbx up oder mit pbx twin settings. Der Hub lehnt ein Twin-Token ab, das zum Production-Projekt gehört.
  • Wie lange: standardmäßig 4 Stunden ab dem Moment, in dem er bereit ist; höchstens 72. pbx twin extend verlängert einmal.
  • Wie viele: höchstens 3 gleichzeitig.
  • Der Branch: Der Twin betreibt die Umgebung aus --branch, ohne Angabe aus dem Branch der Produktion.
  • Löschen: pbx twin delete task-42, oder der Hub löscht ihn, wenn seine Zeit um ist.

Gemessen in Hetzner Cloud am 20. Oktober 2026: ein Twin nach 44 Sekunden bereit, seine Adresse nach 11 Sekunden in der Firewall des Hubs und 7 Sekunden nach dem Löschen wieder entfernt.

ModusDie DatenWann
seeddein Seed: ein Job in pbx/seed.yaml und kleine Dateien in pbx/seed-files/ unter dem Pfad der Umgebung, einmal auf dem leeren Volume ausgeführtder Standard
emptynichts; die eigenen Migrationen deiner Appwenn die Revision kein pbx/seed.yaml hat
copydas neueste Backup der Produktion, zurückgespielt, dann dein Masken-Job pbx/mask.yamlnur, wenn ein Owner Kopien für diese Umgebung erlaubt hat

Nach dem Seed oder dem Masken-Job setzt der Hub einen Checkpoint. pbx twin reset task-42 setzt die Daten des Twins darauf zurück.

Eine Kopie der Produktionsdaten kann personenbezogene Daten enthalten. Ein Owner erlaubt sie je Umgebung, von einem Gerät mit der Anwesenheit einer Person, nach einer Warnung; Maskieren ist Pflicht, außer der Owner verzichtet mit einer Begründung darauf. Ein Coding-Agent kann einen Twin mit Kopie nur anfragen; eine Person gibt ihn frei. Ein Twin mit Kopie lebt höchstens 24 Stunden. Die Produktion führt nie einen Seed-Job aus.

Ein Recovery-Test spielt das neueste Backup eines Hosts auf einen neuen Server im Twin-Projekt zurück, startet die Umgebung, prüft sie und schreibt einen Bericht mit Zeiten. Der Server wird danach gelöscht. Gemessen in Hetzner Cloud: 64 und 75 Sekunden vom Start bis zum gelöschten Server.

pbx twin evidence task-42 zeigt, was der Hub über einen Twin weiß (seine Revision, seinen Datenmodus, seine Zeiten), mit einem Digest, auf den ein Bericht verweisen kann.