הגדרת ארגזי חול למופעים

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

בדף הזה מוסבר איך להגדיר ארגזי חול במאגר התגים. פרטים על כתיבת קוד לאינטראקציה עם ארגז החול באמצעות CLI מופיעים במאמר הרצת קוד ב-Cloud Run.

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

  1. נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. מתקינים ומפעילים את ה-CLI של gcloud.
  7. פריסה של מכונה של Cloud Run.

התפקידים הנדרשים

כדי לקבל את ההרשאות שנדרשות להגדרה ולפריסה של מופעי Cloud Run, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים:

רשימת ההרשאות והתפקידים ב-IAM שמשויכים ל-Cloud Run מופיעה במאמרים תפקידי IAM ב-Cloud Run והרשאות IAM ב-Cloud Run. אם מופע Cloud Run שלכם מתקשר עםGoogle Cloud ממשקי API, כמו ספריות לקוח של Cloud, כדאי לעיין במדריך להגדרת זהות שירות. מידע נוסף על מתן תפקידים זמין במאמרים הרשאות פריסה וניהול גישה.

הפעלת ארגזי חול

כדי להפעיל ארגזי חול במופעי Cloud Run, משתמשים ב-Google Cloud CLI או בתצורת YAML:

gcloud

כדי ליצור או לעדכן את המכונה, מציינים את הדגל --sandbox-launcher:

  • כדי ליצור מופע חדש, מריצים את הפקודה הבאה:

    gcloud beta run instances create INSTANCE --image IMAGE_URL --sandbox-launcher

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

    • INSTANCE: השם של מופע Cloud Run.
    • IMAGE_URL: הפניה לקובץ אימג' בקונטיינר, כמו us-docker.pkg.dev/cloudrun/container/hello:latest.
  • כדי לעדכן מופע קיים, מריצים את הפקודה הבאה:

    gcloud beta run instances update INSTANCE --sandbox-launcher

YAML

  1. אם אתם יוצרים מכונה חדשה, דלגו על השלב הזה. אם אתם מעדכנים מופע קיים, אתם צריכים להוריד את הגדרות ה-YAML שלו:

    gcloud beta run instances describe INSTANCE --format export > instance.yaml
  2. מעדכנים את קובץ ה-YAML כך שיכלול את מאפיין sandboxLauncher עם הערך true בתוך הגדרות הקונטיינר:

    apiVersion: run.googleapis.com/v1
    kind: Instance
    metadata:
      name: INSTANCE
      annotations:
        run.googleapis.com/launch-stage: BETA
    spec:
      containers:
      - name: CONTAINER
        image: IMAGE_URL
        sandboxLauncher: true
    

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

    • INSTANCE: השם של מופע Cloud Run.
    • CONTAINER: השם של הקונטיינר.
    • IMAGE_URL: הפניה לקובץ אימג' בקונטיינר, כמו us-docker.pkg.dev/cloudrun/container/hello:latest.
  3. יוצרים או מעדכנים את המכונה באמצעות הפקודה הבאה:

    gcloud beta run instances replace instance.yaml

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

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

כדי להשבית את האפשרות להפעיל ארגז חול במופע, משתמשים ב-Google Cloud CLI או בהגדרת YAML:

gcloud

כדי לעדכן את המופע באמצעות הדגל --no-sandbox-launcher, מריצים את הפקודה הבאה:

gcloud beta run instances update INSTANCE --no-sandbox-launcher

מחליפים את INSTANCE בשם המכונה.

YAML

  1. אם אתם יוצרים מכונה חדשה, דלגו על השלב הזה. אם אתם מעדכנים מופע קיים, אתם צריכים להוריד את הגדרות ה-YAML שלו:

    gcloud beta run instances describe INSTANCE --format export > instance.yaml
  2. מעדכנים את קובץ ה-YAML כדי להסיר את המאפיין sandboxLauncher בהגדרות של מאגר התגים:

    apiVersion: run.googleapis.com/v1
    kind: Instance
    metadata:
      name: INSTANCE
    spec:
      containers:
      - name: CONTAINER
        image: IMAGE_URL
    

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

    • INSTANCE: השם של מופע Cloud Run.
    • CONTAINER: השם של הקונטיינר.
    • IMAGE_URL: הפניה לקובץ אימג' בקונטיינר, כמו us-docker.pkg.dev/cloudrun/container/hello:latest.
  3. יוצרים או מעדכנים את המכונה באמצעות הפקודה הבאה:

    gcloud beta run instances replace instance.yaml

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

כדי לראות את הגדרות הארגז הנוכחיות של מופע Cloud Run:

gcloud

  1. משתמשים בפקודה הבאה:

    gcloud beta run instances describe INSTANCE

    מחליפים את INSTANCE בשם המכונה.

  2. מחפשים את המאפיין sandboxLauncher: true בהגדרה שהוחזרה.

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