Kubernetes تعیناتی بنائیں

Kubernetes T Ynaty Bnayy



Kubernetes کے لیے تعیناتیاں اس ٹول کی نمائندگی کرتی ہیں جو Kubernetes کو یہ جاننے کی اجازت دیتا ہے کہ کنٹینرائزڈ ایپلی کیشنز والی پوڈ کی مثالوں میں ترمیم یا تخلیق کیسے کی جائے۔ تعیناتیاں پوڈ ریپلیکاز کی چھوٹی تعداد کو چلا سکتی ہیں، ضرورت پڑنے پر پہلے کی تعیناتیوں پر واپس جا سکتی ہیں، اور اپ ڈیٹ شدہ کوڈ کے لیے رول آؤٹ کو بھی سنبھال سکتی ہیں۔

طریقہ کار

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

مثال نمبر 01

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







Kubernetes کلسٹر میں دو نوڈس ہیں۔ کلسٹر میں نوڈ یا تو ورچوئل مشین ہو سکتا ہے یا کمپیوٹر بریئر میٹل فارم (فزیکل) اور اس کی فعالیت اس طرح کام کرنا ہے جیسے مشین کلسٹر کے لیے کام کرتی ہے۔ ہر نوڈ کا اپنا کیوبلیٹ ہوتا ہے اور یہ Kubernetes کلسٹر کے کنٹرول طیارے سے بات چیت کرتا ہے اور نوڈ کا انتظام بھی کرتا ہے۔ لہذا، کلسٹر کا فنکشن، جب بھی ہم کبرنیٹس پر کوئی ایپلیکیشن ڈیپلائی کرتے ہیں، ہم بالواسطہ طور پر کبرنیٹس کلسٹر میں کنٹرول ہوائی جہاز کو کنٹینرز شروع کرنے کے لیے کہتے ہیں۔ پھر، کنٹرول طیارہ کنٹینرز کو کبرنیٹس کلسٹرز کے نوڈس پر چلاتا ہے۔



اس کے بعد یہ نوڈس کبرنیٹس کے API کے ذریعے کنٹرول ہوائی جہاز کے ساتھ ہم آہنگ ہوتے ہیں جسے کنٹرول پینل کے ذریعے ظاہر کیا جاتا ہے۔ اور یہ آخری صارف بھی Kubernetes کلسٹر کے ساتھ تعامل کے لیے استعمال کر سکتا ہے۔



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





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

$ منی کیوب ورژن

کمانڈ کا نتیجہ یہ ہوگا:



اب، ہم آگے بڑھیں گے اور بغیر کمانڈ کے منی کیوب کو شروع کرنے کی کوشش کریں گے۔

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

مندرجہ بالا کمانڈ کے بعد، minikube نے اب ایک الگ ورچوئل مشین شروع کی ہے اور اس ورچوئل مشین میں، Kubernetes کلسٹر اب چل رہا ہے۔ لہذا، ہمارے پاس اب ٹرمینل میں ایک چل رہا ہے Kubernetes کلسٹر ہے۔ کلسٹر کی معلومات کو تلاش کرنے یا اس کے بارے میں جاننے کے لیے، ہم 'kubectl' کمانڈ انٹرفیس استعمال کریں گے۔ اس کے لیے، ہم 'kubectl version' کمانڈ ٹائپ کرکے چیک کریں گے کہ آیا kubectl انسٹال ہوا ہے۔

$ kubectl ورژن

kubectl انسٹال اور تشکیل شدہ ہے۔ یہ کلائنٹ اور سرور کے بارے میں بھی معلومات فراہم کرتا ہے۔ اب، ہم Kubernetes کلسٹر چلا رہے ہیں تاکہ ہم kubectl کمانڈ کو 'kubectl cluster-info' کے طور پر استعمال کرکے اس کی تفصیلات کے بارے میں جان سکیں۔

$ kubectl کلسٹر کی معلومات

آئیے اب 'kubectl get nodes' کمانڈ کا استعمال کرکے Kubernetes کلسٹر کے نوڈس کو چیک کرتے ہیں۔

$ kubectl نوڈس حاصل کریں

کلسٹر میں صرف ایک نوڈ ہے اور اس کی حیثیت تیار ہے جس کا مطلب ہے کہ یہ نوڈ اب درخواستیں قبول کرنے کے لیے تیار ہے۔

اب ہم kubectl کمانڈ لائن انٹرفیس کا استعمال کرتے ہوئے ایک تعیناتی بنائیں گے جو Kubernetes API سے متعلق ہے اور Kubernetes کلسٹر کے ساتھ تعامل کرتا ہے۔ جب ہم ایک نئی تعیناتی بناتے ہیں، تو ہمیں ایپلیکیشن کی تصویر اور ایپلیکیشن کی کاپیوں کی تعداد بتانی ہوتی ہے، اور جب ہم تعیناتی بناتے ہیں تو اسے کال اور اپ ڈیٹ کیا جا سکتا ہے۔ Kubernetes پر چلنے کے لیے نئی تعیناتی بنانے کے لیے، 'Kubernetes create deployment' کمانڈ استعمال کریں۔ اور اس کے لیے، تعیناتی کے لیے نام اور درخواست کے لیے تصویر کی جگہ بھی بتا دیں۔

اب، ہم نے ایک نئی ایپلیکیشن تعینات کی ہے اور اوپر کی کمانڈ نے اس نوڈ کی تلاش کی ہے جس پر ایپلیکیشن چل سکتی ہے جو اس معاملے میں صرف ایک تھی۔ اب، 'kubectl get deployments' کمانڈ کا استعمال کرتے ہوئے تعیناتیوں کی فہرست حاصل کریں اور ہمارے پاس درج ذیل آؤٹ پٹ ہو گا:

$ kubectl کی تعیناتی حاصل کریں۔

ہم میزبان اور Kubernetes کلسٹر کے درمیان تعلق پیدا کرنے کے لیے پراکسی ہوسٹ پر ایپلیکیشن دیکھیں گے۔

پراکسی دوسرے ٹرمینل میں چل رہی ہے جہاں ٹرمینل 1 میں دی گئی کمانڈز پر عمل کیا جاتا ہے اور ان کا نتیجہ سرور پر ٹرمینل 2 میں دکھایا جاتا ہے: 8001۔

پوڈ کبرنیٹس ایپلیکیشن کے لیے عمل درآمد کی اکائی ہے۔ تو یہاں، ہم پوڈ کا نام بتائیں گے اور API کے ذریعے اس تک رسائی حاصل کریں گے۔

نتیجہ

یہ گائیڈ Kubernetes میں تعیناتی بنانے کے طریقوں پر بحث کرتا ہے۔ ہم نے Minikube Kubernetes کے نفاذ پر تعیناتی چلائی ہے۔ ہم نے پہلے Kubernetes کلسٹر بنانا سیکھا اور پھر اس کلسٹر کا استعمال کرتے ہوئے ہم نے Kubernetes پر مخصوص ایپلیکیشن چلانے کے لیے ایک تعیناتی بنائی۔