התחברות לרשת VPC

מומלץ להשתמש בתעבורת נתונים יוצאת ישירה מ-VPC כדי לשלוח תנועה לרשת VPC – ללא צורך במחבר.

עם זאת, אם Direct VPC egress לא מתאים לכם, אתם יכולים להגדיר במקום זאת מחבר Serverless VPC Access. בדף הזה מוסבר איך לקשר שירות או משימה של Cloud Run לרשת ה-VPC באמצעות מחבר, כדי לאפשר תעבורת יציאה (יוצאת) מ-Cloud Run למכונות וירטואליות של Compute Engine, למופעי Memorystore ולכל משאב אחר עם כתובת IP פנימית.

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

  • אם עדיין אין לכם רשת VPC בפרויקט, צריך ליצור אחת.

  • אם אתם משתמשים ב-VPC משותף, כדאי לעיין במסמכים שמתייחסים ספציפית להגדרת חיבור לרשת (VPC) מאפליקציית serverless עבור המוצר שלכם.

  • אם יש לכם אילוץ במדיניות הארגון שמונע את השימוש ב-Cloud Deployment Manager, לא תוכלו ליצור או למחוק מחברים של Serverless VPC Access. כדי ליצור או למחוק מחבר, צריך להשתמש בפונקציונליות של Deployment Manager.

  • אם הגדרתם מדיניות בנושא קובצי אימג' מהימנים לפרויקט, הקפידו לאפשר את הפרויקט serverless-vpc-access-images במדיניות הארגון constraints/compute.trustedimageProjects.

    הדרישות לגבי רשת משנה של מחבר

  • כל מחבר צריך תת-רשת ייעודית משלו, עם טווח כתובות IPv4 ראשי /28.PRIVATE אי אפשר להשתמש ברשת המשנה הזו למשאבים אחרים, כמו מכונות וירטואליות, Private Service Connect או מאזני עומסים. אחרי שיוצרים את המחבר, אי אפשר להרחיב את רשת המשנה. היא חייבת להישאר /28.

  • כדי ליצור מחבר בפרויקט שירות שמשתמש ברשת VPC משותפת בפרויקט מארח, מנהל רשת של רשת ה-VPC המשותפת צריך ליצור ידנית את תת-הרשת של המחבר לפני שיוצרים את המחבר.

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

    gcloud compute networks subnets describe SUBNET --region=REGION

    מחליפים את SUBNET בשם של רשת המשנה ואת REGION באזור שכולל את רשת המשנה.

    בפלט, בודקים את הפרטים הבאים:

    • התת-רשת היא רשת משנה רגילה. ב-Google Cloud CLI, המשמעות היא שהערך של purpose הוא PRIVATE.
    • טווח כתובות ה-IPv4 הראשי של רשת המשנה, ipCidrRange, הוא /28.
  • אם אתם צריכים ליצור מחבר Serverless VPC Access באותו פרויקט שמכיל את רשת ה-VPC שבה המחבר משתמש, אתם יכולים ליצור ידנית את רשת המשנה של המחבר לפני שאתם יוצרים את המחבר, או Google Cloud ליצור את רשת המשנה של המחבר באופן אוטומטי.

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

    • רשתות משנה שנוצרות אוטומטית עבור מחברים לא מוצגות כשמציגים רשימה של רשתות משנה, לא משנה אם משתמשים במסוף Google Cloud , ב-Google Cloud CLI או ב-Compute Engine API.

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

    • תת-רשתות שנוצרו באופן אוטומטי נכללות ברשימת תת-הרשתות שמוצגת כשמבצעים תיאור של רשת VPC.

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

מגבלות

  • אין תמיכה בתעבורת נתונים ב-IPv6.
  • אין תמיכה ביצירת מחברים של חיבור לרשת (VPC) מאפליקציית serverless באזור asia-southeast3.

יצירת מחבר

כדי לשלוח בקשות לרשת ה-VPC ולקבל את התשובות המתאימות בלי להשתמש באינטרנט הציבורי, אפשר להשתמש במחבר Serverless VPC Access.

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

אם המחבר נמצא בפרויקט שירות ומשתמש ברשת VPC משותפת, המחבר ורשת ה-VPC המשויכת שלו נמצאים בפרויקטים שונים. אם המחבר ורשת ה-VPC שלו נמצאים בפרויקטים שונים, מנהל רשת ה-VPC המשותפת צריך ליצור את רשת המשנה של המחבר ברשת ה-VPC המשותפת לפני שיוצרים את המחבר, וצריך ליצור את המחבר באמצעות רשת משנה קיימת.

מידע נוסף על הדרישות בנושא רשתות משנה זמין במאמר בנושא דרישות רשת המשנה של מחבר.

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

אפשר ליצור מחבר באמצעות מסוף Google Cloud ,‏ Google Cloud CLI או Terraform.

המסוף

  1. עוברים לדף הסקירה הכללית של חיבור לרשת (VPC) מאפליקציית serverless.

    מעבר אל Serverless VPC Access

  2. לוחצים על יצירת מחבר.

  3. בשדה שם, מזינים שם למחבר בהתאם למוסכמות למתן שמות ב-Compute Engine, עם הדרישות הנוספות הבאות: השם צריך להיות באורך של פחות מ-21 תווים, ומקפים (-) נספרים כשני תווים.

  4. בשדה Region (אזור), בוחרים אזור למחבר. האזור הזה צריך להיות זהה לאזור של השירות בלי שרת (serverless).

  5. בשדה רשת, בוחרים את רשת ה-VPC שאליה רוצים לצרף את המחבר.

  6. בשדה Subnet, בוחרים באחת מהאפשרויות הבאות:

    • יצירת מחבר באמצעות רשת משנה קיימת: בוחרים את רשת המשנה הקיימת בשדה Subnet (רשת משנה).

    • יצירת מחבר ורשת משנה חדשה: בוחרים באפשרות טווח כתובות IP בהתאמה אישית בשדה רשת משנה. לאחר מכן, מזינים את הכתובת הראשונה ב-/28CIDR שלא נמצא בשימוש (לדוגמה, 10.8.0.0/28) כדי להשתמש בה כטווח הכתובות הראשי של IPv4 ברשת משנה חדשה שנוצרת ברשת ה-VPC של המחבר. Google Cloud מוודאים שטווח כתובות ה-IP לא מתנגש עם נתיבים קיימים ברשת ה-VPC של המחבר. השם של רשת המשנה החדשה מתחיל בקידומת 'aet-'.

  7. (אופציונלי) כדי להגדיר אפשרויות שינוי גודל לשליטה נוספת במחבר, לוחצים על הצגת הגדרות שינוי גודל כדי להציג את טופס שינוי הגודל.

    1. מגדירים את מספר המכונות המינימלי והמקסימלי למחבר, או משתמשים בערכי ברירת המחדל: 2 (מינימום) ו-10 (מקסימום). המחבר מתרחב עד למקסימום שצוין אם השימוש בתנועה דורש זאת, אבל המחבר לא מצטמצם כשהתנועה פוחתת. חובה להשתמש בערכים בין 2 ל-10.
    2. בתפריט Instance Type (סוג האינסטנס), בוחרים את סוג המכונה שבה רוצים להשתמש עבור המחבר, או משתמשים בברירת המחדל e2-micro. שימו לב לסרגל הצד של העלויות בצד שמאל כשבוחרים את סוג המופע, שבו מוצגים רוחב הפס ואומדני העלויות.
  8. לוחצים על יצירה.

  9. כשמחבר מוכן לשימוש, יופיע סימן וי ירוק ליד השם שלו.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. מעדכנים את הרכיבים של gcloud לגרסה האחרונה:

    gcloud components update
  3. מוודאים ש-Serverless VPC Access API מופעל בפרויקט:

    gcloud services enable vpcaccess.googleapis.com
  4. יוצרים את המחבר באחת מהדרכים הבאות:

    פרטים נוספים וארגומנטים אופציונליים מופיעים במאמר gcloud.

    • יצירת מחבר באמצעות רשת משנה קיימת:

      gcloud compute networks vpc-access connectors create CONNECTOR_NAME \
       --region REGION \
       --subnet SUBNET_NAME \
       --subnet-project HOST_PROJECT_ID \
       --min-instances MIN \
       --max-instances MAX \
       --machine-type MACHINE_TYPE

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

      • CONNECTOR_NAME: שם המחבר, בהתאם למוסכמות למתן שמות ב-Compute Engine, עם הדרישות הנוספות הבאות: השם צריך להיות באורך של פחות מ-21 תווים, ומקפים (-) נחשבים כשני תווים.
      • REGION: אזור עבור המחבר שלך, שזהה לאזור של השירות או המשימה ללא שרת.
      • SUBNET_NAME: השם של רשת המשנה הקיימת.
      • HOST_PROJECT_ID: מזהה הפרויקט המארח של ה-VPC המשותף. אם המחבר ורשת המשנה הקיימת נמצאים באותו פרויקט, לא צריך להשתמש בדגל --subnet-project.
      • MIN: מספר המינימום של המופעים לשימוש במחבר. צריך להשתמש במספר שלם בין 2(ברירת המחדל) לבין 9.
      • MAX: המספר המקסימלי של מופעים לשימוש במחבר. צריך להשתמש במספר שלם בין 3 ל-10 (ברירת המחדל). אם המחבר מתרחב למספר המקסימלי של מופעים, הוא לא יצטמצם בחזרה.
      • MACHINE_TYPE: צריך להיות אחד מהערכים הבאים: f1-micro, ‏e2-micro או e2-standard-4.
    • יצירת מחבר ורשת משנה חדשה:

      gcloud compute networks vpc-access connectors create CONNECTOR_NAME \
       --region REGION \
       --network VPC_NETWORK \
       --range IP_RANGE
       --min-instances MIN \
       --max-instances MAX \
       --machine-type MACHINE_TYPE

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

      • CONNECTOR_NAME: שם המחבר, בהתאם למוסכמות למתן שמות ב-Compute Engine, עם הדרישות הנוספות הבאות: השם צריך להיות באורך של פחות מ-21 תווים, ומקפים (-) נחשבים כשני תווים.
      • REGION: אזור עבור המחבר שלך, שזהה לאזור של השירות או המשימה ללא שרת.
      • VPC_NETWORK: השם של רשת ה-VPC שאליה רוצים לצרף את המחבר. המחבר ורשת ה-VPC צריכים להיות באותו פרויקט.
      • IP_RANGE: צריך לספק /28 CIDR שלא נמצא בשימוש (לדוגמה, 10.8.0.0/28) כדי להשתמש בו כטווח כתובות ה-IPv4 הראשי של רשת משנה חדשה שנוצרת ברשת ה-VPC של המחבר. Google Cloud מוודאים שטווח כתובות ה-IP לא מתנגש עם נתיבים קיימים ברשת ה-VPC של המחבר. השם של רשת המשנה החדשה מתחיל בקידומת 'aet-'.
      • MIN: מספר המינימום של המופעים לשימוש במחבר. צריך להשתמש במספר שלם בין 2(ברירת המחדל) לבין 9.
      • MAX: המספר המקסימלי של מופעים לשימוש במחבר. צריך להשתמש במספר שלם בין 3 ל-10 (ברירת המחדל). אם המחבר מתרחב למספר המקסימלי של מופעים, הוא לא יצטמצם בחזרה.
      • MACHINE_TYPE: צריך להיות אחד מהערכים הבאים: f1-micro, ‏e2-micro או e2-standard-4.
  5. לפני שמשתמשים במחבר, צריך לוודא שהוא במצב READY:

    gcloud compute networks vpc-access connectors describe CONNECTOR_NAME \
    --region REGION

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

    • CONNECTOR_NAME: השם של המחבר. זה השם שציינתם בשלב הקודם.
    • REGION: האזור של המחבר. זהו האזור שציינתם בשלב הקודם.

    הפלט צריך לכלול את השורה state: READY.

  6. Terraform

    אפשר להשתמש במשאב של Terraform כדי להפעיל את vpcaccess.googleapis.com API.

    resource "google_project_service" "vpcaccess-api" {
      project = var.project_id # Replace this with your project ID in quotes
      service = "vpcaccess.googleapis.com"
    }

    אתם יכולים להשתמש במודולים של Terraform כדי ליצור רשת VPC ותת-רשת, ואז ליצור את המחבר.

    module "test-vpc-module" {
      source       = "terraform-google-modules/network/google"
      version      = "~> 13.0"
      project_id   = var.project_id # Replace this with your project ID in quotes
      network_name = "my-serverless-network"
      mtu          = 1460
    
      subnets = [
        {
          subnet_name   = "serverless-subnet"
          subnet_ip     = "10.10.10.0/28"
          subnet_region = "us-central1"
        }
      ]
    }
    
    module "serverless-connector" {
      source     = "terraform-google-modules/network/google//modules/vpc-serverless-connector-beta"
      version    = "~> 13.0"
      project_id = var.project_id
      vpc_connectors = [{
        name        = "central-serverless"
        region      = "us-central1"
        subnet_name = module.test-vpc-module.subnets["us-central1/serverless-subnet"].name
        # host_project_id = var.host_project_id # Specify a host_project_id for shared VPC
        machine_type  = "e2-standard-4"
        min_instances = 2
        max_instances = 7
        }
        # Uncomment to specify an ip_cidr_range
        #   , {
        #     name          = "central-serverless2"
        #     region        = "us-central1"
        #     network       = module.test-vpc-module.network_name
        #     ip_cidr_range = "10.10.11.0/28"
        #     subnet_name   = null
        #     machine_type  = "e2-standard-4"
        #     min_instances = 2
        #   max_instances = 7 }
      ]
      depends_on = [
        google_project_service.vpcaccess-api
      ]
    }

הגדרת סביבה בלי שרת (serverless) לשימוש במחבר

אחרי שיוצרים מחבר Serverless VPC Access, צריך להגדיר את סביבת ה-serverless כך שתשתמש במחבר. לשם כך, פועלים לפי ההוראות שמתאימות לסביבת ה-serverless שלכם:

הגדרת Cloud Run לשימוש במחבר

כשיוצרים שירות חדש או פורסים עדכון חדש, אפשר להגדיר את השירות כך שישתמש במחבר באמצעות מסוף Google Cloud , Google Cloud CLI, קובץ YAML או משאב Terraform.

המסוף

  1. נכנסים ל-Cloud Run במסוף Google Cloud :

    כניסה ל-Cloud Run

  2. בתפריט הניווט של Cloud Run, בוחרים באפשרות Services (שירותים) ולוחצים על Deploy container (פריסת קונטיינר) כדי להגדיר שירות חדש. אם אתם מגדירים שירות קיים, לוחצים על השירות ואז על עריכה ופריסה של עדכון חדש.

  3. אם אתם מגדירים שירות חדש, ממלאים את דף ההגדרות הראשוניות של השירות ואז לוחצים על Container(s), Volumes, Networking, Security (מאגרים, אמצעי אחסון, רשתות, אבטחה) כדי להרחיב את דף הגדרות השירות.

  4. לוחצים על הכרטיסייה Connections (קישורים).

    תמונה

    • בשדה VPC Connector (מחבר VPC), בוחרים מחבר לשימוש או בוחרים באפשרות None (ללא) כדי לנתק את השירות מרשת VPC.
  5. לוחצים על יצירה או על פריסה.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. כדי לציין מחבר במהלך הפריסה, משתמשים בדגל --vpc-connector:

    gcloud run deploy SERVICE --image IMAGE_URL --vpc-connector CONNECTOR_NAME
    • מחליפים את SERVICE בשם השירות.
    • החלפה של IMAGE_URL.
    • מחליפים את CONNECTOR_NAME בשם המחבר. אם המחבר נמצא בפרויקט המארח של VPC משותף, צריך לציין את השם המלא, לדוגמה:
      projects/HOST_PROJECT_ID/locations/CONNECTOR_REGION/connectors/CONNECTOR_NAME
      כאשר HOST_PROJECT_ID הוא מזהה פרויקט המארח, CONNECTOR_REGION הוא האזור של המחבר ו-CONNECTOR_NAME הוא השם שנתתם למחבר.

    כדי לצרף, לעדכן או להסיר מחבר לשירות קיים, משתמשים בפקודה gcloud run services update עם אחד מהדגלים הבאים, לפי הצורך:

    לדוגמה, כדי לצרף או לעדכן מחבר:

    gcloud run services update SERVICE --vpc-connector CONNECTOR_NAME
    • מחליפים את SERVICE בשם השירות.
    • מחליפים את CONNECTOR_NAME בשם המחבר.
  3. YAML

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

      gcloud run services describe SERVICE --format export > service.yaml
    2. מוסיפים או מעדכנים את מאפיין run.googleapis.com/vpc-access-connector מתחת למאפיין annotations מתחת למאפיין spec ברמה העליונה:

      apiVersion: serving.knative.dev/v1
      kind: Service
      metadata:
        name: SERVICE
      spec:
        template:
          metadata:
            annotations:
              run.googleapis.com/vpc-access-connector: CONNECTOR_NAME
      • מחליפים את SERVICE בשם של שירות Cloud Run.
      • מחליפים את CONNECTOR_NAME בשם המחבר. אם המחבר נמצא בפרויקט המארח של VPC משותף, צריך לציין את השם המלא, לדוגמה:
        projects/HOST_PROJECT_ID/locations/CONNECTOR_REGION/connectors/CONNECTOR_NAME
        כאשר HOST_PROJECT_ID הוא מזהה פרויקט המארח, CONNECTOR_REGION הוא האזור של המחבר ו-CONNECTOR_NAME הוא השם שנתתם למחבר.
    3. מחליפים את השירות בהגדרה החדשה שלו באמצעות הפקודה הבאה:

      gcloud beta run services replace service.yaml

    Terraform

    אתם יכולים להשתמש במשאב של Terraform כדי ליצור שירות ולהגדיר אותו לשימוש במחבר שלכם.

    # Cloud Run service
    resource "google_cloud_run_v2_service" "gcr_service" {
      name     = "mygcrservice"
      location = "us-west1"
    
      deletion_protection = false # set to "true" in production
    
      template {
        containers {
          image = "us-docker.pkg.dev/cloudrun/container/hello"
          resources {
            limits = {
              cpu    = "1000m"
              memory = "512Mi"
            }
          }
          # the service uses this SA to call other Google Cloud APIs
          # service_account_name = myservice_runtime_sa
        }
    
        scaling {
          # Limit scale up to prevent any cost blow outs!
          max_instance_count = 5
        }
    
        vpc_access {
          # Use the VPC Connector
          connector = google_vpc_access_connector.connector.id
          # all egress from the service should go through the VPC Connector
          egress = "ALL_TRAFFIC"
        }
      }
    }

הגדרת פונקציות Cloud Run לשימוש במחבר

אפשר להגדיר פונקציה לשימוש במחבר דרך מסוף Google Cloud או Google Cloud CLI:

המסוף

  1. נכנסים לדף הסקירה הכללית של פונקציות Cloud Run במסוףGoogle Cloud :

    כניסה לדף Cloud Run functions

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

  3. כדי להרחיב את ההגדרות המתקדמות, לוחצים על RUNTIME, BUILD AND CONNECTIONS SETTINGS (הגדרות של זמן ריצה, בנייה וחיבורים).

  4. בכרטיסייה Connections (חיבורים) בקטע Egress settings (הגדרות יציאה), מזינים את שם המחבר בשדה VPC connector (מחבר VPC).

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. משתמשים בפקודה gcloud functions deploy כדי לפרוס את הפונקציה ומציינים את הדגל --vpc-connector:

    gcloud functions deploy FUNCTION_NAME \
    --vpc-connector CONNECTOR_NAME \
    FLAGS...
    

    where:

    • FUNCTION_NAME הוא השם של הפונקציה.
    • CONNECTOR_NAME הוא השם של המחבר. אם המחבר נמצא בפרויקט המארח של VPC משותף, צריך לציין את השם המלא, לדוגמה:
      projects/HOST_PROJECT_ID/locations/CONNECTOR_REGION/connectors/CONNECTOR_NAME
      כאשר HOST_PROJECT_ID הוא מזהה פרויקט המארח, CONNECTOR_REGION הוא האזור של המחבר ו-CONNECTOR_NAME הוא השם שנתתם למחבר.
    • FLAGS... מתייחס לדגלים אחרים שמעבירים במהלך פריסת הפונקציה.

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

הגדרת App Engine לשימוש במחבר

‫Python 2

  1. להפסיק את השימוש בשירות אחזור של כתובות אתרים של App Engine.

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

    עדיין אפשר להשתמש בספריית urlfetch ישירות לבקשות ספציפיות אם צריך, אבל לא מומלץ לעשות את זה.

  2. מוסיפים את השדה Serverless VPC Access לקובץ app.yaml:

    vpc_access_connector:
     name: projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME
    

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

    • PROJECT_ID במזהה הפרויקט ב- Google Cloud . אם המחבר נמצא בפרויקט המארח של VPC משותף, צריך להזין כאן את המזהה של הפרויקט המארח.
    • REGION עם האזור שבו נמצא המחבר.
    • CONNECTOR_NAME בשם המחבר.
  3. פורסים את השירות:

    gcloud app deploy

    אחרי שפורסים את השירות, הוא יכול לשלוח בקשות לכתובות IP פנימיות כדי לגשת למשאבים ברשת ה-VPC.

Java 8

  1. הפסקת השימוש בשירות אחזור של כתובות אתרים של App Engine URLFetchService.

  2. מוסיפים את הרכיב Serverless VPC Access לקובץ appengine-web.xml של השירות:

    <vpc-access-connector>
    <name>projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME</name>
    </vpc-access-connector>
    

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

    • PROJECT_ID במזהה הפרויקט ב- Google Cloud . אם המחבר נמצא בפרויקט המארח של VPC משותף, צריך להזין כאן את המזהה של הפרויקט המארח.
    • REGION עם האזור שבו נמצא המחבר.
    • CONNECTOR_NAME בשם המחבר.
  3. פורסים את השירות:

    gcloud app deploy WEB-INF/appengine-web.xml

    אחרי שפורסים את השירות, הוא יכול לשלוח בקשות לכתובות IP פנימיות כדי לגשת למשאבים ברשת ה-VPC.

‫Go 1.11

  1. להפסיק את השימוש בשירות אחזור של כתובות אתרים של App Engine.

    הכלי Serverless VPC Access לא תומך באחזור כתובות URL, ובקשות שמוגשות באמצעות אחזור כתובות URL מתעלמות מההגדרות של Serverless VPC Access. אפשר ליצור במקום זאת חיבורים יוצאים באמצעות sockets.

  2. מוסיפים את השדה Serverless VPC Access לקובץ app.yaml:

    vpc_access_connector:
     name: projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME
    

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

    • PROJECT_ID במזהה הפרויקט ב- Google Cloud
    • REGION עם האזור שבו נמצא המחבר
    • CONNECTOR_NAME בשם המחבר
  3. פורסים את השירות:

    gcloud app deploy

    אחרי שפורסים את השירות, הוא יכול לשלוח בקשות לכתובות IP פנימיות כדי לגשת למשאבים ברשת ה-VPC.

כל שאר סביבות זמן הריצה

  1. מוסיפים את השדה Serverless VPC Access לקובץ app.yaml:

    vpc_access_connector:
     name: projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME
    

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

    • PROJECT_ID במזהה הפרויקט ב- Google Cloud . אם המחבר נמצא בפרויקט המארח של VPC משותף, צריך להזין כאן את המזהה של הפרויקט המארח.
    • REGION עם האזור שבו נמצא המחבר.
    • CONNECTOR_NAME בשם המחבר.
  2. פורסים את השירות:

    gcloud app deploy

    אחרי שפורסים את השירות, הוא יכול לשלוח בקשות לכתובות IP פנימיות כדי לגשת למשאבים ברשת ה-VPC.

הגדרת כללים לחומת אש עבור מחברים

כללי חומת אש שנדרשים למחברים בפרויקטים של שירותים

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

עם זאת, אם יוצרים מחבר בפרויקט שירות והמחבר מכוון לרשת VPC משותפת בפרויקט המארח, צריך להוסיף כללי חומת אש כדי לאפשר את התעבורה הדרושה להפעלת המחבר מהטווחים הבאים:

הטווחים האלה משמשים את התשתית של Google שמהווה בסיס ל-Cloud Run, לפונקציות Cloud Run ולסביבה הרגילה של App Engine. כל הבקשות מכתובות ה-IP האלה מגיעות מהתשתית של Google, כדי לוודא שכל משאב בלי שרת (serverless) מתקשר רק עם המחבר שאליו הוא מחובר.

בנוסף, צריך לאפשר תנועה מרשת המשנה של המחבר למשאבים ברשת ה-VPC.

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

בהגדרה בסיסית, מחילים את הכללים כדי לאפשר למשאבי serverless בכל פרויקט שירות שמחובר לרשת ה-VPC המשותפת לשלוח בקשות לכל משאב ברשת.

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

  1. יוצרים כללים של חומת אש שמאפשרים לבקשות מהתשתית חסרת השרתים של Google ולבדיקות תקינות להגיע לכל המחברים ברשת. בפקודות האלה, יציאות ה-UDP וה-TCP משמשות כשרתי proxy ולבדיקות תקינות של HTTP, בהתאמה. אל תשנו את היציאות שצוינו.

    gcloud compute firewall-rules create serverless-to-vpc-connector \
        --allow tcp:667,udp:665-666,icmp \
        --source-ranges=35.199.224.0/19 \
        --direction=INGRESS \
        --target-tags vpc-connector \
        --network=VPC_NETWORK
    gcloud compute firewall-rules create vpc-connector-to-serverless \
        --allow tcp:667,udp:665-666,icmp \
        --destination-ranges=35.199.224.0/19 \
        --direction=EGRESS \
        --target-tags vpc-connector \
        --network=VPC_NETWORK
    gcloud compute firewall-rules create vpc-connector-health-checks \
        --allow tcp:667 \
        --source-ranges=35.191.0.0/16,35.191.192.0/18,130.211.0.0/22 \
        --direction=INGRESS \
        --target-tags vpc-connector \
        --network=VPC_NETWORK

    מחליפים את VPC_NETWORK בשם של רשת ה-VPC שאליה רוצים לצרף את המחבר.

  2. יוצרים כלל חומת אש לתעבורה נכנסת ברשת ה-VPC כדי לאפשר בקשות ממחברים שמכוונים לרשת הזו:

    gcloud compute firewall-rules create vpc-connector-requests \
        --allow tcp,udp,icmp \
        --direction=INGRESS \
        --source-tags vpc-connector \
        --network=VPC_NETWORK

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

יצירת כללים לחומת האש למחברים ספציפיים

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

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

  • תגי רשת: לכל מחבר יש שני תגי רשת: vpc-connector ו-vpc-connector-REGION-CONNECTOR_NAME. כדי להגביל את ההיקף של כללי חומת האש למחבר ספציפי, צריך להשתמש בפורמט השני.
  • טווחים של כתובות IP: אפשר להשתמש באפשרות הזו רק בכללי יציאה, כי היא לא פועלת בכללי כניסה. אתם יכולים להשתמש בטווח כתובות ה-IP של רשת המשנה של המחבר כדי להגביל את ההיקף של כללי חומת האש למחבר VPC יחיד.

הגבלת הגישה של מכונות וירטואליות של מחברים למשאבי רשת VPC

אתם יכולים להגביל את הגישה של המחבר למשאבים ברשת ה-VPC של היעד באמצעות כללי חומת אש של VPC או כללים במדיניות חומת אש. אפשר להגביל את הגישה באמצעות אחת מהאסטרטגיות הבאות:

  • יוצרים כללי תעבורת נתונים נכנסת (ingress) שהיעדים שלהם מייצגים את המשאבים שרוצים להגביל את הגישה של VM של מחברים אליהם, והמקורות שלהם מייצגים את ה-VM של המחברים.
  • יוצרים כללי תעבורת נתונים יוצאת (egress) שהיעדים שלהם מייצגים את מכונות ה-VM של המחבר, והיעדים שלהם מייצגים את המשאבים שרוצים להגביל את הגישה של מכונות ה-VM של המחבר אליהם.

הדוגמאות הבאות ממחישות כל אסטרטגיה.

הגבלת הגישה באמצעות כללי Ingress

כדי לשלוט בתעבורה הנכנסת לרשת ה-VPC, בוחרים באפשרות תגי רשת או בטווחים של CIDR.

תגים ברשת

השלבים הבאים מראים איך ליצור כללי Ingress שמגבילים את הגישה של מחבר לרשת VPC על סמך תגי הרשת של המחבר.

  1. מוודאים שיש לכם את ההרשאות הנדרשות להוספת כללי חומת אש. אתם צריכים להיות בעלי אחד מהתפקידים הבאים בניהול זהויות והרשאות גישה (IAM):

  2. דחיית תנועת נתונים של מחבר ברשת ה-VPC.

    יוצרים כלל חומת אש לדחיית תעבורת נתונים נכנסת (ingress) עם עדיפות נמוכה מ-1000 ברשת ה-VPC, כדי לדחות תעבורת נתונים נכנסת מהתג של רשת המחברים. ההגדרה הזו מבטלת את כלל חומת האש המרומז שנוצר כברירת מחדל ב-VPC שלכם על ידי Serverless VPC Access.

    gcloud compute firewall-rules create RULE_NAME \
    --action=DENY \
    --rules=PROTOCOL \
    --source-tags=VPC_CONNECTOR_NETWORK_TAG \
    --direction=INGRESS \
    --network=VPC_NETWORK \
    --priority=PRIORITY

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

    • RULE_NAME: השם של כלל חומת האש החדש. לדוגמה, deny-vpc-connector.

    • PROTOCOL: פרוטוקול אחד או יותר שרוצים לאפשר ממחבר ה-VPC. הפרוטוקולים הנתמכים הם tcp או udp. לדוגמה, tcp:80,udp מאפשר תעבורת TCP דרך יציאה 80 ותעבורת UDP. מידע נוסף זמין במאמרי העזרה בנושא הדגל allow.

      למטרות אבטחה ואימות, אפשר גם להגדיר כללי דחייה כדי לחסום תנועה עבור הפרוטוקולים הבאים שלא נתמכים: ah,‏ all,‏ esp,‏ icmp,‏ ipip ו-sctp.

    • VPC_CONNECTOR_NETWORK_TAG: תג הרשת של המחבר האוניברסלי אם רוצים להגביל את הגישה לכל המחברים (כולל מחברים שייווצרו בעתיד), או תג הרשת הייחודי אם רוצים להגביל את הגישה למחבר ספציפי.

      • תג רשת אוניברסלי: vpc-connector
      • תג רשת ייחודי: vpc-connector-REGION-CONNECTOR_NAME

        מחליפים את:

        • REGION: האזור של המחבר שרוצים להגביל
        • CONNECTOR_NAME: השם של מחבר שרוצים להגביל

      מידע נוסף על תגי רשת של מחברים זמין במאמר בנושא תגי רשת.

    • VPC_NETWORK: השם של רשת ה-VPC

    • PRIORITY: מספר שלם בין 0 ל-65535. לדוגמה, 0 מגדיר את העדיפות הגבוהה ביותר.

  3. מאפשרים לתנועה של מחברים להגיע למשאב שאליו אמורה להגיע תנועה של מחברים.

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

    gcloud compute firewall-rules create RULE_NAME \
    --allow=PROTOCOL \
    --source-tags=VPC_CONNECTOR_NETWORK_TAG \
    --direction=INGRESS \
    --network=VPC_NETWORK \
    --target-tags=RESOURCE_TAG \
    --priority=PRIORITY

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

    • RULE_NAME: השם של כלל חומת האש החדש. לדוגמה, allow-vpc-connector-for-select-resources.

    • PROTOCOL: פרוטוקול אחד או יותר שרוצים לאפשר ממחבר ה-VPC. הפרוטוקולים הנתמכים הם tcp או udp. לדוגמה, tcp:80,udp מאפשר תעבורת TCP דרך יציאה 80 ותעבורת UDP. מידע נוסף זמין במאמרי העזרה בנושא הדגל allow.

    • VPC_CONNECTOR_NETWORK_TAG: תג הרשת של המחבר האוניברסלי אם רוצים להגביל את הגישה לכל המחברים (כולל מחברים שייווצרו בעתיד), או תג הרשת הייחודי אם רוצים להגביל את הגישה למחבר ספציפי. המספר הזה צריך להיות זהה למספר התג של הרשת שציינתם בשלב הקודם.

      • תג רשת אוניברסלי: vpc-connector
      • תג רשת ייחודי: vpc-connector-REGION-CONNECTOR_NAME

        מחליפים את:

        • REGION: האזור של המחבר שרוצים להגביל
        • CONNECTOR_NAME: השם של מחבר שרוצים להגביל

      מידע נוסף על תגי רשת של מחברים זמין במאמר בנושא תגי רשת.

    • VPC_NETWORK: השם של רשת ה-VPC

    • RESOURCE_TAG: תג הרשת של משאב ה-VPC שרוצים שמחבר ה-VPC יקבל אליו גישה

    • PRIORITY: מספר שלם שקטן מהעדיפות שהגדרתם בשלב הקודם. לדוגמה, אם הגדרתם את העדיפות של הכלל שיצרתם בשלב הקודם ל-990, נסו להגדיר אותה ל-980.

מידע נוסף על הדגלים הנדרשים והאופציונליים ליצירת כללים של חומת אש זמין במאמרי העזרה בנושא gcloud compute firewall-rules create.

טווח CIDR

השלבים הבאים מראים איך ליצור כללי Ingress שמגבילים את הגישה של מחבר לרשת VPC על סמך טווח ה-CIDR של המחבר.

  1. מוודאים שיש לכם את ההרשאות הנדרשות להוספת כללי חומת אש. אתם צריכים להיות בעלי אחד מהתפקידים הבאים בניהול זהויות והרשאות גישה (IAM):

  2. דחיית תנועת נתונים של מחבר ברשת ה-VPC.

    יוצרים כלל חומת אש לתנועה נכנסת עם עדיפות נמוכה מ-1000 ברשת ה-VPC כדי לחסום תנועה נכנסת מטווח ה-CIDR של המחבר. ההגדרה הזו מבטלת את כלל חומת האש המרומז שנוצר כברירת מחדל ב-VPC שלכם על ידי Serverless VPC Access.

    gcloud compute firewall-rules create RULE_NAME \
    --action=DENY \
    --rules=PROTOCOL \
    --source-ranges=VPC_CONNECTOR_CIDR_RANGE \
    --direction=INGRESS \
    --network=VPC_NETWORK \
    --priority=PRIORITY

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

    • RULE_NAME: השם של כלל חומת האש החדש. לדוגמה, deny-vpc-connector.

    • PROTOCOL: פרוטוקול אחד או יותר שרוצים לאפשר ממחבר ה-VPC. הפרוטוקולים הנתמכים הם tcp או udp. לדוגמה, tcp:80,udp מאפשר תעבורת TCP דרך יציאה 80 ותעבורת UDP. מידע נוסף זמין במאמרי העזרה בנושא הדגל allow.

      למטרות אבטחה ואימות, אפשר גם להגדיר כללי דחייה כדי לחסום תנועה עבור הפרוטוקולים הבאים שלא נתמכים: ah,‏ all,‏ esp,‏ icmp,‏ ipip ו-sctp.

    • VPC_CONNECTOR_CIDR_RANGE: טווח ה-CIDR של המחבר שהגישה אליו מוגבלת

    • VPC_NETWORK: השם של רשת ה-VPC

    • PRIORITY: מספר שלם בין 0 ל-65535. לדוגמה, 0 מגדיר את העדיפות הגבוהה ביותר.

  3. מאפשרים לתנועה של מחברים להגיע למשאב שאליו אמורה להגיע תנועה של מחברים.

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

    gcloud compute firewall-rules create RULE_NAME \
    --allow=PROTOCOL \
    --source-ranges=VPC_CONNECTOR_CIDR_RANGE \
    --direction=INGRESS \
    --network=VPC_NETWORK \
    --target-tags=RESOURCE_TAG \
    --priority=PRIORITY

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

    • RULE_NAME: השם של כלל חומת האש החדש. לדוגמה, allow-vpc-connector-for-select-resources.

    • PROTOCOL: פרוטוקול אחד או יותר שרוצים לאפשר ממחבר ה-VPC. הפרוטוקולים הנתמכים הם tcp או udp. לדוגמה, tcp:80,udp מאפשר תעבורת TCP דרך יציאה 80 ותעבורת UDP. מידע נוסף זמין במאמרי העזרה בנושא הדגל allow.

    • VPC_CONNECTOR_CIDR_RANGE: טווח ה-CIDR של המחבר שהגישה אליו מוגבלת

    • VPC_NETWORK: השם של רשת ה-VPC

    • RESOURCE_TAG: תג הרשת של משאב ה-VPC שרוצים שמחבר ה-VPC יקבל אליו גישה

    • PRIORITY: מספר שלם שקטן מהעדיפות שהגדרתם בשלב הקודם. לדוגמה, אם הגדרתם את העדיפות של הכלל שיצרתם בשלב הקודם ל-990, נסו להגדיר אותה ל-980.

למידע נוסף על הדגלים הנדרשים והאופציונליים ליצירת כללים של חומת אשgcloud compute firewall-rules create

הגבלת הגישה באמצעות כללים לתעבורת נתונים יוצאת (egress)

בשלבים הבאים מוסבר איך ליצור כללי יציאה כדי להגביל את הגישה למחבר.

  1. מוודאים שיש לכם את ההרשאות הנדרשות להוספת כללי חומת אש. אתם צריכים להיות בעלי אחד מהתפקידים הבאים בניהול הזהויות והרשאות הגישה (IAM):

  2. דחיית תעבורת נתונים יוצאת (egress) מהמחבר.

    יוצרים כלל חומת אש לתעבורת נתונים יוצאת במחבר Serverless VPC Access כדי למנוע ממנו לשלוח תעבורת נתונים יוצאת לכל יעד, למעט תגובות שנוצרו.

    gcloud compute firewall-rules create RULE_NAME \
    --action=DENY \
    --rules=PROTOCOL \
    --direction=EGRESS \
    --target-tags=VPC_CONNECTOR_NETWORK_TAG \
    --network=VPC_NETWORK \
    --priority=PRIORITY

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

    • RULE_NAME: השם של כלל חומת האש החדש. לדוגמה, deny-vpc-connector.

    • PROTOCOL: פרוטוקול אחד או יותר שרוצים לאפשר ממחבר ה-VPC. הפרוטוקולים הנתמכים הם tcp או udp. לדוגמה, tcp:80,udp מאפשר תעבורת TCP דרך יציאה 80 ותעבורת UDP. מידע נוסף זמין במאמרי העזרה בנושא הדגל allow.

      למטרות אבטחה ואימות, אפשר גם להגדיר כללי דחייה כדי לחסום תנועה עבור הפרוטוקולים הבאים שלא נתמכים: ah,‏ all,‏ esp,‏ icmp,‏ ipip ו-sctp.

    • VPC_CONNECTOR_NETWORK_TAG: תג הרשת של מחבר ה-VPC האוניברסלי, אם רוצים שהכלל יחול על כל מחברי ה-VPC הקיימים ועל כל מחברי ה-VPC שייווצרו בעתיד. או תג הרשת הייחודי של מחבר ה-VPC אם רוצים לשלוט במחבר ספציפי.

    • VPC_NETWORK: השם של רשת ה-VPC

    • PRIORITY: מספר שלם בין 0 ל-65535. לדוגמה, 0 מגדיר את העדיפות הגבוהה ביותר.

  3. מאפשרים תנועת יציאה כשהיעד נמצא בטווח ה-CIDR שרוצים שהמחבר יקבל אליו גישה.

    משתמשים בדגלים allow ו-destination-ranges כדי ליצור כלל חומת אש שמאפשר תעבורת נתונים יוצאת מהמחבר לטווח יעד ספציפי. מגדירים את טווח היעד לטווח ה-CIDR של המשאב ברשת ה-VPC שרוצים שהמחבר יוכל לגשת אליו. מגדירים את העדיפות של הכלל הזה לערך נמוך יותר מהעדיפות של הכלל שיצרתם בשלב הקודם.

    gcloud compute firewall-rules create RULE_NAME \
    --allow=PROTOCOL \
    --destination-ranges=RESOURCE_CIDR_RANGE \
    --direction=EGRESS \
    --network=VPC_NETWORK \
    --target-tags=VPC_CONNECTOR_NETWORK_TAG \
    --priority=PRIORITY

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

    • RULE_NAME: השם של כלל חומת האש החדש. לדוגמה, allow-vpc-connector-for-select-resources.

    • PROTOCOL: פרוטוקול אחד או יותר שרוצים לאפשר ממחבר ה-VPC. הפרוטוקולים הנתמכים הם tcp או udp. לדוגמה, tcp:80,udp מאפשר תעבורת TCP דרך יציאה 80 ותעבורת UDP. מידע נוסף זמין במאמרי העזרה בנושא הדגל allow.

    • RESOURCE_CIDR_RANGE: טווח ה-CIDR של המחבר שהגישה אליו מוגבלת

    • VPC_NETWORK: השם של רשת ה-VPC

    • VPC_CONNECTOR_NETWORK_TAG: תג הרשת של מחבר ה-VPC האוניברסלי, אם רוצים שהכלל יחול על כל מחברי ה-VPC הקיימים ועל כל מחברי ה-VPC שייווצרו בעתיד. או תג הרשת הייחודי של מחבר ה-VPC אם רוצים לשלוט במחבר ספציפי. אם השתמשתם בתג רשת ייחודי בשלב הקודם, השתמשו בתג הרשת הייחודי.

    • PRIORITY: מספר שלם שקטן מהעדיפות שהגדרתם בשלב הקודם. לדוגמה, אם הגדרתם את העדיפות של הכלל שיצרתם בשלב הקודם ל-990, נסו להגדיר אותה ל-980.

למידע נוסף על הדגלים הנדרשים והאופציונליים ליצירת כללים של חומת אש, אפשר לעיין במאמרי העזרה בנושא gcloud compute firewall-rules create.

עדכון מחבר

אתם יכולים לעדכן ולנטר את המאפיינים הבאים של המחבר באמצעות Google Cloud המסוף, Google Cloud CLI או ה-API:

  • סוג המכונה (המופע)
  • מספר המופעים המינימלי והמקסימלי
  • הנתונים האחרונים של קצב העברת הנתונים, מספר המופעים וניצול המעבד

עדכון סוג המכונה

המסוף

  1. עוברים לדף הסקירה הכללית של חיבור לרשת (VPC) מאפליקציית serverless.

    מעבר אל Serverless VPC Access

  2. בוחרים את כלי החיבור שרוצים לערוך ולוחצים על עריכה.

  3. ברשימה Instance type, בוחרים את סוג המכונה (המופע) המועדף. מידע על סוגי המכונות הזמינים מופיע במאמר בנושא תפוקה ושינוי גודל.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

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

    gcloud beta compute networks vpc-access connectors update CONNECTOR_NAME --region=REGION --machine-type=MACHINE_TYPE
    מחליפים את מה שכתוב בשדות הבאים:

    • CONNECTOR_NAME: השם של המחבר
    • REGION: השם של האזור של המחבר
    • MACHINE_TYPE: סוג המכונה המועדף. מידע על סוגי המכונות שזמינים מופיע במאמר בנושא תפוקה ושינוי גודל.

הקטנת המספר המינימלי והמקסימלי של מופעים

כדי להקטין את מספר המינימום והמקסימום של המופעים, צריך לבצע את הפעולות הבאות:

  1. יוצרים מחבר חדש עם הערכים המועדפים.
  2. מעדכנים את השירות או הפונקציה כדי להשתמש במחבר החדש.
  3. אחרי שמעבירים את התנועה של המחבר הישן, מוחקים אותו.

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

המסוף

  1. עוברים לדף הסקירה הכללית של חיבור לרשת (VPC) מאפליקציית serverless.

    מעבר אל Serverless VPC Access

  2. בוחרים את כלי החיבור שרוצים לערוך ולוחצים על עריכה.

  3. בשדה Minimum instances (מינימום מופעים), בוחרים את מספר המופעים המינימלי המועדף.

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

  4. בשדה מספר מופעים מקסימלי, בוחרים את המספר המקסימלי המועדף של מופעים.

    הערך הקטן ביותר האפשרי בשדה הזה הוא הערך הנוכחי. הערך הגדול ביותר שאפשר להזין בשדה הזה הוא 10.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

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

    gcloud beta compute networks vpc-access connectors update CONNECTOR_NAME --region=REGION --min-instances=MIN_INSTANCES --max-instances=MAX_INSTANCES
    מחליפים את מה שכתוב בשדות הבאים:

    • CONNECTOR_NAME: השם של המחבר
    • REGION: השם של האזור של המחבר
    • MIN_INSTANCES: מספר המינימום המועדף של המופעים.
      • הערך הקטן ביותר האפשרי בשדה הזה הוא הערך הנוכחי של min_instances. כדי לראות את הערך הנוכחי, אפשר לעיין במאמר בנושא חיפוש ערכי המאפיינים הנוכחיים.
      • הערך הכי גדול שאפשר להזין בשדה הזה הוא הערך הנוכחי של max_instances פחות 1, כי min_instances חייב להיות קטן מ-max_instances. לדוגמה, אם הערך של max_instances הוא 8, הערך הגדול ביותר שאפשר לציין בשדה הזה הוא 7. אם המחבר משתמש בערך ברירת המחדל max-instances של 10, הערך המקסימלי האפשרי בשדה הזה הוא 9. כדי למצוא את הערך של max-instances, אפשר לעיין בקטע איך מוצאים את ערכי המאפיינים הנוכחיים.
    • MAX_INSTANCES:

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

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

חיפוש ערכי המאפיינים הנוכחיים

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

gcloud compute networks vpc-access connectors describe CONNECTOR_NAME --region=REGION --project=PROJECT
מחליפים את מה שכתוב בשדות הבאים:

  • CONNECTOR_NAME: השם של המחבר
  • REGION: השם של האזור של המחבר
  • PROJECT: השם של Google Cloud הפרויקט

מעקב אחר השימוש במחבר

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

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

  1. עוברים לדף הסקירה הכללית של חיבור לרשת (VPC) מאפליקציית serverless.

    מעבר אל Serverless VPC Access

  2. לוחצים על השם של מחבר הנתונים שרוצים לעקוב אחריו.

  3. בוחרים את מספר הימים שרוצים להציג, בין יום אחד ל-90 ימים.

  4. בתרשים Throughput (קצב העברת נתונים), מחזיקים את הסמן מעל התרשים כדי לראות את קצב העברת הנתונים האחרון של המחבר.

  5. בתרשים Number of instances (מספר המופעים), מעבירים את מצביע העכבר מעל התרשים כדי לראות את מספר המופעים שהמחבר השתמש בהם לאחרונה.

  6. בתרשים CPU Utilization, מעבירים את מצביע העכבר מעל התרשים כדי לראות את השימוש האחרון במעבד של המחבר. בתרשים מוצג השימוש במעבד שמפוזר על פני מופעים באחוזונים ה-50, ה-95 וה-99.

מחיקת מחבר

לפני שמוחקים מחבר, צריך להסיר אותו מכל המשאבים בלי שרת (serverless) שעדיין משתמשים בו. אם תמחקו מחבר לפני שתסירו אותו מהמשאבים חסרי השרתים, לא תוכלו למחוק את רשת ה-VPC בהמשך.

משתמשים ב-VPC משותף שהגדירו מחברים בפרויקט המארח של ה-VPC המשותף יכולים להשתמש בפקודה gcloud compute networks vpc-access connectors describe כדי להציג את רשימת הפרויקטים שבהם יש משאבים מסוג serverless שמשתמשים במחבר נתון.

כדי למחוק מחבר, משתמשים במסוף Google Cloud או ב-Google Cloud CLI:

המסוף

  1. נכנסים לדף הסקירה הכללית של חיבור לרשת (VPC) מאפליקציית serverless במסוףGoogle Cloud :

    מעבר אל Serverless VPC Access

  2. בוחרים את המחבר שרוצים למחוק.

  3. לוחצים על Delete.

gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. כדי למחוק מחבר, משתמשים בפקודה gcloud הבאה:

    gcloud compute networks vpc-access connectors delete CONNECTOR_NAME --region=REGION
    

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

    • CONNECTOR_NAME עם שם המחבר שרוצים למחוק
    • REGION עם האזור שבו נמצא המחבר

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

בקטע הזה מוסבר איך ליצור אילוצים בהתאמה אישית למחברי חיבור לרשת (VPC) מאפליקציית serverless ולאכוף אותם ברמת הפרויקט. במאמר יצירה וניהול של מדיניות ארגונית בהתאמה אישית מוסבר איך יוצרים מדיניות ארגונית בהתאמה אישית.

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

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

יתרונות

התכונה 'חיבור לרשת (VPC) מאפליקציית serverless' מאפשרת לכם לכתוב כל מספר של אילוצים מותאמים אישית באמצעות רוב השדות שמוגדרים על ידי המשתמש ב-API של 'חיבור לרשת (VPC) מאפליקציית serverless'. לדוגמה, אפשר ליצור אילוץ מותאם אישית שמציין באילו תת-רשתות יכול מחבר של Serverless VPC Access להשתמש.

אחרי שמחילים את המדיניות, בקשות שמפרות מדיניות שמחילה אילוץ מותאם אישית מציגות הודעת שגיאה ב-CLI של gcloud וביומני הגישה של Serverless VPC. הודעת השגיאה מכילה את מזהה האילוץ ואת התיאור של האילוץ המותאם אישית שהופר.

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

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

מגבלות

אין תמיכה בהגדרה של סוג המכונה, מספר המופעים המינימלי או מספר המופעים המקסימלי.

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

חשוב לוודא שאתם יודעים מהו מספר הארגון שלכם.

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

כדי לקבל את ההרשאות שדרושות לניהול מדיניות הארגון, צריך לבקש מהאדמין להקצות לכם את תפקיד ה-IAM Organization policy administrator (roles/orgpolicy.policyAdmin) במשאב הארגון. להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.

יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.

יצירת אילוץ בהתאמה אישית

אילוץ בהתאמה אישית מוגדר בקובץ YAML לפי המשאבים, השיטות, התנאים והפעולות שנתמכים על ידי השירות שבו אתם אוכפים את מדיניות הארגון. התנאים להגבלות המותאמות אישית מוגדרים באמצעות Common Expression Language ‏ (CEL). מידע נוסף על יצירת תנאים באילוצים מותאמים אישית באמצעות CEL זמין בקטע על CEL במאמר יצירה וניהול של אילוצים מותאמים אישית.

כדי ליצור קובץ YAML לאילוץ בהתאמה אישית של חיבור לרשת (VPC) מאפליקציית serverless, אפשר להיעזר בדוגמה הבאה:

name: organizations/ORGANIZATION_ID/customConstraints/CONSTRAINT_NAME
resourceTypes:
- vpcaccess.googleapis.com/Connector
methodTypes:
- CREATE
condition: "CONDITION"
actionType: ACTION
displayName: DISPLAY_NAME
description: DESCRIPTION

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

  • ORGANIZATION_ID: מזהה הארגון, למשל 123456789.

  • CONSTRAINT_NAME: השם שרוצים לתת לאילוץ החדש בהתאמה אישית. אילוץ מותאם אישית חייב להתחיל ב-custom., ויכול לכלול רק אותיות גדולות, אותיות קטנות או מספרים. לדוגמה, custom.defaultNetworkConstraint. האורך המקסימלי של השדה הזה הוא 70 תווים, לא כולל הקידומת.

  • CONDITION: תנאי CEL שנכתב על סמך ייצוג של משאב שירות נתמך. האורך המקסימלי של השדה הוא 1,000 תווים. לדוגמה: "resource.network == default".

  • ACTION: הפעולה שיש לבצע אם התנאי condition מתקיים. הערך יכול להיות ALLOW או DENY.

  • DISPLAY_NAME: שם קריא לאנשים של האילוץ. האורך המקסימלי של השדה הוא 200 תווים.

  • DESCRIPTION: תיאור ידידותי למשתמש של האילוץ שיוצג כהודעת שגיאה אם המדיניות תופר. לדוגמה: "Require network to not be set to default." This field has a maximum length of 2000 characters.

מידע נוסף על יצירת אילוץ בהתאמה אישית זמין במאמר הגדרת אילוצים בהתאמה אישית.

הגדרת אילוץ בהתאמה אישית

המסוף

כדי ליצור אילוץ בהתאמה אישית:

  1. במסוף Google Cloud , נכנסים לדף מדיניות הארגון.

    מעבר אל מדיניות הארגון

  2. בבורר הפרויקטים, בוחרים את הפרויקט שרוצים להגדיר לו את מדיניות הארגון.
  3. לוחצים על Custom constraint (הגבלה מותאמת אישית).
  4. בתיבה שם לתצוגה, מזינים שם שאנשים יכולים לקרוא למגבלה. השם הזה משמש בהודעות שגיאה, ואפשר להשתמש בו לצורך זיהוי וניפוי באגים. אל תשתמשו בפרטים אישיים מזהים (PII) או במידע אישי רגיש בשמות המוצגים, כי השם הזה עלול להיחשף בהודעות שגיאה. השדה הזה יכול להכיל עד 200 תווים.
  5. בתיבה מזהה האילוץ, מזינים את השם שרוצים לתת לאילוץ המותאם אישית החדש. אילוץ מותאם אישית יכול להכיל רק אותיות (כולל אותיות גדולות וקטנות) או מספרים, למשל custom.disableGkeAutoUpgrade. השדה הזה יכול להכיל עד 70 תווים, לא כולל הקידומת (custom.), לדוגמה, organizations/123456789/customConstraints/custom. אל תכללו פרטים אישיים מזהים (PII) או מידע אישי רגיש במזהה האילוץ, כי הם עלולים להיחשף בהודעות שגיאה.
  6. בתיבה Description, מזינים תיאור קריא לאנשים של האילוץ. התיאור הזה משמש כהודעת שגיאה כשמתבצעת הפרה של המדיניות. לכלול פרטים על הסיבה להפרת המדיניות ואיך לפתור אותה. אל תכללו בתיאור פרטים אישיים מזהים (PII) או מידע אישי רגיש, כי הם עלולים להיחשף בהודעות שגיאה. השדה הזה יכול להכיל עד 2,000 תווים.
  7. בתיבה Resource type, בוחרים את השם של משאב REST‏ Google Cloud שמכיל את האובייקט והשדה שרוצים להגביל – לדוגמה, container.googleapis.com/NodePool. רוב סוגי המשאבים תומכים בעד 20 אילוצים מותאמים אישית. אם תנסו ליצור עוד אילוצים בהתאמה אישית, הפעולה תיכשל.
  8. בקטע שיטת אכיפה, בוחרים אם לאכוף את ההגבלה על שיטת REST‏ CREATE או על השיטות CREATE ו-UPDATE. אם אוכפים את המגבלה באמצעות השיטה UPDATE על משאב שמפר את המגבלה, מדיניות הארגון חוסמת שינויים במשאב הזה, אלא אם השינוי פותר את ההפרה.
  9. לא כל השירותים של Google Cloud תומכים בשתי השיטות. כדי לראות את השיטות הנתמכות לכל שירות, צריך לחפש את השירות בקטע שירותים נתמכים.

  10. כדי להגדיר תנאי, לוחצים על Edit condition.
    1. בחלונית Add condition, יוצרים תנאי CEL שמתייחס למשאב שירות נתמך, לדוגמה, resource.management.autoUpgrade == false. השדה הזה יכול להכיל עד 1,000 תווים. פרטים על השימוש ב-CEL זמינים במאמר בנושא Common Expression Language. מידע נוסף על משאבי השירות שאפשר להשתמש בהם באילוצים בהתאמה אישית זמין במאמר שירותים שתומכים באילוצים בהתאמה אישית.
    2. לוחצים על Save.
  11. בקטע פעולה, בוחרים אם לאשר או לדחות את השיטה שנבדקה אם התנאי מתקיים.
  12. הפעולה deny (דחייה) פירושה שהפעולה ליצירה או לעדכון של המשאב נחסמת אם התנאי מחזיר את הערך true.

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

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

gcloud

  1. כדי ליצור אילוץ בהתאמה אישית, יוצרים קובץ YAML בפורמט הבא:
  2. name: organizations/ORGANIZATION_ID/customConstraints/CONSTRAINT_NAME
    resourceTypes: RESOURCE_NAME
    methodTypes:
      - CREATE
    condition: "CONDITION"
    actionType: ACTION
    displayName: DISPLAY_NAME
    description: DESCRIPTION

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

    • ORGANIZATION_ID: מזהה הארגון, למשל 123456789.
    • CONSTRAINT_NAME: השם שרוצים לתת לאילוץ המותאם אישית החדש. אילוץ מותאם אישית יכול להכיל רק אותיות (כולל אותיות רישיות וקטנות) או מספרים, למשל, custom.defaultNetworkConstraint. השדה הזה יכול להכיל עד 70 תווים.
    • RESOURCE_NAME: השם המוגדר במלואו של המשאב Google Cloud שמכיל את האובייקט והשדה שרוצים להגביל. לדוגמה: vpcaccess.googleapis.com/Connector.
    • CONDITION: תנאי CEL שנכתב על סמך ייצוג של משאב שירות נתמך. השדה הזה יכול להכיל עד 1,000 תווים. לדוגמה: "resource.network == default".
    • מידע נוסף על המשאבים שאפשר לכתוב תנאים לגביהם זמין במאמר משאבים נתמכים.

    • ACTION: הפעולה שיש לבצע אם התנאי condition מתקיים. הערך יכול להיות רק ALLOW.
    • פעולת ההרשאה פירושה שאם התנאי מקבל את הערך True, הפעולה ליצירה או לעדכון של המשאב מותרת. המשמעות היא שכל מקרה אחר, מלבד זה שמופיע במפורש בתנאי, ייחסם.

    • DISPLAY_NAME: שם קריא לאילוץ. השדה הזה יכול להכיל עד 200 תווים.
    • DESCRIPTION: תיאור ידידותי למשתמש של האילוץ שיוצג כהודעת שגיאה אם המדיניות תופר. השדה הזה יכול להכיל עד 2,000 תווים.
  3. אחרי שיוצרים קובץ YAML לאילוץ חדש בהתאמה אישית, צריך להגדיר אותו כדי שיהיה זמין למדיניות הארגון בארגון שלכם. כדי להגדיר אילוץ בהתאמה אישית, משתמשים בפקודה gcloud org-policies set-custom-constraint:
  4. gcloud org-policies set-custom-constraint CONSTRAINT_PATH

    מחליפים את CONSTRAINT_PATH בנתיב המלא לקובץ האילוצים המותאמים אישית. לדוגמה, /home/user/customconstraint.yaml.

    אחרי שהפעולה הזו תושלם, ההגבלות המותאמות אישית יהיו זמינות כמדיניות ארגונית ברשימת Google Cloud מדיניות הארגון.

  5. כדי לוודא שהאילוץ המותאם אישית קיים, משתמשים בפקודה gcloud org-policies list-custom-constraints:
  6. gcloud org-policies list-custom-constraints --organization=ORGANIZATION_ID

    מחליפים את ORGANIZATION_ID במזהה של משאב הארגון.

    מידע נוסף זמין במאמר בנושא צפייה במדיניות הארגון.

אכיפה של מגבלה בהתאמה אישית

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

המסוף

  1. במסוף Google Cloud , נכנסים לדף מדיניות הארגון.

    מעבר אל מדיניות הארגון

  2. בתפריט לבחירת פרויקט, בוחרים את הפרויקט שרוצים להגדיר לו את מדיניות הארגון.
  3. ברשימה בדף מדיניות הארגון, בוחרים את האילוץ כדי לראות את הדף פרטי המדיניות של האילוץ הזה.
  4. כדי להגדיר את מדיניות הארגון למשאב הזה, לוחצים על ניהול מדיניות.
  5. בדף עריכת מדיניות, בוחרים באפשרות במקום המדיניות של המשאב הראשי.
  6. לוחצים על Add a rule.
  7. בקטע Enforcement (אכיפה), בוחרים אם מדיניות הארגון הזו נאכפת או לא.
  8. אופציונלי: כדי להגדיר את מדיניות הארגון כתלויה בתג, לוחצים על הוספת תנאי. הערה: אם מוסיפים כלל מותנה למדיניות ארגון, צריך להוסיף לפחות כלל לא מותנה אחד, אחרת אי אפשר לשמור את המדיניות. מידע נוסף זמין במאמר הגדרת מדיניות ארגונית באמצעות תגים.
  9. לוחצים על בדיקת שינויים כדי לדמות את ההשפעה של מדיניות הארגון. מידע נוסף זמין במאמר בדיקת שינויים במדיניות הארגון באמצעות סימולטור המדיניות.
  10. כדי לאכוף את המדיניות של הארגון במצב הרצת בדיקה, לוחצים על הגדרת המדיניות להרצת בדיקה. מידע נוסף מופיע במאמר יצירת מדיניות ארגונית במצב הרצה יבשה.
  11. אחרי שמוודאים שמדיניות הארגון במצב הרצה יבשה פועלת כמו שרוצים, לוחצים על הגדרת מדיניות כדי להגדיר את המדיניות הפעילה.

gcloud

  1. כדי ליצור מדיניות ארגונית עם כללים בוליאניים, יוצרים קובץ YAML של מדיניות שמפנה לאילוץ:
  2. name: projects/PROJECT_ID/policies/CONSTRAINT_NAME
    spec:
      rules:
      - enforce: true
    
    dryRunSpec:
      rules:
      - enforce: true

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

    • PROJECT_ID: הפרויקט שבו רוצים לאכוף את האילוץ.
    • CONSTRAINT_NAME: השם שהגדרתם לאילוץ המותאם אישית. לדוגמה, custom.defaultNetworkConstraint.
  3. כדי לאכוף את מדיניות הארגון במצב הרצה יבשה, מריצים את הפקודה הבאה עם הדגל dryRunSpec:
  4. gcloud org-policies set-policy POLICY_PATH --update-mask=dryRunSpec

    מחליפים את POLICY_PATH בנתיב המלא לקובץ ה-YAML של מדיניות הארגון. יכולות לעבור עד 15 דקות עד שהמדיניות תיכנס לתוקף.

  5. אחרי שמוודאים שמדיניות הארגון במצב הרצה יבשה פועלת כמו שרוצים, מגדירים את המדיניות הפעילה באמצעות הפקודה org-policies set-policy והדגל spec:
  6. gcloud org-policies set-policy POLICY_PATH --update-mask=spec

    מחליפים את POLICY_PATH בנתיב המלא לקובץ ה-YAML של מדיניות הארגון. יכולות לעבור עד 15 דקות עד שהמדיניות תיכנס לתוקף.

בדיקת האילוץ המותאם אישית

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

gcloud compute networks vpc-access connectors create org-policy-test \
    --project=PROJECT_ID \
    --region=REGION_ID \
    --network=default

הפלט שיתקבל:

Operation denied by custom org policies: ["customConstraints/custom.defaultNetworkConstraint": "Require network to not be set to default."]

דוגמאות למדיניות ארגון מותאמת אישית לתרחישי שימוש נפוצים

בטבלה הבאה מפורטות דוגמאות לאילוצים מותאמים אישית שיכולים להיות שימושיים עם מחברי חיבור לרשת (VPC) מאפליקציית serverless:

תיאור תחביר של אילוצים
דרישה שמחברי חיבור לרשת (VPC) מאפליקציית serverless יוכלו להשתמש רק ברשת ספציפית.
    name: organizations/ORGANIZATION_ID/customConstraints/custom.allowlistNetworks
    resourceTypes:
    - vpcaccess.googleapis.com/Connector
    methodTypes:
    - CREATE
    condition: "resource.network == 'allowlisted-network'"
    actionType: ALLOW
    displayName: allowlistNetworks
    description: Require connectors to use a specific network.
תיאור תחביר של אילוצים
לדרוש שלמחברי חיבור לרשת (VPC) מאפליקציית serverless תהיה גישה רק לרשת משנה ספציפית.
    name: organizations/ORGANIZATION_ID/customConstraints/custom.restrictSubnetForProject
    resourceTypes:
    - vpcaccess.googleapis.com/Connector
    methodTypes:
    - CREATE
    condition: "resource.subnet.name == 'allocated-subnet'"
    actionType: ALLOW
    displayName: restrictSubnetForProject
    description: This project is only allowed to use the subnet "allocated-subnet".

הגדרת סביבת Cloud Run לשימוש ב-VPC ישיר במקום במחבר

אתם יכולים להפעיל את השירות של Cloud Run כדי לשלוח תעבורת יציאה (יוצאת) ישירות לרשת VPC, וכך לאפשר גישה למכונות וירטואליות ב-Compute Engine, למופעי Memorystore ולכל משאב אחר עם כתובת IP פנימית.

הגדרת השירות לשימוש ב-Direct VPC

יציאה ישירה מרשת VPC מאפשרת לשירות Cloud Run לשלוח תנועה לרשת VPC בלי מחבר של Serverless VPC Access. העלויות של הרשת מתרחבות לאפס בדיוק כמו השירות עצמו. אפשר גם להוסיף תגים לרשת ישירות לגרסאות של שירות Cloud Run כדי להגביר את רמת האבטחה של הרשת, למשל כדי להחיל כללי חומת אש של VPC.

אפשר להגדיר יציאה ישירה מ-VPC עם שירות באמצעותGoogle Cloud המסוף, Google Cloud CLI,‏ YAML או Terraform.

המסוף

  1. כניסה ל-Cloud Run

  2. אם אתם מגדירים שירות חדש שאתם פורסים, לוחצים על יצירת שירות. אם אתם מגדירים ומפעילים שירות קיים, לוחצים על השירות ואז על עריכה והפעלה של גרסה חדשה.

  3. אם אתם מגדירים שירות חדש, ממלאים את הדף של הגדרות השירות הראשוניות לפי הצורך, ואז לוחצים על Container(s), Volumes, Networking, Security (מאגרים, אמצעי אחסון, רשתות, אבטחה) כדי להרחיב את דף הגדרות השירות.

  4. נכנסים לכרטיסייה Networking.

  5. לוחצים על Connect to a VPC for outbound traffic (קישור ל-VPC לתעבורה יוצאת).

  6. לוחצים על שליחת תנועה ישירות ל-VPC.

  7. בשדה Network (רשת), בוחרים את רשת ה-VPC שאליה רוצים לשלוח תנועה.

  8. בשדה Subnet (רשת משנה), בוחרים את רשת המשנה שבה השירות מקבל כתובות IP. אפשר לפרוס כמה שירותים באותה רשת משנה.

  9. אופציונלי: מזינים את השמות של תגי הרשת שרוצים לשייך לשירות או לשירותים. תגי רשת מצוינים ברמת הגרסה. לכל גרסה של שירות יכולים להיות תגי רשת שונים, כמו network-tag-2.

  10. בקטע Traffic routing (ניתוב תנועה), בוחרים באחת מהאפשרויות הבאות:

    • הפניית בקשות רק לכתובות IP פרטיות אל ה-VPC כדי לשלוח תעבורה רק לכתובות פנימיות דרך רשת ה-VPC.
    • העברת כל התעבורה ל-VPC כדי לשלוח את כל התעבורה היוצאת דרך רשת ה-VPC.
  11. לוחצים על יצירה או על פריסה.

  12. כדי לוודא שהשירות נמצא ברשת ה-VPC, לוחצים על השירות ואז על הכרטיסייה Networking (רשת). הרשת ותת-הרשת מופיעות בכרטיס VPC.

    עכשיו אפשר לשלוח בקשות מהשירות שלכם ב-Cloud Run לכל משאב ברשת ה-VPC, בהתאם למה שמוגדר בכללי חומת האש.

gcloud

כדי לפרוס שירות Cloud Run בלי מחבר מ-Google Cloud CLI:

  1. מעדכנים את הרכיבים של gcloud לגרסה האחרונה:

    gcloud components update
  2. מוודאים ש-Compute Engine API מופעל בפרויקט:

    gcloud services enable compute.googleapis.com
    
  3. פורסים את שירות Cloud Run באמצעות הפקודה הבאה:

    gcloud run deploy SERVICE_NAME \
    --image=IMAGE_URL \
    --network=NETWORK \
    --subnet=SUBNET \
    --network-tags=NETWORK_TAG_NAMES \
    --vpc-egress=EGRESS_SETTING \
    --region=REGION

    מחליפים את:

    • SERVICE_NAME מחליפים בשם של שירות Cloud Run.
    • IMAGE_URL: הפניה לקובץ אימג' בקונטיינר, לדוגמה, us-docker.pkg.dev/cloudrun/container/hello:latest. אם אתם משתמשים ב-Artifact Registry, צריך ליצור מראש את המאגר REPO_NAME. כתובת ה-URL היא בפורמט LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG
    • NETWORK בשם של רשת ה-VPC. מציינים רשת VPC או רשת משנה, או את שניהם. אם מציינים רק רשת, רשת המשנה מקבלת את אותו שם כמו הרשת.
    • SUBNET בשם של רשת המשנה. תת-הרשת צריכה להיות /26 או גדולה יותר. יציאה ישירה מ-VPC תומכת בטווחים של IPv4 ‏RFC 1918,‏ RFC 6598 ו-Class E. אפשר לפרוס או להפעיל כמה שירותים או עבודות באותה רשת משנה, אבל אי אפשר לשתף את רשת המשנה עם מחברים קיימים.
    • אופציונלי: NETWORK_TAG_NAMES עם השמות המופרדים בפסיקים של תגי הרשת שרוצים לשייך לשירות. בשירותים, תגי הרשת מצוינים ברמת השינוי. לכל גרסה של שירות יכולים להיות תגי רשת שונים, כמו network-tag-2.
    • EGRESS_SETTING עם ערך של הגדרת יציאה:
      • all-traffic: שליחת כל התעבורה היוצאת דרך רשת ה-VPC.
      • private-ranges-only: שולח תנועה רק לכתובות פנימיות דרך רשת ה-VPC.
    • REGION עם אזור לשירות שלכם.
  4. כדי לוודא שהשירות שלכם נמצא ברשת ה-VPC, מריצים את הפקודה הבאה:

    gcloud run services describe SERVICE_NAME \
    --region=REGION

    מחליפים את:

    • SERVICE_NAME בשם של השירות.
    • REGION באזור השירות שציינתם בשלב הקודם.

    הפלט צריך לכלול את השם של הרשת, רשת המשנה והגדרת תעבורת הנתונים היוצאת (egress), למשל:

    VPC access:
      Network:       default
      Subnet:        subnet
      Egress:        private-ranges-only
    

עכשיו אפשר לשלוח בקשות מהשירות שלכם ב-Cloud Run לכל משאב ברשת ה-VPC, בהתאם למה שמוגדר בכללי חומת האש.

YAML

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

    gcloud run services describe SERVICE --format export > service.yaml
  2. מעדכנים את המאפיינים הבאים:

    apiVersion: serving.knative.dev/v1
      kind: Service
      metadata:
        name: SERVICE_NAME
        labels:
          cloud.googleapis.com/location: REGION
      spec:
        template:
          metadata:
            annotations:
              run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]'
              run.googleapis.com/vpc-access-egress: EGRESS_SETTING
          spec:
            containers:
            - image: IMAGE

    מחליפים את:

    • SERVICE_NAME מחליפים בשם של שירות Cloud Run. שמות של שירותים צריכים להיות באורך של עד 49 תווים, והם צריכים להיות ייחודיים לכל אזור ופרויקט.
    • REGION מחליפים באזור של שירות Cloud Run, שחייב להיות זהה לאזור של רשת המשנה.
    • NETWORK בשם של רשת ה-VPC. מציינים רשת VPC או רשת משנה, או את שניהם. אם מציינים רק רשת, רשת המשנה מקבלת את אותו שם כמו הרשת.
    • SUBNET בשם של רשת המשנה. תת-הרשת צריכה להיות /26 או גדולה יותר. יציאה ישירה מ-VPC תומכת בטווחים של IPv4 ‏RFC 1918,‏ RFC 6598 ו-Class E. אפשר לפרוס או להפעיל כמה שירותים או עבודות באותה רשת משנה, אבל אי אפשר לשתף את רשת המשנה עם מחברים קיימים.
    • אופציונלי: NETWORK_TAG_NAMES עם השמות של תגי הרשת שרוצים לשייך לשירות. בשירותים, תגי הרשת מצוינים ברמת השינוי. לכל גרסה של שירות יכולים להיות תגי רשת שונים, כמו network-tag-2.
    • EGRESS_SETTING עם ערך של הגדרת יציאה:
      • all-traffic: שליחת כל התעבורה היוצאת דרך רשת ה-VPC.
      • private-ranges-only: שולח תנועה רק לכתובות פנימיות דרך רשת ה-VPC.
    • IMAGE בכתובת ה-URL של קובץ אימג' הקונטיינר של השירות.

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

  3. יוצרים או מעדכנים את השירות באמצעות הפקודה הבאה:

    gcloud run services replace service.yaml

Terraform

כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.

  1. מוסיפים לקובץ main.tf את הנתונים הבאים:

    /**
     * Copyright 2024 Google LLC
     *
     * Licensed under the Apache License, Version 2.0 (the "License");
     * you may not use this file except in compliance with the License.
     * You may obtain a copy of the License at
     *
     *      http://www.apache.org/licenses/LICENSE-2.0
     *
     * Unless required by applicable law or agreed to in writing, software
     * distributed under the License is distributed on an "AS IS" BASIS,
     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     * See the License for the specific language governing permissions and
     * limitations under the License.
     */
    
    # Example configuration of a Cloud Run service with direct VPC
    
    resource "google_cloud_run_v2_service" "default" {
      name     = "cloudrun-service"
      location = "us-central1"
    
      deletion_protection = false # set to "true" in production
    
      template {
        containers {
          image = "us-docker.pkg.dev/cloudrun/container/hello"
        }
        vpc_access {
          network_interfaces {
            network    = "default"
            subnetwork = "default"
            tags       = ["tag1", "tag2", "tag3"]
          }
        }
      }
    }
    

אם רוצים לאפשר גישה לשירות ללא אימות, אפשר להגדיר את השירות כציבורי.

הגדרת העבודה לשימוש ב-Direct VPC

תעבורת נתונים יוצאת ישירה מרשת VPC מאפשרת למשימה ב-Cloud Run לשלוח תעבורה לרשת VPC בלי מחבר של Serverless VPC Access. אפשר גם להוסיף תגי רשת ישירות למשימות של Cloud Run כדי להגדיר אבטחת רשת ברמה מפורטת יותר, למשל להחיל כללי חומת אש של VPC.

אפשר להגדיר יציאה ישירה מ-VPC באמצעות עבודה באמצעותGoogle Cloud מסוף Google Cloud, Google Cloud CLI או YAML.

המסוף

  1. כניסה ל-Cloud Run

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

  3. לוחצים על Container, Variables & Secrets, Connections, Security (מאגר, משתנים וסודות, חיבורים, אבטחה) כדי להרחיב את דף מאפייני העבודה.

  4. לוחצים על הכרטיסייה Connections (קישורים).

  5. לוחצים על Connect to a VPC for outbound traffic (קישור ל-VPC לתעבורה יוצאת).

  6. לוחצים על שליחת תנועה ישירות ל-VPC.

  7. בשדה Network (רשת), בוחרים את רשת ה-VPC שאליה רוצים לשלוח את תנועת הגולשים.

  8. בשדה Subnet (רשת משנה), בוחרים את רשת המשנה שממנה המשימה מקבלת כתובות IP. אפשר להריץ כמה משימות באותה רשת משנה.

  9. בקטע Traffic routing (ניתוב תנועה), בוחרים באחת מהאפשרויות הבאות:

    • הפניית בקשות רק לכתובות IP פרטיות אל ה-VPC כדי לשלוח תעבורה רק לכתובות פנימיות דרך רשת ה-VPC.
    • העברת כל התעבורה ל-VPC כדי לשלוח את כל התעבורה היוצאת דרך רשת ה-VPC.
  10. אופציונלי: מזינים את השמות של תגי הרשת שרוצים לשייך לשירות או לשירותים. תגי רשת מצוינים ברמת הגרסה. לכל גרסה של שירות יכולים להיות תגי רשת שונים, כמו network-tag-2.

  11. אופציונלי: מזינים את השמות של תגי הרשת שרוצים לשייך למשרה או למשרות. לגבי משימות, תגי הרשת מוגדרים ברמת הביצוע. לכל הפעלה של עבודה יכולים להיות תגים שונים של רשתות, כמו network-tag-2.

  12. לוחצים על יצירה או על עדכון.

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

    עכשיו אפשר להריץ את העבודה ב-Cloud Run ולשלוח בקשות מהעבודה לכל משאב ברשת ה-VPC, בהתאם לכללי חומת האש.

gcloud

כדי ליצור משימת Cloud Run בלי מחבר מ-Google Cloud CLI:

  1. מעדכנים את הרכיבים של gcloud לגרסה האחרונה:

    gcloud components update
  2. מוודאים ש-Compute Engine API מופעל בפרויקט:

    gcloud services enable compute.googleapis.com
    
  3. יוצרים משימת Cloud Run באמצעות הפקודה הבאה:

    gcloud run jobs create JOB_NAME \
    --image=IMAGE_URL \
    --network=NETWORK \
    --subnet=SUBNET \
    --network-tags=NETWORK_TAG_NAMES \
    --vpc-egress=EGRESS_SETTING \
    --region=REGION

    מחליפים את:

    • JOB_NAME מחליפים בשם של משימת Cloud Run.
    • IMAGE_URL: הפניה לקובץ אימג' של קונטיינר, לדוגמה us-docker.pkg.dev/cloudrun/container/job:latest
    • NETWORK בשם של רשת ה-VPC. מציינים רשת VPC או רשת משנה, או את שתיהן. אם מציינים רק רשת, רשת המשנה מקבלת את אותו שם כמו הרשת.
    • SUBNET בשם של רשת המשנה. תת-הרשת צריכה להיות /26 או גדולה יותר. יציאה ישירה מ-VPC תומכת בטווחים של IPv4 ‏RFC 1918,‏ RFC 6598 ו-Class E. אפשר לפרוס או להפעיל כמה שירותים או עבודות באותה רשת משנה, אבל אי אפשר לשתף את רשת המשנה עם מחברים קיימים.
    • אופציונלי: NETWORK_TAG_NAMES עם השמות של תגי הרשת שרוצים לשייך למשרה. במקרה של עבודות, תגי הרשת מצוינים ברמת הביצוע. לכל הפעלה של עבודה יכולים להיות תגים שונים של רשת, כמו network-tag-2.
    • EGRESS_SETTING עם ערך של הגדרת יציאה:
      • all-traffic: שליחת כל התעבורה היוצאת דרך רשת ה-VPC.
      • private-ranges-only: שולח תנועה רק לכתובות פנימיות דרך רשת ה-VPC.
    • REGION עם אזור למשרה.
  4. כדי לוודא שהעבודה נמצאת ברשת ה-VPC, מריצים את הפקודה הבאה:

    gcloud run jobs describe JOB_NAME \
      --region=REGION
      

    מחליפים את:

    • JOB_NAME בשם של המשימה.
    • REGION באזור של המשרה שציינתם בשלב הקודם.

    הפלט צריך לכלול את השם של הרשת ושל רשת המשנה, לדוגמה:

    VPC network:
      Network:       default
      Subnet:        default
    

עכשיו אפשר להריץ את העבודה ב-Cloud Run ולשלוח בקשות מהעבודה לכל משאב ברשת ה-VPC, בהתאם לכללי חומת האש.

YAML

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

    gcloud run jobs describe JOB_NAME --format export > job.yaml
  2. מעדכנים את המאפיינים הבאים:

    apiVersion: run.googleapis.com/v1
      kind: Job
      metadata:
        name: JOB_NAME
        labels:
          cloud.googleapis.com/location: REGION
      spec:
        template:
          metadata:
            annotations:
              run.googleapis.com/network-interfaces: '[{"network":"NETWORK","subnetwork":"SUBNET","tags":"NETWORK_TAG_NAMES"}]'
              run.googleapis.com/vpc-access-egress: EGRESS_SETTING
          spec:
            containers:
            - image: IMAGE

    מחליפים את:

    • JOB_NAME מחליפים בשם של משימת Cloud Run. שמות המשימות צריכים להיות באורך של עד 49 תווים, והם צריכים להיות ייחודיים לכל אזור ופרויקט.
    • REGION עם האזור של משימת Cloud Run, שחייב להיות זהה לאזור של רשת המשנה.
    • NETWORK בשם של רשת ה-VPC. מציינים רשת VPC או רשת משנה, או את שניהם. אם מציינים רק רשת, רשת המשנה מקבלת את אותו שם כמו הרשת.
    • SUBNET בשם של רשת המשנה. תת-הרשת צריכה להיות /26 או גדולה יותר. יציאה ישירה מ-VPC תומכת בטווחים של IPv4 ‏RFC 1918,‏ RFC 6598 ו-Class E. אפשר לפרוס או להפעיל כמה שירותים או עבודות באותה רשת משנה, אבל אי אפשר לשתף את רשת המשנה עם מחברים קיימים.
    • אופציונלי: NETWORK_TAG_NAMES עם השמות של תגי הרשת שרוצים לשייך למשרה. במקרה של עבודות, תגי הרשת מצוינים ברמת הביצוע. לכל הפעלה של עבודה יכולים להיות תגים שונים של רשת, כמו network-tag-2.
    • EGRESS_SETTING עם ערך של הגדרת יציאה:
      • all-traffic: שליחת כל התעבורה היוצאת דרך רשת ה-VPC.
      • private-ranges-only: שולח תנועה רק לכתובות פנימיות דרך רשת ה-VPC.
    • IMAGE בכתובת ה-URL של קובץ אימג' של קונטיינר של המשימה.
  3. יוצרים או מעדכנים את העבודה באמצעות הפקודה הבאה:

    gcloud run jobs replace job.yaml

פתרון בעיות

הרשאות של חשבון שירות

כדי לבצע פעולות ב Google Cloud פרויקט, חיבור לרשת (VPC) מאפליקציית serverless משתמש בחשבון השירות Serverless VPC Access Service Agent. כתובת האימייל של חשבון השירות הזה היא בפורמט הבא:

service-PROJECT_NUMBER@gcp-sa-vpcaccess.iam.gserviceaccount.com

כברירת מחדל, לחשבון השירות הזה יש את התפקיד סוכן שירות של Serverless VPC Access (roles/vpcaccess.serviceAgent). אם תשנו את ההרשאות של החשבון הזה, יכול להיות שפעולות של Serverless VPC Access ייכשלו.

ביצועי רשת נמוכים או שימוש גבוה במעבד בזמן שהוא בלי פעילות

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

בעיות עם MTU מותאם אישית

אם נתקלתם בבעיות עם MTU בהתאמה אישית, ודאו שאתם משתמשים בהגדרת ברירת המחדל של MTU ל-Cloud Run.

שגיאות

שגיאה: חשבון השירות צריך את התפקיד 'סוכן שירות'

אם אתם משתמשים באילוץ מדיניות הארגון Restrict Resource Service Usage כדי לחסום את Cloud Deployment Manager ‏ (deploymentmanager.googleapis.com), יכול להיות שתופיע הודעת השגיאה הבאה:

Serverless VPC Access service account (service-<PROJECT_NUMBER>@gcp-sa-vpcaccess.iam.gserviceaccount.com) needs Serverless VPC Access Service Agent role in the project.

מגדירים את מדיניות הארגון כך שמסירים את Deployment Manager מהרשימה השחורה או מוסיפים אותו לרשימת ההיתרים.

שגיאה ביצירת מחבר

אם יצירת מחבר מובילה לשגיאה, נסו את הפעולות הבאות:

  • מציינים טווח כתובות IP פנימיות מסוג RFC 1918 שלא חופף לאף כתובת IP קיימת ששמורה ברשת ה-VPC.
  • נותנים לפרויקט הרשאה להשתמש בתמונות של מכונות וירטואליות ב-Compute Engine מהפרויקט עם המזהה serverless-vpc-access-images. מידע נוסף על עדכון מדיניות הארגון בהתאם זמין במאמר בנושא הגדרת הגבלות על גישה לתמונות.

אין גישה למשאבים

אם ציינתם מחבר אבל עדיין אין לכם גישה למשאבים ברשת ה-VPC, ודאו שאין ברשת ה-VPC כללי חומת אש עם עדיפות נמוכה מ-1000 שחוסמים תעבורת נתונים נכנסת (ingress) מטווח כתובות ה-IP של המחבר.

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

שגיאה: החיבור נדחה

אם אתם מקבלים שגיאות connection refused או connection timeout שפוגעות בביצועים של הרשת, יכול להיות שהחיבורים שלכם גדלים ללא הגבלה בכל הפעלה של האפליקציה בלי שרת (serverless). כדי להגביל את המספר המקסימלי של חיבורים שנעשה בהם שימוש לכל מופע, צריך להשתמש בספריית לקוח שתומכת במאגרי חיבורים. דוגמאות מפורטות לשימוש במאגרי חיבורים מופיעות במאמר בנושא ניהול חיבורים למסדי נתונים.

השגיאה 'המשאב לא נמצא'

כשמוחקים רשת VPC או כלל חומת אש, יכול להיות שתוצג הודעה דומה לזו: The resource "aet-uscentral1-subnet--1-egrfw" was not found.

מידע על השגיאה הזו ופתרון שלה מופיע במאמר שגיאה: לא נמצא משאב במסמכי התיעוד של כללי חומת האש של VPC.

השלבים הבאים