בדף הזה נסביר איך להגדיר מדיניות ניתוב DNS ולהפעיל בדיקות תקינות באמצעות Cloud DNS. לפני שמשתמשים בדף הזה, כדאי להכיר את מדיניות הניתוב של DNS ובדיקות התקינות.
לפני שמתחילים
כדי להגדיר מדיניות ניתוב של DNS, יוצרים קבוצת רשומות משאבים ובוחרים באחת ממדיניות הניתוב הבאות של DNS שתחול על קבוצת רשומות המשאבים.
כללי מדיניות הניתוב של DNS תומכים בכמה כתובות IP לכל מיקום גיאוגרפי במדיניות הניתוב לפי מיקום גיאוגרפי. כשמציינים כמה כתובות IP למיקום גיאוגרפי, Cloud DNS מחזיר את כל כתובות ה-IP שצוינו למיקום הזה. לא ניתן לשלב מדיניות ניתוב לפי מיקום גיאוגרפי עם מדיניות WRR עם משקלים מותאמים אישית.
אפשר להחיל רק סוג אחד של מדיניות ניתוב על קבוצת רשומות משאבים בכל פעם.
חשוב לוודא שהפעלתם גישה גלובלית למאזני עומסים אזוריים.
לפני שמגדירים מדיניות ניתוב DNS לאזורים ציבוריים, צריך להשבית את האילוץ
constraints/compute.disableInternetNetworkEndpointGroup
של מדיניות הארגון. מידע נוסף זמין במאמר אילוצים של מדיניות הארגון.חשוב לוודא שיש לכם את ההרשאות הנדרשות כדי להגדיר מדיניות ניתוב של DNS.
יצירת מדיניות ניתוב DNS לתחומים פרטיים
לפני שיוצרים כללי מדיניות ניתוב DNS לתחומים פרטיים, צריך לבצע את השלבים הבאים.
- יוצרים תחום פרטי.
- מגדירים אחד ממאזני העומסים הפנימיים הבאים:
- יוצרים כללי העברה למאזן העומסים הפנימי.
- הגדרת בדיקות תקינות למאזן העומסים הפנימי
כדי ליצור מדיניות ניתוב DNS לתחומים פרטיים, פועלים לפי השלבים הבאים.
המסוף
התחלת ההגדרה
נכנסים לדף Cloud DNS zones במסוף Trusted Cloud .
לוחצים על השם של האזור המנוהל שאליו רוצים להוסיף את הרשומה.
בדף פרטי האזור, לוחצים על הוספה עם מדיניות ניתוב.
נתונים בסיסיים
אופציונלי: בדף Create record set with routing policy, בשדה DNS name, מזינים תת-דומיין של שם ה-DNS – לדוגמה,
mail
. הנקודה בסוף נוספת באופן אוטומטי.בשדה Resource record type, בוחרים אפשרות.
בשדה TTL, מזינים ערך מספרי לאורך החיים של רשומת המשאב. זהו משך הזמן שבו אפשר לשמור אותה במטמון. הערך חייב להיות מספר שלם חיובי.
אופציונלי: בשדה TTL unit, בוחרים את יחידת הזמן – לדוגמה,
minutes
. ערך ברירת המחדל הואminutes
.לוחצים על הבא.
סוג מדיניות הניתוב
- בקטע Routing policy (מדיניות ניתוב), בוחרים באפשרות Weighted round robin (רוטציה מבוססת-משקל), Geolocation (מיקום גיאוגרפי) או Failover (מעבר אוטומטי).
- לוחצים על הבא.
נתוני מדיניות הניתוב
WRR
בשדה Weight, מזינים את המשקל שמתאים לקטע המשנה הזה של נתוני רשומת המשאב (RR).
המשקל הזה חייב להיות מספר לא שלילי בין 0.0 ל-1000.0. היחס של התנועה שמנותבת ליעד מחושב לפי היחס של המשקל הספציפי לבין המשקל הכולל של כל המשקלים. לדוגמה, אם ליעד א' יש משקל של 25 וליעד ב' יש משקל של 75, עם משקל כולל של 100, Cloud DNS ינתב 25/100 = 0.25 (25%) מהתנועה הכוללת ליעד א', ו-75/100= 0.75 (75%) ליעד ב'.
בקטע IPv4 health checked targets, מבצעים את הפעולות הבאות:
- בשדה Project בוחרים את הפרויקט שבו נמצא כלל ההעברה.
בקטע כלל העברה, בוחרים כלל העברה.
כלל ההעברה מציין כתובת IP פנימית, יציאה ואחד מהיעדים הבאים:
לוחצים על סיום.
אופציונלי: כדי להוסיף יעד נוסף לבדיקה של תקינות, לוחצים על Add target.
אופציונלי: כדי לאפשר כתובות IPv4 ללא בדיקת בריאות, מבצעים את הפעולות הבאות:
- בוחרים באפשרות Allow IPv4 addresses without health checking.
- בשדה IPv4 Address, מזינים כתובת IPv4.
אם רוצים להוסיף עוד קבוצה של נתוני ניתוב של מדיניות WRR, לוחצים על הוספת נתוני ניתוב.
לוחצים על הבא.
מיקום גיאוגרפי
בקטע גיאו-פיינס, בוחרים באפשרות מושבת או מופעל.
הפעלת הגדרת הגבלת הגישה לפי מיקום גיאוגרפי מגבילה את התנועה למיקום גיאוגרפי ספציפי, גם אם כל נקודות הקצה במיקום הגיאוגרפי הזה לא תקינות.
בשדה Source region, בוחרים אזור מקור תקין Trusted Cloud.
בקטע IPv4 health checked targets, מבצעים את הפעולות הבאות:
- בשדה Project בוחרים את הפרויקט שבו נמצא כלל ההעברה.
בקטע כלל העברה, בוחרים כלל העברה.
כלל ההעברה מציין כתובת IP פנימית, יציאה ואחד מהיעדים הבאים:
לוחצים על סיום.
אופציונלי: כדי להוסיף יעד נוסף לבדיקה של תקינות, לוחצים על Add target.
אופציונלי: כדי לאפשר כתובות IPv4 ללא בדיקת בריאות, מבצעים את הפעולות הבאות:
- בוחרים באפשרות Allow IPv4 addresses without health checking.
- בשדה IPv4 Address, מזינים כתובת IPv4.
אם רוצים להוסיף עוד קבוצה של נתוני ניתוב של מדיניות למיקום גיאוגרפי, לוחצים על הוספת נתוני ניתוב.
לוחצים על הבא.
יתירות כשל
בקטע Primary health checked targets (יעדים ראשיים לבדיקת תקינות), מבצעים את הפעולות הבאות:
- בשדה Project בוחרים את הפרויקט שבו נמצא כלל ההעברה.
בקטע כלל העברה, בוחרים כלל העברה.
כלל ההעברה מציין כתובת IP פנימית, יציאה ואחד מהיעדים הבאים:
בקטע Backup geolocation policy, מבצעים את הפעולות הבאות:
- בקטע גיאו-פיינס, בוחרים באפשרות מושבת או מופעל. הפעלת הגדרת הגבלת הגישה לפי טווח גיאוגרפי מגבילה את התנועה למיקום גיאוגרפי ספציפי, גם אם כל נקודות הקצה במיקום הגיאוגרפי הזה לא תקינות.
- בשדה Source region, בוחרים אזור מקור תקין Trusted Cloud.
בקטע IPv4 health checked targets, מבצעים את הפעולות הבאות:
- בשדה Project בוחרים את הפרויקט שבו נמצא כלל ההעברה.
בקטע כלל העברה, בוחרים כלל העברה.
כלל ההעברה מציין אחת מהאפשרויות הבאות:
- כתובת IP פנימית, יציאה ושירות לקצה עורפי אזורי
- שרת proxy ל-HTTP(S)
- שרת proxy ל-TCP
כשכל כתובות ה-IP הראשיות לא תקינות, המערכת מטפלת בתנועה באופן אוטומטי בהתאם למדיניות הגיבוי למיקום גיאוגרפי.
לוחצים על סיום.
אופציונלי: כדי להוסיף יעד נוסף לבדיקה של תקינות, לוחצים על Add target.
אופציונלי: כדי לאפשר כתובות IPv4 ללא בדיקת בריאות, מבצעים את הפעולות הבאות:
- בוחרים באפשרות Allow IPv4 addresses without health checking.
- בשדה IPv4 Address, מזינים כתובת IPv4.
אם רוצים להוסיף עוד קבוצה של נתוני ניתוב של מדיניות למיקום גיאוגרפי, לוחצים על הוספת נתוני ניתוב.
בשדה Trickle traffic (%), מזינים את אחוז התנועה שנשלחת ליעדים של חלוקת העומסים, ללא קשר לסטטוס בדיקת התקינות של היעדים הראשיים.
לוחצים על הבא.
בדיקה ויצירה
- לוחצים על בדיקה.
- בודקים את קבוצת הרשומות ב-Cloud DNS עם הגדרת מדיניות הניתוב.
- לוחצים על יצירה.
gcloud
בקבוצת רשומות משאבים, מגדירים מדיניות ניתוב (routingPolicy
) או נתוני DNS (rrdatas
), אבל לא את שניהם. כדי לעבור בין מדיניות ניתוב לנתוני DNS, מעדכנים את קבוצת רשומות המשאבים. לדוגמה, כדי לשנות קבוצת רשומות משאבים שמכילה נתוני DNS (rrdatas
) כך שתכלול במקום זאת מדיניות ניתוב (routingPolicy
), מוחקים את rrdatas
ומוסיפים את routingPolicy
לאותה קבוצת רשומות משאבים.
כדי ליצור מדיניות ניתוב DNS לתחומים פרטיים, פועלים לפי השלבים הבאים.
מריצים את הפקודה gcloud dns record-sets create
:
WRR
gcloud dns record-sets create RRSET_NAME \ --ttl=TTL \ --type=RRSET_TYPE \ --zone=MANAGED_ZONE \ --routing-policy-type=WRR \ --routing-policy-data=ROUTING_POLICY_DATA \ --enable-health-checking
מחליפים את מה שכתוב בשדות הבאים:
RRSET_NAME
: שם ה-DNS שתואם לשאילתות הנכנסות עם שם ה-DNS של האזור הזה כסיומת שלו, למשלservice.example.com
.TTL
: משך הזמן ל-TTL, בשניות, שבו ה-Resolver מאחסן אתResourceRecordSet
, למשל30
.RRSET_TYPE
: סוג רשומת המשאב שלResourceRecordSet
הזה, למשלA
. רשימה של סוגי הרשומות הנתמכים מופיעה במאמר סוגי הרשומות הנתמכים במדיניות הניתוב של DNS.MANAGED_ZONE
: האזור המנוהל שאליו משויךResourceRecordSet
, למשלservice-zone
. הסיומת של השם שלResourceRecordSet
צריכה להיות שם ה-DNS של האזור המנוהל.ROUTING_POLICY_DATA
: מזינים רשימה מופרדת בנקודה-פסיק בפורמט${weight_percent}:${rrdatas}
, למשל.8=203.0.113.1;.2=198.51.100.1
. מציינים את המשקל כערך עשרוני לא שלילי. היחס של תנועת הגולשים שמנותבת ליעד מחושב מהיחס של המשקל של כל יעד לבין המשקל הכולל של כל היעדים. שמות של כללי העברה הם ערכים קבילים, והם מובילים לבדיקת תקינות.--enable-health-checking
: הדגל להפעלת בדיקת התקינות. כשמשתמשים בדגל הזה, צריך לציין את שם כלל ההעברה במקום את כתובת ה-IP בשדה--routing-policy-data
.
מיקום גיאוגרפי
gcloud dns record-sets create RRSET_NAME \ --ttl=TTL \ --type=RRSET_TYPE \ --zone=MANAGED_ZONE \ --routing-policy-type=GEO \ --routing-policy-data=ROUTING_POLICY_DATA \ --enable-health-checking
מחליפים את מה שכתוב בשדות הבאים:
RRSET_NAME
: שם ה-DNS שתואם לשאילתות הנכנסות עם שם ה-DNS של האזור הזה כסיומת שלו, למשלservice.example.com
.TTL
: משך הזמן ל-TTL, בשניות, שבו ה-Resolver מאחסן אתResourceRecordSet
, למשל30
.RRSET_TYPE
: סוג רשומת המשאב שלResourceRecordSet
הזה, למשלA
. רשימה של סוגי הרשומות הנתמכים מופיעה במאמר סוגי הרשומות הנתמכים במדיניות הניתוב של DNS.MANAGED_ZONE
: האזור המנוהל שאליו משויךResourceRecordSet
, למשלservice-zone
. הסיומת של השם שלResourceRecordSet
צריכה להיות שם ה-DNS של האזור המנוהל.ROUTING_POLICY_DATA
: מזינים רשימה מופרדת בנקודה-פסיק בפורמט${region}=${IP_address}
, למשלasia-east1=198.51.100.1;us-central1=203.0.113.1
. כדי לציין כמה כתובות IP לאזור אחד, מוסיפים כתובות IP מופרדות בפסיקים. שמות של כללי העברה הם ערכים קבילים, והם מובילים לבדיקת תקינות.--enable-health-checking
: הדגל להפעלת בדיקת התקינות. כשמשתמשים בדגל הזה, צריך לציין את שם כלל ההעברה במקום את כתובת ה-IP בשדה--routing-policy-data
.
מיקום גיאוגרפי עם גבול וירטואלי
gcloud dns record-sets create RRSET_NAME \ --ttl=TTL \ --type=RRSET_TYPE \ --zone=MANAGED_ZONE \ --routing-policy-type=GEO \ --routing-policy-data=ROUTING_POLICY_DATA \ --enable-geo-fencing \ --enable-health-checking
מחליפים את מה שכתוב בשדות הבאים:
RRSET_NAME
: שם ה-DNS שתואם לשאילתות הנכנסות עם שם ה-DNS של האזור הזה כסיומת שלו, למשלservice.example.com
.TTL
: משך הזמן ל-TTL, בשניות, שבו ה-Resolver מאחסן אתResourceRecordSet
, למשל30
.RRSET_TYPE
: סוג רשומת המשאב שלResourceRecordSet
הזה, למשלA
. רשימה של סוגי הרשומות הנתמכים מופיעה במאמר סוגי הרשומות הנתמכים במדיניות הניתוב של DNS.MANAGED_ZONE
: האזור המנוהל שאליו משויךResourceRecordSet
, למשלservice-zone
. הסיומת של השם שלResourceRecordSet
צריכה להיות שם ה-DNS של האזור המנוהל.ROUTING_POLICY_DATA
: מזינים רשימה מופרדת בנקודה-פסיק בפורמט${region}=${IP_address}
, למשלasia-east1=198.51.100.1;us-central1=203.0.113.1
. כדי לציין כמה כתובות IP לאזור אחד, מוסיפים כתובות IP מופרדות בפסיקים. שמות של כללי העברה הם ערכים קבילים, והם מובילים לבדיקת תקינות.--enable-geo-fencing
: במדיניות הניתובGEO
, הערך הזה קובע אם תתבצע העברה אוטומטית של תעבורת הנתונים בין אזורים אם כל נקודות הקצה באזור מסוים לא תקינות. כשהיא מוגדרת, Cloud DNS תמיד מפנה שאילתות לאזור הקרוב ביותר, גם אם כל נקודות הקצה באזור הזה לא תקינות. משתמשים ב---no-enable-geo-fencing
כדי להשבית את הגדרת הגבולות הגיאוגרפיים. אם לא מגדירים את ההגדרה הזו, שאילתות מופנות לאזור הקרוב ביותר כשכל נקודות הקצה באזור לא תקינות. ברירת המחדל היאfalse
.--enable-health-checking
: הדגל להפעלת בדיקת התקינות. כשמשתמשים בדגל הזה, צריך לציין את שם כלל ההעברה במקום את כתובת ה-IP בשדה--routing-policy-data
.
יתירות כשל
gcloud dns record-sets create RRSET_NAME \ --ttl=TTL \ --type=RRSET_TYPE \ --zone=MANAGED_ZONE \ --routing-policy-type=FAILOVER \ --routing-policy-primary-data=ROUTING_POLICY_PRIMARY_DATA \ --routing-policy-backup-data-type=ROUTING_POLICY_BACKUP_DATA_TYPE \ --routing-policy-backup-data=ROUTING_POLICY_BACKUP_DATA \ --backup-data-trickle-ratio=BACKUP_DATA_TRICKLE_RATIO \ --enable-geo-fencing \ --enable-health-checking
מחליפים את מה שכתוב בשדות הבאים:
RRSET_NAME
: שם ה-DNS שתואם לשאילתות הנכנסות עם שם ה-DNS של האזור הזה כסיומת שלו, למשלservice.example.com
.TTL
: משך הזמן ל-TTL, בשניות, שבו ה-Resolver מאחסן אתResourceRecordSet
, למשל30
.RRSET_TYPE
: סוג רשומת המשאב שלResourceRecordSet
הזה, למשלA
. רשימה של סוגי הרשומות הנתמכים מופיעה במאמר סוגי הרשומות הנתמכים במדיניות הניתוב של DNS.MANAGED_ZONE
: האזור המנוהל שאליו משויךResourceRecordSet
, למשלservice-zone
. הסיומת של השם שלResourceRecordSet
צריכה להיות שם ה-DNS של האזור המנוהל.ROUTING_POLICY_PRIMARY_DATA
: היעד הראשי לשימוש במדיניות הניתוב שלFAILOVER
. היעד הזה חייב להיות הפניה לכללי העברה אחד או יותר, כמוforwarding-rule-1
. כל עוד לפחות אחד מכללי הניתוב האלה תקין, כתובות ה-IP של כל כללי הניתוב התקינים משמשים למענה על שאילתות לגבי השם הזה.ROUTING_POLICY_BACKUP_DATA_TYPE
: במדיניות ניתוב שלFAILOVER
, סוג מדיניות הניתוב שבו נעשה שימוש בנתוני הגיבוי. הערך חייב להיותGEO
.ROUTING_POLICY_BACKUP_DATA
: יעד הגיבוי לשימוש במדיניות הניתוב שלFAILOVER
. המערכת משתמשת ביעדים האלה כשכל כללי ההעברה שצוינו ב---routing-policy-primary-data
לא תקינים. Cloud DNS תומך רק ביעדים של גיבויים מבוססי-מיקום. הפורמט של השדה הזה תואם לפורמט של--routing-policy-data
כאשר--routing-policy-type = 'GEO'
, למשלasia-east1=forwarding-rule-2
.BACKUP_DATA_TRICKLE_RATIO
: היחס של התנועה שצריך לשלוח ליעדי הגיבוי, גם כשהיעדים הראשיים תקינים. היחס חייב להיות בין 0 ל-1, למשל0.1
. ערך ברירת המחדל הוא0
.--enable-geo-fencing
: במדיניות הניתובGEO
, הערך הזה קובע אם תתבצע העברה אוטומטית של תעבורת הנתונים בין אזורים אם כל נקודות הקצה באזור מסוים לא תקינות. כשהיא מוגדרת, Cloud DNS תמיד מפנה שאילתות לאזור הקרוב ביותר, גם אם כל נקודות הקצה באזור הזה לא תקינות. משתמשים ב---no-enable-geo-fencing
כדי להשבית את הגדרת הגבולות הגיאוגרפיים. אם לא מגדירים את ההגדרה הזו, שאילתות מופנות לאזור הקרוב ביותר כשכל נקודות הקצה באזור לא תקינות. ברירת המחדל היאfalse
.--enable-health-checking
: הדגל להפעלת בדיקת התקינות. כשמשתמשים בדגל הזה, צריך לציין את שם כלל ההעברה במקום את כתובת ה-IP בשדה--routing-policy-data
.
API
משתמשים ב-method resourceRecordSets.create
.
WRR
POST https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets { "name": "RRSET_NAME", "type": "RRSET_TYPE", "ttl": TTL, "routingPolicy": { "wrr": { "items": [ { "weight": WEIGHT, "healthCheckedTargets": { "internalLoadBalancers": [ { "loadBalancerType": "LOAD_BALANCER_TYPE" "ipAddress": "IP_ADDRESS" "port" : "PORT_NUMBER" "ipProtocol": "IP_PROTOCOL" "networkUrl": "NETWORK_URL" "project": "PROJECT_ID" "region": "REGION" } ] } }, { "weight": WEIGHT, "healthCheckedTargets": { "internalLoadBalancers": [ { "loadBalancerType": "LOAD_BALANCER_TYPE" "ipAddress": "IP_ADDRESS" "port" : "PORT_NUMBER" "ipProtocol": "IP_PROTOCOL" "networkUrl": "NETWORK_URL" "project": "PROJECT_ID" "region": "REGION" } ] } }, ] } } }
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID
: מזהה הפרויקט MANAGED_ZONE
: התחום המנוהל שאליוResourceRecordSet
הזה משויך, למשלservice-zone
. השם שלResourceRecordSet
הזה חייב לכלול את שם ה-DNS של התחום המנוהל כסיומת שלו.RRSET_NAME
: שם ה-DNS שתואמת לשאילתות הנכנסות עם שם ה-DNS של האזור הזה כסיומת, למשלservice.example.com
RRSET_TYPE
: סוג רשומת המשאב שלResourceRecordSet
הזה, למשלA
TTL
: משך הזמן ל-TTL, בשניות, שבו ה-Resolver מאחסן את ה-ResourceRecordSet
הזה במטמון, למשל30
WEIGHT
: למדיניותWRR
, רשימה מופרדת בפסיקים בפורמט${weight_percent}=${rrdatas}
, למשל.8=10.128.1.1;.2=10.130.1.1
. יש לציין את המשקל כמספר עשרוני לא שלילי. הערה: חובה לציין את המשקל כמספר לא שלילי. היחס של תנועת הגולשים שמנותבת ליעד מחושב מהיחס של המשקל של כל יעד לבין המשקל הכולל של כל היעדים.LOAD_BALANCER_TYPE
: סוג מאזן העומסים, למשלregionalL4ilb
,globalL7ilb
אוregionalL7ilb
. ההגדרה הזו היא אופציונלית.IP_ADDRESS
: כתובת ה-IP שעבורה מוגדרת כלל ההעברהPORT_NUMBER
: זהו מספר היציאהIP_PROTOCOL
: מגדיר את הפרוטוקול שמשמש לבדיקת התקינות. האפשרויות התקינות הןtcp
ו-udp
.NETWORK_URL
: כתובת ה-URL של הרשת שאליה חל כלל ההעברהREGION
: האזור שבו יצרתם את כלל ההעברה
מיקום גיאוגרפי
POST https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets { "name": "RRSET_NAME", "type": "RRSET_TYPE", "ttl": TTL, "routingPolicy": { "geo": { "items": [ { "location": "LOCATION", "healthCheckedTargets": { "internalLoadBalancers": [ { "loadBalancerType": "LOAD_BALANCER_TYPE" "ipAddress": "IP_ADDRESS" "port" : "PORT_NUMBER" "ipProtocol": "IP_PROTOCOL" "networkUrl": "NETWORK_URL" "project": "PROJECT_ID" "region": "REGION" } ] } }, { "location": "LOCATION", "healthCheckedTargets": { "internalLoadBalancers": [ { "loadBalancerType": "LOAD_BALANCING_TYPE" "ipAddress": "IP_ADDRESS" "port" : "PORT_NUMBER" "ipProtocol": "IP_PROTOCOL" "networkUrl": "NETWORK_URL" "project": "PROJECT_ID" "region": "REGION" } ] } }, } ] } } }
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID
: מזהה הפרויקט MANAGED_ZONE
: התחום המנוהל שאליוResourceRecordSet
הזה משויך, למשלservice-zone
. השם שלResourceRecordSet
הזה חייב לכלול את שם ה-DNS של התחום המנוהל כסיומת שלו.RRSET_NAME
: שם ה-DNS שתואמת לשאילתות הנכנסות עם שם ה-DNS של האזור הזה כסיומת, למשלservice.example.com
RRSET_TYPE
: סוג רשומת המשאב שלResourceRecordSet
הזה, למשלA
TTL
: משך הזמן ל-TTL, בשניות, שבו ה-Resolver מאחסן את ה-ResourceRecordSet
הזה במטמון, למשל30
LOCATION
: במדיניותGEO
, המיקום הגיאוגרפי שבו צריך ליצור את המדיניות, למשלasia-east1
LOAD_BALANCER_TYPE
: סוג מאזן העומסים, למשלregionalL4ilb
,globalL7ilb
אוregionalL7ilb
. ההגדרה הזו היא אופציונלית.IP_ADDRESS
: כתובת ה-IP שעבורה פועלת כלל ההעברהPORT_NUMBER
: מספר היציאה של מאזן העומסים הפנימיIP_PROTOCOL
: מגדיר את הפרוטוקול שמשמש לבדיקת התקינות. האפשרויות התקינות הןtcp
ו-udp
.NETWORK_URL
: כתובת ה-URL של הרשת שאליה חל כלל ההעברהREGION
: האזור שבו יצרתם את כלל ההעברה
יתירות כשל
באפשרות של חלוקת עומסים בעת כשל, Cloud DNS תומך רק במדיניות GEO
.
POST https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets { "name": "RRSET_NAME", "type": "RRSET_TYPE", "ttl": TTL, "routingPolicy": { "primaryBackup": { "trickleTraffic": TRICKLE_TRAFFIC, "primaryTargets": { "internalLoadBalancers": [ { "ipAddress": "IP_ADDRESS" "ipProtocol": "IP_PROTOCOL" "loadBalancerType": "LOAD_BALANCER_TYPE" "networkUrl": "NETWORK_URL" "port": "PORT_NUMBER" "project": "PROJECT_ID" "region": "REGION" } ] }, "backupGeoTargets": { "enableFencing": ENABLE_FENCING, "items": [ { "location": "LOCATION", "rrdatas": [ "RRDATA" ] }, { "location": "LOCATION", "rrdatas": [ "RRDATA" ] } ] } }, } }
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID
: מזהה הפרויקט MANAGED_ZONE
: התחום המנוהל שאליוResourceRecordSet
הזה משויך, למשלservice-zone
. השם שלResourceRecordSet
הזה חייב לכלול את שם ה-DNS של התחום המנוהל כסיומת שלו.RRSET_NAME
: שם ה-DNS שתואמת לשאילתות הנכנסות עם שם ה-DNS של האזור הזה כסיומת, למשלservice.example.com
RRSET_TYPE
: סוג רשומת המשאב שלResourceRecordSet
הזה, למשלA
TTL
: משך הזמן ל-TTL, בשניות, שבו ה-Resolver מאחסן את ה-ResourceRecordSet
הזה במטמון, למשל30
TRICKLE_TRAFFIC
: היחס של התנועה שצריך לשלוח ליעדים לגיבוי גם כשהמכונות הראשיות תקינות. היחס חייב להיות בין 0 ל-1, למשל0.1
IP_ADDRESS
: כתובת ה-IP שעבורה פועלת כלל ההעברהPORT_NUMBER
: זהו מספר היציאהIP_PROTOCOL
: מגדיר את הפרוטוקול שמשמש לבדיקת התקינות. האפשרויות התקינות הןtcp
ו-udp
.NETWORK_URL
: כתובת ה-URL של הרשת שאליה חל כלל ההעברהPORT_NUMBER
: מספר היציאה של מאזן העומסים הפנימיREGION
: האזור שבו יצרתם את כלל ההעברהENABLE_FENCING
: במדיניות הניתובGEO
, הערך הזה קובע אם התנועה תעבור לחלופין לאזורים אחרים אם כל נקודות הקצה באזור לא תקינות. כשהיא מוגדרת, Cloud DNS תמיד מפנה את השאילתות לאזור הקרוב ביותר, גם אם כל נקודות הקצה באזור הזה לא תקינות. אם לא מגדירים את ההגדרה הזו, שאילתות של Cloud DNS מועברות לאזור הקרוב ביותר כשכל נקודות הקצה באזור לא תקינות. ברירת המחדל היאfalse
.LOCATION
: במדיניותGEO
, המיקום הגיאוגרפי שבו צריך ליצור את המדיניות, למשלasia-east1
WEIGHT
: למדיניותWRR
, רשימה מופרדת בפסיקים בפורמט${weight_percent}=${rrdatas}
, למשל.8=10.128.1.1;.2=10.130.1.1
. יש לציין את המשקל כמספר עשרוני לא שלילי.RRDATA
: ערך שרירותי שמשויך לקבוצת הרשומות של המשאב, למשל198.51.100.5
. אפשר גם להזין כמה ערכים,rrdata1
rrdata2
rrdata3
, למשל198.51.100.1
203.0.113.1
…
עדכון כללי מדיניות הניתוב של DNS
כדי לעדכן את מדיניות הניתוב של קבוצת רשומות המשאבים, פועלים לפי השלבים הבאים.
המסוף
נכנסים לדף Cloud DNS zones Trusted Cloud במסוף.
לוחצים על הדומיין שרוצים לעדכן את מדיניות הניתוב של קבוצת רשומות המשאבים שלו.
בדף Zone details, לצד קבוצת רשומות המשאבים שרוצים לעדכן, לוחצים על editEdit.
אחרי שמסיימים לבצע את העדכונים, לוחצים על שמירה.
gcloud
מריצים את הפקודה gcloud dns record-sets update
:
WRR
gcloud dns record-sets update RRSET_NAME \ --ttl=TTL \ --type=RRSET_TYPE \ --zone=MANAGED_ZONE \ --routing-policy-type=WRR \ --routing-policy-data=ROUTING_POLICY_DATA \ --enable-health-checking
מיקום גיאוגרפי
gcloud dns record-sets update RRSET_NAME \ --ttl=TTL \ --type=RRSET_TYPE \ --zone=MANAGED_ZONE \ --routing-policy-type=GEO \ --routing-policy-data=ROUTING_POLICY_DATA \ --enable-health-checking
מיקום גיאוגרפי עם גבול וירטואלי
gcloud dns record-sets update RRSET_NAME \ --ttl=TTL \ --type=RRSET_TYPE \ --zone=MANAGED_ZONE \ --routing-policy-type=GEO \ --routing-policy-data=ROUTING_POLICY_DATA \ --enable-geo-fencing --enable-health-checking
יתירות כשל
gcloud dns record-sets update RRSET_NAME \ --ttl=TTL \ --type=RRSET_TYPE \ --zone=MANAGED_ZONE \ --routing-policy-type=FAILOVER \ --enable-geo-fencing \ --routing-policy-primary-data=ROUTING_POLICY_PRIMARY_DATA \ --routing-policy-backup-data=ROUTING_POLICY_BACKUP_DATA \ --backup-data-trickle-ratio=BACKUP_DATA_TRICKLE_RATIO \ --enable-health-checking
מחליפים את מה שכתוב בשדות הבאים:
RRSET_NAME
: שם ה-DNS שתואם לשאילתות הנכנסות עם שם ה-DNS של האזור הזה כסיומת שלו, למשלservice.example.com
TTL
: משך הזמן ל-TTL, בשניות, שבו ה-Resolver שומר במטמון את ה-ResourceRecordSet
הזה, למשל30
RRSET_TYPE
: סוג רשומת המשאב שלResourceRecordSet
הזה, למשלA
רשימה של סוגי הרשומות הנתמכים מפורטת במאמר בחירת סוגי רשומות משאבים.
MANAGED_ZONE
: האזור המנוהל שאליו משויךResourceRecordSet
, למשלservice-zone
. הסיומת של השם שלResourceRecordSet
צריכה להיות שם ה-DNS של האזור המנוהלROUTING_POLICY_TYPE
: סוג מדיניות הניתוב.מזינים
WRR
עבור רוטציה מבוססת-משקל,GEO
עבור מיקום גיאוגרפי אוFAILOVER
עבור מדיניות חלופית במקרה כשל. לא ניתן לשנות את השדה הזה אחרי שבוחרים סוג למדיניות. אפשר רק למחוק את המדיניות ולהוסיף מדיניות חדשה עם סוג אחר.ROUTING_POLICY_DATA
: נתוני מדיניות הניתוב- בשדה
--routing-policy-type=WRR
, מזינים רשימה מופרדת בפסיקים בפורמט${weight_percent}:${rrdatas}
, למשל.8=203.0.113.1;.2=198.51.100.1
. מציינים את המשקל כערך עשרוני לא שלילי. היחס של תנועת הגולשים שמנותבת ליעד מחושב מהיחס של המשקל של כל יעד לבין המשקל הכולל של כל היעדים. שמות של כללי העברה הם ערכים קבילים, והם מובילים לבדיקת תקינות. - בשדה
--routing-policy-type=GEO
, מזינים רשימה מופרדת בפסיקים בפורמט${region}=${IP_address}
, למשלasia-east1=198.51.100.1;us-central1=203.0.113.1
. כדי לציין כמה כתובות IP לאזור אחד, מוסיפים כתובות IP מופרדות בפסיקים. שמות של כללי העברה הם ערכים קבילים, והם מובילים לבדיקת תקינות. בשדה
--routing-policy-type=FAILOVER
, מזינים את שם כלל ההעברה שיצרתם בפורמט${region}=${Forwarding rule name}
.
- בשדה
--enable-geo-fencing
: במדיניות הניתובGEO
, הערך הזה קובע אם תתבצע העברה אוטומטית של תעבורת הנתונים לאזורים אחרים אם כל נקודות הקצה באזור מסוים לא תקינות. כשהיא מוגדרת, Cloud DNS תמיד מפנה שאילתות לאזור הקרוב ביותר, גם אם כל נקודות הקצה באזור הזה לא תקינות. משתמשים ב---no-enable-geo-fencing
כדי להשבית את הגדרת הגבולות הגיאוגרפיים. אם לא מגדירים את הערך, כל נקודות הקצה באזור נחשבות לא תקינות ו-Cloud DNS מפנה את השאילתות לאזור הקרוב ביותר. ערך ברירת המחדל הואfalse
.ROUTING_POLICY_PRIMARY_DATA
: היעד הראשי לשימוש במדיניות הניתוב שלFAILOVER
. היעד הזה חייב להיות הפניה לכללי העברה אחד או יותר, כמוforwarding-rule-1
. כל עוד לפחות אחד מכללי הניתוב האלה תקין, כתובות ה-IP של כל כללי הניתוב התקינים משמשים למענה על שאילתות לגבי השם הזה.ROUTING_POLICY_BACKUP_DATA
: יעד הגיבוי לשימוש במדיניות הניתוב שלFAILOVER
. המערכת משתמשת ביעדים האלה כשכל כללי ההעברה שצוינו ב---routing-policy-primary-data
לא תקינים. Cloud DNS תומך רק ביעדים של גיבויים מבוססי-מיקום. הפורמט של השדה הזה תואם לפורמט של--routing-policy-data
כאשר--routing-policy-type = 'GEO'
, למשלasia-east1=forwarding-rule-2
.BACKUP_DATA_TRICKLE_RATIO
: היחס של התנועה ששולחים ליעדי הגיבוי גם כשהיעדים הראשיים תקינים. היחס חייב להיות בין 0 ל-1, למשל0.1
. ערך ברירת המחדל מוגדר כ-0.--enable-health-checking
: הפעלת בדיקת התקינות של כללי העברה שסופקו כ-rrdata אל--routing-policy-data
.
API
משתמשים ב-method resourceRecordSets.patch
. צריך לציין רק אחד מבין הערכים rrset.rrdatas
או rrset.routingPolicy
. אם מציינים את routingPolicy
, צריך לציין את השדה החדש routingPolicy
במלואו.
WRR
למדיניות WRR
, משתמשים בשיטה הבאה:
PATCH https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets { "name": "RRSET_NAME.", "type": "RRSET_TYPE", "ttl": TTL, "routingPolicy": { "wrrPolicy": { "item": [ { "weight": WEIGHT, "rrdatas": ["RRDATA"] }, { "weight": WEIGHT, "rrdatas": ["RRDATA"] } ], } } }
מיקום גיאוגרפי
משתמשים בשיטה הבאה:
PATCH https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets { "name": "RRSET_NAME", "type": "RRSET_TYPE", "ttl": TTL, "routingPolicy": { "geo": { "items": [ { "location": "LOCATION", "healthCheckedTargets": { "internalLoadBalancers": [ { "loadBalancerType": "LOAD_BALANCER_TYPE" "ipAddress": "IP_ADDRESS" "port" : "PORT_NUMBER" "ipProtocol": "IP_PROTOCOL" "networkUrl": "NETWORK_URL" "project": "PROJECT" "region": "REGION" } ] } }, { "location": "LOCATION", "healthCheckedTargets": { "internalLoadBalancers": [ { "loadBalancerType": "LOAD_BALANCING_TYPE" "ipAddress": "IP_ADDRESS" "port" : "PORT_NUMBER" "ipProtocol": "IP_PROTOCOL" "networkUrl": "NETWORK_URL" "project": "PROJECT" "region": "REGION" } ] } }, } ] } } }
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID
: מזהה הפרויקט MANAGED_ZONE
: התחום המנוהל שאליוResourceRecordSet
הזה משויך, למשלservice-zone
. השם שלResourceRecordSet
הזה חייב לכלול את שם ה-DNS של התחום המנוהל כסיומת שלו.RRSET_NAME
: שם ה-DNS שתואמת לשאילתות הנכנסות עם שם ה-DNS של האזור הזה כסיומת, למשלservice.example.com
RRSET_TYPE
: סוג רשומת המשאב שלResourceRecordSet
הזה, למשלA
TTL
: משך הזמן ל-TTL, בשניות, שבו ה-Resolver שומר במטמון את ה-ResourceRecordSet
הזה, למשל30
TRICKLE_TRAFFIC
: היחס של התנועה שצריך לשלוח ליעדים לגיבוי גם כשהמכונות הראשיות תקינות. היחס חייב להיות בין 0 ל-1, למשל0.1
ENABLE_FENCING
: במדיניות הניתובGEO
, הערך הזה קובע אם התנועה תעבור לחלופין לאזורים אחרים אם כל נקודות הקצה באזור לא תקינות. כשהיא מוגדרת, Cloud DNS תמיד מפנה את השאילתות לאזור הקרוב ביותר, גם אם כל נקודות הקצה באזור הזה לא תקינות. אם לא מגדירים את ההגדרה הזו, שאילתות של Cloud DNS מועברות לאזור הקרוב ביותר כשכל נקודות הקצה באזור לא תקינות. ברירת המחדל היאfalse
.LOCATION
: במדיניותGEO
, המיקום הגיאוגרפי של המדיניות שצריך לעדכן, למשלasia-east1
WEIGHT
: למדיניותWRR
, רשימה מופרדת בפסיקים בפורמט${weight_percent}=${rrdatas}
, למשל.8=10.128.1.1;.2=10.130.1.1
. יש לציין את המשקל כמספר עשרוני לא שלילי.RRDATA
: ערך שרירותי שמשויך לקבוצת הרשומות של המשאב, למשל198.51.100.5
. אפשר גם להזין כמה ערכים,rrdata1
rrdata2
rrdata3
, למשל198.51.100.1
203.0.113.1
…LOAD_BALANCER_TYPE
: סוג מאזן העומסים, למשלregionalL4ilb
,globalL7ilb
אוregionalL7ilb
. ההגדרה הזו היא אופציונלית.IP_ADDRESS
: כתובת ה-IP שעבורה מוגדרת כלל ההעברהPORT_NUMBER
: זהו מספר היציאהIP_PROTOCOL
: מגדיר את הפרוטוקול שמשמש לבדיקת התקינות. האפשרויות התקינות הןtcp
ו-udp
.NETWORK_URL
: כתובת ה-URL של הרשת שאליה חל כלל ההעברהREGION
: האזור שבו יצרתם את כלל ההעברה
מחיקת כללי מדיניות ניתוב DNS
כדי למחוק מדיניות ניתוב, צריך למחוק את קבוצת רשומות המשאבים שמכילה את מדיניות הניתוב. כדי לעשות זאת, צריך לבצע את השלבים הבאים.
המסוף
נכנסים לדף Cloud DNS zones במסוף Trusted Cloud .
לוחצים על הדומיין שעבורו רוצים למחוק את קבוצת רשומות המשאבים.
בדף Zone details, מסמנים את התיבה לצד שם ה-DNS של קבוצת רשומות המשאבים שרוצים למחוק.
לוחצים על מחיקת קבוצות רשומות.
gcloud
מריצים את הפקודה gcloud dns record-sets delete
:
gcloud dns record-sets delete RRSET_NAME \ --type=RRSET_TYPE \ --zone=MANAGED_ZONE \
מחליפים את מה שכתוב בשדות הבאים:
RRSET_NAME
: שם ה-DNS שתואם לשאילתות הנכנסות עם שם ה-DNS של האזור הזה כסיומת שלו, למשלservice.example.com
RRSET_TYPE
: סוג רשומת המשאב שלResourceRecordSet
הזה, למשלA
רשימה של סוגי הרשומות הנתמכים מפורטת במאמר בחירת סוגי רשומות משאבים.
MANAGED_ZONE
: התחום המנוהל שאליוResourceRecordSet
הזה משויך, למשלservice-zone
. השם שלResourceRecordSet
הזה חייב לכלול את שם ה-DNS של התחום המנוהל כסיומת שלו.
API
משתמשים ב-method resourceRecordSets.delete
:
DELETE https://www.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/MANAGED_ZONE/rrsets/RRSET_NAME/RRSET_TYPE
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID
: מזהה הפרויקט MANAGED_ZONE
: התחום המנוהל שאליוResourceRecordSet
הזה משויך, למשלmy-zone-name
. השם שלResourceRecordSet
הזה חייב לכלול את שם ה-DNS של התחום המנוהל כסיומת שלו.RRSET_NAME
: שם ה-DNS שתואמת לשאילתות הנכנסות עם שם ה-DNS של האזור הזה כסיומת, למשלtest.example.com
RRSET_TYPE
: סוג רשומת המשאב שלResourceRecordSet
הזה, למשלA
המאמרים הבאים
- במאמר יצירה, שינוי ומחיקה של תחומים מוסבר איך עובדים עם תחומים מנוהלים.
- במאמר פתרון בעיות מפורטות פתרונות לבעיות נפוצות שעשויות להתרחש במהלך השימוש ב-Cloud DNS.
- בסקירה הכללית על Cloud DNS תוכלו לקרוא מידע נוסף על Cloud DNS.