CloudWatch क्रॉस-अकाउंट ऑब्ज़र्वेबिलिटी
एक ही AWS रीजन में कई AWS अकाउंट्स में डिप्लॉय किए गए एप्लिकेशन की निगरानी चुनौतीपूर्ण हो सकती है। Amazon CloudWatch का क्रॉस-अकाउंट ऑब्ज़र्वेबिलिटी1 एक AWS Region2 में कई अकाउंट्स में फैले एप्लिकेशन की सहज निगरानी और समस्या निवारण को सक्षम करके इस प्रक्रिया को सरल बनाता है। यह ट्यूटोरियल दो AWS अकाउंट्स के बीच क्रॉस-अकाउंट ऑब्ज़र्वेबिलिटी कॉन्फ़िगर करने पर स्क्रीनशॉट के साथ एक चरण-दर-चरण गाइड प्रदान करता है। इसके अतिरिक्त, व्यापक स्केलेबिलिटी के लिए AWS Organizations के माध्यम से भी डिप्लॉयमेंट प्राप्त किया जा सकता है।
शब्दावली
Amazon CloudWatch के साथ प्रभावी क्रॉस-अकाउंट ऑब्ज़र्वेबिलिटी के लिए, आपको निम्नलिखित प्रमुख शब्दों को समझना होगा:
| शब्द | विवरण |
|---|---|
| Monitoring Account | एक केंद्रीय AWS अकाउंट जो कई सोर्स अकाउंट्स से जनरेट किए गए ऑब्ज़र्वेबिलिटी डेटा को देख और उसके साथ इंटरैक्ट कर सकता है |
| Source Account | एक व्यक्तिगत AWS अकाउंट जो इसमें रहने वाले रिसोर्सेज के लिए ऑब्ज़र्वेबिलिटी डेटा जनरेट करता है |
| Sink | monitoring अकाउंट में एक रिसोर्स जो सोर्स अकाउंट्स के लिए लिंक करने और अपना ऑब्ज़र्वेबिलिटी डेटा साझा करने के लिए अटैचमेंट पॉइंट के रूप में कार्य करता है। प्रत्येक अकाउंट में प्रति AWS Region2 एक Sink हो सकता है |
| ऑब्ज़र्वेबिलिटी Link | एक रिसोर्स जो सोर्स अकाउंट और monitoring अकाउंट के बीच स्थापित कनेक्शन का प्रतिनिधित्व करता है, ऑब्ज़र्वेबिलिटी डेटा साझा करने की सुविधा प्रदान करता है। Links सोर्स अकाउंट द्वारा प्रबंधित किए जाते हैं। |
Amazon CloudWatch में क्रॉस-अकाउंट ऑब्ज़र्वेबिलिटी को सफलतापूर्वक कॉन्फ़िगर और प्रबंधित करने के लिए इन परिभाषाओं को समझें।
विचार करने योग्य बातें
-
अकाउंट सीमाएँ: आप एक monitoring अकाउंट से 100,000 सोर्स अकाउंट्स तक लिंक कर सकते हैं, सबसे बड़े एंटरप्राइज़ सेटअप को भी समायोजित करते हुए।
-
क्रॉस रीजन: क्रॉस-रीजन कार्यक्षमता इस सुविधा में स्वचालित रूप से अंतर्निहित है। विभिन्न रीजन्स से मेट्रिक्स को एक ही ग्राफ़ या एक ही डैशबोर्ड पर प्रदर्शित करने के लिए आपको कोई अतिरिक्त कदम उठाने की आवश्यकता नहीं है।
-
डेटा रिटेंशन: सभी डेटा रिटेंशन सोर्स अकाउंट स्तर पर हैंडल किया जाता है। Monitoring अकाउंट डेटा स्टोर या डुप्लिकेट नहीं करता। Monitoring अकाउं ट के पास सोर्स अकाउंट्स के डेटा तक केवल-पढ़ने की पहुँच होती है।
-
लागत प्रभाव: आश्चर्यजनक रूप से, क्रॉस-अकाउंट ऑब्ज़र्वेबिलिटी से जुड़ी कोई अतिरिक्त लागत नहीं है। चूँकि डेटा सोर्स अकाउंट्स में रहता है और monitoring अकाउंट द्वारा केवल पढ़ा जाता है, इसलिए कोई अतिरिक्त डेटा ट्रांसफ़र या स्टोरेज शुल्क नहीं है।
-
ट्रेस साझा करने के लिए क्रॉस-अकाउंट ऑब्ज़र्वेबिलिटी का उपयोग करते समय, ट्रेस डुप्लिकेट किए जाते हैं और monitoring अकाउंट में स्टोर किए जाते हैं। यह प्रक्रिया सोर्स अकाउंट के लिए अतिरिक्त लागत नहीं लगाती।
-
CloudWatch सर्विस कोटा के अनुसार, प्रत्येक डैशबोर्ड में अधिकतम 500 विजेट हो सकते हैं। एक अद्वितीय विजेट में अधिकतम 500 मेट्रिक्स हो सकते हैं, और एक अद्वितीय डैशबोर्ड में सभी विजेट्स में अधिकतम 2500 मेट्रिक्स हो सकते हैं।
-
Amazon CloudWatch Logs Insights में, यदि आप उन्हें व्यक्तिगत रूप से न िर्दिष्ट करते हैं तो प्रति क्वेरी अधिकतम 50 लॉग ग्रुप क्वेरी कर सकते हैं। हालाँकि, यदि आप लॉग ग्रुप मानदंड का उपयोग करते हैं तो आप एक क्वेरी में 10,000 लॉग ग्रुप तक शामिल कर सकते हैं।
-
CloudWatch क्रॉस-अकाउंट ऑब्ज़र्वेबिलिटी में Logs और Metrics के साथ काम करते समय, आप monitoring अकाउंट के साथ सभी namespaces से मेट्रिक्स साझा करने या namespaces के एक उपसमूह में फ़िल्टर करने का विकल्प चुन सकते हैं।
-
क्रॉस-अकाउंट परिदृश्य में Alarms के साथ काम करते समय कुछ विचार:
- CloudWatch Metrics Insights एक शक्तिशाली SQL क्वेरी इंजन है जिसका उपयोग आप बड़े पैमाने पर मेट्रिक्स क्वेरी करने के लिए कर सकते हैं।
- Alarm सेट करते समय, यह एक ऐसी क्वेरी से होना चाहिए जो एक ही time series लौटाए।
- क्रॉस-रीजन कार्यक्षमता alarms के लिए समर्थित नहीं है।
-
Data Protection Policy: यदि सोर्स अकाउंट में data protection policy सक्षम है, तो monitoring अकाउंट तब तक डेटा एक्सेस नहीं कर पाएगा जब तक स्पष्ट अनुमतियाँ न दी जाएँ।
AWS Console के माध्यम से चरण-दर-चरण ट्यूटोरियल
पूर्वापेक्षाएँ
-
इस ट्यूटोरियल को पूरा करने के लिए, आपको तीन AWS अकाउंट्स की आवश्यकता है: एक Monitoring Account और दो Source Accounts।
-
क्रॉस-अकाउंट links बनाने के लिए एक user या role के पास कम से कम AWS CloudWatch क्रॉस-अकाउंट सेटअप गाइड3 में दस्तावेज़ित अनुम तियाँ होनी चाहिए।

चरण 1: Monitoring Account सेट करें
Monitoring Account
Monitoring अकाउंट सेट करने के लिए, इन चरणों का पालन करें:
-
CloudWatch कंसोल https://console.aws.amazon.com/cloudwatch पर खोलें और AWS रीजन चुनें।

-
नेविगेशन पैनल में, Settings चुनें।

-
डिफ़ॉल्ट Account Global settings का उपयोग करें, और फिर Monitoring account configuration सेक्शन में Configure चुनें।

-
Monitoring अकाउंट के साथ साझा करने के लिए डेटा प्रकार चुनने के बाद, Source Account IDs को "List source accounts" बॉक्स में पेस्ट करें।

CloudWatch क्रॉस-अकाउंट ऑब्ज़र्वेबिलिटी में telemetry प्रकार कॉन्फ़िगर करते समय, उनकी निर्भरताओं को समझना महत्वपूर्ण है। Metrics, Logs और Traces स्वतंत्र रूप से कॉन्फ़िगर किए जा सकते हैं, जबकि अन्य CloudWatch कार्यक्षमताओ ं की विशिष्ट आवश्यकताएँ हैं।
| Telemetry Type | Description | Dependencies for CloudWatch Cross-Account Observability |
|---|---|---|
| Metrics in Amazon CloudWatch | सभी metric namespaces साझा करें या उपसमूह में फ़िल्टर करें | कोई नहीं |
| Log Groups in Amazon CloudWatch Logs | सभी लॉग ग्रुप्स साझा करें या उपसमूह में फ़िल्टर करें | कोई नहीं |
| ServiceLens and X-Ray | सभी ट्रेस साझा करें (कोई फ़िल्टरिंग उपलब्ध नहीं) | Metrics, Logs, और Traces सक्षम करना आवश्यक |
| Applications in Amazon CloudWatch Application Insights | सभी एप्लिकेशन साझा करें | Metrics, Logs, Traces, और Application Insights एप्लिकेशन सक्षम करना आवश्यक |
| Monitors in CloudWatch Internet Monitor | सभी मॉनिटर साझा करें | Metrics, Logs, और Internet Monitor - Monitors सक्षम करना आवश्यक |
- आपके Monitoring Account के AWS Console में, आपको निम्नलिखित दिखाई देगा, जो पुष्टि करता है कि Monitoring Account सफलतापूर्वक कॉन्फ़िगर हो गया है।

अपने monitoring अकाउंट को सफलतापूर्वक कॉन्फ़िगर करने के बाद, आपको अपने source अकाउंट्स को लिंक करना होगा। चरण 2 में, हम एक व्यक्तिगत अकाउंट कॉन्फ़िगर करने की प्रक्रिया से गुज़रेंगे।
-
AWS Console में, Resources to link accounts चुनें

-
AWS Console में, 'Configuration details' सेक्शन एक्सपैंड करें, यहाँ आपको Monitoring account sink ARN मिलेगा जिसे आपको कॉपी करके सेव करना होगा।

सारांश
पिछले चरणों में, हमने Monitoring अकाउंट sink को Source Accounts के साथ लिंक करने के लिए कॉन्फ़िगर किया।
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": [
"${WorkloadAcc1}",
"${WorkloadAcc2}"
]
},
"Action": [
"oam:CreateLink",
"oam:UpdateLink"
],
"Resource": "*",
"Condition": {
"ForAllValues:StringEquals": {
"oam:ResourceTypes": [
"AWS::Logs::LogGroup",
"AWS::CloudWatch::Metric",
"AWS::XRay::Trace"
]
}
}
}
]
}
चरण 2: Source Accounts को लिंक करें
व्यक्तिगत अकाउंट्स को लिंक करना
चरण 1 में monitoring अकाउंट कॉन्फ़िगर करने के बाद, अब हम एक व्यक्तिगत AWS source अकाउंट कॉन्फ़िगर करेंगे।
-
CloudWatch कंसोल खोलें और AWS रीजन चुनें।

-
नेविगेशन पैनल में, Settings चुनें।

-
Source account configuration सेक्शन में Configure चुनें।

-
Data Types के रूप में Logs, Metrics, और Traces चुनें। फिर Monitoring account sink ARN दर्ज करें।

-
पॉप-अप बॉक्स में 'Confirm' टाइप करके पुष्टि करें।

-
'Source account configuration' सेक्शन में, आपको एक हरा स्टेटस दिखाई देगा जो इंगित करता है कि अकाउंट 'linked' है।

दोनों Workload अकाउंट्स से ऑब्ज़र्वेबिलिटी telemetry को Monitoring अकाउंट के साथ साझा करने के लिए WorkloadAcc2 के लिए चरण 2 दोहराएँ