ריפוי עצמי עם אגוז חזיר

‫Apigee Edge for Private Cloud כולל את apigee-monit, כלי שמבוסס על כלי השירות monit בקוד פתוח. ‫apigee-monit מבצע סקרים תקופתיים של שירותי Edge. אם שירות מסוים לא זמין, ‏apigee-monit מנסה להפעיל אותו מחדש.

כדי להשתמש ב-apigee-monit, צריך להתקין אותו באופן ידני. היא לא חלק מההתקנה הרגילה.

כברירת מחדל, apigee-monit בודק את הסטטוס של שירותי Edge כל 60 שניות.

התחלה מהירה

בקטע הזה נסביר איך להתחיל לעבוד עם apigee-monit במהירות.

אם אתם משתמשים ב-Amazon Linux או ב-Oracle-Linux-7.X, קודם צריך להתקין את monit דרך Fedora. אחרת, מדלגים על השלב הזה.

sudo yum install -y https://kojipkgs.fedoraproject.org/packages/monit/5.25.1/1.el6/x86_64/monit-5.25.1-1.el6.x86_64.rpm

כדי להתקין את apigee-monit, פועלים לפי השלבים הבאים:

  התקנה של apigee-monit
/opt/apigee/apigee-service/bin/apigee-service apigee-monit install
/opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
/opt/apigee/apigee-service/bin/apigee-service apigee-monit start

הפעולה הזו מתקינה את apigee-monit ומתחילה לעקוב אחרי כל הרכיבים בצומת כברירת מחדל.

  הפסקת המעקב אחרי רכיבים
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
  התחלת מעקב אחרי רכיבים
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all
  קבלת מידע על סטטוס סיכום
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary
  עיון בקובצי היומן של apigee-monit
cat /opt/apigee/var/log/apigee-monit/apigee-monit.log

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

מידע על apigee-monit

apigee-monit עוזר לוודא שכל הרכיבים בצומת פועלים. היא עושה את זה באמצעות מגוון שירותים, כולל:

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

מומלץ לעקוב אחרי apigee-monit כדי לוודא שהוא פועל. מידע נוסף זמין במאמר בנושא מעקב אחרי apigee-monit.

הארכיטקטורה של apigee-monit

במהלך ההתקנה וההגדרה של Apigee Edge for Private Cloud, אפשר להתקין באופן אופציונלי מופע נפרד של apigee-monit בכל צומת באשכול. המופעים הנפרדים של apigee-monit פועלים באופן עצמאי: הם לא מעבירים את הסטטוס של הרכיבים שלהם לצמתים האחרים, והם גם לא מעבירים כשלים של כלי הניטור עצמו לשירות מרכזי כלשהו.

בתמונה הבאה מוצגת ארכיטקטורת apigee-monit באשכול עם 5 צמתים:

ארכיטקטורה
  של Apigee monit באשכול עם 5 צמתים
איור 1: מופע נפרד של apigee-monit פועל בבידוד בכל צומת באשכול

הגדרות רכיבים

apigee-monit משתמש בהגדרות של רכיבים כדי לקבוע אילו רכיבים לנטר, אילו היבטים של הרכיב לבדוק ואיזו פעולה לבצע במקרה של כשל.

כברירת מחדל, apigee-monit עוקב אחרי כל רכיבי Edge בצומת באמצעות הגדרות הרכיבים המוגדרות מראש. כדי לראות את הגדרות ברירת המחדל, אפשר לעיין בקובצי ההגדרות של רכיב apigee-monit. אי אפשר לשנות את הגדרות ברירת המחדל של הרכיבים.

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

רכיב מיקום ההגדרה מה נבדק
שרת ניהול /opt/apigee/edge-management-server/monit/default.conf apigee-monit checks:
  • היציאות שצוינו פתוחות ומקבלות בקשות
  • הפרוטוקולים שצוינו נתמכים
  • סטטוס התגובה

בנוסף, לרכיבים האלה apigee-monit:

  • נדרשים כמה כשלים בתוך מספר מחזורים נתון לפני שננקטת פעולה
  • הגדרת נתיב בקשה בהתאמה אישית
מעבד הודעות /opt/apigee/edge-message-processor/monit/default.conf
שרת Postgres /opt/apigee/edge-postgres-server/monit/default.conf
Qpid Server /opt/apigee/edge-qpid-server/monit/default.conf
נתב /opt/apigee/edge-router/monit/default.conf
‫Cassandra
Edge UI
SymasLDAP
Postgres
Qpid
Zookeeper
/opt/apigee/data/apigee-monit/monit.conf apigee-monit checks:
  • השירות פועל

בדוגמה הבאה מוצגת הגדרת ברירת המחדל של הרכיב edge-router:

check host edge-router with address localhost
  restart program = "/opt/apigee/apigee-service/bin/apigee-service edge-router monitrestart"
  if failed host 10.1.1.0 port 8081 and protocol http
    and request "/v1/servers/self/uuid"
    with timeout 15 seconds
    for 2 times within 3 cycles
  then restart

  if failed port 15999 and protocol http
    and request "/v1/servers/self"
    and status < 600
    with timeout 15 seconds
    for 2 times within 3 cycles
  then restart

בדוגמה הבאה מוצגת הגדרת ברירת המחדל של רכיב ממשק המשתמש הקלאסי (edge-ui):

check process edge-ui
 with pidfile /opt/apigee/var/run/edge-ui/edge-ui.pid
 start program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui start" with timeout 55 seconds
 stop program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui stop"

ההגדרה הזו חלה על ממשק המשתמש הקלאסי, ולא על ממשק המשתמש החדש של Edge, ששם הרכיב שלו הוא edge-management-ui.

אי אפשר לשנות את הגדרות ברירת המחדל של רכיבים ב-Apigee Edge for Private Cloud. עם זאת, אפשר להוסיף הגדרות רכיבים משלכם לשירותים חיצוניים, כמו נקודת הקצה של היעד או שירות httpd. מידע נוסף זמין במאמר בנושא הגדרות של רכיבים שאינם Apigee.

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

התקנה של apigee-monit

apigee-monit לא מותקן כברירת מחדל. אפשר להתקין אותו ידנית אחרי שמשדרגים או מתקינים את Apigee Edge לענן פרטי בגרסה 4.19.01 ואילך.

בקטע הזה נסביר איך להתקין את apigee-monit.

מידע על הסרת apigee-monit זמין במאמר הסרת apigee-monit.

התקנה של apigee-monit

בקטע הזה נסביר איך להתקין את apigee-monit.

כדי להתקין את apigee-monit:

  1. מתקינים את apigee-monit באמצעות הפקודה הבאה:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit install
  2. מגדירים את apigee-monit באמצעות הפקודה הבאה:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
  3. מפעילים את apigee-monit באמצעות הפקודה הבאה:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit start
  4. חוזרים על התהליך הזה בכל צומת באשכול.

הפסקה והפעלה של רכיבי מעקב

כששירות מפסיק לפעול מסיבה כלשהי, apigee-monit מנסה להפעיל אותו מחדש.

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

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

הפסקה של רכיב והסרת המעקב אחריו

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

/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop-component -c component_name
הפרמטר component_name יכול להיות אחת מהאפשרויות הבאות:
  • apigee-cassandra (קסנדרה)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (מסד נתונים של PostgreSQL)
  • apigee-qpidd (קיפוד)
  • apigee-sso (כניסה יחידה (SSO))
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (שרת ניהול)
  • edge-management-ui (ממשק קצה חדש של Edge)
  • edge-message-processor (מעבד הודעות)
  • edge-postgres-server (שרת Postgres)
  • edge-qpid-server (שרת Qpid)
  • edge-router (נתב קצה)
  • edge-ui (ממשק משתמש קלאסי)

הערה: הערך 'all' לא תקף בשדה stop-component. אפשר להפסיק את המעקב אחרי רכיב אחד בלבד בכל פעם באמצעות stop-component.

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

/opt/apigee/apigee-service/bin/apigee-service apigee-monit start-component -c component_name

הערה: הערך 'all' לא תקף בשדה start-component.

הוראות להפסקת המעקב אחרי כל הרכיבים מופיעות במאמר הפסקת המעקב אחרי כל הרכיבים.

ביטול המעקב אחרי רכיב (אבל לא עצירה שלו)

כדי להפסיק את המעקב אחרי רכיב (אבל לא לעצור אותו), מריצים את הפקודה הבאה:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name
הפרמטר component_name יכול להיות אחת מהאפשרויות הבאות:
  • apigee-cassandra (קסנדרה)
  • apigee-openldap (OpenLDAP)
  • apigee-postgresql (מסד נתונים של PostgreSQL)
  • apigee-qpidd (קיפוד)
  • apigee-sso (כניסה יחידה (SSO))
  • apigee-zookeeper (ZooKeeper)
  • edge-management-server (שרת ניהול)
  • edge-management-ui (ממשק קצה חדש של Edge)
  • edge-message-processor (מעבד הודעות)
  • edge-postgres-server (שרת Postgres)
  • edge-qpid-server (שרת Qpid)
  • edge-router (נתב קצה)
  • edge-ui (ממשק משתמש קלאסי)

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

/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name

ביטול המעקב אחרי כל הרכיבים (אבל לא עצירה שלהם)

כדי להפסיק את המעקב אחרי כל הרכיבים (אבל לא להפסיק אותם), מריצים את הפקודה הבאה:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all

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

/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all

הפסקת כל הרכיבים והסרתם מהמעקב

כדי לעצור את כל הרכיבים ולהפסיק את המעקב אחריהם, מריצים את הפקודות הבאות:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
/opt/apigee/apigee-service/bin/apigee-all stop

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

/opt/apigee/apigee-service/bin/apigee-all start
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all

כדי להפסיק את המעקב אחרי כל הרכיבים, אפשר גם להשבית את apigee-monit, כמו שמתואר במאמר הפסקה, הפעלה והשבתה של apigee-monit.

הפסקה, הפעלה והשבתה של apigee-monit

כמו בכל שירות, אפשר להפסיק ולהתחיל את apigee-monit השימוש apigee-service בפקודה. בנוסף, apigee-monit תומך בפקודה unmonitor, שמאפשרת להפסיק זמנית את המעקב אחרי רכיבים.

הפסקת apigee-monit

כדי לעצור את apigee-monit, משתמשים בפקודה הבאה:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop

הפעלת apigee-monit

כדי להפעיל את apigee-monit, משתמשים בפקודה הבאה:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit start

השבתה של apigee-monit

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

/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all

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

הסרת apigee-monit

כדי להסיר את apigee-monit:

  1. אם הגדרתם משימת cron למעקב אחרי apigee-monit, צריך להסיר את משימת cron לפני שמסירים את apigee-monit:
    sudo rm /etc/cron.d/apigee-monit.cron
  2. מפסיקים את apigee-monit באמצעות הפקודה הבאה:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit stop
  3. מריצים את הפקודה הבאה כדי להסיר את apigee-monit:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit uninstall
  4. חוזרים על התהליך הזה בכל צומת באשכול.

מעקב אחרי רכיב שהותקן לאחרונה

אם מתקינים רכיב חדש בצומת שמופעל בו apigee-monit, אפשר להתחיל לעקוב אחריו על ידי הפעלת הפקודה restart של apigee-monit. הפעולה הזו יוצרת קובץ חדש בשם monit.conf שיכלול את הרכיב החדש בהגדרות הרכיבים שלו.

בדוגמה הבאה מופעלת מחדש התוכנה apigee-monit:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit restart

התאמה אישית של apigee-monit

אתם יכולים להתאים אישית הגדרות שונות של apigee-monit, כולל:

  1. הגדרות ברירת המחדל של אמצעי הבקרהapigee-monit
  2. הגדרות גלובליות
  3. הגדרות של רכיבים שאינם Apigee

הגדרות ברירת המחדל של אמצעי הבקרה apigee-monit

אתם יכולים להתאים אישית את הגדרות ברירת המחדל של apigee-monit, כמו התדירות של בדיקות הסטטוס והמיקומים של קובצי apigee-monit. כדי לעשות את זה, עורכים קובץ מאפיינים באמצעות הטכניקה code with config. קבצי המאפיינים יישמרו גם אחרי שדרוג של Apigee Edge לענן פרטי.

בטבלה הבאה מתוארות הגדרות ברירת המחדל של אמצעי הבקרה apigee-monit שאפשר להתאים אישית:

נכס תיאור
conf_monit_httpd_port היציאה של הדימון (daemon) של httpd. אפליקציית apigee-monit משתמשת ב-httpd כדי להציג את מרכז הבקרה שלה וכדי להפעיל דוחות או סיכומים. ערך ברירת המחדל הוא 2812.
conf_monit_httpd_allow מגבלות על בקשות לשד httpd. ‫apigee-monit משתמש ב-httpd כדי להפעיל את אפליקציית מרכז הבקרה שלו ולאפשר דוחות או סיכומים. הערך הזה צריך להצביע על localhost (המארח שבו httpd פועל).

כדי לדרוש שבבקשות ייכללו שם משתמש וסיסמה, משתמשים בתחביר הבא:

conf_monit_httpd_allow=allow username:"password"\nallow 127.0.0.1

כשמוסיפים שם משתמש וסיסמה, צריך להוסיף '\n' בין כל מגבלה. אסור להוסיף מעברי שורה או חזרה לתחילת השורה בערך.

conf_monit_monit_datadir הספרייה שבה מאוחסנים פרטי האירוע.
conf_monit_monit_delay_time משך הזמן שapigee-monit ממתין אחרי שהוא נטען לזיכרון לפני שהוא מופעל. ההשפעה היא על apigee-monit הבדיקה הראשונה של התהליך בלבד.
conf_monit_monit_logdir המיקום של קובץ היומן apigee-monit.
conf_monit_monit_retry_time התדירות שבה apigee-monit מנסה לבדוק כל תהליך. ברירת המחדל היא 60 שניות.
conf_monit_monit_rundir המיקום של קובצי ה-PID והמצב, שבהם apigee-monit משתמש לבדיקת תהליכים.

כדי להתאים אישית את הגדרות ברירת המחדל של בקר apigee-monit:

  1. עורכים את הקובץ הבא:
    /opt/apigee/customer/application/monit.properties

    אם הקובץ לא קיים, יוצרים אותו ומגדירים את הבעלים למשתמש 'apigee':

    chown apigee:apigee /opt/apigee/customer/application/monit.properties

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

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

    לדוגמה, כדי לשנות את המיקום של קובץ היומן ל-/tmp, מוסיפים או עורכים את המאפיין הבא:

    conf_monit_monit_logdir=/tmp/apigee-monit.log
  3. שומרים את השינויים בקובץ monit.properties.
  4. מגדירים מחדש את apigee-monit באמצעות הפקודה הבאה:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
  5. טוענים מחדש את apigee-monit באמצעות הפקודה הבאה:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    אם אי אפשר להפעיל מחדש את apigee-monit, צריך לבדוק את קובץ היומן כדי לראות אם יש בו שגיאות, כמו שמתואר במאמר בנושא גישה לקובצי היומן של apigee-monit.

  6. חוזרים על התהליך הזה לכל צומת באשכול.

הגדרות תצורה גלובליות

אפשר להגדיר הגדרות גלובליות ל-apigee-monit. לדוגמה, אפשר להוסיף התראות באימייל על התראות. כדי לעשות את זה, יוצרים קובץ הגדרות בספרייה /opt/apigee/data/apigee-monit ומפעילים מחדש את apigee-monit.

כדי להגדיר הגדרות גלובליות ל-apigee-monit:

  1. יוצרים קובץ תצורה חדש של רכיב במיקום הבא:
    /opt/apigee/data/apigee-monit/filename.conf

    filename יכול להיות כל שם קובץ תקין, חוץ מ-monit.

  2. משנים את הבעלים של קובץ ההגדרות החדש למשתמש 'apigee', כמו בדוגמה הבאה:
    chown apigee:apigee /opt/apigee/data/apigee-monit/my-mail-config.conf
  3. מוסיפים את הגדרות התצורה הגלובליות לקובץ החדש. בדוגמה הבאה מוגדר שרת דואר ומוגדרים הנמענים של ההתראות:
    SET MAILSERVER smtp.gmail.com PORT 465
      USERNAME "example-admin@gmail.com" PASSWORD "PASSWORD"
      USING SSL, WITH TIMEOUT 15 SECONDS
    
    SET MAIL-FORMAT {
      from: edge-alerts@example.com
      subject: Monit Alert -- Service: $SERVICE $EVENT on $HOST
    }
    SET ALERT fred@example.com
    SET ALERT nancy@example.com

    רשימה מלאה של אפשרויות ההגדרה הגלובליות זמינה במאמרי העזרה בנושא monit.

  4. שומרים את השינויים בקובץ ההגדרות של הרכיב.
  5. טוענים מחדש את apigee-monit באמצעות הפקודה הבאה:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    אם apigee-monit לא מופעל מחדש, בודקים את קובץ היומן לאיתור שגיאות, כמו שמתואר במאמר בנושא גישה לקובצי היומן של apigee-monit.

  6. חוזרים על התהליך הזה לכל צומת באשכול.

הגדרות של רכיבים שאינם Apigee

אפשר להוסיף הגדרות משלכם ל-apigee-monit כדי שהכלי יבדוק שירותים שלא נכללים ב-Apigee Edge לענן פרטי. לדוגמה, אפשר להשתמש ב-apigee-monit כדי לבדוק שהממשקי ה-API פועלים על ידי שליחת בקשות לנקודת הקצה של היעד.

כדי להוסיף הגדרה של רכיב שאינו Apigee:

  1. יוצרים קובץ תצורה חדש של רכיב במיקום הבא:
    /opt/apigee/data/apigee-monit/filename.conf

    filename יכול להיות כל שם קובץ תקין, חוץ מ-monit.

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

  2. משנים את הבעלים של קובץ ההגדרות החדש למשתמש 'apigee', כמו בדוגמה הבאה:
    chown apigee:apigee /opt/apigee/data/apigee-monit/my-config.conf
  3. מוסיפים את ההגדרות האישיות לקובץ החדש. בדוגמה הבאה נבדקת נקודת הקצה של היעד בשרת המקומי:
    CHECK HOST localhost_validate_test WITH ADDRESS localhost
      IF FAILED
        PORT 15999
        PROTOCOL http
        REQUEST "/validate__test"
        CONTENT = "Server Ready"
        FOR 2 times WITHIN 3 cycles
      THEN alert

    רשימה מלאה של הגדרות אפשריות מופיעה במסמכי העזרה של monit.

  4. שומרים את השינויים בקובץ ההגדרות.
  5. טוענים מחדש את apigee-monit באמצעות הפקודה הבאה:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    אם apigee-monit לא מופעל מחדש, בודקים את קובץ היומן לאיתור שגיאות, כמו שמתואר במאמר בנושא גישה לקובצי היומן של apigee-monit.

  6. חוזרים על התהליך הזה לכל צומת באשכול.

חשוב לזכור שהפעולה הזו מיועדת לרכיבים שאינם רכיבי Edge בלבד. אי אפשר להתאים אישית את הגדרות הרכיבים של רכיבי Edge.

גישה לקובצי היומן של apigee-monit

apigee-monit מתעד את כל הפעילות, כולל אירועים, הפעלות מחדש, שינויים בהגדרות והתראות בקובץ יומן.

מיקום ברירת המחדל של קובץ היומן הוא:

/opt/apigee/var/log/apigee-monit/apigee-monit.log

אפשר לשנות את מיקום ברירת המחדל על ידי התאמה אישית של הגדרות apigee-monit.

הרשומות בקובץ היומן מופיעות בפורמט הבא:

'edge-message-processor' trying to restart
[UTC Dec 14 16:20:42] info     : 'edge-message-processor' trying to restart
'edge-message-processor' restart: '/opt/apigee/apigee-service/bin/apigee-service edge-message-processor monitrestart'

אי אפשר להתאים אישית את הפורמט של הרשומות בקובץ היומן apigee-monit.

הצגת סטטוס מצטבר באמצעות apigee-monit

apigee-monit כולל את הפקודות הבאות שנותנות לכם מידע מצטבר על הסטטוס של הרכיבים בצומת:

פקודה שימוש
report
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
summary
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary

כל אחת מהפקודות האלה מוסברת בפירוט בסעיפים הבאים.

דוח

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

/opt/apigee/apigee-service/bin/apigee-service apigee-monit report

בדוגמה הבאה מוצג הפלט של report בהגדרת AIO (הכול-באחד):

/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
up:            11 (100.0%)
down:           0 (0.0%)
initialising:   0 (0.0%)
unmonitored:    1 (8.3%)
total:         12 services

בדוגמה הזו, 11 מתוך 12 השירותים מדווחים על ידי apigee-monit כפעילים. שירות אחד לא נמצא במעקב כרגע.

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

סיכום

הפקודה summary מפרטת כל רכיב ומציגה את הסטטוס שלו. בדוגמה הבאה מפעילים את הפקודה summary:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary

בדוגמה הבאה מוצג הפלט של summary בהגדרת AIO (הכול-באחד):

/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary
Monit 5.25.1 uptime: 4h 20m
 Service Name                     Status                      Type
 host_name                        OK                          System
 apigee-zookeeper                 OK                          Process
 apigee-cassandra                 OK                          Process
 apigee-openldap                  OK                          Process
 apigee-qpidd                     OK                          Process
 apigee-postgresql                OK                          Process
 edge-ui                          OK                          Process
 edge-qpid-server                 OK                          Remote Host
 edge-postgres-server             OK                          Remote Host
 edge-management-server           OK                          Remote Host
 edge-router                      OK                          Remote Host
 edge-message-processor           OK                          Remote Host

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

מעקב אחרי apigee-monit

מומלץ לבדוק באופן קבוע ש-apigee-monit פועל בכל צומת.

כדי לבדוק אם apigee-monit פועל, משתמשים בפקודה הבאה:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit

מומלץ להריץ את הפקודה הזו מעת לעת בכל צומת שמופעל בו apigee-monit. אחת הדרכים לעשות זאת היא באמצעות כלי כמו cron שמבצע משימות מתוזמנות במרווחי זמן מוגדרים מראש.

כדי להשתמש ב-cron כדי לעקוב אחרי apigee-monit:

  1. כדי להוסיף תמיכה ב-cron, מעתיקים את הספרייה apigee-monit.cron לספרייה /etc/cron.d, כמו בדוגמה הבאה:
    cp /opt/apigee/apigee-monit/cron/apigee-monit.cron /etc/cron.d/
  2. פותחים את הקובץ apigee-monit.cron כדי לערוך אותו.

    קובץ apigee-monit.cron מגדיר את משימת cron לביצוע, וגם את התדירות שבה המשימה הזו תתבצע. בדוגמה הבאה מוצגים ערכי ברירת המחדל:

    # Cron entry to check if monit process is running. If not start it
    */2 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit

    בקובץ הזה נעשה שימוש בתחביר הבא, שבו חמשת השדות הראשונים מגדירים את השעה שבה הפעולה של apigee-monit מתבצעת:

    min hour day_of_month month day_of_week task_to_execute

    לדוגמה, זמן הביצוע שמוגדר כברירת מחדל הוא */2 * * * *, שמורה ל-cron לבדוק את התהליך apigee-monit כל 2 דקות.

    אי אפשר להריץ משימת cron בתדירות גבוהה יותר מפעם בדקה.

    מידע נוסף על השימוש ב-cron זמין במסמכי העזרה או בדפי man של מערכת ההפעלה של השרת.

  3. משנים את ההגדרות של cron כך שיתאימו למדיניות של הארגון. לדוגמה, כדי לשנות את תדירות ההרצה לכל 5 דקות, מגדירים את הגדרת המשימה כך:
    */5 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
  4. שומרים את קובץ ה-apigee-monit.cron.
  5. חוזרים על התהליך הזה לכל צומת באשכול.

אם cron לא מתחיל לצפות ב-apigee-monit, צריך לוודא ש:

  • אחרי הגדרת המשימה cron יש שורה ריקה.
  • מוגדרת רק משימה אחת (cron) בקובץ. (שורות עם הערות לא נספרות).

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

כדי להשבית את cron, מבצעים אחת מהפעולות הבאות:

  • מוחקים את הקובץ /etc/cron.d/apigee-monit.cron:
    sudo rm /etc/cron.d/apigee-monit.cron

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

    OR

  • עורכים את קובץ /etc/cron.d/apigee-monit.cron ומוסיפים הערה להגדרת המשימה על ידי הוספת # בתחילת השורה. לדוגמה:
    # 10 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit