HAProxy میں صحت کی مؤثر جانچ کو کیسے نافذ کیا جائے۔

Haproxy My Sht Ky Mwthr Janch Kw Kys Nafdh Kya Jay



اگر آپ مؤثر سرور کی صحت کی جانچ پر غور نہیں کرتے ہیں تو اپنے لوڈ بیلنسر کے طور پر کام کرنے کے لیے اپنے HAProxy کو ترتیب دینا نامکمل ہے۔ صحت کی جانچ کو لاگو کرنے سے درخواست کی قابل اعتمادی اور دستیابی کو بہتر بنانے میں مدد ملتی ہے۔ HAProxy صحت کی جانچ کو لاگو کرنے میں معاونت کرتا ہے جو بیک اینڈ سرورز کو چیک کرتے ہیں کہ ان کی صحت کی حالت استعمال کے لیے موزوں ہے۔

صرف وہ سرورز جو صحت کی جانچ کو پاس کرتے ہیں گردش میں شامل کیے جاتے ہیں۔ اس طرح، کسی سرور کو استعمال کے لیے منتخب نہیں کیا جائے گا اگر یہ ہیلتھ چیک پاس نہیں کرتا ہے، جس سے ڈاؤن ٹائم کے امکانات کم ہوتے ہیں۔ اس پوری پوسٹ کے دوران، ہم اس بات کو سمجھیں گے کہ HAProxy میں صحت کی جانچ کس طرح کام کرتی ہے اور صحت کی ایک مؤثر جانچ کو لاگو کرنے میں کیا ضرورت ہے۔ چلو شروع کریں!

HAProxy میں صحت کی جانچ کیا ہیں؟

HAProxy کو ترتیب دیتے وقت، ایک کام یہ بتانا ہے کہ آپ کی ایپلیکیشن کے لیے کون سے بیک اینڈ سرورز استعمال کیے جائیں۔ اس طرح، ٹریفک کو سرورز پر تقسیم کیا جائے گا تاکہ کسی بھی سرور کو اوور لوڈنگ سے بچا جا سکے۔ تاہم، صحت کی جانچ سے یہ معلوم کرنے میں مدد ملتی ہے کہ سرور صرف ٹریفک کو سنبھالنے کے لیے منتخب کیا گیا ہے اگر یہ ٹھیک ہے۔







ہر سرور پر صحت کی جانچ پڑتال کی جاتی ہے، اور صرف پاس ہونے والوں کو لوڈ بیلنسنگ میں استعمال کے لیے گردش میں شامل کیا جاتا ہے۔ صحت کی جانچ آپ کے بیک اینڈ سرور پر پہلے سے طے شدہ اختتامی نقطہ پر درخواستیں، جیسے کہ TCP یا HTTP بھیج کر کی جاتی ہے۔ صحت کے نتائج جو بیک اینڈ سرور کے ذریعہ واپس بھیجے جاتے ہیں اس کی حیثیت کا تعین کرتے ہیں۔ مثال کے طور پر، سرور کا اسٹیٹس اوپر یا نیچے دکھا سکتا ہے یا اوکے 200 اسٹیٹس بھیج سکتا ہے جو اس بات کی تصدیق کرتا ہے کہ سرور صحت مند ہے۔



صحت کی جانچ کو ترتیب دینے میں، اس بات کو یقینی بنائیں کہ آپ کے پاس صحت کی جانچ کے لیے استعمال کرنے کے لیے پہلے سے طے شدہ نقطہ ہے۔ مختلف اختیارات ہیں جنہیں آپ اپنا اختتامی نقطہ ترتیب دینے کے لیے استعمال کر سکتے ہیں۔ مثال کے طور پر، آپ سرور کی حیثیت کے لحاظ سے اسٹیٹس کوڈ یا پیغام واپس کرسکتے ہیں۔ آپ کی HAProxy کنفگ فائل کے بیک اینڈ سیکشن میں تمام صحت کی جانچ کی وضاحت کی گئی ہے۔ تشکیل فائل کو کھولیں اور اپنا فرنٹ اینڈ سیکشن بنائیں۔



$sudo nano /etc/haproxy/haproxy.cfg

یہاں فرنٹ اینڈ سیکشن کی ایک بنیادی مثال ہے جو پورٹ 80 کو باندھتا ہے، اعدادوشمار کا صفحہ سیٹ کرتا ہے، اور پہلے سے طے شدہ بیک اینڈ کی وضاحت کرتا ہے۔





اگلا مرحلہ بیک اینڈ سیکشن بنانا ہے۔ HAProxy میں صحت کی ایک مؤثر جانچ کو کیسے نافذ کیا جائے اس کی مختلف مثالیں درج ذیل ہیں۔



مثال 1: مؤثر فعال صحت کی جانچ کو نافذ کرنا

HAProxy میں صحت کی جانچ کو لاگو کرنے کا ایک آسان طریقہ فعال صحت کی جانچ کو ترتیب دینا ہے۔ اس اختیار کے ساتھ، HAProxy سرور کے ساتھ جڑنے کی کوشش کرے گا۔ اگر کوئی جواب نہیں بھیجا جاتا ہے، تو یہ سرور کو غیر صحت بخش سمجھتا ہے اور اسے گردش سے ہٹا دیتا ہے۔ فعال ہیلتھ چیکس کو لاگو کرنے کا طے شدہ طریقہ HAProxy کے لیے ہر سرور لائن پر 'چیک' کلیدی لفظ شامل کرنا ہے تاکہ ان سب کو چیک کیا جا سکے۔

اگرچہ یہ پہلی مثال کام کرتی ہے، لیکن یہ صحت کی جانچ کو نافذ کرنے کا بہترین طریقہ نہیں ہے۔ اس کے علاوہ، یہ پہلے سے طے شدہ ترتیبات کا استعمال کرتا ہے۔ مثال کے طور پر، چیکوں کے درمیان وقفہ، جس کو انٹر کے طور پر نشان زد کیا گیا ہے، دو سیکنڈ پر سیٹ کیا گیا ہے۔ زوال، ناکام چیکوں کی اجازت دی گئی تعداد، تین پر سیٹ ہے۔ ان ترتیبات کو ایڈجسٹ کرنے کے لیے، ترجیحی انٹر ٹائم اور چیکس کی تعداد کی وضاحت کریں جیسا کہ درج ذیل مثال میں دکھایا گیا ہے:

مثال 2: HTTP ہیلتھ چیک کو لاگو کرنا

ایچ ٹی ٹی پی ہیلتھ چیک کے ساتھ، HAProxy تمام سرورز کو 'چیک' کلیدی لفظ کے ساتھ ایک HTTP درخواست بھیجے گا۔ جواب کی بنیاد پر، یہ سرور کی حیثیت کو ختم کرتا ہے۔ کامیاب سرور کے جوابات کی مثالیں 2xx یا 3xx کی حد میں آتی ہیں۔ 200 OK جیسے جواب کا مطلب ہے کہ سرور اچھی حالت میں ہے۔

اس مثال کے لیے، اپنے بیک اینڈ میں 'آپشن httpchk' لائن شامل کریں۔

مثال 3: GET کی درخواست کے ساتھ کام کرنا

ایچ ٹی ٹی پی کی درخواست کرتے وقت HAProxy راستے '/' پر ایک GET درخواست بھیجتا ہے۔ تاہم، اگر آپ نے اپنا اختتامی نقطہ کسی اور راستے میں کنفیگر کیا ہوا ہے، تو آپ URL کا راستہ بتا سکتے ہیں جیسے کہ '/health'، اور HAProxy اسے GET کی درخواست بھیجے گا۔

آپ کے اختتامی نقطہ کی بنیاد پر، سرور سرور کی حیثیت کا تعین کرنے کے لیے جواب کا استعمال کرے گا۔ اسے نافذ کرنے کا طریقہ یہاں ہے:

مثال 4: ایک GET درخواست کے راستے اور جواب کی حیثیت کی وضاحت کرنا

اختتامی نقطہ کے ساتھ، آپ یہ بتا سکتے ہیں کہ سرور کی حیثیت کا تعین کرنے کے لیے اختتامی نقطہ GET درخواست سے کس کامیاب ردعمل کی توقع کی جائے۔ اس مثال کے لیے، ہماری GET درخواست کا راستہ '/health' ہے، اور ہم اس بات کی تصدیق کے لیے 200 رسپانس اسٹیٹس کی توقع کرتے ہیں کہ لوڈ بیلنسنگ اور دیگر کاموں کو سنبھالنے کے لیے سرور اچھی صحت میں ہے۔

ایک بار جب آپ نے اپنی HAProxy کنفیگریشن فائل میں ترمیم کر لی تو تبدیلیوں کے مؤثر ہونے کے لیے HAProxy کو دوبارہ شروع کریں۔

یہی ہے! آپ نے اپنے HAProxy پر صحت کے موثر چیکس کو نافذ کیا۔ آپ اعدادوشمار کے صفحے تک رسائی حاصل کر سکتے ہیں یا درج ذیل کمانڈ کے ساتھ لاگ فائل کو چیک کر کے تصدیق کر سکتے ہیں کہ صحت کی جانچ توقع کے مطابق کام کر رہی ہے۔

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

نتیجہ

آپ HAProxy میں مختلف طریقوں سے صحت کی ایک مؤثر جانچ کو نافذ کر سکتے ہیں۔ صحت کی جانچ HAProxy کنفیگریشن فائل کے بیک اینڈ سیکشن میں لاگو ہوتی ہے، اور اس پوسٹ میں اس کے بارے میں مختلف مثالیں دی گئی ہیں۔ اپنا مثالی طریقہ چیک کریں اور HAProxy میں صحت کی ایک مؤثر جانچ کو آرام سے نافذ کریں۔