סקירה כללית על פונקציות Cloud Run

במדריך הזה מוצגת סקירה כללית של האופן שבו שירותים אחרים משתתפים בתהליך הפריסה של פונקציות Cloud Run. Google Cloud

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

כדאי להכיר את המושגים של פונקציות Cloud Run ופריסת קוד מקור מהמדריך אפשרויות פריסה ומודל משאבים של Cloud Run.

סקירה כללית של הארכיטקטורה

כשפורסים את קוד המקור של הפונקציה ב-Cloud Run Functions, קוד המקור הזה מאוחסן בקטגוריה של Cloud Storage. לאחר מכן, Cloud Build יוצר באופן אוטומטי את הקוד שלכם בקובץ אימג' של קונטיינר ומעביר את קובץ האימג' הזה בדחיפה אל מאגר קובצי אימג' ב-Artifact Registry. פונקציות Cloud Run ניגשות לאימג' הזה כשהן צריכות להריץ את הקונטיינר כדי להפעיל את הפונקציה.

בתרשים הבא, התיבה Cloud Run functions מייצגת פונקציה שנפרסה ב-Cloud Run באמצעות Cloud Run Admin API או Cloud Functions API. בדרך כלל, פונקציות חדשות יותר נפרסות באמצעות Cloud Run Admin API, ופונקציות ישנות יותר נפרסות באמצעות Cloud Functions API.

קוראים ל-Cloud Run Admin API מהמסוף Google Cloud .
איור 1. משתמש מכין קוד מקור של פונקציות ופורס אותו ב-Cloud Run.

בהתאם ל-API שבו משתמשים כשפורסים פונקציה, קורה אחד מהדברים הבאים:

  • אם פרסתם את הפונקציה באמצעות Cloud Run Admin API, יקרה הדבר הבא:

    1. קוד המקור שלכם מועלה לקטגוריה של Cloud Storage ללא תקופת שמירה.

      1. אם משתמשים בהצפנה שמוגדרת כברירת מחדל, השם של קטגוריית האחסון נוצר אוטומטית ונקרא run-sources-PROJECT_ID-REGION.
      2. אם אתם מגנים על הנתונים באמצעות מפתחות הצפנה בניהול הלקוח (CMEK), שם הקטגוריה לא נוצר באופן אוטומטי, ואתם צריכים לספק שם לקטגוריה.
    2. קוד המקור נשלח אל Cloud Build, שבו חבילות ה-Buildpacks של Google Cloud ו-Functions Framework יוצרים קובץ אימג' של קונטיינר. שימו לב שחשבון השירות של Cloud Build יוצר את תמונת מאגר ה-Docker. כברירת מחדל, Cloud Run משתמש בסוג המכונה e2-standard-2 שסופק על ידי Cloud Build.

    3. קובץ האימג' של הקונטיינר מועלה ל-Artifact Registry דרך קטגוריה שנוצרה אוטומטית בשם REGION-docker.pkg.dev/PROJECT_ID/cloud-run-source-deploy.

    4. האימג' נפרס ב-Cloud Run כשירות.

    5. אפשר להפעיל את הפונקציה באמצעות Eventarc,‏ Pub/Sub או טריגרים אחרים של HTTP.

  • אם פרסתם את הפונקציה באמצעות Cloud Functions API (v2), יקרו הדברים הבאים:

    1. קוד המקור שלכם מועלה לקטגוריה של Cloud Storage ללא תקופת שמירה.

      שם הקטגוריה נוצר אוטומטית לפי הפורמט הבא:

      1. אם משתמשים בהצפנה שמוגדרת כברירת מחדל, שם הקטגוריה הוא gcf-v2-sources-PROJECT_NUMBER-REGION.
      2. אם אתם מגנים על הנתונים באמצעות CMEK, שם הקטגוריה הוא gcf-sources-PROJECT_NUMBER-REGION-CMEK_KEY_HASH.
    2. קוד המקור נשלח אל Cloud Build, שבו חבילות ה-Buildpacks של Google Cloud ו-Functions Framework יוצרים קובץ אימג' של קונטיינר. שימו לב שחשבון השירות של Cloud Build יוצר את תמונת מאגר ה-Docker. כברירת מחדל, Cloud Run משתמש בסוג המכונה e2-standard-2 שסופק על ידי Cloud Build.

    3. קובץ האימג' של הקונטיינר מועלה ל-Artifact Registry דרך קטגוריה שנוצרה אוטומטית בשם REGION-docker.pkg.dev/PROJECT_ID/gcf-artifacts.

    4. האימג' נפרס ב-Cloud Run כשירות.

    5. אפשר להפעיל את הפונקציה באמצעות Eventarc,‏ Pub/Sub או טריגרים אחרים של HTTP.

המאמרים הבאים