GH GambleHub

अवलोकन स्टैक

1) आपको एक अवलोकन स्टैक की आवश्यकता क्यों है

रैपिड आरसीए और कम एमटीटीआर: लक्षण से मिनटों में कारण।

एसएलओ प्रबंधन: त्रुटियों/विलंबता का माप, गलत बजट द्वारा सतर्क।

रिलीज नियंत्रण: कैनरी गणना, मैट्रिक्स द्वारा ऑटो-रोलबैक।

सुरक्षा और लेखा परीक्षा: पहुंच मार्ग, विसंगतियाँ, कानूनी पकड़।

FinOps पारदर्शिता: भंडारण/अनुरोध की लागत, लागत-प्रति-SLO।

कार्यप्रणाली: गोल्डन सिग्नल (विलंबता/यातायात/त्रुटियां/संतृप्ति), RED, USE।

2) बेसिक स्टैक आर्किटेक्चर

परत द्वारा घटक

संग्रह/एजेंट: निर्यातक, प्रोमेल/फ्लेंट बिट, ओटेल एसडीके/ऑटो- , ब्लैकबॉक्स-प्रोब।

Шина/ingest: प्रोमेथियस remote_write → मिर/थानोस, लोकी वितरक/इंगेस्टर्स, टेम्पो/जैगर इंगेस्टर्स।

स्टोरेज: ऑब्जेक्ट S3/GCS/MinIO (लंबी ठंड), एसएसडी (गर्म पंक्तियाँ)।

प्रश्न/दृश्य: ग्राफाना (पैनल, एसएलओ विजेट), किबाना (यदि ईएलके)।

प्रबंधन: Alertmanager/Graphana अलर्ट, सेवा कैटलॉग, RBAC, गुप्त प्रबंधक।

तैनाती पैटर्न

प्रबंधित (ग्राफाना क्लाउड/क्लाउड सेवाएं) - वॉल्यूम पर तेज और अधिक महंगी।

K8s में स्व-होस्ट - पूर्ण नियंत्रण, संचालन और FinOps की आवश्यकता है।

3) डेटा मानक: एकीकृत "अवलोकन योजना"

3. 1 मेट्रिक्स (प्रोमेथियस/ओपनमेट्रिक्स)

आवश्यक लेबल: 'एनवी', 'क्षेत्र', 'क्लस्टर', 'नेमस्पेस', 'सेवा', 'संस्करण', 'किरायेदार' (यदि बहु-किरायेदार), 'समापन बिंदु'।

नामकरण: 'स्नेक _ केस', प्रत्यय '_ कुल', '_ सेकंड', '_ बाइट्स'।

बार चार्ट: फिक्स्ड 'बाल्टी' (एसएलओ-उन्मुख)।

कार्डिनैलिटी: 'user _ id', 'request _ id' को लेबल में शामिल नहीं करें.

3. 2 लॉग

प्रारूप: JSON; आवश्यक क्षेत्रों 'ts', 'स्तर', 'सेवा', 'env', 'trace _ id', 'span _ id', 'msg'।

पीआईआई: एजेंट पर मास्किंग (पैन, टोकन, ई-मेल, आदि)।

लोकी लेबल: केवल कम कार्डिनैलिटी ('ऐप', 'नेमस्पेस', 'लेवल', 'किरायेदार')।

3. 3 ट्रैक

ओटेल शब्दार्थ: 'सेवा। नाम ',' तैनाती। पर्यावरण ',' db। तंत्र ',' http। '

नमूना: p99 लक्ष्य पथ 'हमेशा _ ऑन '/टेल-सैंपलिंग हैं, बाकी' माता-पिता/अनुपात 'है।

एम्बेडिंग आईडी: फ्लिक 'ट्रेस _ id/span _ id' लॉग और मेट्रिक्स (लेबल/फील्ड) में।

4) एम-एल-टी सहसंबंध (मेट्रिक्स/लॉग/ट्रेस)

अलर्ट ग्राफ (मीट्रिक) से 'ट्रेस _ आईडी' द्वारा फ़िल्टर किए गए लॉग - एक विशिष्ट ट्रेस।

ट्रेस (धीमी अवधि) से, स्पैन अंतराल पर एक विशिष्ट बैकएंड के मैट्रिक्स के लिए एक अनुरोध है।

पैनल में ड्रिलडाउन बटन: "लॉग करने के लिए" और "ट्रेस करने के लिए" चर प्रतिस्थापन ('$ एनवी', '$ सेवा', '$ ट्रेस _ आईडी') के साथ।

5) ओपनटेलीमेट्री कलेक्टर: संदर्भ पाइपलाइन

yaml receivers:
otlp:
protocols: { http: {}, grpc: {} }
prometheus:
config:
scrape_configs:
- job_name: kube-nodes static_configs: [{ targets: ['kubelet:9100'] }]

processors:
batch: {}
memory_limiter: { check_interval: 1s, limit_mib: 512 }
attributes:
actions:
- key: deployment. environment value: ${ENV}
action: insert tail_sampling:
decision_wait: 5s policies:
- name: errors type: status_code status_code: { status_codes: [ERROR] }
- name: important-routes type: string_attribute string_attribute: { key: http. target, values: ["/payments","/login"] }
- name: probabilistic type: probabilistic probabilistic: { sampling_percentage: 10 }

exporters:
otlphttp/mimir: { endpoint: "https://mimir/api/v1/push" }
otlphttp/tempo: { endpoint: "https://tempo/api/traces" }
loki:
endpoint: https://loki/loki/api/v1/push labels:
attributes:
env: "deployment. environment"
service: "service. name"

service:
pipelines:
metrics: { receivers: [prometheus, otlp], processors: [memory_limiter, batch], exporters: [otlphttp/mimir] }
logs:   { receivers: [otlp], processors: [batch], exporters: [loki] }
traces:  { receivers: [otlp], processors: [memory_limiter, attributes, tail_sampling, batch], exporters: [otlphttp/tempo] }

6) अलर्टिंग: एसएलओ और मल्टी-बर्न

विचार: अलर्ट "सीपीयू> 80%" के स्तर पर नहीं है, बल्कि त्रुटि बजट की खपत पर है।

PromQL टैम्प्लेट्स:
promql
5-minute error rate err_ratio_5m =
sum(rate(http_requests_total{status=~"5.."}[5m])) /
sum(rate(http_requests_total[5m]))

Quick burn (1m window)
(err_ratio_1m / (1 - SLO)) > 14. 4

Slow burn (30m)
(err_ratio_30m / (1 - SLO)) > 2
विलंबता (हिस्टोग्राम):
promql latency_p95 =
histogram_quantile(0. 95, sum by (le) (rate(http_request_duration_seconds_bucket[5m])))

7) डैशबोर्ड: फ़ोल्डर संरचना

00_Overview - मंच: SLO, p95, 5xx%, क्षमता, सक्रिय घटनाएं।

10_Services - सेवाओं द्वारा: RPS, p95/p99, त्रुटियां, रिलीज़ (एनोटेशन)।

20_Infra - K8s/nodes/story/network, आदि, नियंत्रक।

30_DB/Queues - PostgreSQL/Redis/Kafka/RabbitMQ।

40_Edge/DNS/CDN/WAF - इंग्रेस, एलबी, डब्ल्यूएएफ नियम।

50_Synthetic - अपटाइम और हेडलेस स्क्रिप्ट।

60_Cost/FinOps - भंडारण, पूछताछ, गर्म/ठंडा, पूर्वानुमान।

प्रत्येक पटल: विवरण, इकाइयाँ, स्वामी, रनबुक लिंक, ड्रिलडाउन।

8) लॉग: LogQL कार्यशाला

logql
API errors
{app="api", level="error"}     = "Exception"

Nginx 5xx in 5 minutes
{app="nginx"}      json      status=~"5.."      count_over_time([5m])

Extract Fields
{app="payments"}      json      code!=""      unwrap duration      avg()

9) ट्रैक: TraceQL और ट्रिक्स

सबसे धीमी स्पैन खोजें:

{ service. name = "api" }      duration > 500ms
धीमी प्रश्न में धीमा SQL सैंडविच:

{ name = "HTTP GET /order" }      child. span. name = "SELECT" & child. duration > 50ms

10) सिंथेटिक्स और अपटाइम

ब्लैकबॉक्स-निर्यातक: HTTP/TCP/TLS/DNS नमूने ≥3 क्षेत्रों/ASN से।

हेडलेस: लॉगिन/अनुसूचित स्क्रिप्ट जमा करें।

कोरम अलर्ट: ट्रिगर अगर क्षेत्रीय ≥2 एक विफलता देखते हैं।

स्थिति पृष्ठ: स्वचालित अद्यतन + मैनुअल टिप्पणियाँ।

11) भंडारण और प्रतिधारण

मेट्रिक्स: गर्म 7-30 दिन (तेज पंक्तियाँ), डाउनसैम्पलिंग/रिकॉर्डिंग नियम, ठंड - वस्तु भंडारण (महीने)।

लॉग: 3-7 दिनों के लिए गर्म, फिर - एक सूचकांक (लोकी चंक स्टोर/ईएलके आईएलएम) के साथ।

निशान: नमूनों के लिए 3-7 दिन 'हमेशा _ ऑन' + दीर्घकालिक भंडारण (पूंछ-नमूना/अस्वीकृत)।

सिफारिशें:
  • आकार और समय में रोलओवर; अनुरोधों के लिए बजट (कोटा/सीमा)।
  • प्रोड/स्टेज और सुरक्षा आंकड़ों के लिए अलग नीतियां।

12) बहु-किरायेदारी और पहुँच

'किरायेदार '/' नेमस्पेस '/स्पेस, इंडेक्स पैटर्न और रिज़ॉल्यूशन द्वारा अलग।

बिलिंग के लिए टैग संसाधन: 'किरायेदार', 'सेवा', 'टीम'।

विशिष्ट टीमों के स्थानों में डैशबोर्ड/अलर्ट आयात करें।

13) सुरक्षा और अनुपालन

टीएलएस/एमटीएलएस एजेंटों से बैकेंड तक, निजी स्वास्थ्य के लिए एचएमएसी।

RBAC को पढ़ ना/लिखना, सभी अनुरोधों और अलर्ट का ऑडिट करना।

किनारे पर पीआईआई संस्करण; लॉग में रहस्यों का निषेध; DSAR/कानूनी पकड़।

अलगाव: संवेदनशील डोमेन के लिए अलग समूह/निम्स्पेस।

14) फिनोप्स: अवलोकन की लागत

हम लेबल और तर्क की कार्डिनैलिटी को कम करते हैं (और अनुरोधों में नहीं)।

महत्वपूर्ण रास्तों के लिए नमूना + लक्ष्य हमेशा ट्रैक

भारी एकत्रीकरण के लिए डाउनसैम्पलिंग/रिकॉर्डिंग नियम।

ठंडी वस्तु तक दुर्लभ पहुंच का संग्रह।

Метрики: 'भंडारण _ cost _ gb _ day', 'query _ cost _ hour', 'cost _ per _ rps', 'cost _ per _ 9'।

15) सीआई/सीडी और अवलोकन परीक्षण

सीआई में लिंटिंग मैट्रिक्स/लॉग: कार्डिनैलिटी के "विस्फोट" पर प्रतिबंध, हिस्टोग्राम/इकाइयों का सत्यापन।

अवलोकन अनुबंध परीक्षण: मिडिलवेयर में आवश्यक मैट्रिक्स/लॉग फ़ील्ड, 'ट्रेस _ आईडी'।

कैनरी: रेखांकन, एसएलओ-ऑटो-रोलबैक पर रिलीज की एनोटेशन।

16) उदाहरण: त्वरित प्रश्न

त्रुटि से शीर्ष समापन बिंदु:
promql topk(10, sum by (route) (rate(http_requests_total{status=~"5.."}[5m])))
सीपीयू थ्रॉटलिंग:
promql sum by (namespace, pod) (rate(container_cpu_cfs_throttled_seconds_total[5m])) > 0
काफ्का अंतराल:
promql max by (topic, group) (kafka_consumergroup_lag)

लॉग से लेकर ट्रैक तक (लोकी → टेम्पो): टेम्पो यूआई/डैशबोर्ड के लिए 'ट्रेस _ आईडीएस' पास करें।

17) स्टैक क्वालिटी: चेकलिस्ट

  • सहमत मीट्रिक/लॉग/ट्रेस योजनाएं और इकाइयाँ।
  • लॉग और मेट्रिक्स में 'ट्रेस _ आईडी', पैनल से ड्रिलडाउन।
  • मल्टी-बर्न एसएलओ अलर्ट फ्लैपिंग (कोरम/मल्टी-विंडो) के बिना।
  • डाउनसैम्पलिंग, अनुरोध कोटा, चरण/सीमा सीमा।
  • प्रतिधारण और भंडारण कक्षाएं प्रलेखित और लागू हैं।
  • आरबीएसी/ऑडिट/पीआईआई संशोधन शामिल हैं।
  • डैशबोर्ड: मालिक, रनबुक, ≤2 -3 स्क्रीन, त्वरित प्रतिक्रिया।
  • FinOps-डैशबोर्ड (वॉल्यूम, लागत, शीर्ष वार्ताकार)।

18) कार्यान्वयन योजना (3 पुनरावृत्ति)

1. एमवीपी (2 सप्ताह): Prometheus→Mimir, लोकी, टेम्पो; ओटेल कलेक्टर; बुनियादी डैशबोर्ड और एसएलओ अलर्ट; ब्लैकबॉक्स के नमूने।

2. स्केल (3-4 सप्ताह): टेल-सैंपलिंग, डाउनसैम्पलिंग, मल्टी-रीजन इनगेस्ट, आरबीएसी/स्पेस, फिनोप्स-डैशबोर्ड।

3. प्रो (4 + सप्ताह): एसएलओ पर ऑटो-रोलबैक, प्रमुख रास्तों के हेडलेस सिंथेटिक्स, लीगल होल्ड, एसएलओ पोर्टफोलियो और रिपोर्टिंग।

19) एंटी-पैटर्न

"एसएलओ के बिना सुंदर ग्राफिक्स" - कोई कार्रवाई - कोई लाभ नहीं।

उच्च कार्डिनैलिटी लेबल ('उपयोगकर्ता _ आईडी', 'अनुरोध _ आईडी') - मेमोरी और लागत का एक विस्फोट।

JSON के बिना लॉग और 'ट्रेस _ id' के बिना - कोई सहसंबंध नहीं।

लक्षणों के बजाय संसाधन अलर्ट - शोर और ऑन-कॉल बर्नआउट।

प्रतिधारण नीतियों की कमी - अनियंत्रित लागत बढ़ जाती है।

20) मिनी-एफएक्यू

क्या चुनें: लोकी या ईएलके?

जटिल खोज/पहलुओं के लिए ईएलके; लोकी ग्रेप जैसे परिदृश्यों के लिए सस्ता और तेज है। एक संकर का उपयोग अक्सर किया जाता है।

क्या सभी को पटरियों की जरूरत है?

हां, कम से कम पूंछ-नमूना के साथ प्रमुख रास्तों (लॉगिन, चेकआउट, भुगतान) पर - यह नाटकीय रूप से आरसीए को गति देता है।

खरोंच से कैसे शुरू करें?

ओटेल कलेक्टर मिमिर/लोकी/टेम्पो बेसिक एसएलओ और ब्लैकबॉक्स नमूने - फिर डैशबोर्ड और बर्न अलर्ट।

कुल

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

Contact

हमसे संपर्क करें

किसी भी प्रश्न या सहायता के लिए हमसे संपर्क करें।हम हमेशा मदद के लिए तैयार हैं!

Telegram
@Gamble_GC
इंटीग्रेशन शुरू करें

Email — अनिवार्य है। Telegram या WhatsApp — वैकल्पिक हैं।

आपका नाम वैकल्पिक
Email वैकल्पिक
विषय वैकल्पिक
संदेश वैकल्पिक
Telegram वैकल्पिक
@
अगर आप Telegram डालते हैं — तो हम Email के साथ-साथ वहीं भी जवाब देंगे।
WhatsApp वैकल्पिक
फॉर्मैट: देश कोड और नंबर (उदा. +91XXXXXXXXXX)।

बटन दबाकर आप अपने डेटा की प्रोसेसिंग के लिए सहमति देते हैं।