اعلی دستیابی کے لیے Keepalived کے ساتھ HAProxy کو کیسے ترتیب دیا جائے۔

A Ly Dstyaby K Ly Keepalived K Sat Haproxy Kw Kys Trtyb Dya Jay



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

یہ ایک اوپن سورس فریم ورک ہے جو کہ لینکس سسٹمز کے لیے ڈیزائن کیا گیا ہے تاکہ لوڈ بیلنسنگ اور آئی پی فیل اوور کا انتظام کر کے اعتبار حاصل کیا جا سکے۔ Keepalived کا استعمال لوڈ بیلنسر جیسے HAProxy کے ساتھ کیا جاتا ہے تاکہ بھروسے کے حصول کے لیے سروس کے تسلسل کو یقینی بنایا جا سکے۔ یہ پوسٹ Keepalived کو متعارف کراتی ہے اور اسے HAProxy کے ساتھ ترتیب دینے کے مراحل سے گزرتی ہے۔

Keepalived کیا ہے؟

ایک لوڈ بیلنسر، جیسا کہ HAProxy، آپ کی سائٹ پر ٹریفک کو سنبھالنے میں کارآمد ہے۔ تاہم، آپ کو ایسا معاملہ مل سکتا ہے جہاں دستیابی کی ضمانت نہ ہو۔ Keepalived ایک اوپن سورس سافٹ ویئر ہے جو آپ کے لوڈ بیلنسر کے ساتھ IP فیل اوور کا انتظام کرکے اعلی دستیابی کو یقینی بناتا ہے اور HAProxy کے ساتھ بغیر کسی رکاوٹ کے کام کرتا ہے۔







Keepalived کی فراہم کردہ کچھ اہم خصوصیات میں درج ذیل شامل ہیں:



1. ورچوئل آئی پی مینجمنٹ

تمام سرورز کو Keepalived کی طرف سے ایک ورچوئل IP کے ساتھ تفویض کیا گیا ہے جو انہیں ایک ورچوئل ہستی کے طور پر کام کرنے کی اجازت دیتا ہے۔ Keepalived فیل اوور کی صورت میں، ڈاؤن ٹائم سے گریز کرتے ہوئے ورچوئل IP کو بیک اپ سرور میں منتقل کرتا ہے۔



2. صحت کی جانچ

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





3. لوڈ بیلنسنگ

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

Keepalived کے ساتھ HAProxy کو کیسے ترتیب دیا جائے۔

ہم نے پہلے ہی ذکر کیا ہے کہ Keepalived لوڈ بیلنس کے ساتھ کام کرتا ہے۔ اس معاملے کے لیے، ہم نے اعلی دستیابی کے لیے Keepalived کے ساتھ HAProxy سیٹ اپ کیا۔ اس لیے، ہمیں پہلے HAProxy انسٹال کرنا چاہیے اور پھر اسے سیٹ کرنا چاہیے۔ دیئے گئے اقدامات پر عمل کریں:



مرحلہ 1: HAProxy انسٹال کریں۔

HAProxy کو انسٹال کرنا ایک سیدھا سادہ عمل ہے، خاص طور پر چونکہ HAProxy پہلے سے طے شدہ لینکس ریپوزٹری سے دستیاب ہے۔ ہم اس ٹیوٹوریل کے لیے Ubuntu کے ساتھ کام کر رہے ہیں، لیکن اس کے اقدامات دوسرے distros کی طرح ہیں۔

HAProxy انسٹال کرنے سے پہلے، ذخیرہ کو جلدی سے اپ ڈیٹ کریں۔

$ sudo مناسب اپ ڈیٹ

اب آپ HAProxy کو انسٹال کرنے کے لیے APT استعمال کر سکتے ہیں۔

$ sudo apt-get انسٹال کریں۔ haproxy

مرحلہ 2: HAProxy کو ترتیب دیں۔

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

HAProxy config فائل تک رسائی حاصل کرکے شروع کریں۔

$ sudo نینو / وغیرہ / haproxy / haproxy.cfg

اس معاملے کے لیے، ہم وضاحت کرتے ہیں کہ ہم پورٹ 80 کے ذریعے آنے والے تمام کنکشنز کو سنیں گے۔ بیک اینڈ کے لیے، ہم ٹریفک کو تقسیم کرنے کے لیے راؤنڈ رابن کا استعمال کرتے ہوئے دو سرورز کی وضاحت کرتے ہیں۔ یقینی بنائیں کہ آپ سرور IPs کو اپنے حقیقی سرورز سے مماثل کرنے کے لیے تبدیل کرتے ہیں۔

تشکیل فائل میں مطلوبہ ترامیم کرنے کے بعد، اسے محفوظ کریں اور باہر نکلیں۔ آخر میں، HAProxy کو دوبارہ شروع کریں۔

مرحلہ 3: Keepalived انسٹال کریں۔

Keepalived لینکس میں پہلے سے انسٹال نہیں ہوتا ہے۔ اس طرح، ہمیں اسے اے پی ٹی کا استعمال کرتے ہوئے ڈیفالٹ ریپوزٹری سے انسٹال کرنا چاہیے۔ درج ذیل کمانڈ کو چلائیں:

$ sudo apt-get انسٹال کریں۔ زندہ رکھا

جب اشارہ کیا جائے تو 'y' دبا کر انسٹالیشن کی تصدیق کریں۔ انسٹالیشن مکمل ہونے کے بعد، اس کے ورژن کو چیک کرکے تصدیق کریں کہ Keepalived انسٹال ہوچکا ہے۔

مرحلہ 4: Keepalived کو ترتیب دیں۔

Keepalived کو کنفیگر کرنے کے لیے، ہمیں اس کی کنفیگریشن فائل تک رسائی حاصل کرنی ہوگی جو '/etc/keepalived/keepalived.conf' پر واقع ہے۔ یہاں، ہمیں اس بات کی وضاحت کرنی چاہیے کہ ہم کیسے چاہتے ہیں کہ Keepalived HAProxy کو اعلیٰ دستیابی کی پیشکش کرے۔

ہمیں ورچوئل IP ایڈریس، دستیاب سرورز کی ترجیح، اور HAProxy کی صحت اور حیثیت کو جانچنے کے لیے اسکرپٹ کی وضاحت کرنی چاہیے۔ درج ذیل کنفیگریشن فائل میں، ہم ہر دو سیکنڈ میں HAProxy کی حیثیت کا اندازہ لگانے کے لیے 'chk_haproxy' اسکرپٹ بناتے ہیں۔ ہم اسے 'enp0s3' کو اپنے نیٹ ورک انٹرفیس کے طور پر استعمال کرتے ہوئے بتاتے ہیں اور 'VI_1' کے نام سے ایک VRRP مثال بناتے ہیں۔ اپنے کیس سے ملنے کے لیے نیٹ ورک انٹرفیس کو تبدیل کریں۔

پھر بھی، ایک روٹر ID سیٹ کریں جو آپ کے انٹرفیس کے لیے کام کرے اور سیٹ کریں کہ کون سا ورچوئل IP ایڈریس استعمال کرنا ہے۔ آپ کو توثیق کا پاس ورڈ بھی تبدیل کرنا چاہیے۔

مرحلہ 5: Keepalived کو دوبارہ شروع کریں۔


ایک بار جب آپ کی Keepalived کنفیگریشن مکمل ہو جائے تو فائل کو محفوظ کریں اور ٹیکسٹ ایڈیٹر کو بند کریں۔ اس کے بعد آپ کنفیگریشن فائل کی درستگی کو چیک کر سکتے ہیں اور Keepalived سروس کو دوبارہ شروع کر سکتے ہیں۔

آخر میں، یقینی بنائیں کہ HAProxy اور Keepalived شروع ہو گئے ہیں۔

یہی ہے. آپ اعلی دستیابی کے لیے Keepalived کے ساتھ HAProxy سیٹ اپ کرتے ہیں۔ آپ اس بات کی تصدیق کے لیے متعین ورچوئل IP استعمال کر سکتے ہیں کہ سیٹ اپ توقع کے مطابق کام کرتا ہے۔

نتیجہ

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