Projekte
Die Isolationseinheit in Kisenon — Benennung, Lebenszyklus und Kaskaden-Semantik.
Ein Projekt ist der oberste Container in Kisenon. Jeder Branch, Endpoint, jede Rolle und Datenbank lebt unter genau einem Projekt.
Was ein Projekt besitzt
- Einen
main-Branch, automatisch zur Projekterstellungszeit erstellt. - Copy-on-Write-Speicher, auf dieses Projekt beschränkt. Kein anderes Projekt kann seine Pages lesen.
- Die zur Erstellung gepinnte Postgres-Hauptversion.
- Eine Region. Heute lebt jedes Projekt in der einzigen Home-Cluster-Region (USA, Bare Metal); Multi-Region ist Roadmap.
Projektisolation
Speicher, WAL und Caches sind pro Projekt partitioniert; es gibt keinen gemeinsamen Schreibpfad zwischen Projekten. Endpoints aus verschiedenen Projekten können den Speicher des jeweils anderen nicht erreichen, selbst wenn ihre Compute-Pods auf demselben Node eingeplant sind — die projektbezogene Netzwerkrichtlinie und das Speicher-Authentifizierungs-Token sichern jede Page-Anfrage ab.
Dies ist die Grenze, auf die Sie sich für Compliance und Noisy-Neighbour- Isolation verlassen können. Branch-Grenzen innerhalb eines Projekts sind weicher: Branches teilen sich Speicher und erben die Pages des Parents, bis sie divergieren.
Benennung
Projektnamen sind benutzersichtbare Labels. Sie:
- Müssen 1–63 Zeichen lang sein.
- Matchen
^[a-zA-Z][a-zA-Z0-9_-]*$. Buchstaben, Ziffern,_,-; müssen mit einem Buchstaben beginnen. - Müssen nicht global eindeutig sein; eindeutig innerhalb Ihrer Organisation reicht.
Die interne Projekt-ID (prj_<24 hex>) ist es, worauf jede andere Ressource
verweist. Das Label ist für Menschen.
Postgres-Version
Sie wählen die Hauptversion zur Erstellungszeit. Der Standard ist 17.
Einmal gesetzt, kann sie nicht an Ort und Stelle geändert werden — ein Hauptversions-Upgrade
ist eine Out-of-Band-Migration, die wir dokumentieren werden, wenn sie landet.
Für die Alpha behandeln Sie die Version als unveränderlich.
Erstellen
Klicken Sie in der Web-Konsole auf New project, geben Sie einen Namen ein, wählen Sie die Postgres-Hauptversion und wählen Sie eine Region (das Dropdown ist standardmäßig auf Auto (nearest) gesetzt). Klicken Sie auf Create. Aus der CLI:
keon projects create --name my-app --pg-version 17Die Control Plane stellt Speicher bereit, erstellt den main-
Branch und gibt die Projekt-ID zurück. End-to-End dauert dies typischerweise
unter zwei Sekunden.
Löschen
Das Löschen eines Projekts kaskadiert durch jede Ressource, die es besitzt:
- Alle Endpoints auf jedem Branch werden gestoppt und entfernt.
- Alle Branches werden abgebaut.
- Der Speicher des Projekts wird entladen und seine Daten für asynchrone Kompaktierung und eventuelle Entfernung aus dem Object-Storage in die Warteschlange gestellt.
Die Kaskade ist unumkehrbar. Es gibt kein Undelete, und die Speicher-
Artefakte sind nach Beginn der Kaskade nicht aus der Konsole wiederherstellbar.
Nehmen Sie einen logischen Dump (pg_dump) vor dem Löschen, wenn die Daten
wichtig sind.
keon projects delete <project-id>Die CLI fordert eine Bestätigung an; geben Sie --yes an, um sie beim Skripten zu überspringen.
Verwandtes
- Branches — Copy-on-Write-Kinder eines Projekts.
- Endpoints — Postgres-Frontends, die sich an einen Branch anhängen.
- Connection-Strings — Wire-Format.