במסמך הזה מתוארים היתרונות של מעבר מ-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.
- DNS גלובלי
שמות DNS גלובליים לא כוללים את האזור שבו נמצא המופע. כלומר, לכל מופע צריך להיות שם DNS ייחודי בכל האזורים בפרויקט. לגישה הזו יש חיסרון משמעותי:
- נקודת כשל יחידה: אם יש בעיות בשירות ה-DNS הגלובלי, הן יכולות להשפיע על כל המכונות שלכם, ללא קשר לאזור שבו הן ממוקמות. הדבר עלול לגרום לבעיות הבאות:
- לא ניתן ליצור מופעים חדשים: יכול להיות שלא תוכלו ליצור מופעים חדשים באזור שבו יש כשלים במישור הבקרה.
- שיבושים בשירות: יכול להיות ששירותים קריטיים של Compute Engine, כמו שינוי גודל אוטומטי או תיקון אוטומטי של קבוצות מנוהלות של מופעים (MIG), לא יפעלו בצורה תקינה.
- נקודת כשל יחידה: אם יש בעיות בשירות ה-DNS הגלובלי, הן יכולות להשפיע על כל המכונות שלכם, ללא קשר לאזור שבו הן ממוקמות. הדבר עלול לגרום לבעיות הבאות:
הגישה המומלצת למעבר מ-DNS גלובלי ל-DNS אזורי
בדרך כלל, תהליך המיגרציה מ-DNS גלובלי ל-DNS אזורי כולל שני שלבים:
- הגדרת פרויקטים חדשים לשימוש ב-DNS אזורי כברירת מחדל.
- כדי להעביר פרויקטים קיימים משימוש ב-DNS גלובלי לשימוש ב-DNS אזורי, צריך לשנות את הגדרת המטא-נתונים של ה-DNS הפנימי.
יכול להיות שחלק מהפרויקטים לא תואמים ל-DNS אזורי. לפני שמבצעים העברה של הפרויקטים האלה ל-DNS אזורי, צריך לנתח אותם ולפתור בעיות.
הנחיות לתאימות של פרויקטים
Compute Engine בודק את היסטוריית ה-DNS הפנימי של 30 הימים האחרונים כדי לקבוע אם אפשר לבצע מיגרציה ל-DNS אזורי בלי לבצע שינויים בקוד. גם אם הפרויקט שלכם מומלץ להעברה, Google ממליצה לוודא שהגדרת עומס העבודה הספציפית שלכם מוכנה למעבר ל-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 ואילך
איך מאמתים את הסביבה:
מתחברים למכונת Linux ובודקים את הגרסה של
glibcעל ידי הרצת הפקודה הבאה:ldd --versionאם אתם משתמשים בגרסה 2.25 או בגרסה מוקדמת יותר של
glibc, אתם יכולים להריץ את הפקודה הבאה כדי לראות את דומייני החיפוש הנוכחיים:cat /etc/resolv.confהשורה
searchבפלט מציגה את דומייני החיפוש הנוכחיים. כדי להוסיף בבטחה דומיין חיפוש חדש ולא לחרוג מהמגבלה של מערכת ההפעלה (6), צריך שיהיו לכם לכל היותר חמישה דומיינים.
איך לצמצם את הסיכון:
אם המופע שלכם חורג ממגבלת דומיין החיפוש בגרסת מערכת הפעלה מושפעת, אתם יכולים לפתור את הבעיה באחת מהדרכים הבאות:
- יצירת מכונה חדשה: יוצרים מכונה חלופית באמצעות קובץ אימג' של מערכת הפעלה שעומדת בדרישות (כמו Debian 10+ או RHEL 8+).
- עדכון המופע הקיים: צריך לעדכן את מערכת ההפעלה של האורח במופע Compute כדי שתפעל מערכת הפעלה תואמת.
2. אורך שם המכונה (מערכות הפעלה מדור קודם)
אפליקציית DNS אזורי מוסיפה מזהה אזורי לשם הדומיין הפנימי שמוגדר במלואו (FQDN), וכך השם הכולל ארוך יותר.
- מתי צריך לאמת: למערכות מדור קודם כמו Windows Server 2003 או גרסאות קודמות יש מגבלה של 15 תווים בשם, בגלל מוסכמות NetBIOS ישנות יותר.
- מה עושים: אם אתם משתמשים במערכות מדור קודם, אתם צריכים לוודא ששמות ה-DNS הארוכים יותר של אזורים לא חורגים ממגבלת התווים הזו.
השינוי לא משפיע על תמונות של מערכות הפעלה מודרניות של Windows.
איך לצמצם את הסיכון:
אם שם המופע במערכת הפעלה מדור קודם כולל יותר מ-15 תווים אחרי הוספת המזהה של האזור, אפשר לפתור את הבעיה באחת מהשיטות הבאות:
- משנים את שם המכונה: מפסיקים את המכונה ומשנים את השם שלה כך שהשם המלא (FQDN) המשולב לא יחרוג מהמגבלה של 15 תווים ב-NetBIOS.
- שדרוג מערכת ההפעלה: עדכון מערכת ההפעלה של האורח במופע Compute לתמונה של מערכת הפעלה מודרנית של Windows, שלא חלות עליה יותר הגבלות על שמות NetBIOS.
3. רשתות VPC משותפות
אם התשתית שלכם משתמשת בפרויקטים של שירותים שמחוברים באמצעות VPC משותף, פתרון השמות מתנהג קצת אחרת אחרי שאתם עוברים לשימוש ב-DNS אזורי.
- מה צריך לעשות: כדי להבטיח תקשורת חלקה ב-Shared VPC, צריך לוודא שהאפליקציות שלכם פותרות שמות של מופעים בפרויקטים של השירות באמצעות Zonal FQDN. שם הדומיין שמוגדר במלואו (FQDN) של האזור כולל את שם האזור הספציפי.
המאמרים הבאים
- במאמר Google Cloud היררכיית המשאבים מוסבר על הקשר בין ארגונים, תיקיות ופרויקטים.
- מידע נוסף על DNS פנימי ב-Compute Engine
- מטמיעים מדיניות ארגונית כדי לוודא שכל הפרויקטים החדשים בארגון משתמשים אוטומטית ב-DNS אזורי.
- העברת פרויקטים קיימים ל-Zonal DNS