कई वातावरण (क्यूए, स्टेजिंग, प्रोडक्शन, देव, आदि) के प्रबंधन के लिए K8S के साथ एक अच्छा अभ्यास माना जाता है?
एक उदाहरण के रूप में, यह कहें कि एक टीम एक ऐसे उत्पाद पर काम कर रही है जिसमें फ्रंट-एंड एप्लिकेशन के साथ कुछ एपीआई तैनात करने की आवश्यकता होती है। आमतौर पर, इसके लिए कम से कम 2 वातावरण की आवश्यकता होगी:
- मंचन: ग्राहक को जारी करने से पहले पुनरावृत्तियों / परीक्षण और सत्यापन के लिए
- उत्पादन: यह ग्राहक के लिए उपयोग किया जाने वाला वातावरण है। स्थिर और अच्छी तरह से जांची जाने वाली विशेषताएं होनी चाहिए।
इसलिए, यह मानते हुए कि टीम कुबेरनेट्स का उपयोग कर रही है, इन वातावरणों की मेजबानी करने के लिए एक अच्छा अभ्यास क्या होगा? अब तक हमने दो विकल्पों पर विचार किया है:
- प्रत्येक वातावरण के लिए K8s क्लस्टर का उपयोग करें
- केवल एक K8s क्लस्टर का उपयोग करें और उन्हें विभिन्न नामस्थानों में रखें।
(1) सबसे सुरक्षित विकल्प लगता है क्योंकि यह संभावित मानवीय गलती और मशीन विफलताओं के जोखिमों को कम करता है, जिससे उत्पादन पर्यावरण खतरे में पड़ सकता है। हालांकि, यह अधिक मास्टर मशीनों की लागत और अधिक बुनियादी ढांचे के प्रबंधन की लागत के साथ आता है।
(2) ऐसा लगता है कि यह बुनियादी ढांचे और परिनियोजन प्रबंधन को आसान बनाता है क्योंकि एक एकल क्लस्टर है लेकिन यह कुछ प्रश्न उठाता है जैसे:
- यह कैसे सुनिश्चित किया जाता है कि एक मानवीय गलती उत्पादन पर्यावरण को प्रभावित कर सकती है?
- यह कैसे सुनिश्चित किया जाए कि मंचन के माहौल में एक उच्च भार उत्पादन वातावरण में प्रदर्शन का नुकसान नहीं होगा?
कुछ अन्य चिंताएँ हो सकती हैं, इसलिए मैं St8Overflow पर K8s समुदाय तक पहुँच रहा हूँ ताकि लोग इस तरह की चुनौतियों से कैसे निपटें, इसकी बेहतर समझ हो सके।