Kubernetes میں DNS کے ساتھ مسائل۔ عوامی پوسٹ مارٹم
نوٹ ترجمہ: یہ کمپنی کے انجینئرنگ بلاگ سے عوامی پوسٹ مارٹم کا ترجمہ ہے۔ تیاری کرو. یہ Kubernetes کلسٹر میں conntrack کے ساتھ ایک مسئلہ کی وضاحت کرتا ہے، جس کی وجہ سے کچھ پروڈکشن سروسز کا جزوی وقت بند ہو گیا۔
یہ مضمون ان لوگوں کے لیے کارآمد ہو سکتا ہے جو پوسٹ مارٹم کے بارے میں کچھ اور جاننا چاہتے ہیں یا مستقبل میں کچھ ممکنہ DNS مسائل کو روکنا چاہتے ہیں۔
یہ DNS نہیں ہے۔
یہ DNS نہیں ہو سکتا
یہ DNS تھا۔
پریپلائی میں پوسٹ مارٹم اور عمل کے بارے میں تھوڑا سا
پوسٹ مارٹم پیداوار میں خرابی یا کسی واقعے کی وضاحت کرتا ہے۔ پوسٹ مارٹم میں واقعات کی ٹائم لائن، صارف کے اثرات، بنیادی وجہ، کیے گئے اقدامات اور سیکھے گئے اسباق شامل ہیں۔
پیزا کے ساتھ ہفتہ وار میٹنگز میں، تکنیکی ٹیم کے درمیان، ہم مختلف معلومات کا اشتراک کرتے ہیں۔ ایسی ملاقاتوں کے سب سے اہم حصوں میں سے ایک پوسٹ مارٹم ہے، جس میں اکثر سلائیڈز کے ساتھ ایک پریزنٹیشن اور واقعے کا مزید گہرائی سے تجزیہ کیا جاتا ہے۔ اگرچہ ہم پوسٹ مارٹم کے بعد تالیاں نہیں بجاتے ہیں، لیکن ہم "کوئی الزام نہیں" کا کلچر تیار کرنے کی کوشش کرتے ہیں۔بے قصور ثقافت)۔ ہمیں یقین ہے کہ پوسٹ مارٹم لکھنے اور پیش کرنے سے ہمیں (اور دیگر) مستقبل میں ایسے ہی واقعات کو روکنے میں مدد مل سکتی ہے، اسی لیے ہم انہیں شیئر کر رہے ہیں۔
کسی واقعے میں ملوث افراد کو یہ محسوس کرنا چاہیے کہ وہ سزا یا انتقام کے خوف کے بغیر تفصیل سے بات کر سکتے ہیں۔ کوئی الزام نہیں! پوسٹ مارٹم لکھنا کوئی سزا نہیں بلکہ پوری کمپنی کے لیے سیکھنے کا موقع ہے۔
مختصر طور پر: Kubernetes کلسٹر میں کچھ خدمات کے لیے جزوی DNS کی عدم دستیابی (26 منٹ)
اثر و رسوخ: خدمات A, B اور C کے لیے 15000 ایونٹس ضائع ہوئے۔
بنیادی وجہ: Kube-proxy conntrack ٹیبل سے ایک پرانی اندراج کو صحیح طریقے سے ہٹانے سے قاصر تھا، اس لیے کچھ سروسز اب بھی غیر موجود پوڈز سے جڑنے کی کوشش کر رہی تھیں۔
محرک: Kubernetes کلسٹر کے اندر کم بوجھ کی وجہ سے، CoreDNS-autoscaler نے تعیناتی میں پوڈز کی تعداد کو تین سے کم کر کے دو کر دیا۔
حل: ایپلیکیشن کی اگلی تعیناتی نے نئے نوڈس کی تخلیق کا آغاز کیا، CoreDNS-autoscaler نے کلسٹر کو پیش کرنے کے لیے مزید پوڈز شامل کیے، جس نے کنٹراک ٹیبل کو دوبارہ لکھنے پر اکسایا۔
پتہ لگانا: پرومیتھیس مانیٹرنگ نے سروسز A، B اور C کے لیے بڑی تعداد میں 5xx غلطیوں کا پتہ لگایا اور آن ڈیوٹی انجینئرز کو کال شروع کی۔
کبانا میں 5xx غلطیاں
سرگرمی
ایکشن
قسم
ذمہ دار
ٹاسک
CoreDNS کے لیے آٹو اسکیلر کو غیر فعال کریں۔
روکا
امیٹ یو۔
DEVOPS-695
سی پی یو کے استعمال کو کم سے کم کرنے کے لیے، لینکس کرنل کچھ استعمال کرتا ہے جسے کونٹراک کہتے ہیں۔ مختصراً، یہ ایک ایسی افادیت ہے جس میں NAT ریکارڈز کی فہرست ہوتی ہے جو ایک خاص جدول میں محفوظ ہوتے ہیں۔ جب اگلا پیکٹ اسی پوڈ سے پہلے کی طرح اسی پوڈ پر آئے گا، تو حتمی IP ایڈریس دوبارہ شمار نہیں کیا جائے گا، بلکہ اسے کانٹراک ٹیبل سے لیا جائے گا۔
کونٹراک کیسے کام کرتا ہے۔
کے نتائج
یہ کچھ مفید لنکس کے ساتھ ہمارے پوسٹ مارٹم کی ایک مثال تھی۔ خاص طور پر اس مضمون میں، ہم ایسی معلومات کا اشتراک کرتے ہیں جو دوسری کمپنیوں کے لیے مفید ہو سکتی ہے۔ اسی لیے ہم غلطیاں کرنے سے نہیں ڈرتے اور اسی لیے ہم اپنے پوسٹ مارٹم میں سے ایک کو پبلک کرتے ہیں۔ یہاں کچھ اور دلچسپ عوامی پوسٹ مارٹم ہیں: