תמונות מצב של ארגז חול ב-Gemini Enterprise Agent Platform מאפשרות לשמור את המצב הנוכחי של ארגז חול ולשחזר אותו מאוחר יותר. האפשרות הזו שימושית למשימות של ניהול מחזור החיים, כמו שחזור של מצב תקין ידוע או בחינה של ענפי וריאציות.
לתמונות המצב יש כמה יתרונות בניהול תהליכי העבודה של הנציגים:
- שמירת מצב: שמירת המצב המדויק של ארגז החול, כולל ספריות מותקנות, שינויים במערכת הקבצים ומצב הזיכרון.
- יעילות: במקום ליצור מחדש סביבה מורכבת מאפס, אפשר לשחזר אותה מתמונת מצב תוך שניות.
- יצירת נקודות ביקורת: יצירת נקודות ביקורת במהלך משימה ארוכה של סוכן כדי לאפשר שחזור אם משהו משתבש.
- התפצלות: אפשר ליצור כמה ארגזי חול מאותו צילום מצב כדי לבדוק נתיבים שונים או וריאציות שונות.
מגבלות
אי אפשר לשחזר תמונת מצב של ארגז חול לסביבת ארגז חול חדשה אם מתקיים אחד מהתנאים הבאים:
- ארגז החול החדש משתמש בארכיטקטורת שרת שונה (לדוגמה,
amd64לעומתarm64). - ארגז החול החדש משתמש בגרסה אחרת של זמן הריצה של ארגז החול (לדוגמה, אחרי שדרוג של אשכול GKE).
- ארגז החול החדש משתמש ב-URI אחר של קובץ אימג' של קונטיינר.
שמירה
כשיוצרים צילום מהמצלמה, הוא נשמר למשך הזמן שצוין במאפיין ttl. כדי למחוק תמונת מצב לפני שתוקף ה-TTL שלה פג, אפשר לעיין במאמר בנושא מחיקת תמונת מצב.
יצירת קובץ snapshot
כדי ליצור snapshot של ארגז חול, משתמשים ב-Python SDK:
import agentplatform
client = agentplatform.Client(project='PROJECT_ID', location='LOCATION')
sandbox_name = 'projects/PROJECT_ID/locations/LOCATION/reasoningEngines/INSTANCE_ID/sandboxEnvironments/SANDBOX_ID'
snapshot_operation = client.sandboxes.snapshots.create(
source_sandbox_environment_name=sandbox_name,
config={
"display_name": "DISPLAY_NAME",
"ttl": "3600s",
}
)
print(f"Snapshot creation initiated: {snapshot_operation.name}")
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט ב- Cloud de Confiance . -
LOCATION: Cloud de Confiance האזור של המשאב. אזורים נתמכים -
INSTANCE_ID: מזהה המופע של Agent Platform. -
SANDBOX_ID: המזהה של ארגז החול הקיים שרוצים ליצור לו קובץ snapshot. -
DISPLAY_NAME: שם תצוגה תיאורי לקובץ ה-snapshot.
שחזור מתמונת מצב
אתם יכולים לשחזר את מצב ארגז החול על ידי הפניה לתמונת מצב שמורה כשאתם יוצרים סביבת ארגז חול חדשה:
agent_instance_name = 'projects/PROJECT_ID/locations/LOCATION/reasoningEngines/INSTANCE_ID
snapshot_name = 'projects/PROJECT_ID/locations/LOCATION/reasoningEngines/INSTANCE_ID/sandboxEnvironments/SANDBOX_ID'
# Restore from a snapshot
new_sandbox_operation = client.sandboxes.create(
name=agent_instance_name,
config={
"display_name": "restored-sandbox",
"sandbox_environment_snapshot": snapshot_name,
}
)
הצגת רשימה של קובצי snapshot
כדי להציג רשימה של כל תמונות המצב של ארגז החול שמשויכות למופע של Agent Platform:
snapshots_response = client.sandboxes.snapshots.list(name=agent_instance_name)
for snapshot in snapshots_response.sandbox_environment_snapshots:
print(snapshot.name)
צפייה בפרטים של תמונת המצב
כדי לראות את ההגדרות של תמונת מצב ספציפית של ארגז חול:
snapshot = client.sandboxes.snapshots.get(name=snapshot_name)
print(snapshot)
מחיקת תמונת מצב
כדי למחוק במפורש תמונת מצב של ארגז חול כשאין בה יותר צורך:
client.sandboxes.snapshots.delete(name=snapshot_name)
print("Snapshot deleted.")