Managed Airflow (דור 3) | Managed Airflow (דור 2) | Managed Airflow (דור 1 מדור קודם)
בדף הזה מוסבר איך להגדיר את הרשת של פרויקט Google Cloudלסביבות של כתובות IP פרטיות.
בסביבות עם כתובות IP פרטיות, Managed Airflow מקצה רק כתובות IP פרטיות (RFC 1918) למכונות הווירטואליות המנוהלות של Google Kubernetes Engine ו-Cloud SQL בסביבה שלכם.
אפשר גם להשתמש בכתובות IP ציבוריות בשימוש פרטי ובסוכן הסתרת IP כדי לחסוך במרחב כתובות ה-IP ולהשתמש בכתובות שאינן RFC 1918.
למידע על התחברות למשאבים בסביבה שלכם, ראו כתובת IP פרטית.
לפני שמתחילים
- מוודאים שיש לכם את ההרשאות המתאימות של משתמש וחשבון שירות כדי ליצור סביבה.
- מוודאים שכללי מדיניות לא תואמים של הארגון לא מוגדרים בפרויקט.
בדיקת דרישות הרשת
מוודאים שרשת ה-VPC של הפרויקט עומדת בדרישות הבאות:
חשוב לוודא שאין התנגשויות בין בלוקים של כתובות IP פרטיות. אם לרשת ה-VPC ולרשתות ה-VPC השכנות שלה יש בלוקים של כתובות IP שחופפים לרשת ה-VPC בפרויקט הדייר שמנוהל על ידי Google, אי אפשר ליצור את הסביבה ב-Managed Airflow. בטבלת טווחי ברירת המחדל של כתובות ה-IP מפורטים טווחי ברירת המחדל שמשמשים בכל אזור.
חשוב לוודא שיש מספיק טווחי IP משניים לפודים ולשירותים של Managed Airflow GKE. GKE מחפש טווחי כתובות IP משניים לצורך יצירת כינויים לכתובות IP. אם GKE לא מוצא טווח, Managed Airflow לא יכול ליצור את הסביבה.
חשוב לוודא שמספר הטווחים המשניים ברשת המשנה לא עולה על 30. כמה נקודות שכדאי לחשוב עליהן:
- אשכול ה-GKE של סביבת כתובת ה-IP הפרטית יוצר שני טווחים משניים ברשת המשנה. אפשר ליצור כמה רשתות משנה באותו אזור לאותה רשת VPC.
- אפשר להוסיף עד 30 טווחים משניים. לכל סביבת IP פרטית נדרשים שני טווחים משניים לפודים ולשירותים של Managed Airflow GKE.
חשוב לוודא שהרשת של הפרויקט יכולה לעמוד במגבלה על מספר החיבורים המקסימלי לרשת VPC אחת. מספר הסביבות עם כתובת IP פרטית שאפשר ליצור תלוי במספר החיבורים הקיימים של VPC Peering ברשת ה-VPC.
בכל סביבת IP פרטי נעשה שימוש בשני חיבורי VPC Peering לכל היותר לכל סביבה. Managed Airflow יוצר קישור אחד בין רשתות VPC שכנות (peering) לרשת של פרויקט הדייר (tenant). הקישור השני נוצר על ידי אשכול GKE של הסביבה שלכם, ואשכולות GKE יכולים להשתמש בחיבור הזה שוב.
בוחרים רשת, רשת משנה וטווחי רשת
בוחרים את טווחי הרשתות לסביבת ה-IP הפרטית (או משתמשים בטווחי ברירת המחדל). תשתמשו בטווחי הרשת האלה בהמשך, כשתצרו סביבת IP פרטית.
כדי ליצור סביבת IP פרטית, צריך את הפרטים הבאים:
- מזהה רשת ה-VPC שלכם
- מזהה רשת המשנה של ה-VPC
- שני טווחי IP משניים ברשת המשנה של ה-VPC:
- טווח כתובות IP משני לפודים
- טווח IP משני לשירותים
טווחי כתובות ה-IP של רכיבי הסביבה:
- טווח כתובות ה-IP של מישור הבקרה של GKE. טווח כתובות ה-IP של מישור הבקרה של GKE.
- טווח כתובות ה-IP של שרת האינטרנט.
- טווח כתובות ה-IP של שרת האינטרנט. טווח כתובות ה-IP של מכונת שרת האינטרנט של Airflow.
טווח כתובות ה-IP של Cloud SQL. טווח כתובות ה-IP של המכונה ב-Cloud SQL.
- טווח כתובות ה-IP של מישור הבקרה של GKE. טווח כתובות ה-IP של מישור הבקרה של GKE.
בטבלת טווחי ברירת המחדל של כתובות ה-IP מפורטים ערכי ברירת המחדל שמשמשים בכל אזור.
טווחי IP שמוגדרים כברירת מחדל
| אזור | טווח כתובות ה-IP של מישור הבקרה של GKE | טווח כתובות ה-IP של שרת האינטרנט | טווח כתובות ה-IP של Cloud SQL |
|---|---|---|---|
| africa-south1 | 172.16.64.0/23 | 172.31.223.0/24 | 10.0.0.0/12 |
| asia-east1 | 172.16.42.0/23 | 172.31.255.0/24 | 10.0.0.0/12 |
| asia-east2 | 172.16.0.0/23 | 172.31.255.0/24 | 10.0.0.0/12 |
| asia-northeast1 | 172.16.2.0/23 | 172.31.254.0/24 | 10.0.0.0/12 |
| asia-northeast2 | 172.16.32.0/23 | 172.31.239.0/24 | 10.0.0.0/12 |
| asia-northeast3 | 172.16.30.0/23 | 172.31.240.0/24 | 10.0.0.0/12 |
| asia-south1 | 172.16.4.0/23 | 172.31.253.0/24 | 10.0.0.0/12 |
| asia-south2 | 172.16.50.0/23 | 172.31.230.0/24 | 10.0.0.0/12 |
| asia-southeast1 | 172.16.40.0/23 | 172.31.235.0/24 | 10.0.0.0/12 |
| asia-southeast2 | 172.16.44.0/23 | 172.31.233.0/24 | 10.0.0.0/12 |
| australia-southeast1 | 172.16.6.0/23 | 172.31.252.0/24 | 10.0.0.0/12 |
| australia-southeast2 | 172.16.56.0/23 | 172.31.227.0/24 | 10.0.0.0/12 |
| europe-central2 | 172.16.36.0/23 | 172.31.237.0/24 | 10.0.0.0/12 |
| europe-north1 | 172.16.48.0/23 | 172.31.231.0/24 | 10.0.0.0/12 |
| europe-southwest1 | 172.16.58.0/23 | 172.31.226.0/24 | 10.0.0.0/12 |
| europe-west1 | 172.16.8.0/23 | 172.31.251.0/24 | 10.0.0.0/12 |
| europe-west10 | 172.16.62.0/23 | 172.31.224.0/24 | 10.0.0.0/12 |
| europe-west12 | 172.16.62.0/23 | 172.31.224.0/24 | 10.0.0.0/12 |
| europe-west2 | 172.16.10.0/23 | 172.31.250.0/24 | 10.0.0.0/12 |
| europe-west3 | 172.16.12.0/23 | 172.31.249.0/24 | 10.0.0.0/12 |
| europe-west4 | 172.16.42.0/23 | 172.31.234.0/24 | 10.0.0.0/12 |
| europe-west6 | 172.16.14.0/23 | 172.31.248.0/24 | 10.0.0.0/12 |
| europe-west8 | 172.16.60.0/23 | 172.31.225.0/24 | 10.0.0.0/12 |
| europe-west9 | 172.16.46.0/23 | 172.31.232.0/24 | 10.0.0.0/12 |
| me-central1 | 172.16.58.0/23 | 172.31.226.0/24 | 10.0.0.0/12 |
| me-central2 | 172.16.64.0/23 | 172.31.223.0/24 | 10.0.0.0/12 |
| me-west1 | 172.16.54.0/23 | 172.31.228.0/24 | 10.0.0.0/12 |
| northamerica-northeast1 | 172.16.16.0/23 | 172.31.247.0/24 | 10.0.0.0/12 |
| northamerica-northeast2 | 172.16.46.0/23 | 172.31.232.0/24 | 10.0.0.0/12 |
| northamerica-south1 | 172.16.68.0/23 | 172.31.221.0/24 | 10.0.0.0/12 |
| southamerica-east1 | 172.16.18.0/23 | 172.31.246.0/24 | 10.0.0.0/12 |
| southamerica-west1 | 172.16.58.0/23 | 172.31.226.0/24 | 10.0.0.0/12 |
| us-central1 | 172.16.20.0/23 | 172.31.245.0/24 | 10.0.0.0/12 |
| us-east1 | 172.16.22.0/23 | 172.31.244.0/24 | 10.0.0.0/12 |
| us-east4 | 172.16.24.0/23 | 172.31.243.0/24 | 10.0.0.0/12 |
| us-east5 | 172.16.52.0/23 | 172.31.229.0/24 | 10.0.0.0/12 |
| us-south1 | 172.16.56.0/23 | 172.31.227.0/24 | 10.0.0.0/12 |
| us-west1 | 172.16.38.0/23 | 172.31.236.0/24 | 10.0.0.0/12 |
| us-west2 | 172.16.34.0/23 | 172.31.238.0/24 | 10.0.0.0/12 |
| us-west3 | 172.16.26.0/23 | 172.31.242.0/24 | 10.0.0.0/12 |
| us-west4 | 172.16.28.0/23 | 172.31.241.0/24 | 10.0.0.0/12 |
(אופציונלי) הגדרת קישוריות לממשקי API ולשירותים של Google
אפשר גם לנתב את כל התנועה לממשקי ה-API ולשירותים של Google דרך כמה כתובות IP ששייכות לדומיין private.googleapis.com. בהגדרה הזו, הסביבה שלכם ניגשת לממשקי ה-API ולשירותים של Google דרך כתובות IP שאפשר לנתב רק מתוך Google Cloud.
אם בסביבת ה-IP הפרטי שלכם משתמשים גם ב-VPC Service Controls, צריך להשתמש בהוראות לסביבות עם VPC Service Controls.
בסביבות Managed Airflow נעשה שימוש בדומיינים הבאים:
הכתובת
*.googleapis.comמשמשת לגישה לשירותי Google אחרים.ההרשאה
*.pkg.devמשמשת לקבלת קובצי אימג' של סביבה, למשל כשיוצרים או מעדכנים סביבה.
*.gcr.ioב-GKE נדרש חיבור לדומיין של Container Registry, בלי קשר לגרסה של Managed Airflow.
מגדירים את הקישוריות לנקודת הקצה של private.googleapis.com:
| דומיין | שם DNS | רשומת CNAME | רשומת A |
|---|---|---|---|
*.googleapis.com
|
googleapis.com. |
שם DNS: *.googleapis.com.סוג רשומת המשאב: CNAMEשם קנוני: googleapis.com. |
סוג רשומת המשאב: Aכתובות IPv4: 199.36.153.8, 199.36.153.9, 199.36.153.10, 199.36.153.11
|
*.pkg.dev
|
pkg.dev. |
שם DNS: *.pkg.dev.סוג רשומת המשאב: CNAMEשם קנוני: pkg.dev. |
סוג רשומת המשאב: Aכתובות IPv4: 199.36.153.8, 199.36.153.9, 199.36.153.10, 199.36.153.11
|
*.gcr.io
|
gcr.io. |
שם DNS: *.gcr.io.סוג רשומת המשאב: CNAMEשם קנוני: gcr.io. |
סוג רשומת המשאב: Aכתובות IPv4: 199.36.153.8, 199.36.153.9, 199.36.153.10, 199.36.153.11
|
כדי ליצור כלל DNS:
יוצרים תחום DNS חדש ומשתמשים בשם DNS כשם ה-DNS של התחום הזה.
לדוגמה:
pkg.dev.מוסיפים קבוצת רשומות לרשומת CNAME.
דוגמה:
- שם DNS:
*.pkg.dev. - סוג רשומת המשאבים:
CNAME - שם קנוני:
pkg.dev.
- שם DNS:
מוסיפים קבוצת רשומות לרשומת כתובת קבועה:
דוגמה:
- סוג רשומת המשאבים:
A - כתובות IPv4:
199.36.153.8, 199.36.153.9, 199.36.153.10, 199.36.153.11
- סוג רשומת המשאבים:
מידע נוסף זמין במאמר הגדרת חיבור מבודד לממשקי Google APIs ולשירותים של Google.
(אופציונלי) הגדרת כללים של חומת אש
בצעו את השלב הזה רק אם בפרויקט שלכם יש כללי חומת אש שהם לא ברירת המחדל, כמו כללים שמחליפים כללי חומת אש משתמעים או משנים כללים שאוכלסו מראש ברשת ברירת המחדל.
לדוגמה, יכול להיות ש-Managed Airflow לא יצליח ליצור סביבה אם יש לכם כלל של חומת אש שדוחה את כל תעבורת הנתונים היוצאת. כדי למנוע בעיות, צריך להגדיר כללי allow סלקטיביים שפועלים לפי הרשימה ושיש להם עדיפות גבוהה יותר מהכלל הגלובלי של deny.
מגדירים את רשת ה-VPC כך שתאפשר תעבורת נתונים מהסביבה שלכם:
- במאמר שימוש בכללים של חומת האש מוסבר איך לבדוק, להוסיף ולעדכן כללים ברשת VPC.
- משתמשים בכלי הקישוריות כדי לאמת את הקישוריות בין טווחי כתובות ה-IP.
- אפשר להשתמש בתגי רשת כדי להגביל עוד יותר את הגישה. אפשר להגדיר את התגים האלה כשיוצרים סביבה.
| תיאור | כיוון | פעולה | מקור או יעד | פרוטוקולים | יציאות |
|---|---|---|---|---|---|
| DNS | תעבורת נתונים יוצאת (egress) | אישור | כל יעד (0.0.0.0/0) או כתובות IP של שרת DNS |
TCP, UDP | 53 |
| ממשקי API ושירותים של Google | תעבורת נתונים יוצאת (egress) | אישור | טווח כתובות ה-IP של הדומיין שבחרתם לממשקי ה-API ולשירותים של Google. אם אתם משתמשים בברירות המחדל, עיינו בכתובות IP של דומיינים שמוגדרים כברירת מחדל. | TCP | 443 |
| צמתים של אשכולות בסביבה | תעבורת נתונים יוצאת (egress) | אישור | טווח כתובות ה-IP הראשי של רשת המשנה של הסביבה | TCP, UDP | all |
| פודים של אשכולות בסביבה | תעבורת נתונים יוצאת (egress) | אישור | טווח כתובות IP משני ל-Pods ברשת המשנה של הסביבה | TCP, UDP | all |
| מישור הבקרה של אשכול הסביבה | תעבורת נתונים יוצאת (egress) | אישור | טווח כתובות ה-IP של מישור הבקרה של GKE | TCP, UDP | all |
| שרת אינטרנט | תעבורת נתונים יוצאת (egress) | אישור | טווח כתובות ה-IP של רשת שרת האינטרנט | TCP | 3306, 3307 |
כדי לקבל את טווחי ה-IP של אשכול הסביבה:
טווחי הכתובות של Pod, Service ומישור הבקרה זמינים בדף Clusters של האשכול בסביבה:
במסוף Google Cloud , נכנסים לדף Environments.
ברשימת הסביבות, לוחצים על שם הסביבה. הדף Environment details נפתח.
עוברים לכרטיסייה Environment configuration.
לוחצים על הקישור הצגת פרטי האשכול.
בכרטיסייה Environment configuration אפשר לראות את טווח כתובות ה-IP של שרת האינטרנט של הסביבה.
מזהה הרשת של הסביבה מופיע בכרטיסייה Environment configuration. כדי לקבל טווחי כתובות IP של רשת משנה, נכנסים לדף רשתות VPC ולוחצים על שם הרשת כדי לראות את הפרטים:
הגדרת אשכולות המותאמים ל-VPC
Managed Airflow תומך באשכולות GKE מקוריים של VPC בסביבה שלכם.
במהלך יצירת הסביבה, אתם יכולים להפעיל את VPC Native (באמצעות כתובת IP חלופית) ולהגדיר את הרשת, למשל הקצאת כתובות IP, בלי להפעיל כתובת IP פרטית.
כדי שמשימות Airflow יוכלו לתקשר עם מכונות וירטואליות אחרות שאפשר להגיע אליהן דרך כתובות IP פרטיות, נדרש אשכול מותאם ל-VPC. לכן, צריך גם להפעיל את VPC Native כדי להגדיר סביבת IP פרטית.
הגדרת משתנים של שרת proxy
אתם יכולים להגדיר את http_proxy ו-https_proxy כמשתני סביבה בסביבה שלכם. משתני ה-Linux הרגילים האלה משמשים לקוחות אינטרנט שפועלים בקונטיינרים של אשכול הסביבה, כדי לנתב את התנועה דרך שרתי ה-proxy שצוינו.
כברירת מחדל, המשתנה NO_PROXY מוגדר לרשימה של דומיינים של Google, כתובת ה-IP של שרת המטא-נתונים של Compute Engine באשכול של הסביבה ו-localhost, כדי שהם לא ייכללו בשרת ה-proxy:
.google.com,.googleapis.com,metadata.google.internal,169.254.169.254,localhost
ההגדרה הזו מאפשרת ליצור סביבה עם משתני סביבה מוגדרים של http_proxy ו-https_proxy, במקרים שבהם שרת ה-proxy לא מוגדר לטפל בתנועה לשירותי Google.