0

कुबेरनेट्स मेनिफेस्ट लिंटर

लिंट कुबेरनेट्स YAML आपके ब्राउज़र में पूरी तरह से ऑफ़लाइन, क्लस्टर-हार्डनिंग सर्वोत्तम प्रथाओं के विरुद्ध प्रकट होता है।

Buy Me a Coffee at ko-fi.com
प्रसंस्करण... 0%
YAML को पार्स करना
चलना प्रकट
सख्त करने के नियमों की जाँच करना
हो गया

नतीजा

कुबेरनेट्स मैनिफ़ेस्ट की समीक्षा आम तौर पर एक पुल अनुरोध में आंख द्वारा की जाती है, जिसका अर्थ है कि वही मुट्ठी भर सख्त गलतियाँ इसे उत्पादन में लाती रहती हैं: बिना मेमोरी सीमा वाला एक परिनियोजन जो अंततः OOM-मार दिया जाता है और इसके साथ एक नोड लेता है, एक कंटेनर जो खुशी से रूट के रूप में चलता है क्योंकि कोई भी runAsNonRoot सेट नहीं करता है, या एक पॉड को `:latest` जैसे छवि टैग पर पिन किया जाता है जो रोलआउट के नीचे चुपचाप बदल जाता है। यह लिंटर उस समय समस्या के उस वर्ग को पकड़ लेता है जब आप किसी रनिंग क्लस्टर, क्यूबेक्टल संदर्भ या किसी भी क्रेडेंशियल की आवश्यकता के बिना एक मैनिफ़ेस्ट पेस्ट करते हैं।

हुड के तहत इसमें एक छोटा हाथ से रोल किया हुआ YAML पार्सर शामिल है जो विशेष रूप से YAML के यथार्थवादी उपसमुच्चय के लिए लिखा गया है जिसे Kubernetes वास्तव में उपयोग करता है: `---`- अलग किए गए दस्तावेज़, इंडेंटेशन-आधारित नेस्टिंग, `कुंजी: मान` और नेस्टेड ब्लॉक मैपिंग, `-` अनुक्रम आइटम जिसमें मानचित्रों की सूची, उद्धृत और गैर-उद्धृत स्केलर, टिप्पणियाँ, और `|`/`>` मल्टी-लाइन जैसी चीजों के लिए ब्लॉक स्केलर शामिल हैं। कॉन्फ़िगमैप मान या एनोटेशन. इसमें कोई बाहरी YAML लाइब्रेरी शामिल नहीं है - पार्सर और नियम इंजन दोनों टूल के साथ बंडल किए गए हैं और पूरी तरह से आपके ब्राउज़र में चलते हैं।

नियम तालिका सुप्रसिद्ध क्लस्टर-हार्डनिंग मार्गदर्शन - सीआईएस कुबेरनेट्स बेंचमार्क, क्यूब-स्कोर, और पॉड सुरक्षा मानक "प्रतिबंधित" प्रोफ़ाइल पर तैयार की गई है - और लापता संसाधन अनुरोधों/सीमाओं के लिए प्रत्येक कंटेनर की जांच करती है, कंटेनर जो रूट के रूप में या विशेषाधिकार प्राप्त मोड में चल सकते हैं, लंबे समय से चलने वाले वर्कलोड (परिनियोजन, स्टेटफुलसेट्स, डेमनसेट्स) पर लापता जीवंतता और तत्परता जांच, होस्टपाथ वॉल्यूम माउंट जो होस्ट को उजागर करते हैं फ़ाइल सिस्टम, होस्टनेटवर्क उपयोग, और गैर-पुनरुत्पादित `:नवीनतम` या अनटैग कंटेनर छवियां। निष्कर्षों को दस्तावेज़ और कंटेनर द्वारा समूहीकृत किया जाता है, प्रत्येक पर एक स्पष्ट त्रुटि/चेतावनी की गंभीरता के साथ ताकि आप बता सकें कि वास्तव में क्या जोखिम भरा है, जो कि केवल एक सर्वोत्तम अभ्यास है।

यह पॉड, परिनियोजन, स्टेटफुलसेट, डेमनसेट, जॉब, रेप्लिकासेट और क्रोनजॉब संसाधनों को समझते हुए हेल्म टेम्प्लेट रेंडर या `कस्टमाइज़ बिल्ड` आउटपुट से सीधे चिपकाए गए एकल मैनिफ़ेस्ट या संपूर्ण मल्टी-डॉक्यूमेंट फ़ाइलों पर काम करता है। क्योंकि सब कुछ स्थानीय रूप से चलता है, ऐसे मैनिफ़ेस्ट को चिपकाना सुरक्षित है जिसमें आंतरिक सेवा नाम, वास्तविक संसाधन आकार, या कुछ और जो आप किसी तृतीय-पक्ष एपीआई को नहीं भेजना चाहेंगे - त्वरित प्री-कमिट विवेक जांच, एक कोड समीक्षा सहायता, या बस यह सीखने के लिए उपयोगी है कि व्यवहार में "कठोर" वास्तव में कैसा दिखता है।