Sandboxen verwalten

Auf dieser Seite wird gezeigt, wie Sie den Lebenszyklus Ihrer Sandbox-Umgebungen mit dem Python SDK verwalten. Sie können vorhandene Sandboxes auflisten, ihre Details ansehen, sie pausieren und fortsetzen oder sie löschen, wenn sie nicht mehr benötigt werden.

Hinweis

Zum Verwalten von Sandboxes benötigen Sie die folgenden Rollen für Ihr Projekt:

  • Agent Platform User (roles/aiplatform.user)

Sandboxes verwalten

Sie können Sandbox-Umgebungen, die mit einer Agent Platform-Instanz verknüpft sind, auflisten, Details dazu ansehen, sie pausieren, fortsetzen und löschen. Mit den Optionen zum Pausieren und Fortsetzen können Sie die Zuordnung von Compute-Ressourcen für inaktive Sandboxes aufheben und sie später wieder online stellen, ohne den Dateisystemstatus oder die Verbindungsidentität zu verlieren. Wenn Sie die Konfiguration einer vorhandenen Sandbox ändern möchten, müssen Sie sie löschen und eine neue erstellen.

Sandboxes auflisten

So listen Sie alle Sandboxes auf, die mit einer Agent Platform-Instanz verknüpft sind:

import agentplatform

client = agentplatform.Client(project='PROJECT_ID', location='LOCATION')
instance_name = 'projects/PROJECT_ID/locations/LOCATION/reasoningEngines/INSTANCE_ID'

sandboxes = client.sandboxes.list(name=instance_name)

for sandbox in sandboxes:
    print(sandbox.name)

Ersetzen Sie Folgendes:

  • PROJECT_ID: Ihre Google Cloud Projekt-ID
  • LOCATION: Die Google Cloud Region Ihrer Agent Platform-Instanz Siehe Unterstützte Regionen.
  • INSTANCE_ID: Die ID der Agent Platform-Instanz

Sandbox-Details ansehen

So sehen Sie die Konfiguration und den Status einer bestimmten Sandbox:

sandbox_name = 'projects/PROJECT_ID/locations/LOCATION/reasoningEngines/INSTANCE_ID/sandboxEnvironments/SANDBOX_ID'

sandbox = client.sandboxes.get(name=sandbox_name)
print(sandbox)

Ersetzen Sie Folgendes:

  • PROJECT_ID: Ihre Google Cloud Projekt-ID
  • LOCATION: Die Google Cloud Region Ihrer Agent Platform-Instanz Siehe Unterstützte Regionen.
  • INSTANCE_ID: Die ID der Agent Platform-Instanz, die Ihre Sandbox enthält
  • SANDBOX_ID: Die ID der vorhandenen Sandbox

Die Ausgabe enthält Details wie den Erstellungszeitpunkt, den Status (z.B. STATE_RUNNING) und die Sandbox-Spezifikation.

Sandbox pausieren

Wenn Sie eine Sandbox pausieren, werden die zugehörigen Compute-Ressourcen freigegeben, während der Laufwerkstatus und die Verbindungsmetadaten beibehalten werden. Pausierte Sandboxes kosten deutlich weniger als ausgeführte Sandboxes und können in Sekundenschnelle fortgesetzt werden. Verwenden Sie die Option zum Pausieren, wenn eine Sandbox längere Zeit inaktiv ist, Sie aber den Sitzungsstatus und die Verbindungsidentität für die spätere Verwendung beibehalten möchten.

Pausierte Sandboxes:

  • Behalten ihre Sandbox-ID, Verbindungsmetadaten und alle Private Service Connect-Endpunkte bei.
  • Behalten den gesamten Dateisystemstatus im Container zum Zeitpunkt des Pausierens bei.
  • Wechseln zu STATE_PAUSED. Anfragen an den Endpunkt der Datenebene geben Fehler zurück, bis Sie die Sandbox fortsetzen.
import agentplatform

client = agentplatform.Client(project='PROJECT_ID', location='LOCATION')
sandbox_name = 'projects/PROJECT_ID/locations/LOCATION/reasoningEngines/INSTANCE_ID/sandboxEnvironments/SANDBOX_ID'

pause_operation = client.sandboxes.pause(
    name=sandbox_name,
    config={
        "wait_for_completion": True,  # Optional. Blocks until the sandbox reaches STATE_PAUSED.
    },
)
paused_sandbox = pause_operation.response
print(f"Sandbox {paused_sandbox.name} state: {paused_sandbox.state}")  # STATE_PAUSED

Ersetzen Sie Folgendes:

  • PROJECT_ID: Ihre Google Cloud Projekt-ID
  • LOCATION: Die Google Cloud Region Ihrer Agent Platform-Instanz Siehe Unterstützte Regionen.
  • INSTANCE_ID: Die ID der Agent Platform-Instanz, die Ihre Sandbox enthält
  • SANDBOX_ID: Die ID der vorhandenen Sandbox

Sandbox fortsetzen

Wenn Sie eine pausierte Sandbox fortsetzen, werden die zugehörigen Compute-Ressourcen wieder online gestellt. Die Sandbox behält dieselbe ID, denselben Verbindungsendpunkt (einschließlich aller Private Service Connect-Dienstanhänge) und denselben Dateisystemstatus bei, die sie zum Zeitpunkt des Pausierens hatte. Sobald der Vorgang zum Fortsetzen abgeschlossen ist, können wieder Anfragen an die Datenebene der Sandbox gesendet werden.

sandbox_name = 'projects/PROJECT_ID/locations/LOCATION/reasoningEngines/INSTANCE_ID/sandboxEnvironments/SANDBOX_ID'

resume_operation = client.sandboxes.resume(
    name=sandbox_name,
    config={
        "wait_for_completion": True,  # Optional. Blocks until the sandbox reaches STATE_RUNNING.
    },
)
resumed_sandbox = resume_operation.response
print(f"Sandbox {resumed_sandbox.name} state: {resumed_sandbox.state}")  # STATE_RUNNING

Ersetzen Sie Folgendes:

  • PROJECT_ID: Ihre Google Cloud Projekt-ID
  • LOCATION: Die Google Cloud Region Ihrer Agent Platform-Instanz Siehe Unterstützte Regionen.
  • INSTANCE_ID: Die ID der Agent Platform-Instanz, die Ihre Sandbox enthält
  • SANDBOX_ID: Die ID der pausierten Sandbox

Sandbox löschen

So löschen Sie eine Sandbox-Umgebung explizit und geben Ressourcen kostenlos:

client.sandboxes.delete(name=sandbox_name)
print("Sandbox deleted.")