הבחנה בתעבורת DNS ב-GKE

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

  • ל-KubeDNS משופר, GKE בגרסה 1.36 ואילך

  • ל-NodeLocalDNS, גרסה 1.35.2-gke.1090000 ומעלה של GKE

הצגת מדדי DNS

אתם יכולים לראות את המדדים של GKE DNS במסוף Google Cloud ב-Metrics Explorer, בדרכים הבאות:

שימוש בלוח הבקרה של ניטור ה-DNS ב-GKE

‫Google מספקת מרכז בקרה מוגדר מראש ל-DNS ב-Monitoring > Dashboards > GKE DNS Observability - Cluster View. בלוח הבקרה הזה מוצגים מדדים של KubeDNS ו-NodeLocalDNS. כדי לראות את לוח הבקרה, צריך אשכולות שמשתמשים ב-NodeLocalDNS או ב-KubeDNS.

דוגמאות לשימוש במרכז הבקרה GKE DNS Observability:

קודם כל, עוברים אל Monitoring > Dashboards, כמו שמוצג בתמונה הבאה:

צילום מסך ראשון שבו מוצג מרכז הבקרה של DNS במסוף Google Cloud

בצילום המסך הזה מופיע תפריט הניווט של מסוף Google Cloud בצד ימין. הקטע Monitoring מורחב, והאפשרות Dashboards מודגשת כדי להנחות את הניווט.

ואז עוברים למרכז הבקרה GKE DNS Observability - Cluster View:

צילום מסך שני שבו מוצג מרכז הבקרה של ה-DNS במסוף Google Cloud

בצילום המסך הזה מוצג דף הספרייה Dashboards, וברשימת מרכזי הבקרה הזמינים מודגש מרכז הבקרה GKE DNS Observability - Cluster View. לחיצה על הקישור הזה פותחת את התצוגה החזותית של מדדי ה-DNS ברמת האשכול.

יצירת מרכזי בקרה בהתאמה אישית

כדי ליצור מרכזי בקרה בהתאמה אישית ולהגדיר התראות שדומות למדדים שאתם עוקבים אחריהם, אתם יכולים להשתמש בכלים של Google Cloud Observability, כמו Cloud Monitoring Metrics Explorer.

שאילתות לגבי מדדי ניראות של DNS

כדי לראות את מדדי ה-DNS של אשכולות GKE, מבצעים את הפעולות הבאות במסוף Google Cloud ב-Metrics Explorer:

  1. נכנסים לדף Monitoring > Metrics Explorer.

  2. בשדה Select a metric, מסננים לפי kubernetes.io/networking/dns/.

  3. המדדים של KubeDNS נמצאים במשאב Kubernetes Container, והמדדים של NodeLocalDNS נמצאים במשאב Kubernetes Node.

  4. (אופציונלי) בוחרים מסננים לפי תוויות.

דוגמאות למדדי KubeDNS ולמדדי NodeLocalDNS במסוף Google Cloud בקטע Monitoring > Metrics Explorer:

צילום מסך של מדדי KubeDNS במסוף Google Cloud

בצילום המסך הזה מוצג הדף Metrics Explorer שמוגדר לשליחת שאילתות לגבי מדדי KubeDNS. בשדה Select a metric מוצג הנתיב המסונן kubernetes.io/networking/dns/kubedns/, ובתרשים שנוצר מוצגים גרפים פעילים של סדרות זמנים של בקשות KubeDNS וסטטוסים של מטמון.

צילום מסך של מדדי NodeLocalDNS במסוף Google Cloud

בצילום המסך הזה מוצג הדף Metrics Explorer שמוגדר לשליחת שאילתות לגבי מדדי NodeLocalDNS. השאילתה מציינת את נתיב המדד kubernetes.io/networking/dns/node_local_dns/ במשאב Kubernetes Node, והתרשים מדגיש גרפים של סדרות זמן פעילות שמייצגים בקשות DNS מקומיות ונתוני זמן אחזור.

רשימת מדדי ה-DNS של GKE

המדדים הבאים זמינים למעקב אחרי הביצועים והתקינות של DNS ב-GKE.

מדדי KubeDNS

ב-GKE מגרסה 1.36 ואילך, המדדים הבאים זמינים ל-KubeDNS:

סוג מדד תיאור
kubernetes.io/networking/dns/kubedns/dns_request_count המספר הכולל של בקשות DNS שהתקבלו על ידי KubeDNS.
kubernetes.io/networking/dns/kubedns/dns_request_latencies היסטוגרמה של משך הזמן שנדרש לפתרון כל בקשה.
kubernetes.io/networking/dns/kubedns/dns_cache_request_count מונה של בקשות DNS שמסוננות לפי סטטוס המטמון (התאמה או החמצה).
kubernetes.io/networking/dns/kubedns/forwarding_request_latencies היסטוגרמה של משך הזמן של כל בקשה שהועברה.
kubernetes.io/networking/dns/kubedns/max_concurrent_rejected_request_count שאילתות נדחו כי מספר השאילתות בו-זמנית הגיע למקסימום.

כדי לחשב את המדד forwarding_request_count, אפשר להשתמש במדד kubernetes.io/networking/dns/kubedns/forwarding_request_latencies בשאילתה הבאה: sum by (cluster_name) (rate({"kubernetes.io/networking/dns/kubedns/forwarding_request_latencies_count"}[${__interval}])).

כברירת מחדל, מסוף Google Cloud מחיל פעולת קצב על המדדים של request_count. אפשר להשבית את זה במקור PromQL.

מדדי NodeLocalDNS

בגרסה 1.35.2-gke.1090000 של GKE ואילך, המדדים הבאים זמינים ל-NodeLocal DNSCache:

סוג מדד תיאור
kubernetes.io/networking/dns/node_local_dns/dns_request_count המספר הכולל של בקשות DNS שהתקבלו על ידי NodeLocal DNSCache.
kubernetes.io/networking/dns/node_local_dns/dns_request_latencies היסטוגרמה של משך הזמן שנדרש לפתרון כל בקשה.
kubernetes.io/networking/dns/node_local_dns/dns_cache_request_count מונה של בקשות DNS שמסוננות לפי סטטוס המטמון (התאמה או החמצה).
kubernetes.io/networking/dns/node_local_dns/forwarding_request_latencies היסטוגרמה של משך הזמן של כל בקשה שהועברה.
kubernetes.io/networking/dns/node_local_dns/max_concurrent_rejected_request_count שאילתות נדחו כי מספר השאילתות בו-זמנית היה במקסימום.

כדי לחשב את הערך של המדד forwarding_request_count, אפשר להשתמש במדד kubernetes.io/networking/dns/node_local_dns/forwarding_request_latencies בשאילתה הבאה: sum by (cluster_name) (rate({"kubernetes.io/networking/dns/node_local_dns/forwarding_request_latencies_count"}[${__interval}])).

שימו לב שכאשר צופים במדדים האלה, מסוףGoogle Cloud מחיל באופן אוטומטי פעולת קצב על המדדים של request_count, שאפשר להשבית ממקור PromQL.

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