థానోస్ - స్కేలబుల్ ప్రోమేతియస్

వ్యాసం యొక్క అనువాదం కోర్సు యొక్క విద్యార్థుల కోసం ప్రత్యేకంగా తయారు చేయబడింది "DevOps అభ్యాసాలు మరియు సాధనాలు".

ఫాబియన్ రీనార్ట్జ్ సాఫ్ట్‌వేర్ డెవలపర్, గో ఫ్యానటిక్ మరియు సమస్య పరిష్కరిణి. అతను ప్రోమేతియస్ మెయింటెయినర్ మరియు కుబెర్నెటెస్ SIG ఇన్‌స్ట్రుమెంటేషన్ సహ వ్యవస్థాపకుడు కూడా. గతంలో, అతను సౌండ్‌క్లౌడ్‌లో ప్రొడక్షన్ ఇంజనీర్ మరియు CoreOS వద్ద పర్యవేక్షణ బృందానికి నాయకత్వం వహించాడు. ప్రస్తుతం Googleలో పని చేస్తున్నారు.

బార్టెక్ ప్లాట్కా - ఇంప్రాబబుల్ వద్ద ఇన్‌ఫ్రాస్ట్రక్చర్ ఇంజనీర్. అతను కొత్త సాంకేతికతలు మరియు పంపిణీ వ్యవస్థల సమస్యలపై ఆసక్తి కలిగి ఉన్నాడు. అతను ఇంటెల్‌లో తక్కువ-స్థాయి ప్రోగ్రామింగ్ అనుభవం, మెసోస్‌లో కంట్రిబ్యూటర్ అనుభవం మరియు ఇంప్రాబబుల్‌లో ప్రపంచ స్థాయి SRE ప్రొడక్షన్ అనుభవం కలిగి ఉన్నాడు. మైక్రోసర్వీస్ ప్రపంచాన్ని మెరుగుపరచడానికి అంకితం చేయబడింది. అతని మూడు ప్రేమలు: గోలాంగ్, ఓపెన్ సోర్స్ మరియు వాలీబాల్.

మా ఫ్లాగ్‌షిప్ ఉత్పత్తి SpatialOSని చూస్తే, అసంభవానికి డజన్ల కొద్దీ Kubernetes క్లస్టర్‌లతో అత్యంత డైనమిక్, గ్లోబల్-స్కేల్ క్లౌడ్ ఇన్‌ఫ్రాస్ట్రక్చర్ అవసరమని మీరు ఊహించవచ్చు. మానిటరింగ్ సిస్టమ్‌ని ఉపయోగించిన మొదటి వ్యక్తులలో మేము ఒకరం ప్రోమేతియస్. Prometheus నిజ సమయంలో మిలియన్ల కొలమానాలను ట్రాక్ చేయగల సామర్థ్యాన్ని కలిగి ఉంది మరియు మీకు అవసరమైన సమాచారాన్ని సేకరించేందుకు మిమ్మల్ని అనుమతించే శక్తివంతమైన ప్రశ్న భాషతో వస్తుంది.

ప్రోమేతియస్ యొక్క సరళత మరియు విశ్వసనీయత దాని ప్రధాన ప్రయోజనాల్లో ఒకటి. అయితే, మేము ఒక నిర్దిష్ట స్థాయిని దాటిన తర్వాత, మేము అనేక లోపాలను ఎదుర్కొన్నాము. ఈ సమస్యలను పరిష్కరించడానికి మేము అభివృద్ధి చేసాము థనోస్ అపరిమిత హిస్టారికల్ డేటా స్టోరేజ్‌తో ఇప్పటికే ఉన్న ప్రోమేథియస్ క్లస్టర్‌లను సజావుగా ఒకే మానిటరింగ్ సిస్టమ్‌గా మార్చడానికి ఇంప్రాబబుల్ ద్వారా సృష్టించబడిన ఓపెన్ సోర్స్ ప్రాజెక్ట్. థానోస్ గితుబ్‌లో అందుబాటులో ఉంది ఇక్కడ.

అసంభవం నుండి తాజా వార్తలతో తాజాగా ఉండండి.

థానోస్‌తో మా లక్ష్యాలు

ఒక నిర్దిష్ట స్థాయిలో, వనిల్లా ప్రోమేతియస్ సామర్థ్యాలకు మించిన సమస్యలు తలెత్తుతాయి. పెటాబైట్‌ల చారిత్రక డేటాను విశ్వసనీయంగా మరియు ఆర్థికంగా ఎలా నిల్వ చేయాలి? ప్రతిస్పందన సమయాన్ని రాజీ పడకుండా దీన్ని చేయవచ్చా? ఒకే API అభ్యర్థనతో వివిధ ప్రోమేతియస్ సర్వర్‌లలో ఉన్న అన్ని కొలమానాలను యాక్సెస్ చేయడం సాధ్యమేనా? ప్రోమేతియస్ HA ఉపయోగించి సేకరించిన ప్రతిరూప డేటాను కలపడానికి ఏదైనా మార్గం ఉందా?

ఈ సమస్యలను పరిష్కరించడానికి, మేము Thanosని సృష్టించాము. మేము ఈ సమస్యలను ఎలా సంప్రదించాము మరియు మా లక్ష్యాలను వివరించడం క్రింది విభాగాలు వివరిస్తాయి.

బహుళ ప్రోమేతియస్ ఉదంతాల నుండి డేటాను ప్రశ్నించడం (గ్లోబల్ క్వెరీ)

ప్రోమేతియస్ షార్డింగ్‌కు క్రియాత్మక విధానాన్ని అందిస్తుంది. ఒక ప్రోమేతియస్ సర్వర్ కూడా దాదాపు అన్ని వినియోగ సందర్భాలలో క్షితిజ సమాంతర షార్డింగ్ యొక్క సంక్లిష్టతల నుండి వినియోగదారులకు తగినంత స్కేలబిలిటీని అందిస్తుంది.

ఇది ఒక గొప్ప విస్తరణ నమూనా అయినప్పటికీ, ఒకే API లేదా UI - గ్లోబల్ వీక్షణ ద్వారా వివిధ ప్రోమేతియస్ సర్వర్‌లలో డేటాను యాక్సెస్ చేయడం తరచుగా అవసరం. వాస్తవానికి, ఒక గ్రాఫానా ప్యానెల్‌లో బహుళ ప్రశ్నలను ప్రదర్శించడం సాధ్యమవుతుంది, అయితే ప్రతి ప్రశ్న ఒక ప్రోమేతియస్ సర్వర్‌లో మాత్రమే అమలు చేయబడుతుంది. మరోవైపు, థానోస్‌తో మీరు బహుళ ప్రోమేతియస్ సర్వర్‌ల నుండి డేటాను ప్రశ్నించవచ్చు మరియు సమగ్రపరచవచ్చు ఎందుకంటే అవన్నీ ఒకే ఎండ్ పాయింట్ నుండి యాక్సెస్ చేయబడతాయి.

ఇంతకుముందు, అసంభవంలో గ్లోబల్ వీక్షణను పొందడానికి, మేము మా ప్రోమేతియస్ ఉదంతాలను బహుళ-స్థాయిగా నిర్వహించాము. క్రమానుగత సమాఖ్య. దీని అర్థం ప్రతి లీఫ్ సర్వర్ నుండి కొన్ని కొలమానాలను సేకరించే ఒక ప్రోమేతియస్ మెటా సర్వర్‌ని సృష్టించడం.

థానోస్ - స్కేలబుల్ ప్రోమేతియస్

ఈ విధానం సమస్యాత్మకంగా నిరూపించబడింది. ఇది మరింత సంక్లిష్టమైన కాన్ఫిగరేషన్‌లకు దారితీసింది, వైఫల్యం యొక్క అదనపు సంభావ్య పాయింట్‌ను జోడించడం మరియు ఫెడరేటెడ్ ఎండ్‌పాయింట్ తనకు అవసరమైన డేటాను మాత్రమే అందుకుంటుందని నిర్ధారించడానికి సంక్లిష్ట నియమాల అన్వయం. అదనంగా, ఈ రకమైన సమాఖ్య మిమ్మల్ని నిజమైన గ్లోబల్ వీక్షణను పొందడానికి అనుమతించదు, ఎందుకంటే ఒకే API అభ్యర్థన నుండి మొత్తం డేటా అందుబాటులో ఉండదు.

అధిక-లభ్యత (HA) ప్రోమేథియస్ సర్వర్‌లపై సేకరించిన డేటా యొక్క ఏకీకృత వీక్షణ దీనికి దగ్గరి సంబంధం కలిగి ఉంటుంది. ప్రోమేతియస్ యొక్క HA మోడల్ స్వతంత్రంగా రెండుసార్లు డేటాను సేకరిస్తుంది, ఇది చాలా సులభం, ఇది అంత సులభం కాదు. అయితే, రెండు స్ట్రీమ్‌ల మిశ్రమ మరియు నకిలీ వీక్షణను ఉపయోగించడం మరింత సౌకర్యవంతంగా ఉంటుంది.

వాస్తవానికి, అత్యంత అందుబాటులో ఉన్న ప్రోమేతియస్ సర్వర్ల అవసరం ఉంది. అసంభవం వద్ద, మేము నిమిషానికి-నిమిషానికి డేటా మానిటరింగ్‌ను చాలా సీరియస్‌గా తీసుకుంటాము, అయితే ఒక్కో క్లస్టర్‌కు ఒక ప్రోమేతియస్ ఇన్‌స్టాన్స్‌ను కలిగి ఉండటం విఫలమయ్యే ఏకైక పాయింట్. ఏదైనా కాన్ఫిగరేషన్ లోపం లేదా హార్డ్‌వేర్ వైఫల్యం ముఖ్యమైన డేటాను కోల్పోయే అవకాశం ఉంది. సాధారణ విస్తరణ కూడా కొలమానాల సేకరణలో చిన్నపాటి అంతరాయాలను కలిగిస్తుంది, ఎందుకంటే పునఃప్రారంభాలు స్క్రాపింగ్ విరామం కంటే గణనీయంగా ఎక్కువగా ఉంటాయి.

చారిత్రక డేటా యొక్క విశ్వసనీయ నిల్వ

చౌకైన, వేగవంతమైన, దీర్ఘకాలిక కొలమానాల నిల్వ అనేది మా కల (చాలా మంది ప్రోమేతియస్ వినియోగదారులచే భాగస్వామ్యం చేయబడింది). అసంభవంలో, మేము మెట్రిక్స్ నిలుపుదల వ్యవధిని తొమ్మిది రోజులకు కాన్ఫిగర్ చేయవలసి వచ్చింది (ప్రోమేతియస్ 1.8 కోసం). ఇది మనం ఎంత వెనుకకు చూడగలమో స్పష్టమైన పరిమితులను జోడిస్తుంది.

ఈ విషయంలో ప్రోమేతియస్ 2.0 మెరుగుపడింది, ఎందుకంటే సమయ శ్రేణి సంఖ్య సర్వర్ యొక్క మొత్తం పనితీరును ప్రభావితం చేయదు (చూడండి. ప్రోమేతియస్ 2 గురించి KubeCon కీనోట్) అయినప్పటికీ, ప్రోమేతియస్ డేటాను స్థానిక డిస్క్‌లో నిల్వ చేస్తుంది. అధిక సామర్థ్యం గల డేటా కంప్రెషన్ స్థానిక SSD వినియోగాన్ని గణనీయంగా తగ్గించగలిగినప్పటికీ, నిల్వ చేయగల చారిత్రక డేటా మొత్తానికి అంతిమంగా పరిమితి ఉంది.

అదనంగా, ఇంప్రాబబుల్ వద్ద మేము విశ్వసనీయత, సరళత మరియు ఖర్చు గురించి శ్రద్ధ వహిస్తాము. పెద్ద స్థానిక డిస్క్‌లు ఆపరేట్ చేయడం మరియు బ్యాకప్ చేయడం చాలా కష్టం. వాటికి ఎక్కువ ఖర్చు అవుతుంది మరియు మరిన్ని బ్యాకప్ సాధనాలు అవసరమవుతాయి, ఫలితంగా అనవసరమైన సంక్లిష్టత ఏర్పడుతుంది.

డౌన్‌సాంప్లింగ్

మేము చారిత్రక డేటాతో పని చేయడం ప్రారంభించిన తర్వాత, మేము వారాలు, నెలలు మరియు సంవత్సరాల డేటాతో పని చేస్తున్నప్పుడు ప్రశ్నలను నెమ్మదిగా మరియు నెమ్మదిగా చేసే బిగ్-Oతో ప్రాథమిక ఇబ్బందులు ఉన్నాయని మేము గ్రహించాము.

ఈ సమస్యకు ప్రామాణిక పరిష్కారం ఉంటుంది డౌన్‌సాంప్లింగ్ (డౌన్‌సాంప్లింగ్) - సిగ్నల్ నమూనా ఫ్రీక్వెన్సీని తగ్గించడం. డౌన్‌సాంప్లింగ్‌తో, మేము పెద్ద సమయ పరిధికి "స్కేల్ డౌన్" చేయవచ్చు మరియు ప్రశ్నలను ప్రతిస్పందించేలా ఉంచడం ద్వారా అదే సంఖ్యలో నమూనాలను నిర్వహించవచ్చు.

పాత డేటాను తగ్గించడం అనేది ఏదైనా దీర్ఘకాలిక నిల్వ పరిష్కారం యొక్క అనివార్యమైన అవసరం మరియు ఇది వనిల్లా ప్రోమేతియస్ పరిధికి మించినది.

అదనపు లక్ష్యాలు

ఇప్పటికే ఉన్న ప్రోమేతియస్ ఇన్‌స్టాలేషన్‌లతో సజావుగా ఏకీకరణ చేయడం థానోస్ ప్రాజెక్ట్ యొక్క అసలు లక్ష్యాలలో ఒకటి. రెండవ లక్ష్యం ప్రవేశానికి కనీస అడ్డంకులతో ఆపరేషన్ సౌలభ్యం. ఏదైనా డిపెండెన్సీలు చిన్న మరియు పెద్ద వినియోగదారుల కోసం సులభంగా సంతృప్తి చెందాలి, అంటే తక్కువ బేస్ ధర కూడా.

థానోస్ ఆర్కిటెక్చర్

మునుపటి విభాగంలో మన లక్ష్యాలను జాబితా చేసిన తర్వాత, వాటి ద్వారా పని చేద్దాం మరియు థానోస్ ఈ సమస్యలను ఎలా పరిష్కరిస్తాడో చూద్దాం.

గ్లోబల్ వ్యూ

ఇప్పటికే ఉన్న ప్రోమేతియస్ ఉదంతాల పైన ప్రపంచ వీక్షణను పొందడానికి, మేము అన్ని సర్వర్‌లకు ఒకే అభ్యర్థన ఎంట్రీ పాయింట్‌ని లింక్ చేయాలి. Thanos భాగం సరిగ్గా ఇదే చేస్తుంది. sidecar. ఇది ప్రతి ప్రోమేతియస్ సర్వర్ ప్రక్కన అమలు చేయబడుతుంది మరియు ప్రాక్సీగా పనిచేస్తుంది, gRPC స్టోర్ API ద్వారా స్థానిక ప్రోమేతియస్ డేటాను అందజేస్తుంది, ట్యాగ్ మరియు సమయ పరిధి ద్వారా సమయ శ్రేణి డేటాను తిరిగి పొందేందుకు అనుమతిస్తుంది.

మరొక వైపు స్కేల్-అవుట్, స్టేట్‌లెస్ క్వెరియర్ కాంపోనెంట్, ఇది ప్రామాణిక ప్రోమేతియస్ HTTP API ద్వారా PromQL ప్రశ్నలకు సమాధానం ఇవ్వడం కంటే కొంచెం ఎక్కువ చేస్తుంది. Querier, Sidecar మరియు ఇతర Thanos భాగాలు దీని ద్వారా కమ్యూనికేట్ చేస్తాయి గాసిప్ ప్రోటోకాల్.

థానోస్ - స్కేలబుల్ ప్రోమేతియస్

  1. క్వెరియర్, అభ్యర్థనను స్వీకరించిన తర్వాత, సంబంధిత స్టోర్ API సర్వర్‌కు, అంటే మా సైడ్‌కార్‌లకు కనెక్ట్ చేస్తుంది మరియు సంబంధిత ప్రోమేథియస్ సర్వర్‌ల నుండి సమయ శ్రేణి డేటాను స్వీకరిస్తుంది.
  2. ఆ తర్వాత, ఇది ప్రతిస్పందనలను మిళితం చేస్తుంది మరియు వాటిపై PromQL ప్రశ్నను అమలు చేస్తుంది. క్వెరియర్ ప్రోమేతియస్ HA సర్వర్‌ల నుండి అస్పష్టమైన డేటా మరియు నకిలీ డేటా రెండింటినీ విలీనం చేయగలదు.

ఇది మా పజిల్‌లోని ప్రధాన భాగాన్ని పరిష్కరిస్తుంది - వివిక్త ప్రోమేతియస్ సర్వర్‌ల నుండి డేటాను ఒకే వీక్షణలో కలపడం. నిజానికి, Thanos ఈ ఫీచర్ కోసం మాత్రమే ఉపయోగించబడుతుంది. ఇప్పటికే ఉన్న ప్రోమేతియస్ సర్వర్‌లకు మార్పులు చేయవలసిన అవసరం లేదు!

అపరిమిత షెల్ఫ్ జీవితం!

అయితే, ముందుగానే లేదా తరువాత మేము సాధారణ ప్రోమెథియస్ నిలుపుదల సమయం కంటే డేటాను నిల్వ చేయాలనుకుంటున్నాము. మేము చారిత్రక డేటాను నిల్వ చేయడానికి ఆబ్జెక్ట్ నిల్వను ఎంచుకున్నాము. ఇది ఏదైనా క్లౌడ్‌లో అలాగే ఆన్-ప్రాంగణ డేటా సెంటర్‌లలో విస్తృతంగా అందుబాటులో ఉంటుంది మరియు చాలా తక్కువ ఖర్చుతో కూడుకున్నది. అదనంగా, దాదాపు ఏ వస్తువు నిల్వ అయినా బాగా తెలిసిన S3 API ద్వారా అందుబాటులో ఉంటుంది.

ప్రోమేతియస్ RAM నుండి డిస్క్‌కి దాదాపు ప్రతి రెండు గంటలకు డేటాను వ్రాస్తాడు. నిల్వ చేయబడిన డేటా బ్లాక్ నిర్ణీత వ్యవధిలో మొత్తం డేటాను కలిగి ఉంటుంది మరియు మార్పులేనిది. ఇది చాలా సౌకర్యవంతంగా ఉంటుంది, ఎందుకంటే Thanos Sidecar కేవలం ప్రోమేతియస్ డేటా డైరెక్టరీని చూడగలదు మరియు కొత్త బ్లాక్‌లు అందుబాటులోకి వచ్చినప్పుడు, వాటిని ఆబ్జెక్ట్ స్టోరేజ్ బకెట్‌లలోకి లోడ్ చేస్తుంది.

థానోస్ - స్కేలబుల్ ప్రోమేతియస్

డిస్క్‌కి వ్రాసిన వెంటనే ఆబ్జెక్ట్ స్టోరేజ్‌లోకి లోడ్ చేయడం వలన మీరు స్క్రాపర్ (ప్రోమెతియస్ మరియు థానోస్ సైడ్‌కార్) యొక్క సరళతను కొనసాగించవచ్చు. ఇది మద్దతు, ఖర్చు మరియు సిస్టమ్ రూపకల్పనను సులభతరం చేస్తుంది.

మీరు గమనిస్తే, డేటా బ్యాకప్ చాలా సులభం. అయితే ఆబ్జెక్ట్ స్టోరేజ్‌లో డేటాను ప్రశ్నించడం గురించి ఏమిటి?

ఆబ్జెక్ట్ స్టోరేజ్ నుండి డేటాను తిరిగి పొందడానికి Thanos స్టోర్ భాగం ప్రాక్సీగా పనిచేస్తుంది. Thanos Sidecar వలె, ఇది గాసిప్ క్లస్టర్‌లో పాల్గొంటుంది మరియు స్టోర్ APIని అమలు చేస్తుంది. ఈ విధంగా, ఇప్పటికే ఉన్న క్వెరియర్ దానిని సైడ్‌కార్ లాగా, సమయ శ్రేణి డేటా యొక్క మరొక మూలంగా పరిగణించవచ్చు - ప్రత్యేక కాన్ఫిగరేషన్ అవసరం లేదు.

థానోస్ - స్కేలబుల్ ప్రోమేతియస్

సమయ శ్రేణి డేటా బ్లాక్‌లు అనేక పెద్ద ఫైల్‌లను కలిగి ఉంటాయి. డిమాండ్‌పై వాటిని లోడ్ చేయడం చాలా అసమర్థంగా ఉంటుంది మరియు వాటిని స్థానికంగా కాష్ చేయడానికి పెద్ద మొత్తంలో మెమరీ మరియు డిస్క్ స్థలం అవసరం.

బదులుగా, Prometheus నిల్వ ఆకృతిని ఎలా నిర్వహించాలో స్టోర్ గేట్‌వేకి తెలుసు. స్మార్ట్ క్వెరీ షెడ్యూలర్‌కు ధన్యవాదాలు మరియు బ్లాక్‌ల యొక్క అవసరమైన సూచిక భాగాలను మాత్రమే కాష్ చేయడం వలన, ఆబ్జెక్ట్ స్టోరేజ్ ఫైల్‌లకు సంక్లిష్ట ప్రశ్నలను కనీస సంఖ్యలో HTTP అభ్యర్థనలకు తగ్గించడం సాధ్యమవుతుంది. ఈ విధంగా, మీరు అభ్యర్థనల సంఖ్యను నాలుగు నుండి ఆరు ఆర్డర్‌ల పరిమాణంలో తగ్గించవచ్చు మరియు స్థానిక SSDలోని అభ్యర్థనల నుండి డేటాకు సాధారణంగా గుర్తించడం కష్టంగా ఉండే ప్రతిస్పందన సమయాలను సాధించవచ్చు.

థానోస్ - స్కేలబుల్ ప్రోమేతియస్

పై రేఖాచిత్రంలో చూపినట్లుగా, థానోస్ క్వెరియర్ ప్రోమేథియస్ స్టోరేజ్ ఫార్మాట్‌ను ప్రభావితం చేయడం ద్వారా మరియు సంబంధిత డేటాను పక్కపక్కనే ఉంచడం ద్వారా ఆబ్జెక్ట్ స్టోరేజ్ డేటా యొక్క ప్రశ్నకు ధరను గణనీయంగా తగ్గిస్తుంది. ఈ విధానాన్ని ఉపయోగించి, మేము అనేక సింగిల్ రిక్వెస్ట్‌లను కనీస సంఖ్యలో బల్క్ ఆపరేషన్‌లుగా కలపవచ్చు.

సంపీడనం మరియు డౌన్‌సాంప్లింగ్

ఆబ్జెక్ట్ స్టోరేజ్‌లో కొత్త కాల శ్రేణి డేటా విజయవంతంగా లోడ్ అయిన తర్వాత, మేము దానిని "చారిత్రక" డేటాగా పరిగణిస్తాము, ఇది స్టోర్ గేట్‌వే ద్వారా వెంటనే అందుబాటులో ఉంటుంది.

అయితే, కొంత సమయం తర్వాత, ఒక మూలం (ప్రోమెథియస్ విత్ సైడ్‌కార్) నుండి బ్లాక్‌లు పేరుకుపోతాయి మరియు ఇకపై పూర్తి ఇండెక్సింగ్ సామర్థ్యాన్ని ఉపయోగించవు. ఈ సమస్యను పరిష్కరించడానికి, మేము కాంపాక్టర్ అనే మరొక భాగాన్ని పరిచయం చేసాము. ఇది ఆబ్జెక్ట్ స్టోరేజ్‌లోని హిస్టారికల్ డేటాకు ప్రోమేతియస్ యొక్క లోకల్ కాంపాక్షన్ ఇంజిన్‌ను వర్తింపజేస్తుంది మరియు సాధారణ ఆవర్తన బ్యాచ్ జాబ్‌గా అమలు చేయబడుతుంది.

థానోస్ - స్కేలబుల్ ప్రోమేతియస్

సమర్థవంతమైన కుదింపుకు ధన్యవాదాలు, ఎక్కువ కాలం నిల్వను ప్రశ్నించడం వలన డేటా పరిమాణం పరంగా సమస్య ఉండదు. అయితే, ఒక బిలియన్ విలువలను అన్‌ప్యాక్ చేయడం మరియు వాటిని క్వెరీ ప్రాసెసర్ ద్వారా రన్ చేయడం వల్ల అయ్యే సంభావ్య వ్యయం అనివార్యంగా ప్రశ్న అమలు సమయంలో నాటకీయ పెరుగుదలకు దారి తీస్తుంది. మరోవైపు, స్క్రీన్‌పై పిక్సెల్‌కు వందల కొద్దీ డేటా పాయింట్‌లు ఉన్నందున, పూర్తి రిజల్యూషన్‌లో డేటాను దృశ్యమానం చేయడం కూడా అసాధ్యం. అందువల్ల, డౌన్‌సాంప్లింగ్ సాధ్యం కాదు, కానీ గుర్తించదగిన ఖచ్చితత్వానికి దారితీయదు.

థానోస్ - స్కేలబుల్ ప్రోమేతియస్

డేటాను తగ్గించడానికి, కాంపాక్టర్ ఐదు నిమిషాలు మరియు ఒక గంట రిజల్యూషన్‌లో డేటాను నిరంతరం సమూహపరుస్తుంది. TSDB XOR కంప్రెషన్‌ని ఉపయోగించి ఎన్‌కోడ్ చేయబడిన ప్రతి ముడి భాగం కోసం, ఒక బ్లాక్‌కి నిమిషం, గరిష్టం లేదా మొత్తం వంటి వివిధ రకాల మొత్తం డేటా నిల్వ చేయబడుతుంది. ఇది ఇచ్చిన PromQL ప్రశ్నకు తగిన మొత్తాన్ని స్వయంచాలకంగా ఎంచుకోవడానికి Querierని అనుమతిస్తుంది.

తగ్గిన ఖచ్చితమైన డేటాను ఉపయోగించడానికి వినియోగదారుకు ప్రత్యేక కాన్ఫిగరేషన్ అవసరం లేదు. వినియోగదారు జూమ్ ఇన్ మరియు అవుట్ చేస్తున్నప్పుడు క్వెరియర్ స్వయంచాలకంగా విభిన్న రిజల్యూషన్‌లు మరియు ముడి డేటా మధ్య మారుతుంది. కావాలనుకుంటే, అభ్యర్థనలోని "దశ" పరామితి ద్వారా వినియోగదారు దీన్ని నేరుగా నియంత్రించవచ్చు.

ఒక GB నిల్వ ఖర్చు తక్కువగా ఉన్నందున, థానోస్ డిఫాల్ట్‌గా ముడి డేటా, ఐదు నిమిషాల మరియు ఒక గంట రిజల్యూషన్ డేటాను నిల్వ చేస్తుంది. అసలు డేటాను తొలగించాల్సిన అవసరం లేదు.

రికార్డింగ్ నియమాలు

థానోస్‌తో కూడా, రికార్డింగ్ నియమాలు పర్యవేక్షణ స్టాక్‌లో ముఖ్యమైన భాగం. అవి సంక్లిష్టత, జాప్యం మరియు ప్రశ్నల ధరను తగ్గిస్తాయి. వినియోగదారులు కొలమానాల ద్వారా సమగ్ర డేటాను పొందేందుకు కూడా ఇవి సౌకర్యవంతంగా ఉంటాయి. Thanos వనిల్లా ప్రోమేతియస్ ఉదంతాల ఆధారంగా రూపొందించబడింది, కాబట్టి ఇది ఇప్పటికే ఉన్న ప్రోమేతియస్ సర్వర్‌లో రికార్డింగ్ నియమాలు మరియు హెచ్చరిక నియమాలను నిల్వ చేయడం పూర్తిగా ఆమోదయోగ్యమైనది. అయితే, కొన్ని సందర్భాల్లో ఇది సరిపోకపోవచ్చు:

  • గ్లోబల్ హెచ్చరిక మరియు నియమం (ఉదాహరణకు, మూడు క్లస్టర్‌లలో రెండు కంటే ఎక్కువ సేవల్లో పని చేయనప్పుడు హెచ్చరిక).
  • స్థానిక నిల్వ వెలుపల డేటా కోసం నియమం.
  • అన్ని నియమాలు మరియు హెచ్చరికలను ఒకే చోట నిల్వ చేయాలనే కోరిక.

థానోస్ - స్కేలబుల్ ప్రోమేతియస్

ఈ అన్ని సందర్భాలలో, Thanos రూలర్ అని పిలువబడే ఒక ప్రత్యేక భాగాన్ని కలిగి ఉంటుంది, ఇది Thanos ప్రశ్నల ద్వారా నియమం మరియు హెచ్చరికను గణిస్తుంది. బాగా తెలిసిన StoreAPIని అందించడం ద్వారా, క్వెరీ నోడ్ తాజాగా కంప్యూటెడ్ మెట్రిక్‌లను యాక్సెస్ చేయగలదు. తర్వాత వాటిని ఆబ్జెక్ట్ స్టోరేజీలో కూడా భద్రపరుస్తారు మరియు స్టోర్ గేట్‌వే ద్వారా అందుబాటులో ఉంచుతారు.

థానోస్ యొక్క శక్తి

Thanos మీ అవసరాలకు అనుగుణంగా అనుకూలీకరించడానికి తగినంత అనువైనది. సాదా ప్రోమేతియస్ నుండి వలస వచ్చినప్పుడు ఇది ప్రత్యేకంగా ఉపయోగపడుతుంది. త్వరిత ఉదాహరణతో Thanos కాంపోనెంట్‌ల గురించి మనం నేర్చుకున్న వాటిని త్వరగా పునశ్చరణ చేద్దాం. "అపరిమిత కొలమానాల నిల్వ" ప్రపంచంలోకి మీ వనిల్లా ప్రోమేతియస్‌ను ఎలా తీసుకెళ్లాలో ఇక్కడ ఉంది:

థానోస్ - స్కేలబుల్ ప్రోమేతియస్

  1. మీ ప్రోమేతియస్ సర్వర్‌లకు Thanos Sidecarని జోడించండి - ఉదాహరణకు, Kubernetes పాడ్‌లోని సైడ్‌కార్ కంటైనర్.
  2. డేటాను వీక్షించడానికి బహుళ Thanos Querier ప్రతిరూపాలను అమలు చేయండి. ఈ దశలో స్క్రాపర్ మరియు క్వెరియర్ మధ్య గాసిప్‌ని సెటప్ చేయడం సులభం. భాగాల పరస్పర చర్యను తనిఖీ చేయడానికి, 'thanos_cluster_members' మెట్రిక్‌ని ఉపయోగించండి.

సంభావ్య ప్రోమేతియస్ HA ప్రతిరూపాల నుండి గ్లోబల్ వీక్షణ మరియు అతుకులు లేని డేటా తగ్గింపును అందించడానికి ఈ రెండు దశలు సరిపోతాయి! మీ డాష్‌బోర్డ్‌లను Querier HTTP ఎండ్‌పాయింట్‌కి కనెక్ట్ చేయండి లేదా నేరుగా Thanos UIని ఉపయోగించండి.

అయితే, మీకు మెట్రిక్స్ బ్యాకప్ మరియు దీర్ఘకాలిక నిల్వ అవసరమైతే, మీరు మరో మూడు దశలను పూర్తి చేయాలి:

  1. AWS S3 లేదా GCS బకెట్‌ను సృష్టించండి. ఈ బకెట్‌లకు డేటాను కాపీ చేయడానికి సైడ్‌కార్‌ను కాన్ఫిగర్ చేయండి. ఇప్పుడు స్థానిక డేటా నిల్వను తగ్గించవచ్చు.
  2. స్టోర్ గేట్‌వేని అమలు చేయండి మరియు దానిని మీ ప్రస్తుత గాసిప్ క్లస్టర్‌కి కనెక్ట్ చేయండి. ఇప్పుడు మీరు బ్యాకప్ చేసిన డేటాను ప్రశ్నించవచ్చు!
  3. కాంపాక్షన్ మరియు డౌన్‌సాంప్లింగ్‌ని ఉపయోగించి చాలా కాలం పాటు ప్రశ్న సామర్థ్యాన్ని మెరుగుపరచడానికి కాంపాక్టర్‌ని అమలు చేయండి.

మీరు మరింత తెలుసుకోవాలనుకుంటే, మా వద్ద పరిశీలించడానికి వెనుకాడరు kubernetes మానిఫెస్ట్ ఉదాహరణలు и ప్రారంభించడం!

కేవలం ఐదు దశల్లో, మేము గ్లోబల్ వీక్షణ, అపరిమిత నిల్వ సమయం మరియు కొలమానాల అధిక లభ్యతతో ప్రోమేథియస్‌ను విశ్వసనీయ పర్యవేక్షణ వ్యవస్థగా మార్చాము.

అభ్యర్థనను లాగండి: మాకు మీరు కావాలి!

థనోస్ మొదటి నుండి ఓపెన్ సోర్స్ ప్రాజెక్ట్. ప్రోమేతియస్‌తో అతుకులు లేని ఏకీకరణ మరియు థానోస్‌లో కొంత భాగాన్ని ఉపయోగించగల సామర్థ్యం మీ పర్యవేక్షణ వ్యవస్థను అప్రయత్నంగా స్కేలింగ్ చేయడానికి ఇది ఒక అద్భుతమైన ఎంపికగా చేస్తుంది.

మేము ఎల్లప్పుడూ GitHub పుల్ అభ్యర్థనలు మరియు సమస్యలను స్వాగతిస్తాము. ఈ సమయంలో, Github సమస్యలు లేదా స్లాక్ ద్వారా మమ్మల్ని సంప్రదించడానికి సంకోచించకండి అసంభవం-eng #thanosమీకు ప్రశ్నలు లేదా ఫీడ్‌బ్యాక్ ఉంటే లేదా దాన్ని ఉపయోగించి మీ అనుభవాన్ని పంచుకోవాలనుకుంటే! ఇంప్రాబబుల్‌లో మేము చేసేది మీకు నచ్చితే, మమ్మల్ని సంప్రదించడానికి వెనుకాడకండి - మాకు ఎల్లప్పుడూ ఖాళీలు ఉంటాయి!

కోర్సు గురించి మరింత తెలుసుకోండి.

మూలం: www.habr.com

ఒక వ్యాఖ్యను జోడించండి