יצירת משאבים של Data Transfer Essentials

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

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

לפני שיוצרים הגדרות או יעדים של Data Transfer Essentials, צריך:

  1. אם עדיין לא עשיתם זאת, מתקינים את Google Cloud CLI.

  2. מאמתים את ה-CLI של gcloud באמצעות החשבון:

    gcloud auth login
    
  3. מגדירים את הפרויקט:

    gcloud config set project PROJECT_ID
    

    מחליפים את PROJECT_ID במזהה הפרויקט.

  4. מפעילים את Network Connectivity API בפרויקט.

  5. מגדירים הרשאות.

  6. בודקים אם יש תמיכה בשירותים שרוצים לבחור ב-Data Transfer Essentials. אפשר להגדיר את Data Transfer Essentials רק עבור אזורים ושירותים נתמכים.

    gcloud

    משתמשים בפקודה gcloud network-connectivity multicloud-data-transfer-supported-services list.

    gcloud network-connectivity multicloud-data-transfer-supported-services list \
        --location=LOCATION
    

    מחליפים את LOCATION במזהה אזור, לדוגמה, europe-west3. Google Cloud

    בדוגמה הבאה של הפלט אפשר לראות שהשירותים עומדים בדרישות להגדרה באמצעות Data Transfer Essentials כי הם משתמשים ברמות נתמכות.

    NAME                   SERVICE_CONFIGS
    cloud-sql              [{'eligibilityCriteria': 'NETWORK_SERVICE_TIER_PREMIUM_ONLY'}]
    cloud-storage          [{'eligibilityCriteria': 'REQUEST_ENDPOINT_REGIONAL_ENDPOINT_ONLY'}]
    compute-engine         [{'eligibilityCriteria': 'NETWORK_SERVICE_TIER_STANDARD_ONLY'}]
    

    כדי לבדוק את הזכאות לשירות ספציפי, משתמשים בפקודה gcloud network-connectivity multicloud-data-transfer-supported-services describe.

    gcloud network-connectivity multicloud-data-transfer-supported-services describe SERVICE1 \
        --location=LOCATION
    

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

    API

    משתמשים בשיטה multicloudDataTransferSupportedServices.get.

    GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:getMulticloudDataTransferSupportedServices
    

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

    • PROJECT_ID: מזהה הפרויקט
    • LOCATION: מזהה אזור, לדוגמה, europe-west3 Google Cloud

    בפלט לדוגמה הבא מפורטים השירותים שעומדים בדרישות להגדרה באמצעות Data Transfer Essentials, כי הם משתמשים ברמות נתמכות.

    {
      "multicloudDataTransferSupportedServices": [
        {
          "name": "cloud-sql",
          "serviceConfigs": [
            {
              "eligibilityCriteria": "NETWORK_SERVICE_TIER_PREMIUM_ONLY"
            }
          ]
        },
        {
          "name": "cloud-storage",
          "serviceConfigs": [
            {
              "eligibilityCriteria": "REQUEST_ENDPOINT_REGIONAL_ENDPOINT_ONLY"
            }
          ]
        },
        {
          "name": "compute-engine",
          "serviceConfigs": [
            {
              "eligibilityCriteria": "NETWORK_SERVICE_TIER_STANDARD_ONLY"
            }
          ]
        }
      ]
    }
    

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

    GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION:getMulticloudDataTransferSupportedServices
    {
    "service": "SERVICE1"
    }
    

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

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

יצירת הגדרה

יוצרים הגדרה של Data Transfer Essentials שכוללת שירותים ספציפיים. אפשר ליצור רק הגדרה אחת לכל אזור ולכל פרויקט.

gcloud

משתמשים בפקודה gcloud network-connectivity multicloud-data-transfer-configs create.

gcloud network-connectivity multicloud-data-transfer-configs create CONFIGURATION_NAME \
    --location=LOCATION \
    --description=DESCRIPTION \
    --services=SERVICE-A,...

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

  • CONFIGURATION_NAME: שם להגדרה.
  • LOCATION: האזור של ההגדרה.
  • DESCRIPTION: תיאור של ההגדרה והמטרה שלה.
  • SERVICE-A,...: סדרה של מחרוזות שמייצגות את השירותים שרוצים להגדיר עבורם את Data Transfer Essentials. במאמר שירותים ואזורים נתמכים מפורטות מחרוזות תקינות.

הפקודה לדוגמה הבאה יוצרת הגדרה בשם config1 באזור europe-west3 עבור השירותים compute-engine, cloud-storage ו-cloud-sql.

gcloud network-connectivity multicloud-data-transfer-configs create config1 \
    --location=europe-west3 \
    --description="configuration for europe-west3" \
    --services=compute-engine,cloud-storage,cloud-sql

API

משתמשים בשיטה multicloudDataTransferConfigs.create.

POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/multicloudDataTransferConfigs/CONFIGURATION_NAME
{
  "description": "DESCRIPTION",
  "services": {
    "SERVICE-A",
    "SERVICE-B"
  }
}

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

  • PROJECT_ID: מזהה הפרויקט.
  • LOCATION: האזור של ההגדרה.
  • CONFIGURATION_NAME: שם להגדרה.
  • DESCRIPTION: תיאור של ההגדרה והמטרה שלה.
  • SERVICE-A,...: סדרה של מחרוזות שמייצגות את השירותים שרוצים להגדיר עבורם את Data Transfer Essentials. במאמר שירותים ואזורים נתמכים מפורטות מחרוזות תקינות.

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

קטע ה-JSON הבא יוצר הגדרה בשם config1 באזור europe-west3 עבור השירותים compute-engine, cloud-storage ו-cloud-sql.

POST https://networkconnectivity.googleapis.com/v1/projects/my-project/locations/europe-west3/multicloudDataTransferConfigs/config1
{
  "description": "configuration for europe-west3",
  "services": {
    "compute-engine": {},
    "cloud-storage": {},
    "cloud-sql": {}
}

Terraform

בדוגמה הבאה של Terraform נוצרת הגדרה.

resource "google_network_connectivity_multicloud_data_transfer_config" "default" {
  name        = "config"
  location    = "europe-west1"
  description = "A basic multicloud data transfer config"
  services {
    service_name = "big-query"
  }
  services {
    service_name = "cloud-storage"
  }
}

יצירת ההגדרות של Data Transfer Essentials נמשכת עד 24 שעות. כדי לבדוק את מצב ההגדרה, צופים בפרטי ההגדרה.

כדי להוסיף או להסיר שירותים, צריך לעדכן את ההגדרות.

לפני שמנסים ליצור הגדרה חדשה, מוחקים את ההגדרה הקיימת.

יצירת יעד להגדרה

יוצרים יעד להגדרת Data Transfer Essentials. משאב יעד יוצר שיוך בין הגדרה קיימת לבין קידומת IP חיצונית עם נקודת קצה. נקודת קצה מכילה מזהה של ספק שירותי ענן (CSP) ואת מספר ה-ASN שלו.

יוצרים יעד אחד בכל פעם.

gcloud

משתמשים בפקודה gcloud network-connectivity multicloud-data-transfer-configs destinations create.

gcloud network-connectivity multicloud-data-transfer-configs destinations create DESTINATION_NAME \
    --multicloud-data-transfer-config=CONFIGURATION_NAME \
    --location=LOCATION \
    --description=DESCRIPTION \
    --ip-prefix=IP_PREFIX \
    --endpoints=asn=ASN,csp=CSP

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

  • DESTINATION_NAME: שם ליעד. השם חייב להיות ייחודי באזור.
  • CONFIGURATION_NAME: השם של ההגדרה.
  • LOCATION: האזור של ההגדרה.
  • DESCRIPTION: תיאור של היעד והמטרה שלו.
  • IP_PREFIX: קידומת ה-IP של היעד שצוינה כטווח (לדוגמה, 203.0.113.0/24 או 2001:db8::/32) או כערך (לדוגמה, 203.0.113.6 או 2001:db8:2:2:2:2:2:2). אפשר להשתמש בקידומת IP רק פעם אחת בהגדרה, היא חייבת להיות משויכת לנקודת קצה אחת לפחות, ויכולה להיות משויכת לעד 5 נקודות קצה.

  • מציינים מחרוזות שמתאימות לנקודות הקצה שרוצים להוסיף ליעד:

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

פקודת הדוגמה הבאה יוצרת יעד בשם destination1 להגדרה config1 באזור europe-west3 לקידומת ולנקודת הקצה של ה-IP שצוינו.

gcloud network-connectivity multicloud-data-transfer-configs destinations create destination1 \
    --multicloud-data-transfer-config=config1 \
    --location=europe-west3 \
    --description="destination1 for config1" \
    --ip-prefix=203.0.113.0/24 \
    --endpoints=asn=16509,csp="aws"

API

משתמשים בשיטה multicloudDataTransferConfigs.destinations.create.

POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/multicloudDataTransferConfigs/CONFIGURATION_NAME/destinations/DESTINATION_NAME
{
  "description": "DESCRIPTION",
  "ipPrefix": "IP_PREFIX",
  "endpoints": [
    {
      "asn": "ASN",
      "csp": "CSP"
    }
  ]
}

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

  • PROJECT_ID: מזהה הפרויקט.
  • LOCATION: האזור של ההגדרה.
  • CONFIGURATION_NAME: השם של ההגדרה.
  • DESTINATION_NAME: שם ליעד. השם חייב להיות ייחודי באזור.
  • DESCRIPTION: תיאור של היעד והמטרה שלו.
  • IP_PREFIX: קידומת ה-IP של היעד שצוין כטווח (לדוגמה, 203.0.113.0/24 או 2001:db8::/32) או כערך (לדוגמה, 203.0.113.6 או 2001:db8:2:2:2:2:2:2). אפשר להשתמש בקידומת IP רק פעם אחת בהגדרה, ורק עבור ASN אחד.

  • מציינים מחרוזות שמתאימות לנקודות הקצה שרוצים להוסיף ליעד:

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

פקודת הדוגמה הבאה יוצרת יעד בשם destination1 להגדרה config1 באזור europe-west3 לקידומת ולנקודת הקצה של ה-IP שצוינו.

POST https://networkconnectivity.googleapis.com/v1/projects/my-project/locations/europe-west3/multicloudDataTransferConfigs/config1/destinations/destination1
{
  "description": "destination1 for config1",
  "ipPrefix": "203.0.113.0/24",
  "endpoints": [
    {
      "asn": "16509",
      "csp": "aws"
    }
  ]
}

Terraform

בדוגמה הבאה של Terraform נוצר יעד.

resource "google_network_connectivity_destination" "default" {
  name                            = "destination"
  location                        = "europe-west1"
  multicloud_data_transfer_config = google_network_connectivity_multicloud_data_transfer_config.default.name
  description                     = "A basic destination"
  ip_prefix                       = "10.0.0.0/8"
  endpoints {
    asn = "14618"
    csp = "AWS"
  }
}

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

כדי להוסיף או להסיר נקודות קצה, מעדכנים את היעד.

אפשרות אחרת היא למחוק את היעד.

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