איסוף מדדים של שרת אינטרנט Apache באמצעות סוכן תפעול

איך אוספים ועוקבים אחרי מדדים משרת אינטרנט של Apache שמותקן במכונה וירטואלית (VM) ב-Compute Engine באמצעות סוכן תפעול:

  1. יוצרים מכונה וירטואלית ב-Compute Engine ומתקינים את סוכן תפעול.
  2. מתקינים שרת אינטרנט של Apache.
  3. מגדירים את סוכן התפעול לשרת האינטרנט של Apache.
  4. יצירת תנועה לשרת האינטרנט של Apache.
  5. צפייה במדדים בלוח הבקרה המוגדר מראש של Apache.
  6. יוצרים מדיניות התראות.
  7. בודקים את מדיניות ההתראות.
  8. לפנות.

לחצו על תראו לי איך כדי לקרוא הסבר מפורט על המשימה ישירות במסוף Google Cloud :

תראו לי איך


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

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

  2. נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
  3. In the Google Cloud console, on the project selector page, select or create a Google Cloud 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

  4. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  5. Verify that billing is enabled for your Google Cloud project.

  6. Enable the Compute Engine, Cloud Monitoring, Cloud Logging, and OS Config APIs.

    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 APIs

  7. In the Google Cloud console, on the project selector page, select or create a Google Cloud 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

  8. If you're using an existing project for this guide, verify that you have the permissions required to complete this guide. If you created a new project, then you already have the required permissions.

  9. Verify that billing is enabled for your Google Cloud project.

  10. Enable the Compute Engine, Cloud Monitoring, Cloud Logging, and OS Config APIs.

    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 APIs

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות ליצירת מכונה של Compute Engine, להתקנת Apache ולהצגת נתוני מדדים, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:

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

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

יצירת מופע של VM

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

    כניסה לדף VM instances

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים את התוצאה שבה כותרת המשנה היא Compute Engine.

  2. כדי ליצור מכונה וירטואלית, לוחצים על יצירת מופע. מגדירים את המכונה באמצעות האפשרויות שבתפריט הניווט.
  3. בקטע Machine configuration (הגדרת המכונה), מבצעים את הפעולות הבאות:
    1. בשדה שם, מזינים שם תיאורי.
    2. בתפריט הנפתח של הגדרות קבועות מראש סוג מכונה, בוחרים באפשרות ליבת מעבד משותפת > e2-small.
  4. מוודאים שהאפשרות OS and storage מציגה את הערך Debian GNU/Linux. אם לא, לוחצים על האפשרות מערכת הפעלה ואחסון ואז על שינוי. בתיבת הדו-שיח Boot disk, מגדירים את Version ל-Debian GNU/Linux.
  5. באפשרות Networking, בקטע Firewall, בוחרים גם באפשרות Allow HTTP traffic וגם באפשרות Allow HTTPS traffic.
  6. מוודאים שהאפשרות Observability מציגה את האפשרות התקנת סוכן תפעול. אם לא, לוחצים על האפשרות Observability (יכולת צפייה) ובוחרים באפשרות Install Ops Agent for Monitoring and Logging (התקנת סוכן תפעול לניטור ולרישום ביומן).
  7. לוחצים על יצירה.

התקנה של שרת האינטרנט Apache

כדי להתקין שרת אינטרנט של Apache במכונה וירטואלית ב-Compute Engine, מבצעים את הפעולות הבאות:

  1. בדף VM instances (מכונות וירטואליות), מאתרים את המכונה הווירטואלית החדשה, עוברים לעמודה Connect (התחברות) ולוחצים על SSH.

    נתקלת בבעיות בחיבור? אפשר לעיין במאמר בנושא פתרון בעיות ב-SSH.

  2. כדי לעדכן את רשימות החבילות, מעתיקים את הפקודה הבאה ללוח, מדביקים אותה בטרמינל SSH ומקישים על Enter:

    sudo apt-get update
    
  3. אחרי שמופיעה ההודעה 'Reading package lists...‎ ‫Done", בטרמינל SSH, מריצים את הפקודה הבאה כדי להתקין שרת אינטרנט של Apache2:

    sudo apt-get install apache2 php7.0
    

    כשמוצגת בקשה להמשיך בהתקנה, מזינים Y. אם פקודת ההתקנה נכשלת, משתמשים ב-sudo apt-get install apache2 php.

  4. כשחלון שורת הפקודה חוזר, עוברים לדף VM instances ומעתיקים את כתובת ה-IP החיצונית של המכונה הווירטואלית לכתובת ה-URL הבאה:

    http://EXTERNAL_IP
    
  5. כדי להתחבר לשרת האינטרנט של Apache, פותחים כרטיסייה חדשה בדפדפן ומזינים את כתובת ה-URL מהשלב הקודם.

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

    הצגת דף ברירת המחדל של Apache2.

איסוף יומנים ומדדים של שרת אינטרנט Apache

בשלבים הבאים מוסבר איך להגדיר את סוכן תפעול לאיסוף יומנים ומדדים משרת האינטרנט של Apache:
  1. עוברים לטרמינל SSH של מכונת ה-VM. אם לא פתוח חלון טרמינל:

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

      כניסה לדף VM instances

      אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים את התוצאה שבה כותרת המשנה היא Compute Engine.

    2. מאתרים את המכונה הווירטואלית החדשה ולוחצים על SSH.

  2. מעתיקים את הפקודה הבאה, מדביקים אותה בטרמינל של המופע ומקישים על Enter:

    # Configures Ops Agent to collect telemetry from the app. You must restart the agent for the configuration to take effect.
    
    set -e
    
    # Check if the file exists
    if [ ! -f /etc/google-cloud-ops-agent/config.yaml ]; then
      # Create the file if it doesn't exist.
      sudo mkdir -p /etc/google-cloud-ops-agent
      sudo touch /etc/google-cloud-ops-agent/config.yaml
    fi
    
    # Create a back up of the existing file so existing configurations are not lost.
    sudo cp /etc/google-cloud-ops-agent/config.yaml /etc/google-cloud-ops-agent/config.yaml.bak
    
    # Configure the Ops Agent.
    sudo tee /etc/google-cloud-ops-agent/config.yaml > /dev/null << EOF
    metrics:
      receivers:
        apache:
          type: apache
      service:
        pipelines:
          apache:
            receivers:
              - apache
    logging:
      receivers:
        apache_access:
          type: apache_access
        apache_error:
          type: apache_error
      service:
        pipelines:
          apache:
            receivers:
              - apache_access
              - apache_error
    EOF
    

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

  3. מפעילים מחדש את סוכן התפעול:
    1. כדי להפעיל מחדש את הסוכן, מריצים את הפקודה הבאה במופע:
      sudo systemctl restart google-cloud-ops-agent
      
    2. כדי לוודא שהסוכן הופעל מחדש, מריצים את הפקודה הבאה ומוודאים שהרכיבים Metrics Agent ו-Logging Agent הופעלו:
      sudo systemctl status "google-cloud-ops-agent*"
      

יצירת תנועה

כדי למשוך תנועה לשרת האינטרנט של Apache:

  1. עוברים לטרמינל SSH של מכונת ה-VM. אם לא פתוח חלון טרמינל, מבצעים את הפעולות הבאות:

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

      כניסה לדף VM instances

      אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים את התוצאה שבה כותרת המשנה היא Compute Engine.

    2. מאתרים את המכונה הווירטואלית החדשה ולוחצים על SSH.

  2. בטרמינל של SSH, מריצים את הפקודה הבאה, שמייצרת בקשות לשרת האינטרנט של Apache:

    timeout 120 bash -c -- 'while true; do curl localhost; sleep $((RANDOM % 4)) ; done'
  3. ממתינים שתי דקות עד ששורת הפקודה תחזור או עד שהטרמינל ייסגר. בזמן שהפקודה פועלת, טקסט HTML מוצג במסוף.

הצגת מדדים של Apache

כדי לראות את מרכז הבקרה Apache Overview שנוצר באופן אוטומטי:

  1. במסוף Google Cloud , עוברים לדף  Dashboards:

    עוברים אל מרכזי בקרה.

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שבה הכותרת המשנית היא Monitoring.

  2. בחלונית My Dashboards, בוחרים את לוח הבקרה Apache Overview מהרשימה.

    דוגמה ללוח הבקרה Apache Overview.

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

יצירת ערוץ התראות באימייל

לפני שיוצרים מדיניות התראות, צריך להגדיר את ערוצי ההתראות שבהם רוצים להשתמש במדיניות ההתראות. ‫Cloud Monitoring תומך בסוגים רבים ושונים של ערוצי התראות, כולל אימייל, Slack,‏ PagerDuty ו-Pub/Sub. מידע נוסף מופיע במאמר בנושא יצירה וניהול של ערוצי התראות. כדי לקבל התראות באימייל:
  1. נכנסים לדף  Alerting במסוף Google Cloud :

    כניסה אל התראות

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שבה הכותרת המשנית היא Monitoring.

  2. בסרגל הכלים, לוחצים על עריכת ערוצי התראות.
  3. בדף Notification channels (ערוצי התראות), גוללים אל Email (אימייל) ולוחצים על Add new (הוספת חדש).
  4. מזינים את כתובת האימייל, שם לתצוגה כמו My email, ואז לוחצים על שמירה.

יצירת מדיניות התראות

בקטע הזה יוצרים מדיניות התראות כדי לקבל התראה כשהתנועה לשרת האינטרנט של Apache חורגת מסף מוגדר:

  1. נכנסים לדף  Alerting במסוף Google Cloud :

    כניסה אל התראות

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שבה הכותרת המשנית היא Monitoring.

  2. לוחצים על יצירת מדיניות.
  3. בוחרים את סדרת הזמנים שרוצים לעקוב אחריה:

    1. לוחצים על בחירת מדד ובוחרים באפשרות VM instance (מכונה וירטואלית).
    2. ברשימה Active metric categories בוחרים באפשרות Apache.
    3. ברשימה Active metrics בוחרים באפשרות workload/apache.traffic.
    4. לוחצים על אישור.

    מוצג התרשים של תנועת הנתונים ב-Apache.

  4. עוברים לשדות Configure trigger (הגדרת הטריגר) ומגדירים את השדה Threshold value (ערך הסף) ל-1500.

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

  5. עוברים לשדות התראות ושם, ואז משתמשים בתפריט ערוצי התראות כדי לבחור את כתובת האימייל.

  6. בשדה 'שם המדיניות', מזינים Apache traffic above threshold.

  7. עוברים לשדות Review alert, בודקים את מדיניות ההתראות ולוחצים על Create policy.

בדיקת מדיניות ההתראות

כדי לבדוק את מדיניות ההתראות, יוצרים תנועה שחורגת מסף ההתראה:

  1. עוברים לטרמינל SSH של מכונת ה-VM. אם לא פתוח חלון טרמינל, מבצעים את הפעולות הבאות:

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

      כניסה לדף VM instances

      אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים את התוצאה שבה כותרת המשנה היא Compute Engine.

    2. מאתרים את המכונה הווירטואלית החדשה ולוחצים על SSH.

  2. בטרמינל של SSH, מריצים את הפקודה הבאה, שמייצרת בקשות לשרת האינטרנט של Apache:

    timeout 120 bash -c -- 'while true; do curl localhost; sleep $((RANDOM % 4)) ; done'
  3. ממתינים שתי דקות עד ששורת הפקודה תחזור או עד שהטרמינל ייסגר. בזמן שהפקודה פועלת, טקסט HTML מוצג במסוף.
  4. כששורת הפקודה חוזרת, בודקים באימייל הודעה שבשורת הנושא שלה מתחיל [ALERT].

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

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

    התראה באימייל על מדיניות התראות לגבי תנועה ב-Apache.

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

הסרת המשאבים

כדי לא לצבור חיובים לחשבון Google Cloud על המשאבים שבהם השתמשתם בדף הזה, פועלים לפי השלבים הבאים:

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

אם השתמשתם בפרויקט קיים, צריך לבצע את הפעולות הבאות:

  1. אם יצרתם מכונה וירטואלית, אתם יכולים למחוק אותה:

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

      כניסה לדף VM instances

    2. מסמנים את התיבה שלצד המופע שרוצים למחוק.
    3. כדי למחוק את המכונה, לוחצים על More actions ואז על Delete ופועלים לפי ההוראות.
  2. מוחקים את מדיניות ההתראות שיצרתם:

    1. נכנסים לדף  Alerting במסוף Google Cloud :

      כניסה אל התראות

      אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שבה הכותרת המשנית היא Monitoring.

    2. בוחרים את מדיניות ההתראות שיצרתם ולוחצים על מחיקה.

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