במאמר הזה מוסבר איך להשתמש ביומני הביקורת של Cloud ב-Google Distributed Cloud (תוכנה בלבד). Google Distributed Cloud משתמש ביומני ביקורת של Kubernetes, שכוללים רשומה כרונולוגית של קריאות שבוצעו לשרת Kubernetes API של אשכול. יומני ביקורת שימושיים לחקירת בקשות API חשודות ולאיסוף נתונים סטטיסטיים. מידע על יומני הביקורת של GKE On-Prem API זמין במאמר יומני ביקורת של Cloud API.
מידע על יומני ביקורת של Cloud
יומני הביקורת נכתבים ביומני הביקורת של Cloud בפרויקט Google Cloud . יש כמה יתרונות לכתיבה ביומני הביקורת של Cloud לעומת כתיבה בדיסק או שמירת יומנים במערכת רישום מקומית:
- אפשר לרכז את יומני הביקורת של כל האשכולות.
- אי אפשר לשנות רשומות ביומני הביקורת של Cloud.
- רשומות ביומני הביקורת של Cloud נשמרות למשך 400 ימים.
- התכונה Cloud Audit Logs כלולה במחיר של Google Distributed Cloud.
- אתם יכולים להגדיר את Google Distributed Cloud כך שיומנים ייכתבו לדיסק או ליומני הביקורת של Cloud.
רישום ביומן ביקורת שמבוסס על דיסק
אם יומני הביקורת של Cloud מושבתים באופן מפורש, יומני הביקורת נכתבים לדיסק קבוע, כך שהפעלות מחדש ושדרוגים של האשכול לא גורמים להיעלמות של היומנים. תוכנת Google Distributed Cloud שומרת רק עד 1 GiB של רשומות ביומן הביקורת.
כדי לגשת ליומני הביקורת שמבוססים על דיסק, צריך להתחבר לצמתים של מישור הבקרה. היומנים נמצאים בספרייה /var/log/apiserver/.
יומני ביקורת של Cloud
רשומות ביומן הביקורת של פעילות האדמין מכל שרתי Kubernetes API נשלחות אלGoogle Cloud, באמצעות הפרויקט והמיקום שציינתם כשאתם יוצרים אשכול משתמשים. כדי לשמור זמנית רשומות ביומן ולכתוב אותן ביומני הביקורת של Cloud, Google Distributed Cloud פורס audit-proxy daemon set שפועל בצמתי מישור הבקרה.
מגבלות
אלו המגבלות שחלות על יומני הביקורת של Cloud:
- אין תמיכה ברישום ביומן של גישה לנתונים (בקשות get, list, watch).
- אין תמיכה בשינוי מדיניות הביקורת של Kubernetes.
- יומני הביקורת של Cloud לא עמידים להפסקות חשמל ממושכות ברשת. אם אי אפשר לייצא את רשומות היומן אל Google Cloud, הן נשמרות במטמון במאגר דיסק של 10GB. אם המאגר הזה מתמלא, הרשומות הכי ישנות נמחקות.
- פרויקט אחד יכול לתמוך בשימוש ביומני ביקורת של Cloud עם עד 1,000 חשבונות שירות בערך. כמה אשכולות יכולים להשתמש באותו חשבון שירות.
יצירת חשבון שירות ליומני ביקורת בענן
כדי להשתמש ב-Cloud Logging וב-Cloud Monitoring עם Google Distributed Cloud software-only, צריך קודם להגדיר את הדברים הבאים:
יוצרים סביבת עבודה של Cloud Monitoring בפרויקט, אם עדיין אין לכם אחת. Google Cloud
במסוף Google Cloud , לוחצים על הלחצן הבא ופועלים לפי תהליך העבודה.
לוחצים על הלחצנים הבאים כדי להפעיל את ממשקי ה-API הנדרשים:
מקצים לחשבון השירות שבו משתמשים סוכני Stackdriver את תפקידי ה-IAM הבאים:
logging.logWritermonitoring.metricWriterstackdriver.resourceMetadata.writermonitoring.dashboardEditor
גישה ליומני ביקורת של Cloud
המסוף
במסוף Google Cloud , נכנסים לדף Logs Explorer בתפריט Logging.
אם נפתח הדף Legacy Logs Viewer, בוחרים באפשרות Upgrade to the new Logs Explorer בתפריט הנפתח Upgrade.
לוחצים על השדה Query כדי להזין שאילתה.
מזינים את השאילתה הבאה בשדה Query:
resource.type="k8s_cluster" logName="projects/PROJECT_ID/logs/externalaudit.googleapis.com%2Factivity" protoPayload.serviceName="anthosgke.googleapis.com"מחליפים את
PROJECT_IDבמזהה הפרויקט.לוחצים על הפעלת שאילתה כדי להציג את כל יומני הביקורת מאשכולות שהוגדרו להתחבר לפרויקט הזה.
gcloud
- מציגים את שני הערכים הראשונים ביומן פעילות האדמין של הפרויקט שרלוונטיים לסוג המשאב
k8s_cluster:
gcloud logging read \
'logName="projects/PROJECT_ID/logs/externalaudit.googleapis.com%2Factivity" \
AND resource.type="k8s_cluster" \
AND protoPayload.serviceName="anthosgke.googleapis.com" ' \
--limit 2 \
--freshness 300d
- מחליפים את
PROJECT_IDבמזהה הפרויקט.
בפלט מוצגות שתי רשומות ביומן. שימו לב שבכל רשומה ביומן, הערך בשדה logName הוא projects/PROJECT_ID/logs/externalaudit.googleapis.com%2Factivity והערך של protoPayload.serviceName שווה ל-anthosgke.googleapis.com.
מדיניות ביקורת
מדיניות הביקורת של Kubernetes מגדירה כללים לגבי האירועים שמתועדים כרשומות ביומן, ומציינת אילו נתונים צריכות לכלול הרשומות ביומן. ההתנהגות של יומני הביקורת של Cloud נקבעת על ידי מדיניות סטטית של יומני ביקורת ב-Kubernetes. אין תמיכה בשינוי המדיניות הזו כדי לשנות את ההתנהגות של יומני הביקורת ב-Cloud.