Kubernetes EndpointSlices بنائیں

Kubernetes Endpointslices Bnayy



ایک اختتامی ٹکڑا آپ کو نیٹ ورک کے اختتامی نقطہ کو ٹریک کرنے کی اجازت دیتا ہے جو Kubernetes کلسٹر سے منسلک ہے۔ آپ Kubernetes ماحول میں EndpointSlices کے بارے میں اس مضمون کے ذریعے مزید جان سکتے ہیں جو ہم نے آپ کے لیے بنایا ہے۔ اس ٹیوٹوریل میں، ہم آپ کو یہ جاننے میں مدد کریں گے کہ کبرنیٹس کلسٹر میں اینڈ پوائنٹ سلائس کیا ہے اور آپ کبرنیٹس میں اینڈ پوائنٹ سلائس کیسے بنا سکتے ہیں۔ ہم کچھ kubectl کمانڈز کا مظاہرہ کریں گے جو ہمیں Kubernetes کلسٹر میں ایک اینڈ پوائنٹ بنانے کی اجازت دیتے ہیں۔

Kubernetes میں EndpointSlice کیا ہے؟

Kubernetes میں EndpointSlice ایک نیٹ ورک اینڈ پوائنٹ ٹریکر ہے۔ یہ Kubernetes کلسٹر میں نیٹ ورک کے اختتامی مقامات کی نگرانی کرنا ممکن بناتا ہے۔ آسان الفاظ میں، یہ ایک ایسی چیز ہے جو اسے تفویض کردہ ہر پوڈ سے IP ایڈریس حاصل کرتی ہے۔ Kubernetes سروس مواصلات کے لیے پوڈ کے اندرونی IP پتوں کا ریکارڈ حاصل کرنے کے لیے اس چیز کا حوالہ دیتی ہے۔ مزید برآں، یہ اختتامی نقطے پوڈز کے ذریعے اپنے آپ کو کسی خدمت کے سامنے لانے کے لیے استعمال کیے جاتے ہیں۔

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









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



مثال کے طور پر، Kubernetes سروس میں تقریباً 9,000 پوڈز ہیں جو کسی نہ کسی طرح 2MB اینڈ پوائنٹ کے وسائل میں ختم ہوتے ہیں۔ ایک ہی اینڈ پوائنٹ میں خدمات کے یہ تمام اینڈ پوائنٹ وسائل ہوتے ہیں۔ اگر کوئی نیٹ ورک اینڈ پوائنٹ اینڈ پوائنٹ میں تبدیل ہوتا ہے، تو اینڈ پوائنٹ کے پورے وسائل کو کلسٹر میں ہر نوڈ کے درمیان تقسیم کرنے کی ضرورت ہے۔ جب 3000 نوڈس والے کلسٹر سے نمٹنے کی بات آتی ہے، تو یہ ایک بہت بڑا مسئلہ بن جاتا ہے کیونکہ ہر نوڈ پر بڑی تعداد میں اپ ڈیٹ بھیجنے کی ضرورت ہوتی ہے۔ اس لیے، جب آپ صرف ایک ہی اختتامی نقطہ میں زیادہ پیمانہ کرتے ہیں، تو نیٹ ورک کو اسکیل کرنا اتنا ہی مشکل ہو جاتا ہے۔





تاہم، EndpointSlices اس مسئلے کو حل کر کے Kubernetes کو اس قابل بنا کر کہ جتنا ضرورت ہو سکیل کر سکیں۔ ایک واحد اختتامی نقطہ استعمال کرنے کے بجائے جس میں IP پتوں اور ان کے متعلقہ پورٹ نمبروں کی ایک بڑی فہرست ہو، متعدد EndpointSlices استعمال کریں۔ یہ EndpointSlices ایک بہت بڑے سنگل اینڈ پوائنٹ کے چھوٹے ٹکڑے ہیں۔ یہ سلائسیں بہت چھوٹی ہیں، لیکن وہ اس بوجھ کو کم کرتی ہیں جو بہت بڑا اختتامی نقطہ کی وجہ سے ہوتا ہے۔ آپ ایک EndpointSlice میں 100 pods تک ذخیرہ کر سکتے ہیں۔ یہ EndpointSlices آپ کو سروس کو ایک مخصوص پوڈ میں تقسیم کرنے میں مدد کرتے ہیں۔ اگر کوئی نیٹ ورک اینڈ پوائنٹ تبدیل ہوتا ہے، تو آپ کو صرف اینڈ پوائنٹ سلائس پر اپ ڈیٹ بھیجنے کی ضرورت ہوتی ہے جس میں زیادہ سے زیادہ 100 پوڈ ہوتے ہیں۔ نیٹ ورک میں دیگر تمام پوڈز اچھوتے رہتے ہیں۔

اب، آئیے سیکھتے ہیں کہ ہم کبرنیٹس اینڈ پوائنٹ سلائس کیسے بنا سکتے ہیں۔



کبرنیٹس میں اینڈ پوائنٹ سلائس کیسے بنائے جاتے ہیں؟

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

آپ کے پاس وہ اقدامات ہوسکتے ہیں جو آپ کو درج ذیل مثالوں میں Kubernetes کلسٹر میں EndpointSlices بنانے کا طریقہ سیکھنے دیتے ہیں۔

مرحلہ 1: منی کیوب کلسٹر شروع کریں۔

پہلا اور سب سے اہم قدم یہ یقینی بنانا ہے کہ منی کیوب کلسٹر فعال ہے۔ ایک غیر فعال منی کیوب کلسٹر آپ کو Kubernetes ماحول میں کوئی کام کرنے کی اجازت نہیں دے گا، اس لیے یقینی بنائیں کہ یہ ایکٹیو موڈ میں ہے۔ اس بات کو یقینی بنانے کے لیے کہ منی کیوب کلسٹر اوپر اور چل رہا ہے، درج ذیل کمانڈ کا استعمال کریں:

> منی کیوب شروع کریں۔

اگر آپ کا منی کیوب کلسٹر پہلے شروع نہیں ہوا ہے یا اگر یہ سلیپ موڈ میں ہے، تو یہ کمانڈ اسے بیدار کرتی ہے اور اسے چلاتی ہے۔ اب، آپ کے پاس ایک فعال منی کیوب کلسٹر ہے۔ آپ اپنے Kubernetes ماحول میں EndpointSlice بنانے کے لیے تیار ہیں۔

مرحلہ 2: YAML فائل کے ساتھ ایک تعیناتی بنائیں

YAML فائل کو سب سے زیادہ استعمال کیا جاتا ہے Kubernetes میں تعیناتیاں بنانے کے لیے۔ آپ پہلے سے موجود تعیناتی YAML فائل استعمال کر سکتے ہیں یا آپ درج ذیل کمانڈ کے ساتھ ایک نئی فائل بنا سکتے ہیں۔

> nano endpoint.yaml

یہ 'endpoint.yaml' کے نام سے ایک نئی YAML فائل بناتا ہے جہاں آپ کنفیگریشن کے لیے تعیناتی کی تعریف محفوظ کر سکتے ہیں۔ درج ذیل اسکرین شاٹ میں تعیناتی کی تعریف دیکھیں:

مرحلہ 3: YAML فائل کا استعمال کرتے ہوئے اینڈ پوائنٹ سلائس بنائیں

اب جب کہ ہمارے پاس YAML فائل ہے جس میں تعیناتی کی تعریف ہے، ہم اسے اپنے Kubernetes کلسٹر میں EndpointSlices بنانے کے لیے استعمال کرتے ہیں۔ ہمیں کنفیگریشن فائل کو تعینات کرنے کی ضرورت ہے تاکہ ہمارے پاس Kubernetes کلسٹر میں EndpointSlices ہو سکے۔ ہم کنفیگریشن فائل کو تعینات کرنے کے لیے درج ذیل کمانڈ کا استعمال کرتے ہیں۔

> kubectl create -f endpoint.yaml

Kubernetes ماحول میں، وسائل 'kubectl create' کمانڈ کا استعمال کرتے ہوئے بنائے جاتے ہیں۔ لہذا، ہم YAML کنفیگریشن فائل سے EndpointSlices بنانے کے لیے 'kubectl create' کمانڈ استعمال کرتے ہیں۔

نتیجہ

ہم نے Kubernetes ماحول میں EndpointSlices کو دریافت کیا۔ Kubernetes میں EndpointSlice ایک ایسی چیز ہے جو Kubernetes کلسٹر میں تمام نیٹ ورک اینڈ پوائنٹس کو ٹریک کرنے کے لیے استعمال ہوتی ہے۔ یہ Kubernetes کلسٹر میں ایک بہت بڑے اور واحد اینڈ پوائنٹ کا بہترین متبادل ہے کیونکہ یہ بہتر اسکیل ایبلٹی اور توسیع پذیری کے اختیارات کی اجازت دیتا ہے۔ یہ EndpointSlices Kubernetes کلسٹر کو نوڈس اور کنٹرول جہاز پر کم محنت لگا کر بہتر کارکردگی دینے کے قابل بناتے ہیں۔ ایک مثال کی مدد سے، ہم نے سیکھا کہ کبرنیٹس کلسٹر میں EndpointSlices کیسے بنانا ہے۔