בדף הזה מוסבר איך למצוא את היומנים של Google Kubernetes Engine (GKE) ולהשתמש בהם.
גישה ליומנים
יש כמה דרכים לגשת ליומנים של GKE:
אפשר לצפות ביומנים במסוף Google Cloud מהדפים הבאים:
Kubernetes Engine:
- בוחרים אשכול בדף Clusters (אשכולות) ואז בוחרים בכרטיסייה Logs (יומנים). בכרטיסייה הזו מוצגות גם הצעות לשאילתות ליומני האשכול.
- בוחרים עומס עבודה בדף Workloads. אחר כך אפשר ללחוץ על הקישורים Container logs (יומני מאגר תגים) או Audit logs (יומני ביקורת) בכרטיסייה Overview (סקירה כללית) כדי לראות את היומנים ב-Logs Explorer, או לבחור בכרטיסייה Logs (יומנים) כדי לראות את היומנים בהקשר.
- פרטים על עומסי העבודה שלכם בתחומי ה-AI וה-ML מופיעים בקטע AI/ML.
Logging: בוחרים באפשרות Logs Explorer ואז משתמשים במסנני רישום ביומן כדי לבחור את משאבי Kubernetes, כמו יומני אשכול, צומת, מרחב שמות, פוד או מאגר תגים. כדי לראות דוגמאות לשאילתות שיעזרו לכם להתחיל, אפשר לעיין בשאילתות שקשורות ל-Kubernetes.
מעקב: בלוחות הבקרה של GKE מוצגים מדדים ויומנים של משאבי GKE כמו אשכולות, צמתים ו-Pods. מידע נוסף זמין במאמר בנושא הצגת מדדי יכולת התבוננות.
מ-Google Cloud CLI: אפשר להריץ שאילתות ביומנים מאשכולות, מצמתים, מתרמילים ומקונטיינרים באמצעות הפקודה
gcloud logging read.
כדי לבצע צבירה מותאמת אישית של יומנים, ניתוח יומנים או שילוב עם מערכות של צד שלישי, אפשר גם להשתמש בתכונה 'יעדי ניקוז יומנים' כדי לייצא יומנים ל-BigQuery, ל-Cloud Storage ול-Pub/Sub.
הסבר על היומנים
יומן ב-Cloud Logging הוא אוסף של רשומות ביומן, וכל רשומה ביומן חלה על סוג מסוים של משאב לרישום ביומן.
סוגי המשאבים
אלה סוגי המשאבים שספציפיים לאשכולות GKE:
| סוגי משאבים של יומנים | ||
|---|---|---|
gke_cluster |
יומני פעולות באשכול GKE | |
gke_nodepool |
יומני פעולות של מאגר צמתים ב-GKE | |
k8s_cluster |
יומנים של אשכול Kubernetes | |
k8s_node |
יומנים של צמתים ב-Kubernetes | |
k8s_pod |
יומנים של Pod ב-Kubernetes | |
k8s_container |
יומני קונטיינרים של Kubernetes | |
k8s_control_plane_component |
יומנים של רכיבים במישור הבקרה של Kubernetes | |
כש-GKE כותב את היומנים של האשכול, כל רשומה ביומן כוללת את סוג המשאב. אם יודעים איפה היומנים מופיעים, קל יותר למצוא אותם כשצריך.
יומני מערכת
יומני המערכת כוללים יומנים מהמקורות הבאים:
כל ה-Pods שפועלים במרחבי השמות
kube-system,istio-system,knative-serving,gke-systemו-config-management-system.שירותים מרכזיים שלא מופעלים בתוך קונטיינר, כולל זמן הריצה של
docker/containerd, kubelet, kubelet-monitor, node-problem-detectorו-kube-container-runtime-monitor.הפלט של היציאות הטוריות של הצומת, אם המטא-נתונים של המכונה הווירטואלית
serial-port-logging-enableמוגדרים כ-true. החל מ-GKE 1.16-13-gke.400, סוכן Logging אוסף את הפלט של היציאה הטורית של הצמתים. כדי להשבית את רישום הפלט של היציאה הטורית, מגדירים את--metadata serial-port-logging-enable=falseבמהלך יצירת האשכול. הפלט של היציאה הטורית שימושי לפתרון בעיות שקשורות לקריסות, לאתחול שנכשל, לבעיות בהפעלה או לבעיות בסגירה של צמתים ב-GKE. השבתה של היומנים האלה עלולה להגביל את פתרון הבעיות.כל האירועים של Kubernetes מרכיבים באשכול. מידע נוסף זמין במאמר בנושא יומני אירועים של Kubernetes.
יומני ביקורת המערכת יופיעו ב-Cloud Logging עם השמות הבאים:
- projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fdata_access – יומני Data Access
- projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Factivity – יומני פעילות אדמין
- projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event – System Event logs
- projects/PROJECT_ID/logs/events – יומני אירועים של Kubernetes
למידע מפורט על רשומות ביומן שרלוונטיות לסוגי המשאבים Kubernetes Cluster ו-GKE Cluster Operations, אפשר לעיין במסמכי התיעוד בנושא יומני ביקורת.
יש יומני מערכת נוספים, כמו אלה של kube-system, שמתועדים. תיאור שלהם מופיע במאמר שליטה באיסוף של יומני האפליקציות.
יומני אירועים של Kubernetes
ב-Kubernetes, אירועים הם אובייקטים שמספקים מידע על משאבים, כמו שינויים במצב, שגיאות בצומת, שגיאות ב-Pod או כשלים בתזמון. רכיבי Kubernetes שונים, כמו kubelet או בקרי עומס עבודה, יוצרים אירועים כדי לדווח על שינויים באובייקטים. לדוגמה, יכול להיות שבקר StatefulSet ייצור אירוע כשמספר הרפליקות ב-StatefulSet משתנה. מידע נוסף על אירועים זמין בדף העזר בנושא Event API ובערך המונח Event במילון המונחים של Kubernetes.
אפשר למצוא את היומנים של אירועי Kubernetes ב-Logging עם שם היומן projects/PROJECT_ID/logs/events. רשומות ביומן של אירועים משתמשות באחד מסוגי המשאבים הבאים, בהתאם לרכיב שיצר את האירוע ב-Kubernetes API:
-
k8s_pod: אירועים ב-Pod -
k8s_node: אירועים בצומת -
k8s_cluster: כל האירועים שאינם אירועים של Pod או Node
יומני אפליקציה
קונטיינרים של Kubernetes אוספים יומנים של עומסי העבודה שנכתבים ב-STDOUT וב-STDERR. אפשר למצוא את יומני האפליקציות של עומס העבודה באמצעות סוג המשאב k8s_container. היומנים יופיעו ב-Logging עם השמות הבאים:
projects/PROJECT_ID/logs/stderr – יומנים שנכתבו לשגיאה רגילה
projects/PROJECT_ID/logs/stdout – יומנים שנכתבו לפלט רגיל
יומנים של רכיבים במישור הבקרה
אם הפעלתם את היומנים של מישור הבקרה באשכול GKE, היומנים שנוצרים על ידי רכיבים מסוימים של מישור הבקרה ב-Kubernetes (לדוגמה, שרת API, Scheduler ומנהל הבקרה) מיוצאים אל Cloud Logging.
היומנים האלה משתמשים בסוג המשאב k8s_control_plane_component ומופיעים ב-Cloud Logging עם השמות הבאים:
projects/PROJECT_ID/logs/container.googleapis.com%2Fapiserver
projects/PROJECT_ID/logs/container.googleapis.com%2Fscheduler
projects/PROJECT_ID/logs/container.googleapis.com%2Fcontroller-manager
יומני גישה למישור הבקרה
אם אתם משתמשים בשליטה במישור הבקרה של GKE, אתם יכולים להפעיל יומנים אופציונליים לכל חיבורי הרשת הנכנסים למופעים של מישור הבקרה, וגם כשאירועי SSH מתרחשים במופעים של מישור הבקרה. לאחר מכן תוכלו להשוות בין יומני הגישה של רמת הבקרה לבין היומנים של Access Transparency ויומנים משרת ה-API של Kubernetes, כדי לוודא שהחיבורים למופעים של רמת הבקרה נוצרו כתוצאה מגישת אדמין מורשית של צוות Google. פרטים נוספים זמינים במאמר בנושא אימות החיבורים של Google למישור הבקרה של האשכול.
היומנים האלה משתמשים בסוג המשאב gke_cluster ומופיעים ב-Cloud Logging עם השמות הבאים:
projects/PROJECT_ID/logs/container.googleapis.com%2Fkcp_connectionprojects/PROJECT_ID/logs/container.googleapis.com%2Fkcp_ssh
יומנים של הנפקת זהויות לאשכול
אם אתם משתמשים בסמכות של מישור הבקרה של GKE כדי להפעיל רשויות אישורים (CAs) ומפתחות חתימה משלכם עבור האשכול, מערכת GKE יוצרת יומני ביקורת לשימוש ברשויות האישורים ובמפתחות האלה כדי להנפיק אישורי X.509 או אסימוני JWT (JSON Web Tokens) באשכול. לאחר מכן תוכלו לבצע קורלציה בין יומני הנפקת הזהויות האלה לבין יומנים משרת ה-API של Kubernetes, מ-Certificate Authority Service ומ-Cloud Key Management Service, כדי לעקוב אחר השימוש באישורים וב-JWT האלה באשכול. פרטים נוספים זמינים במאמר בנושא אימות הנפקת זהויות והשימוש בהן.
היומנים האלה הם יומני ביקורת מסוג System Event, הם משתמשים בסוג המשאב gke_cluster והם מופיעים ב-Cloud Logging עם השם הבא:
projects/PROJECT_ID/logs/cloudaudit.googleapis.com%2Fsystem_event
איתור היומנים בממשק המשתמש של Logging
אפשר לראות את היומנים באמצעות Logs Explorer בממשק המשתמש של Logging.
Logs Explorer
באמצעות הכלי ליצירת שאילתות, אפשר ליצור שאילתה על ידי בחירת שדות מתפריט נפתח או על ידי הוספה ידנית של פרמטרים של שאילתה. לדוגמה, אם בודקים יומנים של אשכולות GKE, אפשר להתחיל בבחירה או בחיפוש של סוג המשאב Kubernetes Cluster, ואז לבחור את המיקום ואת שם האשכול. אחר כך אפשר לצמצם את החיפוש על ידי בחירה ביומני הפעילות בתפריט שם היומן.
ב-Logs Explorer יש דרך נוספת ליצור שאילתות חיפוש באמצעות Logs field explorer. מוצגת בו ספירה של רשומות ביומן, ממוינות לפי ספירה בסדר יורד, עבור שדה היומן הנתון. השימוש בכלי לבדיקת שדות ביומנים שימושי במיוחד ליומני GKE, כי הוא מאפשר לבחור את ערכי Kubernetes של המשאבים כדי ליצור שאילתה. לדוגמה, באמצעות הכלי לחקר שדות ביומנים, אפשר לבחור יומנים של אשכול ספציפי, מרחב שמות, שם פוד ואז שם קונטיינר.
פרטים נוספים על השימוש ב-Logs Explorer זמינים במסמכי התיעוד בנושא Logging.
שאילתות לדוגמה
אם אתם מחפשים יומנים ספציפיים, תוכלו להשתמש בשאילתות לדוגמה הבאות כדי למצוא את יומני GKE:
שאילתות לדוגמה של יומנים שקשורים ל-Kubernetes
דוגמאות לשאילתות ביומני מישור הבקרה של Kubernetes Engine
פתרון בעיות נפוצות שקשורות ליומנים
עצות לפתרון בעיות מופיעות במאמר בנושא פתרון בעיות של יומנים חסרים.