LSLB | חוות חקלאיות | עדכן | שומר החווה

פורסם על ידי זאבנט | 2 בינואר, 2018

סקירה כללית

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

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

התוספים משומשים על ידי החווה גארדיאן ניתן למצוא תחת המדריך / usr / local / zenloadbalancer / app / libexec / .

משק חקלאי תצורה

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

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

תוספים

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

check_ftp: תוסף זה בודק חיבורי FTP עם המארח שצוין.
check_fping: תוסף זה ישתמש בפקודה fping כדי ping המארח שצוין עבור בדיקה מהירה.
check_http: תוסף זה בודק את שירות HTTP במארח שצוין. הוא יכול לבדוק פרוטוקולים רגילים (HTTP) ומאובטח (HTTPS), לעקוב אחר הפניות מחדש, הוא מחפש מחרוזות וביטויים רגילים, לבדוק את זמני החיבור ולדווח על זמני תפוגה של אישור, קודי החזרת HTTP וכו '.
check_imap: תוסף זה בודק חיבורי IMAP עם המארח שצוין.
check_ldap: תוסף זה בודק שירותי LDAP. זה יכול להיבדק עם חיפוש נתון.
check_ldaps: תוסף זה בודק שירותי LDAPS. זה יכול להיבדק עם חיפוש נתון.
check_mysql: תוסף זה בודק חיבורים לשרת MySQL.
check_mysql_query: תוסף זה בודק תוצאת שאילתה נגד רמות הסף.
check_pgsql: בדוק אם מסד נתונים PostgreSQL מקבל חיבורים.
check_pop: תוסף זה בודק חיבורי POP עם המארח שצוין.
check_radius: בדיקות כדי לבדוק אם שרת RADIUS מקבל חיבורים.
check_simap: תוסף זה בודק חיבורי IMAP מאובטח עם המארח שצוין
check_smtp: תוסף זה ינסה לפתוח חיבור SMTP עם המארח.
check_snmp: בדוק מצב של מחשבים מרוחקים וקבל מידע מערכת באמצעות SNMP.
check_spop: תוסף זה בודק חיבורי POP מאובטח עם המארח שצוין.
check_ssh: נסה להתחבר לשרת SSH בשרת ובפורט שצוינו.
check_ssmtp: תוסף זה בודק חיבורי SSMTP עם המארח שצוין.
check_tcp: תוסף זה בודק חיבורי TCP עם המארח שצוין.

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

plugin_name --help

Farm Guardian ישתמש plugins זה כדי לבדוק את מצב הבריאות של backends ו ינהל את הפלט שגיאה ביצוע של תוסף להורג על קביעת מעמד backend כדלקמן:

אם השגיאה פלט == 0 ואז ה- backend הוא בסדר> $? = 0

אם השגיאה פלט <> 0 ואז ה- backend אינו בסדר> $? <> 0

תוסף מותאם אישית

Plugins אלה יכולים להיות מוגדרת ו programmable באופן מלא על ידי sysadmins כדי להיות מותאם לכל פרוטוקול או יישום.

בדוגמה זו מוצג פלאגין מותאם אישית check_load.sh.

#!/bin/bash
###
###comments:
###snmp utils should be installed
###snmpd should be installed and configured in the backends
###
MAXVALUE=4
COMMUNITY="public"
EXECUTE=`snmpget -v 2c -c $COMMUNITY $1 .1.3.6.1.4.1.2021.10.1.3.1 |cut -d ':' -f2 | cut -d '.' -f1 | sed s/\ // | sed s/\"//`

echo "SNMP CPU load check for $1 is $EXECUTE"
# If the result is true, exit with 1; error; else exit = 0; OK
if (( $EXECUTE >= $MAXVALUE )); then
#error output; the server is overloaded and the load balancer isn’t going to send more connections
exit 1
else
#not error; the server can accept more connections
exit 0
fi

קבועים

כאשר Farm Guardian מבצע תוסף, הוא יכול להשתמש בקבועים או אסימונים כארגומנטים, כגון:

  • HOST: גארדיאן משקיע ידאג לשינוי זה קבוע על ידי כתובת שרת ה- IP האמיתי.
  • נמל: גארדיאן משק יטפל שינוי זה קבוע על ידי יציאת השרת האמיתי.

קבועים אלה יכולים לשמש עבור כל תוסף, Farm Guardian ישתמש בהם כדי להפעיל את בדיקת הבריאות עם הפרמטרים האמיתיים במקום.

דוגמה

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

עבור חווה HTTP בבקשה, להגדיר את הבא בחלקה משק חקלאי של כל שירות:

check_http_fg_example

משק חקלאי הולך לבצע את check_http תוסף עבור כל backend יחליף את הקבועים HOST ו נמל על ידי כתובת ה- IP ואת היציאה עבור כל backend, עבור כל ביצוע תוסף נתון יחזיר את קוד השגיאה 0 אם מחרוזת "ברוך הבא" נמצא התוכן של index.php. במקרה זה מחרוזת "ברוך הבא" לא נמצא אז זה backend יסומן כמו למטה.

החווה יומני יומני ניתן להפעיל למרות שזה יכול לצרוך הרבה שטח דיסק זה חוסך את יומני הנתיב /usr/local/zenloadbalancer/config/[_service]_farmguardian.log or / var / log / syslog בגרסאות Zevenet המעודכנות ביותר.

תשתף:

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

האם המאמר הזה היה מועיל?

מאמרים נוספים