כיצד ליישם בדיקות בריאות יעילות ב- HAProxy

Kyzd Lyysm Bdyqwt Bry Wt Y Ylwt B Haproxy



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

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

מהן בדיקות בריאות ב- HAProxy

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







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



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



$ sudo nano /etc/haproxy/haproxy.cfg

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





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



דוגמה 1: יישום בדיקות בריאות אקטיביות אפקטיביות

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

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

דוגמה 2: יישום בדיקת תקינות HTTP

עם בדיקת תקינות HTTP, HAProxy תשלח בקשת HTTP לכל השרתים עם מילת המפתח 'בדוק'. בהתבסס על התגובה, הוא מסכם את מצב השרת. דוגמאות לתגובות שרת מוצלחות נופלות בטווח של 2xx או 3xx. תגובה כגון 200 OK פירושה שהשרת במצב טוב.

עבור דוגמה זו, הוסף את שורת 'option httpchk' ב-backend שלך.

דוגמה 3: עבודה עם בקשת GET

HAProxy שולחת בקשת GET לנתיב '/' בעת ביצוע בקשת HTTP. עם זאת, אם הגדרת את נקודת הקצה שלך בנתיב אחר, תוכל לציין את נתיב ה-URL כגון '/health', ו-HAProxy תשלח אליו את בקשת ה-GET.

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

דוגמה 4: ציון נתיב בקשת GET וסטטוס תגובה

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

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

זהו זה! יישמת את בדיקות הבריאות היעילות ב-HAProxy שלך. אתה יכול לגשת לדף הנתונים הסטטיסטיים או לבדוק את קובץ היומן באמצעות הפקודה הבאה כדי לאשר שבדיקות התקינות פועלות כצפוי:

$ tail -f /var/log/haproxy.log

סיכום

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