•  अनतोरेह-प्रकाश

कंटेनरों पर

कंटेनरों का उपयोग, क्या और क्यों

कंटेनर क्या हैं

[कंटेनर] प्रतिबंधित वातावरण को दिया गया एक नाम है, जिसे लिनक्स के भीतर उप-प्रणालियों के संग्रह द्वारा संभव बनाया गया है जैसे [cgroups ] तथा [namespaces ]. हालांकि विकी पेज शब्द का उपयोग करता है वर्चुअलाइजेशन मुझे लगता है कि शब्द एकांत अधिक उपयुक्त है, क्योंकि वर्चुअलाइजेशन का अर्थ है कि बीच-बीच में अनुवाद की एक परत होती है, जबकि cgroups और नामस्थान जो करते हैं वह प्रक्रियाओं को अलग और प्रासंगिक बनाना है।

Cgroups का उपयोग संसाधनों के लिए आवंटन नीतियों को परिभाषित करने के लिए किया जाता है, आमतौर परRAM तथाCPU , जबकि नाम स्थान माउंट-पॉइंट, नेटवर्किंग और उपयोगकर्ताओं जैसे संदर्भों को नियंत्रित करते हैं। [Apparmor] इसके बजाय कंटेनर वातावरण के लिए क्षमताओं को प्रतिबंधित करने का एक तरीका प्रदान करता है, जबकि कंटेनर के बिना एपर्मर, जैसा कि विकिपीडिया में लिखा गया है, प्रोग्राम-आधारित है।

जैसे उपकरण फ्लैटपाकी तथा फायरजेलउपयोगकर्ता अनुप्रयोगों की पहुंच सतह को बाधित करने के लिए कंटेनरों का उपयोग करें। [विंडोज़] कंटेनर समकक्ष प्रणालियों को लागू करते हैं, और [डब्लूएसएल] के माध्यम से लिनक्स कंटेनरों के लिए समर्थन भी प्रदान करते हैं।

लेकिन क्यों?

बहुत ज्यादा?

जब मैंने निर्माण शुरू किया देवदार , मैंने जीथब रिलीज से वितरित अपनी खुद की कंटेनर छवियों को शिपिंग के साथ थोड़ा सा प्रयोग किया। मुख्य लिपि (trees ) आदेश थे

Usage: trees APP [FLAGS]...
'APP'               Install apps through ostree deltas checkouts.
    -b, --base      base image (alp,trub...)
    -n, --name      same as APP (etcd,hhvm...)
    -f, --force     clear before install
    -d, --delete    clear checkout and prune ostree repo
ck, check           make sure the apps repo is mounted
co, checkout        builds the trees of links for the specified APP
    -t 	            optional path where to build the tree

यह फ्लैटपैक के समान था, क्योंकि मैं मुख्य पाइन छवि के आधार पर एक ओस्ट्री स्थिर डेल्टा शिपिंग कर रहा था, और [जांच कर रहा था] नया ऐप आधारित रूटफ, और उसके बाद एक कंटेनर इंस्टेंस लॉन्च कर रहा था। ओपनवीजेड में कंटेनर चलाने के लिए v7 से पहले बहुत सारी समस्याएं थीं (चूंकि आप जानते हैं ... आप चल रहे थे a नेस्ट कंटेनर-आधारित [VPS] पर कंटेनर, और कर्नेल का एक कांटा थाv2.6 (!))...वह एक था विशाल समय की बर्बादी।

कब?

मेरा प्रयास बिना आवश्यकता के न्यूनतम कंटेनर रनटाइम प्राप्त करना थाdocker या अधिक बीफ़ियर सॉफ़्टवेयर, क्योंकि docker शायद सबसे हल्का है, और डोकर झुंड , बिल्ट-इन होने के कारण बहुत सारी कार्यक्षमता साझा करता है और आपको ऑर्केस्ट्रेशन के लिए सबसे उपयोगी सुविधाएँ प्रदान करता है, जो इसे होस्ट सिस्टम आवश्यकताओं की तुलना में सबसे अधिक दुबला बनाता है k8s या बंजारा.

कंटेनर एक विशेषता होने के बावजूद आप ज्यादातर बार चाहते हैं, ऑर्केस्ट्रेशन नहीं है। मुझे लगता है शिथिल लक्षित विज्ञापन अभियान आकर्षित करते हैं गैर-इरादा ऐसे सॉफ़्टवेयर के लिए दर्शकों को लक्षित करें, जिससे किसी को विश्वास हो कि यह उपयोगी हो सकता है उन्हें , इस आधार पर बल दिए बिना कि आप सचमुच इस तरह के सेटअप की जटिलता लागत को सही ठहराने के लिए बहुत अधिक (!) की संख्या सुविधा टूलींग k8s क्लस्टर की बूटस्ट्रैपिंग प्रक्रिया में सहायता के लिए k8s के आसपास बनाया गया पर्याप्त सबूत होना चाहिए ...

निष्कर्ष

जब उपयोगकर्ता पालतू और मवेशी सर्वर के बीच अंतर नहीं बता पाते हैं, तो ऑर्केस्ट्रेशन टूल मल्टी होस्ट मशीनों के प्रबंधन के लिए समाधान के लिए जगह बनाते हैं। कई मौकों पर, सॉफ्टवेयर जैसे ansible, pyinfra या यहां तक ​​कि सीएसएचओ या आशु सभी को हमेशा की जरूरत है।

पोस्ट टैग: