סקירה כללית על שימוש ב-DNS אזורי

במאמר הזה מוסבר איך להעביר את עומסי העבודה והארגון מ-DNS גלובלי ל-DNS אזורי, ומה היתרונות של המעבר.

מערכת DNS אזורית מצמצמת את הסיכון להפסקות שירות חוצות אזורים, ומשפרת את האמינות הכוללת של הפרויקטים שלכם ב-Compute Engine.

היתרונות של שימוש בשמות DNS אזוריים

ב-Google Cloud יש שני סוגים של שמות DNS פנימיים: אזוריים וגלובליים.

DNS אזורי

שמות DNS של תחום מוגדר כוללים את השם של מכונת Compute Engine, את התחום שבו המכונה ממוקמת ואת הפרויקט שבבעלותו המכונה. השמות האלה נפתרים באזור ספציפי. כתוצאה מכך, my-vm.zone1.google.com הוא ייחודי ל-zone1 ומייצג מופע שונה מ-my-vm.zone2.google.com. הבידוד הזה מספק יתרון מרכזי:

  • זמינות משופרת: אם יש הפסקה זמנית בשירות באזור אחד, היא לא משפיעה על פענוח ה-DNS באזורים אחרים, וכך הזמינות של האפליקציות גבוהה יותר.

‫DNS אזורי הוא שיטת ברירת המחדל לפענוח DNS פנימי בארגונים שנוצרו אחרי 6 בספטמבר 2018.

Global DNS

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

  • נקודת כשל בודדת: אם יש בעיות בשירות ה-DNS הגלובלי, הן יכולות להשפיע על כל המכונות, בלי קשר לאזור שבו הן נמצאות. הדבר עלול לגרום לבעיות הבאות:
    • אי אפשר ליצור מופעים חדשים: יכול להיות שלא תוכלו ליצור מופעים חדשים באף אזור שבו יש כשלים במישור הבקרה.
    • שיבושים בשירות: יכול להיות ששירותים קריטיים של Compute Engine, כמו התאמה אוטומטית לעומס או תיקון תוכנה אוטומטי (autohealing) של קבוצות מופעי מכונה מנוהלים (MIG), לא יפעלו כמו שצריך.

הגישה המומלצת למעבר מ-DNS גלובלי ל-DNS אזורי

בדרך כלל, תהליך המיגרציה מ-DNS גלובלי ל-DNS אזורי כולל שני שלבים:

  1. הגדרת פרויקטים חדשים לשימוש ב-DNS אזורי כברירת מחדל.
  2. כדי להעביר פרויקטים קיימים משימוש ב-DNS גלובלי ל-DNS אזורי, צריך לשנות את הגדרת המטא-נתונים של ה-DNS הפנימי.

יכול להיות שחלק מהפרויקטים לא תואמים ל-DNS אזורי. בפרויקטים האלה צריך לבצע ניתוח ופתרון בעיות לפני שמעבירים אותם ל-DNS אזורי.

הנחיות לתאימות של פרויקטים

‫Compute Engine בודק את היסטוריית ה-DNS הפנימי של 30 הימים האחרונים כדי לקבוע אם אפשר לבצע מיגרציה ל-Zonal DNS בלי לבצע שינויים בקוד. גם אם הפרויקט שלכם מומלץ להעברה, Google ממליצה לוודא שהגדרת עומס העבודה הספציפי שלכם מוכנה למעבר ל-Zonal DNS. כדי לוודא שהכול יפעל בצורה חלקה אחרי ההעברה, צריך לבדוק את הגורמים הסביבתיים הבאים:

1. דומיינים לחיפוש DNS (ב-Linux או ב-Unix בלבד)

כשעוברים ל-DNS אזורי, ‏ Compute Engine מוסיף דומיין חדש לנתיב החיפוש של המופע.

  • מתי צריך לאמת: אם אתם מפעילים הפצות ישנות של Linux או Unix שמשתמשות בגרסה 2.25 או בגרסאות קודמות של glibc, אז למערכת יש מגבלה של שישה דומיינים לחיפוש.
  • מתי אפשר לדלג: אם המופע מריץ אחת ממערכות ההפעלה הבאות, לא צריך לאמת שום דבר:

    • Windows
    • מערכת הפעלה שמותאמת לקונטיינרים
    • ‫Debian 10 ואילך
    • ‫Fedora CoreOS 27 ואילך
    • ‫RHEL 8 ואילך
    • ‫Ubuntu 18.04 ואילך
    • תמונות בהתאמה אישית באמצעות glibc גרסה 2.26 ואילך

איך בודקים את הסביבה:

  1. מתחברים למכונה של Linux ובודקים את הגרסה של glibc באמצעות הפקודה הבאה:

    ldd --version
    
  2. אם אתם משתמשים בגרסה 2.25 או בגרסה מוקדמת יותר של glibc, אתם יכולים להריץ את הפקודה הבאה כדי לראות את דומייני החיפוש הנוכחיים:

    cat /etc/resolv.conf
    

    השורה search בפלט מציגה את דומייני החיפוש הנוכחיים. כדי להוסיף דומיין חיפוש חדש בלי לחרוג מהמגבלה של מערכת ההפעלה (6 דומיינים), צריך לוודא שאין יותר מ-5 דומיינים.

איך מצמצמים את הסיכון:

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

  • יצירת מכונה חדשה: יוצרים מכונה חלופית באמצעות קובץ אימג' של מערכת הפעלה שעומד בדרישות (כמו Debian 10+‎ או RHEL 8+‎).
  • עדכון המכונה הקיימת: עדכון מערכת ההפעלה של האורח במכונה הווירטואלית, כך שתפעל בה מערכת הפעלה תואמת.

2. אורך שם המכונה (מערכות הפעלה מדור קודם)

אפליקציית DNS אזורי מוסיפה מזהה אזורי לשם הדומיין הפנימי שמוגדר במלואו (FQDN), וכך השם הכולל ארוך יותר.

  • מתי צריך לבדוק: במערכות מדור קודם כמו Windows Server 2003 או גרסאות קודמות, יש מגבלה של 15 תווים לשם בגלל מוסכמות ישנות יותר של NetBIOS.
  • מה עושים: אם אתם משתמשים במערכות מדור קודם, אתם צריכים לוודא ששמות ה-DNS הארוכים של האזורים לא חורגים ממגבלת התווים הזו.

הבעיה לא משפיעה על קובצי אימג' של מערכות הפעלה מודרניות של Windows.

איך מצמצמים את הסיכון:

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

  • שינוי שם המכונה: עוצרים את המכונה ומשנים את השם שלה, כך שה-FQDN המשולב לא יחרוג ממגבלת 15 התווים של NetBIOS.
  • שדרוג מערכת ההפעלה: עדכון מערכת ההפעלה של האורח במופע Compute לתמונה מודרנית של מערכת הפעלה של Windows, שבה כבר לא חלות הגבלות על שמות NetBIOS.

3. רשתות VPC משותפות

אם התשתית שלכם משתמשת בפרויקטים של שירותים שמחוברים באמצעות VPC משותף, תרגום שם מתנהג קצת אחרת אחרי שאתם עוברים לשימוש ב-DNS אזורי.

  • מה צריך לעשות: כדי להבטיח תקשורת חלקה ב-VPC המשותף, צריך לוודא שהאפליקציות פותרות שמות של מופעים בפרויקטים של השירות באמצעות שם דומיין מלא אזורי. שם הדומיין שמוגדר במלואו (FQDN) של האזור כולל את שם האזור הספציפי.

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