הגדרת ניתוב לממשקי Private Service Connect

בדף הזה מוסבר איך להגדיר ניתוב לממשקי Private Service Connect וירטואליים ודינמיים.

ניתוב תעבורה דרך ממשק Private Service Connect

אחרי שיוצרים ממשק Private Service Connect, צריך להגדיר את מערכת ההפעלה האורחת (guest OS) במכונה הווירטואלית של הממשק כדי לנתב את התעבורה דרך הממשק.

אישור קישוריות SSH

מוודאים שכללי חומת האש מוגדרים כך שחיבורי SSH נכנסים מותרים למכונה הווירטואלית של ממשק Private Service Connect.

איך מאתרים את Google Cloud השם של ממשק Private Service Connect

כדי להגדיר ניתוב, צריך לדעת את Google Cloud השם של ממשק Private Service Connect.

כדי למצוא את השם של ממשק דינמי של Private Service Connect, משתמשים ב-Google Cloud CLI. Google Cloud

המסוף

  1. נכנסים לדף VM instances במסוף Google Cloud :

    כניסה לדף VM instances

  2. לוחצים על השם של המכונה הווירטואלית שיש לה ממשק Private Service Connect.

  3. בקטע Network interfaces, מוצאים את השם של ממשק Private Service Connect הווירטואלי ורושמים אותו. לדוגמה, nic1.

gcloud

  1. משתמשים בפקודה gcloud compute instances describe.

    gcloud compute instances describe VM_NAME \
        --zone=ZONE
    

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

    • VM_NAME: השם של המכונה הווירטואלית שיש לה ממשק Private Service Connect
    • ZONE: האזור של המכונה הווירטואלית
  2. בפלט של הפקודה, מאתרים את השם של ממשק Private Service Connect ורושמים אותו. Google Cloud

    • בממשקי Private Service Connect וירטואליים, השם הוא מהצורה nic[interface_number] – לדוגמה, nic0 או nic1.
    • בממשקי Private Service Connect דינמיים, השם הוא מהצורה nic[parent_interface_number.VLAN_ID] – לדוגמה, nic0.10 או nic1.42.

הגדרת ניהול אוטומטי של ממשקי Private Service Connect דינמיים

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

איך מאתרים את שם מערכת ההפעלה של האורח בממשק Private Service Connect

כדי להגדיר ניתוב, צריך לדעת את שם מערכת ההפעלה של האורח בממשק Private Service Connect, שהוא שונה משם הממשק ב- Google Cloud.

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

  1. מתחברים למכונה הווירטואלית של ממשק Private Service Connect.
  2. מריצים את הפקודה הבאה:

    ip address
    

    ברשימת ממשקי הרשת, מחפשים את שם הממשק שמשויך לכתובת ה-IP של ממשק Private Service Connect ורושמים אותו. לדוגמה, אם הסוכן של אורח Linux מנהל את ממשקי הרשת של המכונה הווירטואלית, השמות יהיו בפורמטים הבאים:

    • ממשקי Private Service Connect וירטואליים: ens[number]—לדוגמה, ens5.
    • ממשקי Private Service Connect דינמיים: gcp.ens[parent_interface_number].[VLAN_ID]—לדוגמה, gcp.ens5.10.

מציאת כתובת ה-IP של השער של ממשק Private Service Connect

כדי להגדיר ניתוב, צריך לדעת את כתובת ה-IP של שער ברירת המחדל של הממשק Private Service Connect.

  1. מתחברים למכונה הווירטואלית של ממשק Private Service Connect.
  2. שולחים בקשת GET מהמכונה הווירטואלית של הממשק אל שרת המטא-נתונים המשויך.

    • כדי ליצור ממשקי Private Service Connect וירטואליים, שולחים את הבקשה הבאה:

      curl http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/INTERFACE_NUMBER/gateway -H "Metadata-Flavor: Google" && echo
      

      מחליפים את INTERFACE_NUMBER באינדקס של הממשק. לדוגמה, אם השם של ממשק Private Service Connect הוא nic1, צריך להשתמש בערך 1.Google Cloud

    • עבור ממשקי Private Service Connect דינמיים, שולחים את הבקשה הבאה:

      curl http://metadata.google.internal/computeMetadata/v1/instance/vlan-network-interfaces/PARENT_INTERFACE_NUMBER/VLAN_ID/gateway -H "Metadata-Flavor: Google" && echo
      

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

      • PARENT_INTERFACE_NUMBER: האינדקס של ה-vNIC הראשי של ממשק Private Service Connect הדינמי

        לדוגמה, אם השם של ממשק Private Service Connect הוא nic1.5, צריך להשתמש בערך 1.Google Cloud

      • VLAN_ID: מזהה ה-VLAN של הממשק הדינמי של Private Service Connect

        לדוגמה, אם השם של ממשק Private Service Connect הוא nic1.5, צריך להשתמש בערך 5. Google Cloud

    בפלט של הבקשה מוצגת כתובת ה-IP של השער.

הוספת נתיבים לתת-רשתות של צרכנים

עליכם להוסיף נתיב לשער ברירת המחדל של ממשק Private Service Connect לכל תת-רשת של צרכן שמתחברת לממשק Private Service Connect. כך התנועה שמיועדת לרשת הצרכן עוברת דרך ממשק Private Service Connect.

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

  1. מתחברים למכונה הווירטואלית של ממשק Private Service Connect.

  2. מריצים את הפקודה הבאה לכל רשת משנה של צרכן שמחוברת לממשק Private Service Connect:

    sudo ip route add CONSUMER_SUBNET_RANGE via GATEWAY_IP dev OS_INTERFACE_NAME
    

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

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

    sudo ip route flush cache
    

שימוש בממשק Private Service Connect עם VPC Service Controls

אתם יכולים להשתמש בממשקי Private Service Connect עם VPC Service Controls. התכונה הזו מאפשרת לרשת VPC של ספק לגשת לממשקי API ולשירותים של Google דרך רשת VPC של צרכן, בזמן שהארגון הצרכן יכול ליהנות מיתרונות האבטחה של VPC Service Controls.

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

  • הגדרת ניתוב של מערכת הפעלה לאורחים
  • בידוד של ממשק Private Service Connect באמצעות מרחבי שמות ברשת או VRF, ואז הגדרת ניתוב

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

כדי להשתמש בממשק Private Service Connect עם VPC Service Controls, צריך להגדיר ניתוב במערכת ההפעלה של האורח במכונה הווירטואלית של הממשק. תעבורה ישירה שמיועדת לממשקי API ולשירותים של Google דרך ממשק Private Service Connect.

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

כדי להגדיר ניתוב:

  1. מאפשרים קישוריות SSH למכונה הווירטואלית של ממשק Private Service Connect.
  2. מתחברים ל-VM.
  3. כדי ליצור טבלת ניתוב בהתאמה אישית לממשק Private Service Connect, מריצים את הפקודה הבאה:

    echo "1 ROUTE_TABLE_NAME" | sudo tee -a /etc/iproute2/rt_tables
    

    מחליפים את ROUTE_TABLE_NAME בשם של טבלת הניתוב.

  4. מוסיפים נתיב לטבלת הניתוב לתעבורת נתונים אל Google APIs ושירותים. לדוגמה, כדי להוסיף נתיב לתנועה אל כתובת ה-IP הווירטואלית (VIP) ‏restricted.googleapis.com, משתמשים בפקודה הבאה, שמציינת את טווח כתובות ה-IPv4 המוגבלgoogleapis.com:

    sudo ip route add 199.36.153.4/30 dev OS_INTERFACE_NAME table ROUTE_TABLE_NAME
    

    מחליפים את OS_INTERFACE_NAME בשם מערכת ההפעלה האורחת של ממשק Private Service Connect, לדוגמה, ens5 או gcp.ens5.10

  5. כדי להוסיף כלל ניתוב שמשתמש בטבלת הניתוב המותאמת אישית עבור מנות שמקורן בממשק Private Service Connect, משתמשים בפקודה הבאה:

    sudo ip rule add from INTERFACE_IP table ROUTE_TABLE_NAME
    

    מחליפים את INTERFACE_IP בכתובת ה-IP של ממשק Private Service Connect. אפשר למצוא את כתובת ה-IP של הממשק על ידי תיאור המכונה הווירטואלית של הממשק.

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

    sudo ip route flush cache
    

בידוד ממשקי Private Service Connect באמצעות מרחבי שמות או VRF

לחלופין, אפשר להגדיר את המכונה הווירטואלית כך שתשתמש במרחבי שמות של רשתות או בניתוב וירטואלי והעברה (VRF) כדי לבודד את הממשק של Private Service Connect. הגישה הזו שימושית לעומסי עבודה בקונטיינרים, כמו אלה שפועלים בקבוצות Pod של Google Kubernetes Engine.

מגדירים ניתוב באמצעות אותו הקשר שבו השתמשתם כדי לבודד את הממשק, ומוודאים שעומסי העבודה שמשתמשים בממשק Private Service Connect קיימים באותו הקשר.