एप्लिकेशन स्वास्थ्य को बनाए रखने, मुद्दों की पहचान करने और उच्च उपलब्धता सुनिश्चित करने के लिए कुबेरनेट्स क्लस्टर के प्रदर्शन का अवलोकन और प्रबंधन करना महत्वपूर्ण है। मैं आपको कुबेक्टल और हेल्म का उपयोग करके एक व्यापक निगरानी समाधान स्थापित करने, ग्राफाना, लोकी और प्रोमेथियस को आपके क्लस्टर में तैनात करने और बाहरी पहुंच के लिए इनग्रेस स्थापित करने के बारे में बताऊंगा।
हम निम्नलिखित प्रमुख चरणों को कवर करेंगे:
आवश्यकताएँ
शुरू करने से पहले, सुनिश्चित करें कि आपके पास निम्नलिखित हैं:
चरण 1: एक मॉनिटरिंग नेमस्पेस बनाएं
नेमस्पेस आपके कुबेरनेट्स संसाधनों को तार्किक रूप से विभाजित और व्यवस्थित करने में आपकी सहायता करते हैं। टकरावों से बचने और निगरानी संसाधनों को अलग रखने के लिए, हम निगरानी उपकरणों के लिए एक समर्पित नामस्थान बनाएंगे।
1. मॉनिटरिंग नेमस्पेस लागू करें: निम्नलिखित सामग्री को monitoring-namespace.yml फ़ाइल में सहेजें:
apiसंस्करण: v1
प्रकार: नेमस्पेस
मेटाडेटा:
नाम: निगरानी
लेबल:
app.kubernetes.io/name: निगरानी
app.kubernetes.io/instance: निगरानी
2. Kubectl का उपयोग करके नामस्थान लागू करें:
kubectl लागू करें -f मॉनिटरिंग-namespace.yml
यह कमांड आपके कुबेरनेट्स क्लस्टर में मॉनिटरिंग नामक एक नया नेमस्पेस बनाता है।
चरण 2: हेल्म स्थापित करें और ग्राफाना रिपोजिटरी जोड़ें
कुबेरनेट्स पैकेज मैनेजर हेल्म, ग्राफाना, लोकी और प्रोमेथियस जैसे जटिल अनुप्रयोगों को तैनात करना आसान बनाता है। यहां बताया गया है कि हेल्म कैसे स्थापित करें और आवश्यक रिपॉजिटरी कैसे सेट करें।
सुडो स्नैप इंस्टाल हेल्म --क्लासिक
यह कमांड स्नैप का उपयोग करके हेल्म स्थापित करता है, जो लिनक्स के लिए एक पैकेज प्रबंधन प्रणाली है।
हेल्म रेपो ग्राफाना जोड़ें https://grafana.github.io/hem-charts
हेल्म रेपो अपडेट
यह सुनिश्चित करता है कि हेल्म के पास ग्राफाना रिपॉजिटरी से नवीनतम चार्ट हैं।
चरण 3: हेल्म के साथ लोकी, प्रोमेथियस और ग्राफाना को तैनात करें
अब जब हेल्म स्थापित और कॉन्फ़िगर किया गया है, तो हम ग्राफाना हेल्म चार्ट का उपयोग करके लोकी, प्रोमेथियस और ग्राफाना को तैनात करेंगे।
1. हेल्म इंस्टालेशन कमांड चलाएँ:
हेल्म अपग्रेड--इंस्टॉल लोकी--नेमस्पेस=मॉनिटरिंग ग्राफाना/लोकी-स्टैक \
--तय करना Grafana.enabled=true,prometheus.enabled=true,prometheus.alertmanager.persistentVolume.enabled=false,prometheus.server.persistentVolume.enabled=false, loki.persistence.enabled=true, loki.persistence.storageClassName=gp2, loki. दृढ़ता.आकार=100Gi --सेट nodeSelector.name=node.kubernetes.io/description=all_production
ए: ग्राफाना: **यह हेल्म चार्ट के भीतर मॉनिटरिंग डैशबोर्ड टूल ग्राफाना को सक्षम बनाता है।
**बी: प्रोमेथियस: **प्रोमेथियस मेट्रिक्स एकत्र करने के लिए सक्षम है, जबकि अलर्टमैनेजर और प्रोमेथियस सर्वर के लिए लगातार वॉल्यूम स्टोरेज कॉन्फ़िगरेशन को सरल बनाने के लिए अक्षम हैं।
**सी: लोकी: लोकी, लॉग एग्रीगेशन टूल, जीपी2 स्टोरेज क्लास का उपयोग करके 100जीआई के लगातार वॉल्यूम स्टोरेज के साथ सक्षम है।
--इंस्टॉल ध्वज यह सुनिश्चित करता है कि स्टैक स्थापित है यदि इसे पहले तैनात नहीं किया गया है। --upgrade ध्वज स्टैक को नवीनतम संस्करण में अद्यतन करता है यदि यह पहले से स्थापित है।
2. इंस्टालेशन सत्यापित करें: सफल इंस्टालेशन के बाद, मॉनिटरिंग नेमस्पेस में चल रहे पॉड्स की स्थिति जांचें:
kubectl को पॉड्स मिलते हैं -n मॉनिटरिंग
आपको ग्राफाना, प्रोमेथियस, लोकी और प्रोमटेल (जो लोकी में लॉग भेजता है) के लिए पॉड देखना चाहिए।
चरण 4: बाहरी पहुंच के लिए प्रवेश सेट करें
अपने क्लस्टर के बाहर से ग्राफाना, प्रोमेथियस या लोकी तक पहुंचने के लिए, आपको एक इनग्रेस संसाधन को कॉन्फ़िगर करने की आवश्यकता है। यह बाहरी HTTP/S को निगरानी सेवाओं तक पहुंच की अनुमति देता है।
*1. एक इनग्रेस रिसोर्स बनाएं: निम्नलिखित उदाहरण को एक monitoring-ingress.yml फ़ाइल में सहेजें:
*
एपीआईसंस्करण: नेटवर्किंग.k8s.io/v1
प्रकार: प्रवेश
मेटाडेटा:
नाम: निगरानी-प्रवेश
नामस्थान: निगरानी
एनोटेशन:
Kubernetes.io/ingress.class: "nginx"
cert-manager.io/cluster-issuer: Letsencrypt
विशिष्टता:
टीएलएस:
- होस्ट:
- your-domain.com
गुप्त नाम: प्रमाणित नाम
नियम:
- होस्ट: your-domain.com
http:
पथ:
- पथ: /
पथ प्रकार: उपसर्ग
बैकएंड:
सेवा:
नाम: लोकी-ग्राफाना
पत्तन:
संख्या: 80
यह इनग्रेस कॉन्फ़िगरेशन डोमेन नाम {your-domain.com} के तहत ग्राफाना, प्रोमेथियस और लोकी के लिए रूटिंग सेट करता है। आपको अपने-domain.com को अपने वास्तविक डोमेन से बदलना होगा और अपने क्लस्टर के बाहरी आईपी को इंगित करने के लिए DNS को कॉन्फ़िगर करना होगा।
2. प्रवेश संसाधन लागू करें:
kubectl लागू करें -f मॉनिटरिंग-ingress.yml
एक बार लागू होने के बाद, इनग्रेस नियंत्रक होस्टनाम के आधार पर ट्रैफ़िक को उचित सेवाओं पर रूट कर देगा।
kubectl प्रवेश प्राप्त करें -n निगरानी
सुनिश्चित करें कि सेवाओं को बाहरी रूप से एक्सेस करने के लिए आपके एड्रेस कॉलम में एक बाहरी आईपी है।
चरण 5: मॉनिटरिंग डैशबोर्ड तक पहुंचें
एक बार इनग्रेस ठीक से कॉन्फ़िगर हो जाए और डीएनएस आपके क्लस्टर की ओर इशारा कर रहा हो, तो आप ग्राफाना, प्रोमेथियस और लोकी तक पहुंच सकते हैं।
निष्कर्ष
केवल कुछ कमांड के साथ, आपने अपने कुबेरनेट्स क्लस्टर पर हेल्म का उपयोग करके एक संपूर्ण मॉनिटरिंग स्टैक को सफलतापूर्वक तैनात किया है। हेल्म चार्ट का लाभ उठाकर, आप आसान पहुंच के लिए इनग्रेस को एकीकृत करते हुए ग्राफाना, लोकी और प्रोमेथियस जैसे जटिल अनुप्रयोगों की तैनाती को सरल बनाते हैं। अब आपके पास एक शक्तिशाली अवलोकन क्षमता सेटअप है जो आपको वास्तविक समय में लॉग और मेट्रिक्स की निगरानी करने की अनुमति देता है, जिससे आपको अपने कुबेरनेट्स अनुप्रयोगों को अधिक प्रभावी ढंग से प्रबंधित और अनुकूलित करने में मदद मिलती है।
यह हेल्म-आधारित परिनियोजन स्केलेबिलिटी सुनिश्चित करता है और अपग्रेड या कॉन्फ़िगरेशन परिवर्तनों को सरल बनाता है, जिससे उत्पादन वातावरण में अवलोकन क्षमता को प्रबंधित करना आसान हो जाता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3