במאמר הזה מוסבר איך לפתור בעיות ב-VM Manager.
מידע נוסף על VM Manager זמין במאמר VM Manager.
לפני שמתחילים
-
אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות.
אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Cloud de Confiance by S3NS . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים הבאות:
צריך לבחור את הכרטיסייה הרלוונטית לאופן שבו תכננתם להשתמש בדוגמאות בדף הזה:
המסוף
כשמשתמשים במסוף Cloud de Confiance כדי לגשת לשירותים ולממשקי ה-API, לא צריך להגדיר אימות. Cloud de Confiance by S3NS
gcloud
-
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם. אחרי שנכנסתם לחשבון, אתחלו את ה-CLI של Google Cloud באמצעות הפקודה הבאה:
gcloud init
-
- הגדרת אזור ותחום כברירת מחדל
REST
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של API בארכיטקטורת REST שבדף הזה, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud ואז היכנסו ל-CLI של gcloud באמצעות הזהות המאוחדת שלכם.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Cloud de Confiance .
סקירה כללית
כדי לפתור בעיות, קודם צריך לוודא ש-VM Manager מוגדר בצורה נכונה. אם ההגדרה נכונה ועדיין יש בעיות, אפשר לבדוק את היומנים. כשבודקים את היומנים, אפשר לזהות בעיות במכונה הווירטואלית או בתהליך העבודה של VM Manager, כמו שגיאות בפקודות או בסקריפטים, שאפשר לבודד ולפתור.
אפשר לאסוף את המידע הבא מיומנים:
- כל הודעת שגיאה או אזהרה שנרשמה ב-VM. האפשרות הזו מתאימה במיוחד לזיהוי שגיאות ברמת ה-VM או שגיאות משירותים אחרים שפועלים ב-VM. כדי לבדוק את היומנים האלה, אפשר לעיין במאמר בדיקת Cloud Logging.
- מידע מפורט על תוצאות ניפוי הבאגים שנרשם על ידי סוכן ה-OS Config. האפשרות הזו שימושית לזיהוי בעיות בכל אחת מהפעולות שמבוצעות על ידי VM Manager. כדי לבדוק יומני ניפוי באגים של הסוכן OS Config, אפשר לעיין במאמר בנושא בדיקת יומני ניפוי באגים.
אחרי שמזהים את הבעיות או השגיאות, אפשר לעיין גם בקטע שגיאות נפוצות כדי לראות פתרונות אפשריים.
בדיקת Cloud Logging
אפשר להשתמש בקישורים המהירים של המסוף לכל תכונה כדי להציג את היומנים. Cloud de Confiance
תיקון למערכת ההפעלה
- במסוף Cloud de Confiance , עוברים לכרטיסייה Jobs run בדף Patch.
- לוחצים על השם של עבודת תיקון שרוצים לנפות בה באגים.
- עוברים לקטע Updated VM instances (מכונות וירטואליות מעודכנות).
- בקטע Logs (יומנים) של מכונה וירטואלית ספציפית, לוחצים על View (הצגה).
מדיניות מערכת ההפעלה
ההליך הזה נתמך במדיניות של מערכת ההפעלה. כדי להשתמש במדיניות לאורחים (בגרסת בטא), צריך להשתמש באפשרות של יומני ניפוי באגים, שמוסברת בקטע הבא.
- במסוף Cloud de Confiance , עוברים לכרטיסייה VM instances בדף OS policies.
- לוחצים על שם המכונה הווירטואלית שרוצים לנפות בה באגים.
- עוברים לקטע מדיניות.
- בקטע יומנים, לוחצים על הצגה.
כלי תזמור של מדיניות מערכת ההפעלה
- במסוף Cloud de Confiance , עוברים לכרטיסייה OS policy orchestrators בדף OS policies.
- לוחצים על השם של הכלי לניהול מדיניות מערכת ההפעלה שרוצים לנפות בו באגים.
- עוברים לקטע יומנים ומאמתים את רשומת היומן.
בדיקת יומני ניפוי באגים
כדי לזהות בעיות בתכונות של VM Manager, צריך להפעיל ניפוי באגים לסוכן OS Config ולצפות ביומן ניפוי הבאגים.
הפעלת רישום נתונים של ניפוי באגים לסוכן OS Config
אפשר להפעיל רישום של ניפוי באגים על ידי הגדרת המטא-נתונים osconfig-log-level=debug במכונה הווירטואלית או בפרויקט.
כדי להפעיל רישום באגים ב-VM, צריך לבצע את השלבים הבאים:
המסוף
נכנסים לדף VM instances במסוף Cloud de Confiance .
לוחצים על שם המכונה הווירטואלית שרוצים להגדיר עבורה את ערך המטא-נתונים.
בדף פרטי המופע, לוחצים על עריכה כדי לערוך את ההגדרות.
בקטע מטא-נתונים בהתאמה אישית, מוסיפים את רשומות המטא-נתונים הבאות:
מפתח:
osconfig-log-level
ערך:debugלוחצים על שמירה כדי להחיל את השינויים על המכונה הווירטואלית.
gcloud
משתמשים בפקודה instances add-metadata עם הדגל --metadata=osconfig-log-level=debug.
gcloud compute instances add-metadata VM_NAME \
--metadata=osconfig-log-level=debug
מחליפים את VM_NAME בשם של המכונה הווירטואלית.
REST
הוראות להגדרת מטא-נתונים של מופע מופיעות במאמר הגדרת מטא-נתונים של מופע.
צריך להוסיף את צמד המפתח/ערך הבא כחלק ממאפיין המטא-נתונים:
מפתח: osconfig-log-level
ערך: debug
צפייה ביומני ניפוי באגים
כשרישום ביומן לצורך ניפוי באגים מופעל, סוכן OS Config כותב רשומות ביומן ל-Cloud Logging ולמסוף של היציאה הטורית.
אחרי שמפעילים את ניפוי הבאגים ביומנים במכונה הווירטואלית, עוברות כעשר דקות עד שסוכן OS Config מתחיל לכתוב הודעות ניפוי באגים ב-Cloud Logging. כדי לקצר את זמן ההמתנה, אפשר להפעיל מחדש את הסוכן או לאתחל את מכונת ה-VM. מידע נוסף על Cloud Logging זמין במאמר צפייה ביומנים של Cloud Logging.
כדי לראות יומני ניפוי באגים, אפשר להשתמש באפשרויות הבאות:
- Cloud Logging: שימוש במסוף Cloud de Confiance או ב-Google Cloud CLI
קונסולה של יציאה טורית
המסוף
נכנסים לדף Logging > Logs Explorer (Logs Explorer) במסוףCloud de Confiance :
אם צריך, בוחרים פרויקט קיים Cloud de Confiance בחלק העליון של הדף או יוצרים פרויקט חדש.
בתפריט הנפתח Resource, בוחרים באפשרות VM Instance. תוצג רשימה של מכונות וירטואליות זמינות (
instance_id).לוחצים על המכונה הווירטואלית שרוצים להציג.
לוחצים על הוספה.
ברשימה הנפתחת שם היומן, בוחרים באפשרות OSConfigAgent.
לוחצים על הוספה.
השאילתה שלכם צריכה להיות דומה לזו:
resource.type="gce_instance" resource.labels.instance_id="INSTANCE_ID" logName="projects/PROJECT_ID/logs/OSConfigAgent"
לוחצים על Run query.
gcloud
מריצים את הפקודה gcloud logging read.
gcloud logging read "resource.type=gce_instance AND logName=projects/PROJECT_ID/logs/OSConfigAgent"
מחליפים את PROJECT_ID במזהה הפרויקט.
יציאה טורית
כדי לראות מידע מיומן ניפוי הבאגים במסוף של היציאה הטורית, אפשר לעיין במאמר בנושא הצגת פלט של יציאה טורית.
שגיאות נפוצות
בעיות באימות
כדי ש-VM Manager יפעל, אתם צריכים:
- חשבון שירות מצורף. VM Manager משתמש בחשבון השירות הזה כדי לחתום על בקשות לשירות ה-API.
- מוודאים שלחשבון השירות המצורף יש את התפקיד
roles/logging.logWriterכדי לכתוב יומנים ל-Logging API. - Google Cloud OS Config Service Agent. VM Manager יוצר את סוכן השירות הזה כשמתחילים עבודות של תיקון באגים, ומעניק לו את התפקיד Cloud OS Config Service Agent. כדי ליצור מדיניות למערכת ההפעלה, לא צריך להגדיר את סוכן השירות הזה.
אם אתם משתמשים ב-VM Manager ואין לכם חשבון שירות מקושר או סוכן של שירות OS Config ב-Google Cloud, יכול להיות שתראו את השגיאות הבאות כשאתם עובדים עם משימות תיקון:
Service account permissions are missing. Verify that the service account has the correct permissions and try again.
OSConfigAgent Error main.go:88: error getting token from metadata: metadata: GCE metadata "instance/service-accounts/default/identity?audience=osconfig.googleapis.com&format=full" not defined
message: "Error running OPERATION_NAME: error calling OPERATION_NAME: code: "PermissionDenied", message: "The caller does not have permission", details: []"
בעיות באימות יכולות גם למנוע ממופעי מכונות וירטואליות להופיע במרכז הבקרה של תיקוני האבטחה.
כדי לפתור את הבעיות האלה, אפשר לנסות את הפתרונות הבאים:
- מוודאים שלכל המכונות הווירטואליות יש חשבון שירות מצורף.
מוודאים שהתפקיד של סוכן השירות של Cloud OS Config (
roles/osconfig.serviceAgent) מוגדר לסוכן השירות של Cloud OS Config ב-Google Cloud.gcloud projects add-iam-policy-binding PROJECT_ID \ --member='serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig.s3ns-system.iam.gserviceaccount.com' \ --role='roles/osconfig.serviceAgent'
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט -
PROJECT_NUMBER: מספר הפרויקט
-
שגיאה בהחרגת חבילות לעדכוני תיקון
אם מציינים תווים כלליים או תווים מיוחדים בשם של חבילות כשמוציאים חבילות מעדכון, יכול להיות שהכלי לניהול עדכוני מערכת ההפעלה יתעלם מהרשימה ויעדכן את כל החבילות.
כדי לפתור את הבעיה, צריך לעדכן את הסוכן של OS Config לגרסה 20220829.00 ולהשתמש בקו נטוי לפנים (/) כדי לתחום את שם החבילה.
בדוגמה הבאה, ניהול תיקוני מערכת ההפעלה לא כולל חבילות yum עם הקידומת google- בשם החבילה.
gcloud compute os-config patch-jobs execute --instance-filter-all
--yum-excludes=/google-.*/