ניהול ארגזי חול

בדף הזה מוסבר איך לנהל את מחזור החיים של סביבות ארגז החול באמצעות Python SDK. אתם יכולים לראות רשימה של ארגזי חול קיימים, להציג את הפרטים שלהם, להשהות אותם ולהפעיל אותם מחדש, או למחוק אותם כשאתם לא צריכים אותם יותר.

לפני שמתחילים

כדי לנהל ארגזי חול, אתם צריכים את התפקידים הבאים בפרויקט:

  • משתמש ב-Agent Platform‏ (roles/aiplatform.user)

ניהול ארגזי חול

אתם יכולים לראות רשימה של סביבות ארגז חול שמשויכות למופע של Agent Platform, לראות את הפרטים שלהן, להשהות אותן, להפעיל אותן מחדש ולמחוק אותן. השהיה והמשך מאפשרים לבטל את התזמון של משאבי מחשוב עבור ארגזי חול בלי פעילות ולהחזיר אותם למצב אונליין מאוחר יותר, בלי לאבד את מצב מערכת הקבצים או את זהות החיבור. כדי לשנות את ההגדרה של ארגז חול קיים, צריך למחוק אותו וליצור חדש.

הצגת רשימה של ארגזי חול

כדי להציג רשימה של כל ארגזי החול שמשויכים למופע של Agent Platform:

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)

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • ‫LOCATION: האזור Google Cloud של מופע Agent Platform. אזורים נתמכים
  • ‫INSTANCE_ID: מזהה המופע של Agent Platform.

צפייה בפרטי ארגז החול

כדי לראות את ההגדרות והסטטוס של ארגז חול ספציפי:

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

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

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • ‫LOCATION: האזור Google Cloud של מופע Agent Platform. אזורים נתמכים
  • ‫INSTANCE_ID: מזהה המופע של Agent Platform שמכיל את ארגז החול.
  • ‫SANDBOX_ID: מזהה ארגז החול הקיים.

הפלט כולל פרטים כמו זמן היצירה, מצב (לדוגמה, STATE_RUNNING) ומפרט ארגז החול.

השהיית ארגז חול

השהיה של ארגז חול משחררת את משאבי המחשוב שלו, תוך שמירה על מצב הדיסק ועל מטא-נתונים של החיבור. עלות השימוש בארגזי חול מושהים נמוכה משמעותית מעלות השימוש בארגזי חול פעילים, ואפשר להפעיל אותם מחדש תוך שניות. משתמשים בהשהיה כשארגז חול לא פעיל במשך תקופה ממושכת, אבל רוצים לשמור את מצב הסשן ואת זהות החיבור לשימוש מאוחר יותר.

ארגזי חול מושהים:

  • שומרים את מזהה הסביבת ארגז חול, את המטא-נתונים של החיבור ואת נקודת הקצה של Private Service Connect.
  • שמירה של כל מצב מערכת הקבצים בתוך המאגר בזמן ההשהיה.
  • מעבר למינוי STATE_PAUSED. בקשות לנקודת הקצה (endpoint) של מישור הנתונים יחזירו שגיאות עד שתפעילו מחדש את המינוי.
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

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • ‫LOCATION: האזור Google Cloud של מופע Agent Platform. אזורים נתמכים
  • ‫INSTANCE_ID: מזהה המופע של Agent Platform שמכיל את ארגז החול.
  • ‫SANDBOX_ID: מזהה ארגז החול הקיים.

המשך השימוש בסביבת Sandbox

כשמפעילים מחדש ארגז חול שהושהה, המחשוב שלו חוזר למצב אונליין. ארגז החול שומר על אותו מזהה, נקודת קצה לחיבור (כולל כל צירוף שירות של Private Service Connect) ומצב מערכת הקבצים שהיו לו ברגע ההשהיה. אפשר לשלוח שוב בקשות למישור הנתונים של ארגז החול מיד אחרי שהפעולה של חידוש המינוי מסתיימת.

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

מחליפים את מה שכתוב בשדות הבאים:

  • ‫PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • ‫LOCATION: האזור Google Cloud של מופע Agent Platform. אזורים נתמכים
  • ‫INSTANCE_ID: מזהה המופע של Agent Platform שמכיל את ארגז החול.
  • ‫SANDBOX_ID: מזהה ארגז החול שהושהה.

מחיקת ארגז חול

כדי למחוק במפורש סביבת ארגז חול ולפנות משאבים:

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