சுகாதார சோதனைகளை அனுப்பும் சேவையகங்கள் மட்டுமே சுழற்சியில் சேர்க்கப்படுகின்றன. அந்த வகையில், சுகாதாரச் சோதனையில் தேர்ச்சி பெறவில்லை என்றால், சேவையகம் பயன்படுத்தத் தேர்ந்தெடுக்கப்படாது, வேலையில்லா நேரத்தின் வாய்ப்புகளைக் குறைக்கும். இந்த இடுகை முழுவதும், HAProxy இல் உள்ள சுகாதாரச் சோதனைகள் எவ்வாறு செயல்படுகின்றன மற்றும் பயனுள்ள சுகாதாரப் பரிசோதனையை செயல்படுத்துவதற்கு என்ன தேவை என்பதைப் பற்றி ஆழமாக ஆராய்வோம். ஆரம்பித்துவிடுவோம்!
HAProxy இல் சுகாதார சோதனைகள் என்றால் என்ன
HAProxy ஐ உள்ளமைக்கும் போது, உங்கள் பயன்பாட்டிற்கு என்ன பின்தள சேவையகங்களைப் பயன்படுத்த வேண்டும் என்பதைக் குறிப்பிடுவது ஒரு பணியாகும். அந்த வழியில், எந்தவொரு சேவையகமும் ஓவர்லோட் செய்யப்படுவதைத் தவிர்க்க, சேவையகங்களுக்கு போக்குவரத்து விநியோகிக்கப்படும். இருப்பினும், ட்ராஃபிக்கை சரியாக இருந்தால் மட்டுமே அதைக் கையாள ஒரு சர்வர் தேர்ந்தெடுக்கப்பட்டிருப்பதைக் கண்டறிய சுகாதாரச் சோதனைகள் உதவுகின்றன.
ஒவ்வொரு சேவையகத்திலும் சுகாதாரச் சோதனைகள் செய்யப்படுகின்றன, மேலும் சுமை சமநிலையில் பயன்படுத்துவதற்கு அனுப்பப்பட்டவை மட்டுமே சுழற்சியில் சேர்க்கப்படும். டிசிபி அல்லது எச்டிடிபி போன்ற கோரிக்கைகளை உங்கள் பின்தள சேவையகத்தில் முன் வரையறுக்கப்பட்ட எண்ட்பாயிண்ட்டுக்கு அனுப்புவதன் மூலம் சுகாதார சோதனைகள் செய்யப்படுகின்றன. பின்தள சேவையகத்தால் திருப்பி அனுப்பப்படும் சுகாதார முடிவுகள் அதன் நிலையை தீர்மானிக்கிறது. எடுத்துக்காட்டாக, சேவையகத்தின் நிலை மேலே அல்லது கீழே காட்டப்படலாம் அல்லது சரி 200 நிலையை அனுப்பலாம், இது சேவையகம் ஆரோக்கியமாக இருப்பதை உறுதிப்படுத்துகிறது.
சுகாதாரச் சோதனைகளை உள்ளமைப்பதில், சுகாதாரச் சோதனைகளுக்குப் பயன்படுத்துவதற்கு முன் வரையறுக்கப்பட்ட முடிவுப் புள்ளி உங்களிடம் இருப்பதை உறுதிசெய்யவும். உங்கள் இறுதிப் புள்ளியை அமைக்க நீங்கள் பயன்படுத்தக்கூடிய பல்வேறு விருப்பங்கள் உள்ளன. எடுத்துக்காட்டாக, சேவையகத்தின் நிலையைப் பொறுத்து நிலைக் குறியீடு அல்லது செய்தியை நீங்கள் திருப்பி அனுப்பலாம். உங்கள் HAProxy config கோப்பின் பின்தளத்தில் அனைத்து சுகாதார சோதனைகளும் வரையறுக்கப்பட்டுள்ளன. config கோப்பைத் திறந்து, உங்கள் முன்பக்கம் பகுதியை உருவாக்கவும்.
$ sudo nano /etc/haproxy/haproxy.cfg
போர்ட் 80 ஐ பிணைக்கும், புள்ளிவிவரப் பக்கத்தை அமைக்கும் மற்றும் இயல்புநிலை பின்தளத்தைக் குறிப்பிடும் முன்பகுதி பிரிவின் அடிப்படை எடுத்துக்காட்டு இங்கே.
அடுத்த கட்டம் பின்தளப் பகுதியை உருவாக்குவது. HAProxy இல் பயனுள்ள சுகாதாரப் பரிசோதனையை எவ்வாறு செயல்படுத்துவது என்பதற்குப் பின்வரும் வெவ்வேறு எடுத்துக்காட்டுகள் உள்ளன.
எடுத்துக்காட்டு 1: பயனுள்ள செயலில் உள்ள சுகாதார சோதனைகளை செயல்படுத்துதல்
HAProxy இல் சுகாதார சோதனைகளை செயல்படுத்துவதற்கான எளிய வழி, செயலில் உள்ள சுகாதார சோதனைகளை அமைப்பதாகும். இந்த விருப்பத்துடன், HAProxy சேவையகத்துடன் இணைக்க முயற்சிக்கும். எந்த பதிலும் அனுப்பப்படவில்லை என்றால், அது சேவையகத்தை ஆரோக்கியமற்றதாகக் கருதி அதை சுழற்சியில் இருந்து அகற்றும். செயலில் உள்ள சுகாதாரச் சோதனைகளைச் செயல்படுத்துவதற்கான முன்னிருப்பு வழி, HAProxyக்கான ஒவ்வொரு சர்வர் லைனிலும் “செக்” முக்கிய சொல்லைச் சேர்ப்பதன் மூலம் அவற்றைச் சரிபார்க்கலாம்.
இந்த முதல் உதாரணம் வேலை செய்தாலும், சுகாதார சோதனைகளை செயல்படுத்த இது சிறந்த வழி அல்ல. கூடுதலாக, இது இயல்புநிலை அமைப்புகளைப் பயன்படுத்துகிறது. உதாரணமாக, காசோலைகளுக்கு இடையே உள்ள இடைவெளி, இன்டர் என குறிக்கப்பட்டு, இரண்டு வினாடிகளுக்கு அமைக்கப்பட்டுள்ளது. வீழ்ச்சி, அனுமதிக்கப்பட்ட தோல்வியுற்ற காசோலைகளின் எண்ணிக்கை, மூன்றாக அமைக்கப்பட்டுள்ளது. இந்த அமைப்புகளைச் சரிசெய்ய, பின்வரும் எடுத்துக்காட்டில் காட்டப்பட்டுள்ளபடி விருப்பமான இடை நேரம் மற்றும் காசோலைகளின் எண்ணிக்கையைக் குறிப்பிடவும்:
எடுத்துக்காட்டு 2: ஒரு HTTP சுகாதார சோதனையை செயல்படுத்துதல்
HTTP சுகாதாரச் சரிபார்ப்புடன், HAProxy அனைத்து சேவையகங்களுக்கும் HTTP கோரிக்கையை “செக்” முக்கிய சொல்லுடன் அனுப்பும். பதிலின் அடிப்படையில், இது சேவையகத்தின் நிலையை முடிக்கிறது. வெற்றிகரமான சர்வர் பதில்களின் எடுத்துக்காட்டுகள் 2xx அல்லது 3xx வரம்பில் இருக்கும். 200 ஓகே போன்ற பதில் சர்வர் நல்ல நிலையில் உள்ளது என்று அர்த்தம்.
இந்த உதாரணத்திற்கு, உங்கள் பின்தளத்தில் 'httpchk விருப்பம்' வரியைச் சேர்க்கவும்.
எடுத்துக்காட்டு 3: GET கோரிக்கையுடன் பணிபுரிதல்
HTTP கோரிக்கையை உருவாக்கும் போது HAProxy ஒரு GET கோரிக்கையை '/' பாதைக்கு அனுப்புகிறது. இருப்பினும், உங்கள் இறுதிப்புள்ளி வேறொரு பாதையில் கட்டமைக்கப்பட்டிருந்தால், '/health' போன்ற URL பாதையை நீங்கள் குறிப்பிடலாம், மேலும் HAProxy அதற்கு GET கோரிக்கையை அனுப்பும்.
உங்கள் இறுதிப் புள்ளியின் அடிப்படையில், சேவையகத்தின் நிலையைத் தீர்மானிக்க சேவையகம் பதிலைப் பயன்படுத்தும். அதை எவ்வாறு செயல்படுத்துவது என்பது இங்கே:
எடுத்துக்காட்டு 4: GET கோரிக்கைப் பாதை மற்றும் பதில் நிலையைக் குறிப்பிடுதல்
இறுதிப்புள்ளி மூலம், சர்வரின் நிலையைத் தீர்மானிக்க இறுதிப்புள்ளி GET கோரிக்கையிலிருந்து என்ன வெற்றிகரமான பதிலை எதிர்பார்க்கலாம் என்பதை நீங்கள் குறிப்பிடலாம். இந்த எடுத்துக்காட்டிற்கு, எங்களின் GET கோரிக்கைப் பாதை “/ஹெல்த்” ஆகும், மேலும் சுமை சமநிலை மற்றும் பிற பணிகளைக் கையாள சர்வர் நல்ல ஆரோக்கியத்துடன் இருப்பதை உறுதிப்படுத்த 200 பதில் நிலையை எதிர்பார்க்கிறோம்.
உங்கள் HAProxy உள்ளமைவு கோப்பை மாற்றியவுடன், மாற்றங்கள் நடைமுறைக்கு வர HAProxy ஐ மறுதொடக்கம் செய்யுங்கள்.
அவ்வளவுதான்! உங்கள் HAProxy இல் பயனுள்ள சுகாதாரச் சோதனைகளைச் செயல்படுத்தியுள்ளீர்கள். நீங்கள் புள்ளிவிவரங்கள் பக்கத்தை அணுகலாம் அல்லது பின்வரும் கட்டளையுடன் பதிவுக் கோப்பைச் சரிபார்த்து, ஆரோக்கிய சோதனைகள் எதிர்பார்த்தபடி செயல்படுகின்றன என்பதை உறுதிப்படுத்தவும்:
$ tail -f /var/log/haproxy.logமுடிவுரை
நீங்கள் பல்வேறு வழிகளில் HAProxy இல் பயனுள்ள சுகாதாரப் பரிசோதனையைச் செயல்படுத்தலாம். HAProxy உள்ளமைவு கோப்பின் பின்தளத்தில் சுகாதார சோதனைகள் செயல்படுத்தப்படுகின்றன, மேலும் இந்த இடுகை அதை எவ்வாறு மேற்கொள்வது என்பதற்கான வெவ்வேறு எடுத்துக்காட்டுகளைக் கொடுத்துள்ளது. உங்கள் சிறந்த முறையைச் சரிபார்த்து, HAProxy இல் பயனுள்ள சுகாதாரப் பரிசோதனையை வசதியாகச் செயல்படுத்தவும்.