שימוש בתיקון אוטומטי באפליקציות עם זמינות גבוהה

במדריך האינטראקטיבי הזה מוסבר איך להשתמש בתיקון אוטומטי כדי ליצור אפליקציות עם זמינות גבוהה ב-Compute Engine.

אפליקציות עם זמינות גבוהה מיועדות לשרת לקוחות עם זמן אחזור מינימלי וזמן השבתה מינימלי. הזמינות נפגעת כשאפליקציה קורסת או נתקעת. לקוחות של אפליקציה שנפרצה עלולים לחוות זמן אחזור ארוך או השבתה.

תיקון אוטומטי מאפשר להפעיל מחדש באופן אוטומטי אפליקציות שנפרצו. הוא מזהה במהירות מכונות וירטואליות (VM) שנכשלו ויוצר אותן מחדש באופן אוטומטי, כך שהלקוחות יכולים לקבל שוב שירות. עם תיקון תוכנה אוטומטי (autohealing), לא צריך יותר להחזיר אפליקציה לשירות באופן ידני אחרי כשל.

מטרות

  • הגדרת בדיקת תקינות ומדיניות לתיקון אוטומטי.
  • הגדרת שירות אינטרנט להדגמה בקבוצת מופעי מכונה מנוהלים (MIG).
  • מדמים כשלים בבדיקת תקינות וצופים בתהליך השחזור של התיקון האוטומטי.

עלויות

במדריך הזה נעשה שימוש ברכיבים של Cloud de Confiance by S3NS שכרוך בתשלום, כולל:

  • Compute Engine

לפני שמתחילים

    In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

    Verify that billing is enabled for your Cloud de Confiance project.

    Enable the Compute Engine API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

אם אתם מעדיפים לעבוד משורת הפקודה, אתם יכולים להתקין את Google Cloud CLI.

ארכיטקטורת האפליקציה

האפליקציה כוללת את הרכיבים הבאים של Compute Engine:

  • בדיקת תקינות: מדיניות של בדיקת תקינות HTTP שמשמשת את הכלי לתיקון אוטומטי כדי לזהות מכונה וירטואלית שנכשלה.
  • כללי חומת אש: Cloud de Confiance כללי חומת אש מאפשרים תעבורה או מונעים אותה מהמכונות הווירטואליות.
  • קבוצת מופעי מכונה מנוהלים: קבוצה של מכונות וירטואליות שמריצות את אותו שירות אינטרנט להדגמה.
  • תבנית של הגדרות מכונה: תבנית שמשמשת ליצירת כל מכונה וירטואלית בקבוצת המכונות.

ארכיטקטורת המערכת לבדיקת תקינות ולקבוצת מכונות.

איך בדיקת התקינות בודקת את שירות האינטרנט של ההדגמה

בבדיקת תקינות נשלחות בקשות בדיקה למכונה וירטואלית באמצעות פרוטוקול שצוין, כמו HTTP(S),‏ SSL או TCP. למידע נוסף, אפשר לעיין במאמרים בנושא איך בדיקות התקינות פועלות וקטגוריות, פרוטוקולים ויציאות של בדיקות תקינות.

במדריך הזה, בדיקת התקינות היא בדיקת תקינות של HTTP שבודקת את נתיב ה-HTTP‏ /health ביציאה 80. בבדיקת תקינות של HTTP, בקשת הבדיקה עוברת רק אם הנתיב מחזיר תגובה מסוג HTTP 200 (OK). במדריך הזה, שרת האינטרנט של ההדגמה מגדיר את הנתיב /health כדי להחזיר תגובה מסוג HTTP 200 (OK) כשהוא תקין או תגובה מסוג HTTP 500 (Internal Server Error) כשהוא לא תקין. מידע נוסף זמין במאמר בנושא קריטריונים להצלחה של HTTP,‏ HTTPS ו-HTTP/2.

יצירת בדיקת התקינות

כדי להגדיר תיקון תוכנה אוטומטי (autohealing), יוצרים בדיקת תקינות מותאמת אישית ומגדירים את חומת האש של הרשת כך שתאפשר בקשות לבדיקת תקינות (probe).

במדריך הזה תיצרו בדיקת תקינות אזורית. כדי להשתמש בתיקון תוכנה אוטומטי (autohealing), אפשר להשתמש בבדיקת תקינות אזורית או גלובלית. בדיקות תקינות אזוריות מצמצמות את התלות בין אזורים שונים ועוזרות להשיג את הדרישות של אחסון נתונים מקומי. בדיקות תקינות גלובליות נוחות אם רוצים להשתמש באותה בדיקת תקינות לקבוצות של מכונות מנוהלות (MIG) בכמה אזורים.

המסוף

  1. יצירת בדיקת תקינות.

    1. נכנסים לדף Create health check במסוף Cloud de Confiance .

      מעבר אל Create health check

    2. בשדה שם מזינים autohealer-check.

    3. מגדירים את היקף לערך Regional.

    4. בתפריט הנפתח אזור, בוחרים באפשרות europe-west1.

    5. בשדה פרוטוקול, בוחרים באפשרות HTTP.

    6. מגדירים את Request path ל-/health. ההגדרה הזו מציינת את נתיב ה-HTTP שבו נעשה שימוש בבדיקת תקינות. במדריך הזה, שרת האינטרנט של ההדגמה מגדיר את הנתיב /health כדי להחזיר תגובה של HTTP 200 (OK) כשהשרת תקין או תגובה של HTTP 500 (Internal Server Error) כשהשרת לא תקין.

    7. מגדירים את קריטריוני התקינות:

      1. מגדירים את Check interval ל-10. ההגדרה הזו קובעת את פרק הזמן שחלף בין תחילת בקשה לבדיקת תקינות (probe) אחת לתחילת בקשה לבדיקת תקינות (probe) הבאה.
      2. מגדירים את Timeout לערך 5. הגדרה זו מגדירה את משך הזמן שבוCloud de Confiance ממתין לתגובה לבקשה לבדיקת תקינות (probe). הערך הזה צריך להיות קטן או שווה למרווח הבדיקה.
      3. מגדירים את Healthy threshold ל-2. המאפיין הזה מגדיר את מספר הבדיקות הרצופות שצריכות להצליח כדי שהמכונה הווירטואלית תיחשב תקינה.
      4. מגדירים את Unhealthy threshold ל-3. הערך הזה מגדיר את מספר הבדיקות הרצופות שצריכות להיכשל כדי שהמכונה הווירטואלית תיחשב כלא תקינה.
    8. משאירים את ערכי ברירת המחדל בשאר האפשרויות.

    9. בתחתית המסך, לוחצים על יצירה.

  2. יוצרים כלל חומת אש שמאפשר לבקשות לבדיקת תקינות (probe) לשלוח בקשות HTTP.

    1. נכנסים לדף Create firewall rule במסוף Cloud de Confiance .

      כניסה לדף יצירת כלל חומת אש

    2. בשדה Name (שם), מזינים default-allow-http-health-check.

    3. בשדה רשת, בוחרים באפשרות default.

    4. בקטע יעדים, בוחרים באפשרות All instances in the network.

    5. בשדה מסנן מקור, בוחרים באפשרות IPv4 ranges.

    6. בשדה Source IPv4 ranges (טווחים של כתובות IPv4 של המקור), מזינים 130.211.0.0/22, 35.191.0.0/16.

    7. בקטע Protocols and ports (פרוטוקולים ויציאות), בוחרים באפשרות TCP ומזינים 80.

    8. משאירים את ערכי ברירת המחדל בשאר האפשרויות.

    9. לוחצים על יצירה.

gcloud

  1. יוצרים בדיקת תקינות באמצעות הפקודה health-checks create http.

    gcloud compute health-checks create http autohealer-check \
        --region europe-west1 \
        --check-interval 10 \
        --timeout 5 \
        --healthy-threshold 2 \
        --unhealthy-threshold 3 \
        --request-path "/health"
    
    • check-interval מגדיר את משך הזמן מתחילת בדיקה אחת ועד לתחילת הבדיקה הבאה.
    • timeout מגדיר את משך הזמן ש Cloud de Confiance ממתין לתגובה לבקשה לבדיקת תקינות (probe). הערך הזה צריך להיות קטן ממרווח הבדיקה או שווה לו.
    • healthy-threshold מגדיר את מספר הבדיקות העוקבות שצריכות להצליח כדי שהמכונה הווירטואלית תיחשב תקינה.
    • unhealthy-threshold מגדיר את מספר הבדיקות הרצופות שצריכות להיכשל כדי שהמכונה הווירטואלית תיחשב כלא תקינה.
    • request-path מציין באיזו נתיב HTTP משתמשת בדיקת תקינות. במדריך הזה, שרת האינטרנט של ההדגמה מגדיר את הנתיב /health כדי להחזיר תגובה מסוג HTTP 200 (OK) כשהוא תקין או תגובה מסוג HTTP 500 (Internal Server Error) כשהוא לא תקין.
  2. יוצרים כלל חומת אש שמאפשר לבקשות לבדיקת תקינות (probe) לשלוח בקשות HTTP.

    gcloud compute firewall-rules create default-allow-http-health-check \
        --network default \
        --allow tcp:80 \
        --source-ranges 130.211.0.0/22,35.191.0.0/16
    

מה הופך בדיקת תקינות של תיקון אוטומטי לטובה

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

  • unhealthy-threshold. הערך צריך להיות גדול מ-1. מומלץ להגדיר את הערך הזה ל-3 או יותר. ההגדרה הזו מגנה מפני כשלים נדירים כמו אובדן מנות ברשת.
  • healthy-threshold. ערך של 2 מספיק לרוב האפליקציות.
  • timeout. מגדירים את ערך הזמן הזה לסכום גבוה (פי חמישה או יותר מזמן התגובה הצפוי). הערך של הזמן הקצוב לתפוגה חייב להיות קטן מהערך של check-interval או שווה לו. ההגדרה הזו מגנה מפני עיכובים לא צפויים, כמו מקרים שבהם יש עומס על המופעים או חיבור איטי לרשת.
  • check-interval. הערך הזה צריך להיות בין שנייה אחת לבין כפליים של הזמן הקצוב לתפוגה (לא ארוך מדי ולא קצר מדי). אם הערך ארוך מדי, המערכת לא מזהה מופע שנכשל מספיק מהר. אם הערך קצר מדי, העומס על המופעים ועל הרשת יכול להיות גבוה, כי בכל שנייה נשלחות הרבה בדיקות תקינות.

הגדרת שירות האינטרנט

במדריך הזה משתמשים באפליקציית אינטרנט שמאוחסנת ב-GitHub. אם אתם רוצים לקבל מידע נוסף על האופן שבו האפליקציה הוטמעה, תוכלו לעיין במאגר GitHub‏ GoogleCloudPlatform/python-docs-samples.

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

המסוף

  1. יוצרים תבנית של הגדרות מכונה. כוללים סקריפט לטעינה בזמן ההפעלה שמפעיל את שרת האינטרנט של ההדגמה.

    1. נכנסים לדף יצירת תבנית של הגדרות מכונה במסוף Cloud de Confiance .

      כניסה לדף Create instance template

    2. מגדירים את Name לערך webserver-template.

    3. בקטע מיקום, בתפריט הנפתח אזור, בוחרים באפשרות europe-west1.

    4. בקטע Machine configuration, בתפריט הנפתח סוג מכונה, בוחרים באפשרות e2-medium.

    5. בקטע Firewall, מסמנים את תיבת הסימון Allow HTTP traffic.

    6. מרחיבים את הקטע אפשרויות מתקדמות כדי להציג את ההגדרות המתקדמות. יופיעו כמה קטעי משנה.

    7. בקטע ניהול, מוצאים את אוטומציה ומזינים את סקריפט ההפעלה הבא:

      apt-get update
      apt-get -y install git python3-pip python3-venv
      git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
      python3 -m venv venv
      ./venv/bin/pip3 install -Ur ./python-docs-samples/compute/managed-instances/demo/requirements.txt
      ./venv/bin/pip3 install gunicorn
      ./venv/bin/gunicorn --bind 0.0.0.0:80 app:app --daemon --chdir ./python-docs-samples/compute/managed-instances/demo
      

    8. משאירים את ערכי ברירת המחדל בשאר האפשרויות.

    9. לוחצים על יצירה.

  2. פורסים את שרת האינטרנט כקבוצה של מופעי מכונה מנוהלים.

    1. נכנסים לדף Create instance group במסוף Cloud de Confiance .

      כניסה לדף Create instance group

    2. מגדירים את Name לערך webserver-group.

    3. בשדה תבנית של הגדרות מכונה, בוחרים באפשרות webserver-template.

    4. בשדה אזור, בוחרים באפשרות europe-west1.

    5. בשדה Zone, בוחרים באפשרות europe-west1-b.

    6. בקטע Autoscaling, באפשרות Autoscaling mode, בוחרים באפשרות Off: do not autoscale.

    7. גוללים חזרה לשדה Number of instances ומגדירים אותו לערך 3.

    8. בקטע Autohealing:

      1. בתפריט הנפתח Health check, בוחרים באפשרות autohealer-check.
      2. מגדירים את Initial delay (השהיה ראשונית) ל-300.

    9. משאירים את ערכי ברירת המחדל בשאר האפשרויות.

    10. לוחצים על יצירה.

  3. יוצרים כלל חומת אש שמאפשר בקשות HTTP לשרתי האינטרנט.

    1. נכנסים לדף Create firewall rule במסוף Cloud de Confiance .

      כניסה לדף יצירת כלל חומת אש

    2. בשדה Name (שם), מזינים default-allow-http.

    3. בשדה רשת, בוחרים באפשרות default.

    4. בקטע יעדים, בוחרים באפשרות Specified target tags.

    5. בשדה Target Tags (תגי טירגוט), מזינים http-server.

    6. בשדה מסנן מקור, בוחרים באפשרות IPv4 ranges.

    7. בשדה טווחים של כתובות IPv4 של המקור, מזינים 0.0.0.0/0 כדי לאפשר גישה לכל כתובות ה-IP.

    8. בקטע Protocols and ports (פרוטוקולים ויציאות), בוחרים באפשרות TCP ומזינים 80.

    9. משאירים את ערכי ברירת המחדל בשאר האפשרויות.

    10. לוחצים על יצירה.

gcloud

  1. יוצרים תבנית של הגדרות מכונה. כוללים סקריפט לטעינה בזמן ההפעלה שמפעיל את שרת האינטרנט של ההדגמה.

    gcloud compute instance-templates create webserver-template \
        --instance-template-region europe-west1 \
        --machine-type e2-medium \
        --tags http-server \
        --metadata startup-script='
      apt-get update
      apt-get -y install git python3-pip python3-venv
      git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
      python3 -m venv venv
      ./venv/bin/pip3 install -Ur ./python-docs-samples/compute/managed-instances/demo/requirements.txt
      ./venv/bin/pip3 install gunicorn
      ./venv/bin/gunicorn --bind 0.0.0.0:80 app:app --daemon --chdir ./python-docs-samples/compute/managed-instances/demo'
    
  2. יוצרים קבוצה של מופעי מכונה מנוהלים.

    gcloud compute instance-groups managed create webserver-group \
        --zone europe-west1-b \
        --template projects/PROJECT_ID/regions/europe-west1/instanceTemplates/webserver-template \
        --size 3 \
        --health-check projects/PROJECT_ID/regions/europe-west1/healthChecks/autohealer-check \
        --initial-delay 300
    
  3. יוצרים כלל חומת אש שמאפשר בקשות HTTP לשרתי האינטרנט.

    gcloud compute firewall-rules create default-allow-http \
        --network default \
        --allow tcp:80 \
        --target-tags http-server
    

מחכים כמה דקות עד שקבוצת מופעי מכונה מנוהלים תיצור את מכונות ה-VM ותאמת אותן.

סימולציה של כשלים בבדיקת התקינות

כדי לדמות כשלים בבדיקת התקינות, שרת האינטרנט של ההדגמה מספק דרכים לכפות כשל בבדיקת התקינות.

המסוף

  1. עוברים למכונה וירטואלית של שרת אינטרנט.

    1. נכנסים לדף VM instances במסוף Cloud de Confiance .

      כניסה לדף VM instances

    2. בכל מכונה וירטואלית של webserver-group, לוחצים על כתובת ה-IP בעמודה External IP. תיפתח כרטיסייה חדשה בדפדפן האינטרנט. אם חלף הזמן הקצוב לתגובה מהשרת או שדף האינטרנט לא זמין, צריך לחכות דקה עד שהשרת יסיים את ההגדרה ולנסות שוב.

    שרת האינטרנט של ההדגמה מציג דף שדומה לזה:

    דף אינטרנט לדוגמה עם לחצני סטטוס ירוקים ולחצני פעולה כחולים.

  2. בדף האינטרנט של ההדגמה, לוחצים על Make unhealthy (הפיכת האתר ללא תקין).

    כתוצאה מכך, שרת האינטרנט לא עובר את בדיקת התקינות. במילים אחרות, שרת האינטרנט גורם לכך שהנתיב /health יחזיר HTTP 500 (Internal Server Error). כדי לוודא זאת בעצמכם, אתם יכולים ללחוץ במהירות על הלחצן בדיקת תקינות (הלחצן הזה מפסיק לפעול אחרי שהכלי לתיקון אוטומטי מתחיל להפעיל מחדש את המכונה הווירטואלית).

  3. ממתינים שהכלי לתיקון אוטומטי יפעל.

    1. נכנסים לדף VM instances במסוף Cloud de Confiance .

      כניסה לדף VM instances

    2. מחכים שהסטטוס של מכונת ה-VM של שרת האינטרנט ישתנה. סימן ה-V הירוק שלצד שם המכונה הווירטואלית אמור להשתנות לריבוע אפור, כדי לציין שהכלי לתיקון אוטומטי התחיל להפעיל מחדש את המכונה הווירטואלית הלא תקינה.

    3. כדי לראות את הסטטוס העדכני ביותר, לוחצים מדי פעם על רענון בראש הדף.

    4. תהליך התיקון האוטומטי מסתיים כשהריבוע האפור הופך שוב לסימן וי ירוק, שמציין שהמכונה הווירטואלית תקינה שוב.

gcloud

  1. עוקבים אחרי הסטטוס של קבוצת מופעי מכונה מנוהלים. (כשמסיימים, לוחצים על Ctrl+C כדי להפסיק).

    while : ; do
      gcloud compute instance-groups managed list-instances webserver-group \
      --zone europe-west1-b
      sleep 5  # Wait for 5 seconds
    done
    
      NAME: webserver-group-0zx6
      ZONE: europe-west1-b
      STATUS: RUNNING
      HEALTH_STATE: HEALTHY
      ACTION: NONE
      INSTANCE_TEMPLATE: webserver-template
      VERSION_NAME:
      LAST_ERROR:
    
      NAME: webserver-group-4qbx
      ZONE: europe-west1-b
      STATUS: RUNNING
      HEALTH_STATE: HEALTHY
      ACTION: NONE
      INSTANCE_TEMPLATE: webserver-template
      VERSION_NAME:
      LAST_ERROR:
    
      NAME: webserver-group-m5v5
      ZONE: europe-west1-b
      STATUS: RUNNING
      HEALTH_STATE: HEALTHY
      ACTION: NONE
      INSTANCE_TEMPLATE: webserver-template
      VERSION_NAME:
      LAST_ERROR:
    

    כל המכונות הווירטואליות בקבוצה צריכות להציג את הערכים STATUS: RUNNING ו-ACTION: NONE. אם לא, מחכים כמה דקות עד שהמכונות הווירטואליות יסיימו את ההגדרה ומנסים שוב.

  2. פותחים סשן חדש ב-Cloud Shell עם Google Cloud CLI מותקן.

  3. מקבלים את הכתובת של מכונה וירטואלית של שרת אינטרנט.

    gcloud compute instances list --filter webserver-group
    

    בקטע EXTERNAL_IP, מעתיקים את כתובת ה-IP של כל מכונה וירטואלית של שרת אינטרנט ושומרים אותה כמשתנה bash מקומי.

    export IP_ADDRESS=EXTERNAL_IP_ADDRESS
    
  4. מוודאים שההגדרה של שרת האינטרנט הסתיימה. השרת מחזיר תגובה מסוג HTTP 200 OK.

    curl --head $IP_ADDRESS/health
    
    HTTP/1.1 200 OK
    Server: gunicorn
    ...
    

    אם מופיעה השגיאה Connection refused, צריך להמתין דקה עד שהשרת יסיים את ההגדרה ולנסות שוב.

  5. הופכים את שרת האינטרנט ללא תקין.

    curl $IP_ADDRESS/makeUnhealthy > /dev/null
    

    כתוצאה מכך, שרת האינטרנט לא עובר את בדיקת התקינות. במילים אחרות, שרת האינטרנט גורם לכך שהנתיב /health יחזיר HTTP 500 INTERNAL SERVER ERROR. כדי לוודא זאת בעצמכם, תוכלו לשלוח במהירות בקשה אל /health (האפשרות הזו מפסיקה לפעול אחרי שהכלי לתיקון אוטומטי מתחיל להפעיל מחדש את המכונה הווירטואלית).

    curl --head $IP_ADDRESS/health
    
    HTTP/1.1 500 INTERNAL SERVER ERROR
    Server: gunicorn
    ...
    
  6. חוזרים לסשן הראשון של מעטפת הפקודות כדי לעקוב אחרי קבוצת מופעי מכונה מנוהלים ומחכים שהכלי לתיקון אוטומטי יפעל.

    1. אחרי שתהליך התיקון האוטומטי מתחיל, העמודות STATUS ו-ACTION מתעדכנות ומציינות שהכלי לתיקון אוטומטי התחיל להפעיל מחדש את מכונת ה-VM הלא תקינה.

        NAME: webserver-group-0zx6
        ZONE: europe-west1-b
        STATUS: STOPPING
        HEALTH_STATE: UNHEALTHY
        ACTION: RECREATING
        INSTANCE_TEMPLATE: webserver-template
        VERSION_NAME:
        LAST_ERROR:
      
        ...
      
    2. תהליך התיקון האוטומטי מסתיים כשהמכונה הווירטואלית שוב מדווחת על STATUS של RUNNING ועל ACTION של NONE, מה שמצביע על כך שהמכונה הווירטואלית הופעלה מחדש בהצלחה.

        NAME: webserver-group-0zx6
        ZONE: europe-west1-b
        STATUS: RUNNING
        HEALTH_STATE: HEALTHY
        ACTION: NONE
        INSTANCE_TEMPLATE: webserver-template
        VERSION_NAME:
        LAST_ERROR:
      
        ...
      
    3. כשמסיימים את המעקב אחרי קבוצת מופעי מכונה מנוהלים, לוחצים על Ctrl+C כדי לעצור.

אתם יכולים לחזור על התרגיל הזה. הנה כמה רעיונות:

  • מה קורה אם כל המכונות הווירטואליות לא תקינות בו-זמנית? מידע נוסף על התנהגות התיקון האוטומטי במהלך כשלים מקבילים זמין במאמר בנושא התנהגות התיקון האוטומטי.

  • האם אפשר לעדכן את הגדרות בדיקת התקינות כדי לתקן מכונות וירטואליות מהר ככל האפשר? (בפועל, מומלץ להגדיר את הפרמטרים של בדיקת תקינות לערכים שמרניים, כמו שמוסבר במדריך הזה. אחרת, יש סיכון שהמכונות הווירטואליות יימחקו בטעות ויופעלו מחדש כשאין בעיה אמיתית).

  • לקבוצת מופעי מכונה מנוהלים יש initial delay הגדרת תצורה. מהו העיכוב המינימלי שנדרש לשרת האינטרנט של ההדגמה הזו? (בפועל, כדאי להגדיר את העיכוב לארוך יותר (10% עד 20%) מהזמן שלוקח למכונה וירטואלית לאתחל ולהתחיל להציג בקשות לאפליקציה. אחרת, יש סיכון שהמכונה הווירטואלית תיתקע בלולאת אתחול של תיקון אוטומטי).

צפייה בהיסטוריה של הכלי לתיקון אוטומטי (אופציונלי)

כדי לראות את ההיסטוריה של פעולות התיקון האוטומטי, משתמשים בפקודה gcloud הבאה:

gcloud compute operations list --filter='operationType~compute.instances.repair.*'

מידע נוסף זמין במאמר בנושא צפייה בפעולות היסטוריות של תיקון אוטומטי

הסרת המשאבים

אחרי שמסיימים את המדריך, אפשר למחוק את המשאבים שנוצרו, כדי שהם יפסיקו להשתמש במכסה ולצבור חיובים. בסעיפים הבאים מוסבר איך למחוק או להשבית את המשאבים האלו.

אם יצרתם פרויקט נפרד בשביל המדריך הזה, מוחקים את הפרויקט כולו. אחרת, אם בפרויקט יש משאבים שאתם רוצים לשמור, אתם צריכים למחוק רק את המשאבים הספציפיים שנוצרו במדריך הזה.

מחיקת הפרויקט

  1. במסוף Cloud de Confiance , נכנסים לדף Manage resources.

    כניסה לדף Manage resources

  2. ברשימת הפרויקטים, בוחרים את הפרויקט שרוצים למחוק ולוחצים על Delete.
  3. כדי למחוק את הפרויקט, כותבים את מזהה הפרויקט בתיבת הדו-שיח ולוחצים על Shut down.

מחיקת משאבים ספציפיים

אם אי אפשר למחוק את הפרויקט שבו השתמשתם במדריך הזה, צריך למחוק את המשאבים של המדריך בנפרד.

מחיקת קבוצת המכונות

console

  1. נכנסים לדף Instance groups במסוף Cloud de Confiance .

    כניסה לדף Instance groups

  2. מסמנים את התיבה של קבוצת המכונות webserver-group.
  3. כדי למחוק את קבוצות המכונות, לוחצים על Delete.

gcloud

gcloud compute instance-groups managed delete webserver-group --zone europe-west1-b -q

מחיקת תבנית של הגדרות מכונה

console

  1. נכנסים לדף Instance templates במסוף Cloud de Confiance .

    כניסה לדף Instance templates

  2. לוחצים על תיבת הסימון לצד תבנית של הגדרות מכונה.

  3. לוחצים על מחיקה בחלק העליון של הדף. בחלון החדש, לוחצים על מחיקה כדי לאשר את המחיקה.

gcloud

gcloud compute instance-templates delete webserver-template -q \
    --region=europe-west1

מחיקת בדיקת התקינות

console

  1. נכנסים לדף Health checks במסוף Cloud de Confiance .

    מעבר אל Health checks

  2. לוחצים על תיבת הסימון לצד בדיקת התקינות.

  3. לוחצים על מחיקה בחלק העליון של הדף. בחלון החדש, לוחצים על מחיקה כדי לאשר את המחיקה.

gcloud

gcloud compute health-checks delete autohealer-check -q \
    --region=europe-west1

מחיקת הכללים של חומת האש

console

  1. נכנסים לדף Firewall rules במסוף Cloud de Confiance .

    מעבר לכללי חומת אש

  2. לוחצים על תיבות הסימון לצד כללי חומת האש שנקראים default-allow-http ו-default-allow-http-health-check.

  3. לוחצים על מחיקה בחלק העליון של הדף. בחלון החדש, לוחצים על מחיקה כדי לאשר את המחיקה.

gcloud

gcloud compute firewall-rules delete default-allow-http default-allow-http-health-check -q

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