הגדרת שירות Cloud Run

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

במסמך הזה מתוארים החיבורים והפרמטרים שאפשר להגדיר כשמשתמשים ב-App Design Center כדי ליצור שירות Cloud Run. פרמטרי ההגדרות מבוססים על מודול Terraform‏ terraform-google-cloud-run.

חיבורי רכיבים

בטבלה הבאה מפורטים הרכיבים שאפשר לקשר לשירות Cloud Run, והעדכונים שמתקבלים באפליקציה ובקוד Terraform שנוצר.

רכיב מחובר

עדכונים לאפליקציות

נתוני רקע

Secret Manager
  • שירות Cloud Run יכול להפנות לנתוני הסוד.
  • השדה Secret Data (נתוני סוד) ב-Secret Manager מפנה לשדה env_secret_vars ב-Cloud Run.
  • התפקיד roles/secretmanager.secretAccessor נוסף לחשבון השירות של Cloud Run.
הגדרת סודות לשירותים

חשבון שירות

  • שירות Cloud Run משתמש בחשבון השירות כזהות שירות.
  • התפקיד roles/run.invoker נוסף לחשבון השירות.
  • כתובת האימייל בחשבון השירות ופרטי IAM מתווספים למשתני הסביבה של Cloud Run.
אימות משירות לשירות
AlloyDB ל-PostgreSQL
  • שירות Cloud Run יכול להתחבר למכונת AlloyDB ל-PostgreSQL.
  • המטא-נתונים של משאב AlloyDB ל-PostgreSQL מתווספים למשתני הסביבה של Cloud Run.
  • התפקיד roles/alloydb.admin ב-AlloyDB ל-PostgreSQL נוסף לחשבון השירות של Cloud Run.
התחברות מ-Cloud Run
BigQuery
  • שירות Cloud Run יכול ליצור אינטראקציה עם מערך הנתונים ב-BigQuery.
  • המטא-נתונים של משאב BigQuery מתווספים למשתני הסביבה של Cloud Run.
  • התפקיד roles/bigquery.dataEditor ב-BigQuery נוסף לחשבון השירות של Cloud Run.
סקירה כללית על BigQuery

Bigtable

  • שירות Cloud Run יכול לבצע פונקציות ניהוליות במופע Bigtable.
  • פרטי המטא-נתונים של משאב Bigtable מתווספים למשתני הסביבה של Cloud Run.
  • התפקיד roles/bigtable.admin נוסף לחשבון השירות של Cloud Run.
סקירה כללית של Bigtable

שירות אחר של Cloud Run

  • שירות Cloud Run של המקור יכול לשלוח תעבורה לשירות Cloud Run של היעד.
  • שירות Cloud Run של המקור מכיל את מזהה ה-URI של שירות Cloud Run של היעד במשתני הסביבה שלו.
מה זה Cloud Run

Cloud SQL (MySQL)

  • שירות Cloud Run יכול לקרוא ולכתוב נתונים במופע Cloud SQL ‏ (MySQL).
  • מטא-נתונים של חיבור Cloud SQL מתווספים לשירות Cloud Run.
  • התפקידים roles/cloudsql.instanceUser ו-roles/cloudsql.client מתווספים לחשבון השירות של Cloud Run.
  • חשבון השירות של Cloud Run מתווסף כמשתמש IAM למופע Cloud SQL.
התחברות מ-Cloud Run

Cloud SQL (PostgreSQL)

  • שירות Cloud Run יכול לקרוא ולכתוב נתונים במופע Cloud SQL ‏ (PostgreSQL).
  • מטא-נתונים של חיבור Cloud SQL מתווספים לשירות Cloud Run.
  • התפקידים roles/cloudsql.instanceUser ו-roles/cloudsql.client מתווספים לחשבון השירות של Cloud Run.
  • חשבון השירות של Cloud Run מתווסף כמשתמש IAM למופע Cloud SQL.
התחברות מ-Cloud Run

Cloud Storage

  • שירות Cloud Run יכול לנהל אובייקטים בקטגוריה של Cloud Storage.
  • פרטי חשבון השירות של Cloud Run IAM מתווספים לקטגוריה של Cloud Storage.
  • התפקיד roles/storage.objectAdmin מוקצה לחשבון השירות של Cloud Run.
קישור Google Cloud שירותים

עורף גלובלי של Cloud Load Balancing

  • מאזן העומסים יכול להפיץ את התעבורה הנכנסת לשירות Cloud Run.
  • שירות Cloud Run מתווסף כנקודת קצה של עורף חזיתי בהגדרת העורפים החזיתיים של NEG ללא שרת ב-Cloud Load Balancing.
הגדרת מאזן עומסים גלובלי חיצוני של אפליקציות (ALB) באמצעות Cloud Run

Memorystore for Redis

  • שירות Cloud Run יכול לשמור נתונים במטמון במופע Memorystore for Redis.
  • פרטי החיבור ל-Memorystore for Redis מתווספים למשתני הסביבה של Cloud Run.
  • התפקיד roles/redis.editor נוסף לחשבון השירות של Cloud Run.
התחברות למופע Redis משירות Cloud Run

Memorystore for Redis Cluster

  • שירות Cloud Run יכול לשמור נתונים במטמון ב-Memorystore for Redis Cluster.
  • פרטי החיבור של Memorystore for Redis Cluster מתווספים למשתני הסביבה של Cloud Run.
  • התפקיד roles/redis.editor נוסף לחשבון השירות של Cloud Run.
התחברות למכונת Memorystore for Redis Cluster

Pub/Sub

  • שירות Cloud Run יכול לקבל הודעות או לפרסם בנושא Pub/Sub.
  • מזהה הנושא של Pub/Sub מתווסף למשתני הסביבה של Cloud Run.
  • התפקידים roles/pubsub.publisher ו-roles/pubsub.subscriber מתווספים לחשבון השירות של Cloud Run.
  • שירות Cloud Run מתווסף לשדות של מינוי Pub/Sub מסוג דחיפה ושליפה.
מדריך לשימוש ב-Pub/Sub עם Cloud Run

קצה עורפי אזורי של Cloud Load Balancing

  • מאזן העומסים יכול להפיץ את התעבורה הנכנסת לשירות Cloud Run.
  • שירות Cloud Run מתווסף כנקודת קצה של עורף חזיתי בהגדרת העורפים החזיתיים של NEG ללא שרת ב-Cloud Load Balancing.
הגדרה של מאזן עומסים חיצוני אזורי של אפליקציות באמצעות Cloud Run

קצה קדמי של Cloud Load Balancing אזורי

  • כתובות ה-IP של מאזן העומסים ב-HTTP וב-HTTPS זמינות לאפליקציה שפועלת בקונטיינר של Cloud Run.
  • המטא-נתונים של כתובת Cloud Load Balancing מתווספים למשתני הסביבה של Cloud Run.
סקירה כללית על כללי העברה

Spanner

  • שירות Cloud Run יכול לנהל את מופע Spanner.
  • פרטי החיבור ל-Spanner מתווספים למשתני הסביבה של Cloud Run.
  • התפקיד roles/spanner.databaseAdmin נוסף לחשבון השירות של Cloud Run.
  • פרטי חשבון השירות של Cloud Run ב-IAM מתווספים למופע Spanner.
קישור Google Cloud שירותים

Vertex AI

  • שירות Cloud Run יכול ליצור אינטראקציה עם שירותי Vertex AI.
  • התפקיד roles/aiplatform.user נוסף לחשבון השירות של Cloud Run.
אירוח של אפליקציות וסוכני AI ב-Cloud Run

פרמטרים נדרשים להגדרה

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

שם הפרמטר

תיאור ומגבלות

נתוני רקע

מזהה הפרויקט

הפרויקט שבו רוצים לפרוס את המשאב של Cloud Run.

הגדרת רכיבים

אזור

מיקום הפריסה של שירות Cloud Run.

מיקומי Cloud Run

שם השירות

name שירות Cloud Run

פרמטרים אופציונליים להגדרה

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

תכונה

תכונת משנה

שם הפרמטר

תיאור ומידע על אילוצים

נתוני רקע

קונטיינרים

שם הקונטיינר

name יצירת קונטיינרים

Container Image

image פריסת קובצי אימג' של קונטיינרים ב-Cloud Run

Working Dir

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

workingDir

תלוי בקונטיינר

dependsOn[] הגדרת סדר הפעלת קונטיינרים לפריסות של sidecar

Container Args

args[] הגדרת קונטיינרים לשירותים

Container Command

command הגדרת קונטיינרים לשירותים
משתני סביבה

Key

name משתני סביבה לשירותים

ערך

ערך משתני סביבה לשירותים
משתני סביבה סודיים

Key

EnvVarSource ניהול סודות

Secret

secret ניהול סודות

גרסה

גרסה ניהול סודות
Volume Mounts

שם

name התחברות מ-Cloud Run

נתיב טעינה

mountPath התחברות מ-Cloud Run
יציאות

שם

name שימוש ב-HTTP/2 בשירותים

יציאת מאגר

containerPort שימוש ב-HTTP/2 בשירותים
משאבים

CPU

limits הגדרת מגבלות מעבד לשירותים

זיכרון

limits הגדרת מגבלות זיכרון לשירותים

CPU Idle

ההגדרה קובעת אם המעבד מוקצה רק במהלך בקשות.

cpuIdle

Startup CPU Boost

startupCPUBoost הגדרת שיפור ביצועים של המעבד בהפעלה
בדיקת מוכנות של סטארט-אפ

הסף לשגיאה

failureThreshold הגדרת בדיקות תקינות של קונטיינרים לשירותים

Initial Delay Seconds

initialDelaySeconds הגדרת בדיקות

Timeout Seconds

timeoutSeconds הגדרת בדיקות

שניות בתקופה

periodSeconds הגדרת בדיקות

נתיב HTTP Get

path הגדרת בדיקות

יציאת HTTP Get

port הגדרת בדיקות

שם כותרות ה-HTTP

name הגדרת בדיקות

ערך כותרות HTTP

ערך הגדרת בדיקות

יציאת שקע TCP

port הבקשה לבדיקת תקינות TCP שמוגדרת כברירת מחדל

יציאת GRPC

port הגדרת בדיקות

GRPC Service

service הגדרת בדיקות

Liveness Probe

livenessProbe תרחישים לדוגמה

תיאור

description הגדרת תיאורי שירות

יצירת חשבון שירות

יוצרים חשבון שירות חדש בשביל שירות Cloud Run.

הגדרת זהות שירות למשימות

תפקידים בפרויקט בחשבון שירות

תפקידים להקצאה לחשבון השירות החדש שנוצר. מפעילים את האפשרות יצירת חשבון שירות ולא מספקים קלט בשדה חשבון שירות.

הגדרת זהות שירות למשימות

Ingress

IngressTraffic הגבלת תעבורת נתונים נכנסת (ingress) לרשת ב-Cloud Run

חברים

משתמשים וחשבונות שירות שיכולים להפעיל את השירות. כדי לאפשר גישה לכולם, מזינים allUsers. כדי לאפשר גישה למשתמשים מחוברים ב-Google, מזינים allAuthenticatedUsers, או מזינים רשימה של משתמשים ספציפיים וחשבונות שירות. מידע נוסף זמין במאמר בנושא חברים.

הגדרת זהות שירות למשימות

גישה ל-VPC

Connector

connector VPC עם מחברים

Egress egress שליטה בתעבורת נתונים יוצאת של שירותים

ממשקי רשת

רשת network פריסת שירות
Subnetwork subnetwork פריסת שירות
תגים תגים פריסת שירות

הגנה מפני מחיקה ב-Cloud Run

מונעת מ-Terraform להרוס או ליצור מחדש משימות ושירותים של Cloud Run.

deletion_protection

הפעלת Prometheus Sidecar

מפעילים את Prometheus sidecar במופע Cloud Run.

כתיבת מדדים של Prometheus באמצעות Prometheus sidecar

נפחי אחסון

שם

name הגדרת נפח אחסון בזיכרון
סוד Secret secret הענקת גישה לסוד ב-Cloud Run
מצב ברירת מחדל defaultMode
נתיב path הפיכת סוד לזמין ל-Cloud Run
גרסה גרסה הפיכת סוד לזמין ל-Cloud Run
מצב mode הפיכת סוד לזמין ל-Cloud Run
מכונת Cloud SQL מכונות instances[]‎ התחברות מ-Cloud Run
ספרייה ריקה אמצעי הגעה לאתר medium הגדרה של טעינת אמצעי אחסון בזיכרון לשירותים
מגבלת גודל sizeLimit הגדרה של טעינת אמצעי אחסון בזיכרון לשירותים
GCS Bucket bucket הגדרת נקודות חיבור של נפח אחסון ב-Cloud Storage לשירותים
קריאה בלבד readOnly הגדרת נקודות חיבור של נפח אחסון ב-Cloud Storage לשירותים
NFS שרת server הגדרת נקודות חיבור של נפח אחסון ב-NFS לשירותים
נתיב path הגדרת נקודות חיבור של נפח אחסון ב-NFS לשירותים
קריאה בלבד readOnly הגדרת נקודות חיבור של נפח אחסון ב-NFS לשירותים

התאמה לעומס (scaling) של שירותים

מספר מינימלי של מופעים

minInstanceCount הגדרת מספר מינימלי של מופעים לשירותים

Revision

revision עדכונים של שירות Cloud Run

התאמה לעומס (scaling) של תבניות

מספר מינימלי של מופעים

minInstanceCount הגדרת מספר מינימלי של מופעים לשירותים
מספר מופעים מקסימלי maxInstanceCount מידע על מספר מופעים מקסימלי

מפתח הצפנה

encryptionKey שימוש במפתחות הצפנה בניהול הלקוח

מקסימום בקשות מקבילות למופע

maxInstanceRequestConcurrency מספר מקסימלי של בקשות בו-זמנית לשירותים

תחום עניין משותף ברמת הסשן

sessionAffinity הגדרת זיקה לסשן (session affinity) לשירותים

סביבת הפעלה

executionEnvironment מידע על סביבות הרצה של שירותים

תעבורת נתונים

סוג

type החזרות לגרסה קודמת, השקות הדרגתיות והעברת תעבורה
Percent אחוזים החזרות לגרסה קודמת, השקות הדרגתיות והעברת תעבורה
Revision revision החזרות לגרסה קודמת, השקות הדרגתיות והעברת תעבורה
תג תג החזרות לגרסה קודמת, השקות הדרגתיות והעברת תנועה

תוויות שירות

Key

labels הגדרת תוויות לשירותים
ערך labels הגדרת תוויות לשירותים

הערות שירות

Key

הערות הערות
ערך הערות הערות

לקוח

שם

מזהה שרירותי של לקוח ה-API.

client
גרסה

מזהה שרירותי של מזהה הגרסה.

clientVersion

שלב ההשקה

LaunchStage שלבי השקה של מוצרים

קהלים בהתאמה אישית

customAudience הגדרת קהלים בהתאמה אישית לשירותים

Binary Authorization

הצדקה לגישה במקרה חירום

breakglassJustification שימוש בגישת חירום
שימוש בברירת המחדל useDefault שימוש ב-Binary Authorization

תוויות של תבניות

Key

labels הגדרת תוויות לשירותים
ערך labels הגדרת תוויות לשירותים

הערות בתבניות

Key

הערות הערות
ערך הערות הערות

פסק זמן

timeout הגדרת זמן קצוב לתפוגה של בקשות לשירותים

חשבון שירות

serviceAccount הגדרת זהות שירות לשירותים