Managed Airflow (דור 3) | Managed Airflow (דור 2) | Managed Airflow (דור 1 מדור קודם)
בדף הזה מוסבר איך להפעיל את סוכן ה-IP Masquerade בסביבה שלכם.
מידע על סוכן הסתרת ה-IP ב-Managed Airflow
Managed Airflow תומך בסוכן IP Masquerade בסביבות שלכם.
הסוואת כתובת IP היא סוג של תרגום כתובות רשת (NAT) שמשמשת לתרגום של הרבה כתובות IP לכתובת IP אחת. כך כמה לקוחות יכולים לגשת ליעד מכתובת IP אחת.
Managed Airflow מריץ את עומסי העבודה שלכם ב-GKE. כדי שהפונקציה תפעל בצורה תקינה, היא צריכה טווחי כתובות IP לצמתים (מכונות וירטואליות), וגם ל-Pods ולשירותים של GKE. כשמשימות ו-DAG של Airflow מתקשרים עם שירותים אחרים, הם משתמשים בכתובות IP של Pod. טווח כתובות ה-IP של ה-Pod צריך להיות ניתן לניתוב אל ומכל היעדים שהמשימות מתקשרות איתם.
באמצעות סוכן ה-IP Masquerade, יש לכם אפשרות לתרגם כתובות IP של Pod לכתובות IP של צומת, כך שיעדים ושירותים שמכוונים מ-DAG וממשימות של Airflow יקבלו רק חבילות מכתובות IP של צומת במקום מכתובות IP של Pod. זה שימושי בסביבות שבהן מצפים לקבל רק חבילות מכתובות ה-IP של הצמתים, או שבהן טווחי כתובות ה-IP של ה-Pod לא ניתנים לניתוב מחוץ לאשכול.
בנוסף, אפשר להשתמש בסוכן IP Masquerade כדי לשמור טווחי רשת בהגדרת הרשת. לדוגמה, אפשר להשתמש בטווח רשת נפרד עבור ה-Pods בתוך האשכול של הסביבה, ולהציג את התנועה הזו כאילו היא מגיעה מטווח כתובות ה-IP של הצומת. כך אתם חוסכים מקום בטווח כתובות IP אחד, כי אתם משתמשים בכתובות IP מטווח אחר עבור ה-Pods באשכול של הסביבה שלכם.
לדוגמה:
אתם משתמשים בטווח
10.0.0.0/8למכונות וירטואליות, ורק הטווח הזה מותר לפי כללי חומת האש שלכם.כדי לשמור טווחי רשת, צריך להשתמש בטווח אחר (לדוגמה,
192.168.0.0/16) עבור ה-Pods באשכול של הסביבה.כדי להתחבר לשירות כלשהו מ-Pod (תהליך עובד של Airflow), צריך להשתמש בהסוואת כתובת IP. אחרת, השירות מקבל תנועה מ-
192.168.0.0/16ומוחק אותה בגלל כלל חומת אש. כשהסוכן של IP Masquerade מופעל ומוגדר, השירות מקבל בקשות מ-10.0.0.0/8, והן מתקבלות.
לפני שמתחילים
אי אפשר להפעיל את הסוכן IP Masquerade במסוף Google Cloud .
כדי להשתמש בתכונה הזו, צריך ליצור סביבה עם GKE מגרסה 1.22.7 ואילך.
סוכן ה-IP Masquerade לא זמין בסביבות שנוצרו בגרסאות קודמות של GKE, גם אם בוצע שדרוג של GKE לגרסה 1.22.7 ולגרסאות מאוחרות יותר.
אם מפעילים את סוכן IP Masquerade, ברירת המחדל של EgressNatPolicy ב-GKE מוחלפת בהגדרה של Managed Airflow. אם סוכן ה-IP Masquerade לא מופעל, תעבורת הנתונים היוצאת לא תוסתר ותשתמש ב-EgressNatPolicy של GKE כברירת מחדל.
הפעלת סוכן IP Masquerade בסביבה קיימת
אי אפשר להפעיל את סוכן הסוואה של כתובת IP בסביבה קיימת.
הפעלת סוכן להסתרת כתובת IP כשיוצרים סביבה
אפשר להפעיל את סוכן ה-IP Masquerade כשיוצרים סביבה.
מידע נוסף על יצירת סביבות Managed Airflow זמין במאמר יצירת סביבה.
המסוף
אי אפשר להפעיל את הסוכן IP Masquerade במסוף Google Cloud .
gcloud
כשיוצרים סביבה, הארגומנט --enable-ip-masq-agent מאפשר את השימוש בסוכן IP Masqerade.
gcloud composer environments create ENVIRONMENT_NAME \
--location LOCATION \
--image-version composer-2.17.6-airflow-2.11.1 \
--enable-ip-masq-agent
מחליפים את:
-
ENVIRONMENT_NAMEבשם הסביבה. -
LOCATIONעם האזור שבו הסביבה ממוקמת.
דוגמה:
gcloud composer environments create example-environment \
--location us-central1 \
--image-version composer-2.17.6-airflow-2.11.1 \
--enable-ip-masq-agent
API
יוצרים בקשת API של environments.create.
מציינים את ההגדרה במשאב Environment.
{
"name": "projects/PROJECT_ID/locations/LOCATION/environments/ENVIRONMENT_NAME",
"config": {
"softwareConfig": {
"imageVersion": "composer-2.17.6-airflow-2.11.1"
},
"nodeConfig": {
"enableIpMasqAgent": true
}
}
}
מחליפים את:
-
PROJECT_IDבמזהה הפרויקט (Project ID). -
LOCATIONעם האזור שבו הסביבה ממוקמת. ENVIRONMENT_NAMEבשם הסביבה.
דוגמה:
// POST https://composer.googleapis.com/v1/{parent=projects/*/locations/*}/environments
{
"name": "projects/example-project/locations/us-central1/environments/example-environment",
"config": {
"softwareConfig": {
"imageVersion": "composer-2.17.6-airflow-2.11.1"
},
"nodeConfig": {
"enableIpMasqAgent": true
}
}
}
Terraform
כשיוצרים סביבה, השדה enable_ip_masq_agent
בבלוק node_config מאפשר את סוכן ה-IP Masqerade.
resource "google_composer_environment" "example_environment" {
provider = google-beta
name = "ENVIRONMENT_NAME"
region = "LOCATION"
config {
software_config {
image_version = "composer-2.17.6-airflow-2.11.1"
}
node_config {
enable_ip_masq_agent = true
}
}
מחליפים את:
-
ENVIRONMENT_NAMEבשם הסביבה. -
LOCATIONעם האזור שבו הסביבה ממוקמת.
דוגמה:
resource "google_composer_environment" "example_environment" {
provider = google-beta
name = "example-environment"
region = "us-central1"
config {
software_config {
image_version = "composer-2.17.6-airflow-2.11.1"
}
node_config {
enable_ip_masq_agent = true
}
}
}
הגדרת סוכן להסתרת כתובת IP
מידע נוסף על שימוש בסוכן IP Masquerade והגדרתו ב-Managed Airflow (דור 2) זמין במאמר שימוש במדיניות NAT של תעבורת יציאה להגדרת מיסוך כתובות IP באשכולות Autopilot.