AWS X-Ray के साथ कंटेनर ट्रेसिंग
ऑब्ज़र्वेबिलिटी बेस्ट प्रैक्टिसेज़ गाइड के इस सेक्शन में, हम AWS X-Ray के साथ Container Tracing से संबंधित निम्नलिखित विषयों पर गहराई से चर्चा करेंगे:
- AWS X-Ray का परिचय
- AWS Distro for OpenTelemetry के लिए Amazon EKS add-ons का उपयोग करके ट्रेस संग्रह
- निष्कर्ष
परिचय
AWS X-Ray एक सेवा है जो आपके एप्लिकेशन द्वारा सर्व किए गए अनुरोधों के बारे में डेटा एकत्र करती है, और उस डेटा को देखने, फ़िल्टर करने और समस्याओं और अनुकूलन के अवसरों की पहचान करने के लिए अंतर्दृष्टि प्राप्त करने के लिए टूल्स प्रदान करती है। किसी भी ट्रेस किए गए अनुरोध के लिए, आप न केवल अनुरोध और प्रतिक्रिया के बारे में विस्तृत जानकारी देख सकते हैं, बल्कि आपका एप्लिकेशन downstream AWS रिसोर्सेज, माइक्रोसर्विसेज, डेटाबेस और वेब APIs को जो कॉल करता है उसके बारे में भी।
अपने एप्लिकेशन को इंस्ट्रूमेंट करने में आपके एप्लिकेशन के भीतर आने वाले और जाने वाले अनुरोधों और अन्य इवेंट्स के लिए ट्रेस डेटा भेजना शामिल है, साथ ही प्रत्येक अनुरोध के बारे में मेटाडेटा भी। कई इंस्ट्रूमेंटेशन परिदृश्यों में केवल कॉन्फ़िगरेशन परिवर्तन की आवश्यकता होती है। अधिक जानकारी के लिए Instrumenting your application देखें।
हम AWS Distro for OpenTelemetry के लिए Amazon EKS add-ons का उपयोग करके अपने Amazon EKS क्लस्टर से ट्रेस एकत्र करके कंटेनरीकृत एप्लिकेशन ट्रेसिंग के बारे में जानेंगे।
AWS Distro for OpenTelemetry के लिए Amazon EKS add-ons का उपयोग करके ट्रेस संग्रह
AWS X-Ray एप्लिकेशन-ट्रेसिंग कार्यक्षमता प्रदान करता है, जो सभी तैनात माइक्रोसर्विसेज में गहन अंतर्दृष्टि देता है। X-Ray के साथ, प्रत्येक अनुरोध को ट्रेस किया जा सकता है क्योंकि यह शामिल माइक्रोसर्विसेज के माध्यम से प्रवाहित होता है।
AWS Distro for OpenTelemetry (ADOT) OpenTelemetry प्रोजेक्ट का एक सुरक्षित, AWS-समर्थित वितरण है। Amazon EKS अब उपयोगकर्ताओं को क्लस्टर चालू होने के बाद किसी भी समय ADOT को add-on के रूप में सक्षम करने की अनुमति देता है।
ADOT add-on एक Kubernetes Operator का कार्यान्वयन है। Add-on OpenTelemetryCollector नामक एक कस्टम रिसोर्स के लिए वॉच करता है और कस्टम रिसोर्स में निर्दिष्ट कॉन्फ़िगरेशन सेटिंग्स के आधार पर ADOT Collector के जीवनचक्र का प्रबंधन करता है।
ADOT Collector में पाइपलाइन की अवधारणा है जिसमें तीन मुख्य प्रकार के कंपोनेंट शामिल हैं, अर्थात् receiver, processor, और exporter। एक receiver वह है जिसके माध्यम से डेटा collector में आता है। एक processor एक वैकल्पिक कंपोनेंट है। एक exporter यह निर्धारित करने के लिए उपयोग किया जाता है कि मेट्रिक्स, लॉग्स, या ट्रेस किस गंतव्य को भेजना है।
निम्नलिखित आरेख एक ट्रेस पाइपलाइन के साथ कॉन्फ़िगर किए गए ADOT Collector को दर्शाता है, जो टेलीमेट्री डेटा AWS X-Ray को भेजता है। ट्रेस पाइपलाइन में AWS X-Ray Receiver और AWS X-Ray Exporter के इंस्टेंस शामिल हैं।

चित्र: AWS Distro for OpenTelemetry के लिए Amazon EKS add-ons का उपयोग करके ट्रेस संग्रह।
आइए EKS क्लस्टर में ADOT add-on इंस्टॉल करने और फिर वर्कलोड से टेलीमेट्री डेटा एकत्र करने के विवरण में जाएँ। ADOT add-on इंस्टॉल करने से पहले आवश्यक पूर्वापेक्षाओं की सूची:
- Kubernetes वर्शन 1.19 या उच्चतर का समर्थन करने वाला EKS क्लस्टर।
- Certificate Manager, यदि पहले से क्लस्टर में इंस्टॉल नहीं है।
- ADOT add-on इंस्टॉल करने के लिए विशेष रूप से EKS add-ons के लिए Kubernetes RBAC अनुमतियाँ।
आप निम्नलिखित कमांड का उपयोग करके EKS के विभिन्न वर्शन के लिए सक्षम add-ons की सूची देख सकते हैं:
aws eks describe-addon-versions
JSON आउटपुट में अन्य के बीच ADOT add-on सूचीबद्ध होना चाहिए:
{
"addonName":"adot",
"type":"observability",
"addonVersions":[
{
"addonVersion":"v0.45.0-eksbuild.1",
"architecture":[
"amd64"
],
"compatibilities":[
{
"clusterVersion":"1.22",
"platformVersions":[
"*"
],
"defaultVersion":true
},
{
"clusterVersion":"1.21",
"platformVersions":[
"*"
],
"defaultVersion":true
},
{
"clusterVersion":"1.20",
"platformVersions":[
"*"
],
"defaultVersion":true
},
{
"clusterVersion":"1.19",
"platformVersions":[
"*"
],
"defaultVersion":true
}
]
}
]
}