קישוריות לרשת ציבורית

בדף הזה מוסבר איך Integration Connectors יכול להתחבר לאפליקציות בק-אנד שזמינות לגישה ציבורית.

יש שתי דרכים להתחבר לאפליקציית ה-Backend הציבורית:

  • מתחברים ישירות לאפליקציית ה-Backend הציבורית.
  • מתחברים לאפליקציית הקצה העורפי הציבורית דרך חומת אש.

חיבור ישירות לאפליקציית ה-Backend הציבורית

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

חיבור לאפליקציית קצה עורפי ציבורית דרך חומת אש

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

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

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

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

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

  1. משיגים את האזור של החיבור שרוצים להקצות לו את כתובת ה-IP הסטטית. אפשר לראות את האזור שבו מתבצע החיבור בעמודה Location בדף החיבורים.

    כניסה לדף Connections

  2. במסוף Google Cloud , מפעילים את Cloud Shell.

    הפעלת Cloud Shell

    בחלק התחתון של Google Cloud המסוף יתחיל סשן של Cloud Shell ותופיע הודעה של שורת הפקודה. Cloud Shell היא סביבת מעטפת שבה ה-CLI של Google Cloud מותקן ומוגדרים ערכים לפרויקט הקיים. הסשן יופעל תוך כמה שניות.

  3. מגדירים את Integration Connectors להקצאת כתובת IP סטטית לאזור שקיבלתם בשלב 1. מריצים את הפקודה הבאה ב-Cloud Shell.
    curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{"networkConfig": {"egressMode": "static_ip"}}' \
    https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/regionalSettings?updateMask="networkConfig"

    מגדירים את LOCATION לאזור שקיבלתם בשלב 1.

    הרצת הפקודה הזו מחזירה תגובה שדומה לזו:

    {
    "name": "projects/test-01/locations/us-central1/operations/operation-1696840994443-6074494b6d138-8215226d-516faaf8",
    "metadata": {
      "@type": "type.googleapis.com/google.cloud.connectors.v1.OperationMetadata",
      "createTime": "2023-10-09T08:43:14.467058513Z",
      "target": "projects/test-01/locations/us-central1/regionalSettings",
      "verb": "update",
      "requestedCancellation": false,
      "apiVersion": "v1"
     },
    "done": false
    }

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

    curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID

    אם הקצאת כתובת ה-IP הסטטית מצליחה, תקבלו תגובה שדומה לזו:

    ...
    ...
    "response": {
      "@type": "type.googleapis.com/google.cloud.connectors.v1.RegionalSettings",
      "name": "projects/test-01/locations/us-central1/regionalSettings",
      "networkConfig": {
       "egressMode": "STATIC_IP",
        "egressIps": [
          "35.193.227.203",
          "34.133.63.9",
          "35.223.253.58",
          "34.170.27.253"
        ]
      }
    }
    

    בדוגמה הזו של תגובה, ארבע כתובות IP סטטיות מוקצות לאזור us-central1, והערך של egressMode לאזור מוגדר ל-STATIC_IP.

  4. מוסיפים לרשימת ההיתרים את כתובות ה-IP הסטטיות (שקיבלתם בשלב 4) בכללי חומת האש.

קבלת כתובות IP סטטיות של אזור

אם רוצים לקבל בכל שלב את כתובות ה-IP הסטטיות שהוקצו לאזור (מיקום), מריצים את הפקודה הבאה:

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/regionalSettings

הרצת הפקודה הזו מחזירה תגובה שדומה לזו:

  "response": {
    "@type": "type.googleapis.com/google.cloud.connectors.v1.RegionalSettings",
    "name": "projects/test-01/locations/us-central1/regionalSettings",
    "networkConfig": {
     "egressMode": "STATIC_IP",
      "egressIps": [
        "35.193.227.203",
        "34.133.63.9",
        "35.223.253.58",
        "34.170.27.253"
      ]
    }
  }

הקצאת כתובות IP אוטומטיות לאזור

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

curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{"networkConfig": {"egressMode": "auto_ip"}}' \
    https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/regionalSettings?updateMask="networkConfig"

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

לתשומת ליבכם

כשמקצים כתובות IP סטטיות לאזור, כדאי לקחת בחשבון את הנקודות הבאות:

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