Bereitstellen von Services
Dieser Leitfaden bietet einen umfassenden Überblick über den Lebenszyklus eines Managed Service in Codesphere. Er behandelt die praktischen Schritte für die Bereitstellung, Konfiguration, Pflege und schließlich das Löschen von Services.
Bereitstellen von Managed Services
Die Bereitstellung eines Managed Service kann über die Codesphere-Benutzeroberfläche oder die öffentliche API erfolgen.
Ein Managed Service kann entweder als eigenständiges Deployment oder in den Landscape-Lebenszyklus integriert erfolgen. Dieser Leitfaden behandelt die Bereitstellung eines eigenständigen Service. Informationen zur Bereitstellung von Services als Teil einer Landscape findest du im Abschnitt Managed Services in Landscapes.
- UI
- API
-
Navigieren: Gehe zum Tab Managed Services.

-
Auswählen: Wähle den gewünschten Service-Provider aus dem Katalog. Services sind mit Kategorien gekennzeichnet (z. B. Database, Cache). In diesem Beispiel wählen wir PostgreSQL. Klicke auf „Start Setup“.
-
Konfigurieren: Ein Konfigurationsdialog wird angezeigt. Lege die initialen Parameter fest. Nicht erforderliche Parameter kannst du bei ihren Standardwerten belassen und bei Bedarf später aktualisieren. Einige Parameter (wie der Benutzername in diesem PostgreSQL-Beispiel) haben spezifische Anforderungen. Bewege den Mauszeiger über das „Info“-Symbol, um mehr zu erfahren. Klicke auf „Define Secrets“, um fortzufahren.

-
Secrets: Die meisten Services erfordern Secrets. Erzeuge diese auf deinem Rechner und gib sie hier ein. Codesphere zeigt dir diese Secrets nach diesem Schritt nicht mehr an, achte also darauf, sie sicher zu speichern. Falls du sie verlierst, musst du die Secrets zurücksetzen, was zu einer Ausfallzeit des Service führt. Klicke auf „Create Service“, um fortzufahren.

-
Bereitstellen: Nach einem Klick auf „Deploy“ beginnt Codesphere mit der Bereitstellung der Ressourcen. Wechsle im linken Seitenmenü zum Tab Managed Services, um den Fortschritt zu verfolgen. Statusanzeigen werden aktualisiert, während der Service von
CreatingzuSynchronizedübergeht.
Nutze das Ereignisprotokoll, um weitere Details zum Bereitstellungsprozess zu erhalten. Falls während der Bereitstellung Probleme auftreten, liefert das Ereignisprotokoll Hinweise darauf, was schiefgelaufen ist und wie es behoben werden kann.

Du kannst einen Managed Service über den Endpunkt POST /managed-services erstellen.
curl -X POST "<your-codesphere-instance-url>/api/managed-services" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"teamId": 123,
"name": "my-postgres-db",
"provider": {
"name": "postgresql",
"version": "15"
},
"plan": {
"id": 1,
"parameters": {
"storage": 10
}
},
"config": {
"max_connections": "100"
},
"secrets": {
"password": "secure-password",
"username": "admin"
},
"backups": {
"enabled": true,
"intervalH": 24,
"deleteRetentionDays": 7,
"config": {
"endpointUrl": "https://s3.eu-central-1.amazonaws.com",
"destinationPath": "s3://my-codesphere-backups/"
},
"secrets": {
"accessKey": "YOUR_S3_ACCESS_KEY",
"secretKey": "YOUR_S3_SECRET_KEY"
}
}
}'
Parameter:
teamId(integer, erforderlich): Die ID des Teams, in dem der Service erstellt wird.name(string, erforderlich): Ein eindeutiger Name für deinen Service.provider(object, erforderlich):name: Der Name des Service-Providers (z. B.postgresql,redis).version: Der Versions-Tag (z. B.15).
plan(object, erforderlich):id: Die Plan-ID.parameters: Plan-spezifische Parameter (z. B. Speichergröße in GB).
secrets(object): Schlüssel-Wert-Paare der geheimen Service-Zugangsdaten.backups(object): Konfiguriere automatisierte Backups. Für Provider, die dies unterstützen. Details siehe Leitfaden Managed Service Backups.recoverFrom(object): Bootstrapt die Instanz automatisch über ein Backup-Zeitpunkt-Objekt oder ein bestimmtes Backup. Erfordert diebackups-Konfiguration und entsprechende Secrets. Siehe Leitfaden Managed Service Backups.
Vollständige Schema-Details findest du in der API-Dokumentation.
info
API-Endpunkte stehen für alle Lebenszyklus-Operationen zur Verfügung, einschließlich Bereitstellung, Konfigurationsaktualisierungen, Pausieren und Löschen.
info
Die Bereitstellungszeiten variieren je nach Service. Komplexe Datenbanken können einige Minuten benötigen, bis sie vollständig betriebsbereit sind.
Wie geht es weiter?
Sobald dein Service läuft, fahre mit der Managed Service Provider-Referenz fort, um zu erfahren, wie du auf diesen spezifischen Service aus deinem Workspace zugreifst.
Aktualisieren / Konfigurieren
Du kannst die Konfiguration eines laufenden Service ändern, um ihn an veränderte Anforderungen anzupassen.
- UI
- API
- Auffinden: Suche den bereitgestellten Service, den du aktualisieren möchtest.
- Einstellungen öffnen: Klicke auf das Zahnrad-Symbol rechts in der Tabellenzeile, um die Detailansicht des Service zu öffnen.
- Ändern: Navigiere zum Tab Configuration und klicke auf Edit Configuration. Dadurch wird die Bearbeitung der konfigurierbaren Parameter aktiviert. Beachte, dass nicht jede Option, die im Erstellungs-Flow verfügbar war, auch für ein Update verfügbar ist. Wenn du einen nicht bearbeitbaren Parameter ändern musst, musst du den Service löschen und mit der gewünschten Konfiguration neu erstellen.

- Anwenden: Klicke auf Save, um die Änderungen anzuwenden. Der Service-Status ändert sich von
SynchronizedzuUpdating, während die Änderungen angewendet werden. Nach Abschluss kehrt er zuSynchronizedzurück. Weitere Details zum Update-Prozess findest du im Ereignisprotokoll.
Du kannst einen Managed Service über den Endpunkt PATCH /managed-services/{id} aktualisieren.
curl -X PATCH "<your-codesphere-instance-url>/api/managed-services/YOUR_SERVICE_ID" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"config": {
"max_connections": "200"
},
"plan": {
"id": 2,
"parameters": {
"storage": 20
}
},
"secrets": {
"password": "new-secure-password"
},
"backups": {
"enabled": true,
"intervalH": 12,
"deleteRetentionDays": 30,
"config": {
"endpointUrl": "https://s3.eu-central-1.amazonaws.com",
"destinationPath": "s3://my-codesphere-backups/"
},
"secrets": {
"accessKey": "YOUR_S3_ACCESS_KEY",
"secretKey": "YOUR_S3_SECRET_KEY"
}
}
}'
Parameter:
id(string, Pfadparameter): Die UUID des zu aktualisierenden Managed Service.config(object, optional): Konfigurationsaktualisierungen.plan(object, optional):id: Die neue Plan-ID.parameters: Aktualisierte Plan-Parameter (z. B. Speicher).
secrets(object, optional): Aktualisierte Secrets.backups(object, optional): Konfigurationen für automatisierte Backups.name(string, optional): Neuer Name für den Service.pause(boolean, optional): Auftruesetzen, um den Service zu pausieren.
Vollständige Schema-Details findest du in der API-Dokumentation.
warnung
Einige Konfigurationsaktualisierungen können einen Neustart des Service auslösen, was zu einer kurzen Ausfallzeit führt.
Pausieren
Codesphere ermöglicht das Pausieren bestimmter Managed Services, wenn diese nicht aktiv genutzt werden. Dies ist ideal für Entwicklungsumgebungen oder Prototypen.
Funktionsweise
Nicht jeder Service unterstützt das Pausieren. Wenn ein Service pausiert werden kann, siehst du diese Option unter den capabilities des Service. Die Capabilities können über den öffentlichen API-Endpunkt GET providers endpoint eingesehen werden.
- Pause: Nimmt den Service offline und gibt die Rechenressourcen (CPU & RAM) frei. Der Service-Status ändert sich zu
PausedoderStopped. - Resume: Stellt die Rechenressourcen erneut bereit und bringt den Service wieder online.
Landscapes pausieren ihre eigenen Services automatisch, wenn sie abgebaut werden.
- UI
- API
Aktuell wird das Pausieren von Managed Services nur über die öffentliche API unterstützt. Nutze den API-Tab für Anweisungen.
Du kannst einen Managed Service pausieren, indem du seine pause-Eigenschaft über den Endpunkt PATCH /managed-services/{id} auf true setzt.
Service pausieren:
curl -X PATCH "<your-codesphere-instance-url>/api/managed-services/YOUR_SERVICE_ID" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"pause": true
}'
Service fortsetzen:
curl -X PATCH "<your-codesphere-instance-url>/api/managed-services/YOUR_SERVICE_ID" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"pause": false
}'
Datenpersistenz
Bei von Codesphere verwalteten Services wie Managed Storage oder Object Store bleiben deine Daten während einer Pause sicher. Das mit dem Service verbundene persistente Volume (Disk) wird nicht gelöscht. Wenn du den Service fortsetzt, wird er wieder mit demselben Volume verbunden, sodass alle deine Daten erhalten bleiben.
Landscape-basierte und Custom Provider
Dieses Verhalten gilt derzeit für eigenständige Managed Services. Für Services, die in Landscape-Lebenszyklen integriert sind, oder für benutzerdefinierte Service-Provider hängt die Datenpersistenz während der Pause von der jeweiligen Implementierung ab.
tipp
Das Pausieren nicht genutzter Services ist eine gute Möglichkeit, Ressourcennutzung und Kosten zu optimieren.
Backups
Codesphere unterstützt automatisierte Backups und Point-in-Time-Recovery für bestimmte Managed Service Provider (wie PostgreSQL und Babelfish). Dies ermöglicht es dir, deine Daten sicher in einem externen, S3-kompatiblen Service zu speichern.
Vollständige Anweisungen zur Konfiguration automatisierter Backups, zur Durchführung manueller Backups und zur Wiederherstellung eines Service zu einem früheren Zeitpunkt oder anhand einer Backup-ID findest du im dedizierten Leitfaden Managed Service Backups.
Managed Services löschen
Das Löschen eines Service ruft den Löschendpunkt eines Managed-Service-Backends auf. Bei von Codesphere angebotenen Managed Services werden dadurch alle mit diesem Service verbundenen Ressourcen entfernt.
Wenn du eine Löschung auslöst, beginnt Codesphere immer mit einer Soft Delete. Der Service wird mit einem deletedAt-Zeitstempel markiert und wechselt in den Zustand Deleting.
Löschablauf
- Soft Delete: Der Service wird mit einem
deletedAt-Zeitstempel markiert. Der Service-Status ändert sich zuDeleting. - Abschließendes Backup (falls aktiviert): Wenn der Provider Backups unterstützt und Backups für den Service aktiviert sind, stellt der Reconciler sicher, dass nach Beginn der Löschung ein Backup geplant wird, und wartet, bis dieses Backup bestätigt ist, bevor er fortfährt.
- Löschung beim Provider: Der Reconciler sendet die Löschanfrage an das Provider-Backend, wodurch Rechenressourcen und persistente Daten entfernt werden.
- Aufbewahrungsfrist: Der Soft-gelöschte Service-Datensatz bleibt für eine Aufbewahrungsfrist sichtbar und wird anschließend durch den Bereinigungsprozess endgültig gelöscht (Hard Delete). Während dieses Zeitraums kannst du den Service weiterhin sehen, indem du in der Service-Tabelle „Show recently Deleted“ aktivierst.
- UI
- API
- Navigieren: Gehe zur Seite mit der Service-Tabelle.
- Löschen: Suche die Schaltfläche „Delete“ unter dem 3-Punkte-Menü.

- Bestätigen: Du wirst gebeten, die Aktion zu bestätigen, indem du den Namen des Service eingibst.
Du kannst einen Managed Service über den Endpunkt DELETE /managed-services/{id} löschen.
curl -X DELETE "<your-codesphere-api-endpoint>/managed-services/YOUR_SERVICE_ID" \
-H "Authorization: Bearer YOUR_API_TOKEN"
Parameter:
id(string, Pfadparameter): Die UUID des zu löschenden Managed Service.
Vollständige Schema-Details findest du in der API-Dokumentation.
warnung
Das Löschen eines Managed Service ist endgültig. Dabei werden sowohl die Rechenressourcen als auch das persistente Datenvolume entfernt. Diese Aktion kann nicht widerrufen werden. Kürzlich gelöschte Services kannst du über das Kontrollkästchen „Show recently Deleted“ einsehen, sie können jedoch nicht wiederhergestellt werden.