మీకు క్లౌడ్ సర్వీస్ ఉన్నప్పుడు ప్రశాంతంగా నిద్రపోవడం ఎలా: ప్రాథమిక వాస్తు చిట్కాలు

మీకు క్లౌడ్ సర్వీస్ ఉన్నప్పుడు ప్రశాంతంగా నిద్రపోవడం ఎలా: ప్రాథమిక వాస్తు చిట్కాలుసోఫియాగ్‌వరల్డ్ ద్వారా ఓడిపోయింది

లక్షలాది మంది వినియోగదారులు యాక్సెస్ చేసే భారీ-స్థాయి సేవలతో ఇంజనీర్లు పని చేయడంలో సహాయపడటానికి ఈ కథనం కొన్ని సాధారణ నమూనాలను కలిగి ఉంది. 

రచయిత అనుభవంలో, ఇది సమగ్ర జాబితా కాదు, నిజానికి సమర్థవంతమైన సలహా. కాబట్టి, ప్రారంభిద్దాం.

మద్దతుతో అనువదించబడింది Mail.ru క్లౌడ్ సొల్యూషన్స్.

మొదటి స్థాయి

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

కోడ్‌గా మౌలిక సదుపాయాలు

సలహాలో మొదటి భాగం మౌలిక సదుపాయాలను కోడ్‌గా అమలు చేయడం. మొత్తం అవస్థాపనను అమలు చేయడానికి మీరు తప్పనిసరిగా ప్రోగ్రామాటిక్ మార్గాన్ని కలిగి ఉండాలని దీని అర్థం. ఇది క్లిష్టంగా అనిపిస్తుంది, కానీ మేము ఈ క్రింది కోడ్ గురించి మాట్లాడుతున్నాము:

100 వర్చువల్ మిషన్ల విస్తరణ

  • ఉబుంటుతో
  • ఒక్కొక్కటి 2 GB RAM
  • వారికి క్రింది కోడ్ ఉంటుంది
  • ఈ పారామితులతో

మీరు మీ ఇన్‌ఫ్రాస్ట్రక్చర్‌లో మార్పులను ట్రాక్ చేయవచ్చు మరియు సంస్కరణ నియంత్రణను ఉపయోగించి వాటిని త్వరగా మార్చవచ్చు.

పైన పేర్కొన్నవన్నీ చేయడానికి మీరు కుబెర్నెట్స్/డాకర్‌ని ఉపయోగించవచ్చని నాలోని ఆధునికవాది చెప్పారు మరియు అతను చెప్పింది నిజమే.

అదనంగా, మీరు చెఫ్, పప్పెట్ లేదా టెర్రాఫార్మ్ ఉపయోగించి ఆటోమేషన్‌ను అందించవచ్చు.

నిరంతర ఇంటిగ్రేషన్ మరియు డెలివరీ

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

ఈ దశలో ప్రతిసారీ మీరు ప్రశ్నకు సమాధానం ఇస్తారు: నా అసెంబ్లీ పరీక్షలను కంపైల్ చేసి పాస్ అవుతుందా, అది చెల్లుతుందా? ఇది తక్కువ బార్ లాగా అనిపించవచ్చు, కానీ ఇది చాలా సమస్యలను పరిష్కరిస్తుంది.

మీకు క్లౌడ్ సర్వీస్ ఉన్నప్పుడు ప్రశాంతంగా నిద్రపోవడం ఎలా: ప్రాథమిక వాస్తు చిట్కాలు
ఈ టిక్‌లను చూడటం కంటే అందమైనది మరొకటి లేదు

ఈ సాంకేతికత కోసం మీరు Github, CircleCI లేదా Jenkinsని అంచనా వేయవచ్చు.

బ్యాలెన్సర్‌లను లోడ్ చేయండి

కాబట్టి, మేము ట్రాఫిక్‌ను దారి మళ్లించడానికి లోడ్ బ్యాలెన్సర్‌ని అమలు చేయాలనుకుంటున్నాము మరియు అన్ని నోడ్‌లపై సమాన లోడ్ ఉండేలా చూసుకోవాలి లేదా విఫలమైతే సేవ కొనసాగుతుంది:

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

సాధారణంగా, మీరు ఉపయోగించే క్లౌడ్‌లో లోడ్ బ్యాలెన్సర్‌లు కాన్ఫిగర్ చేయబడతాయి.

అభ్యర్థనల కోసం RayID, సహసంబంధ ID లేదా UUID

మీరు ఎప్పుడైనా ఇలాంటి సందేశంతో అప్లికేషన్ లోపాన్ని ఎదుర్కొన్నారా: "ఎక్కడో తేడ జరిగింది. ఈ ఐడిని సేవ్ చేసి, మా మద్దతు బృందానికి పంపండి"?

మీకు క్లౌడ్ సర్వీస్ ఉన్నప్పుడు ప్రశాంతంగా నిద్రపోవడం ఎలా: ప్రాథమిక వాస్తు చిట్కాలు
విశిష్ట ఐడెంటిఫైయర్, కోరిలేషన్ ID, RayID, లేదా ఏవైనా వైవిధ్యాలు, ఒక అభ్యర్థనను దాని జీవితచక్రం అంతటా ట్రాక్ చేయడానికి మిమ్మల్ని అనుమతించే ఏకైక ఐడెంటిఫైయర్. ఇది లాగ్‌లలో మొత్తం అభ్యర్థన మార్గాన్ని ట్రాక్ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది.

మీకు క్లౌడ్ సర్వీస్ ఉన్నప్పుడు ప్రశాంతంగా నిద్రపోవడం ఎలా: ప్రాథమిక వాస్తు చిట్కాలు
వినియోగదారు సిస్టమ్ Aకి అభ్యర్థన చేస్తారు, ఆపై A పరిచయాలు B, ఇది Cని సంప్రదిస్తుంది, దానిని Xలో నిల్వ చేస్తుంది, ఆపై అభ్యర్థన Aకి తిరిగి పంపబడుతుంది.

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

ఇంటర్మీడియట్ స్థాయి

ఇక్కడ సలహా మునుపటి వాటి కంటే చాలా క్లిష్టంగా ఉంటుంది, కానీ సరైన సాధనాలు పనిని సులభతరం చేస్తాయి, చిన్న మరియు మధ్య తరహా కంపెనీలకు కూడా పెట్టుబడిపై రాబడిని అందిస్తాయి.

కేంద్రీకృత లాగింగ్

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

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

మీకు క్లౌడ్ సర్వీస్ ఉన్నప్పుడు ప్రశాంతంగా నిద్రపోవడం ఎలా: ప్రాథమిక వాస్తు చిట్కాలు
ELK స్టాక్ కార్యాచరణ

మానిటరింగ్ ఏజెంట్లు

ఇప్పుడు మీ సేవ అమలవుతోంది మరియు అమలులో ఉంది, అది సజావుగా నడుస్తుందని మీరు నిర్ధారించుకోవాలి. దీన్ని చేయడానికి ఉత్తమ మార్గం అనేక అమలు చేయడం ఏజెంట్లు, ఇది సమాంతరంగా పని చేస్తుంది మరియు ఇది పని చేస్తుందో లేదో తనిఖీ చేయండి మరియు ప్రాథమిక కార్యకలాపాలు నిర్వహించబడతాయి.

ఈ సమయంలో మీరు దాన్ని తనిఖీ చేయండి నడుస్తున్న బిల్డ్ బాగుంది మరియు బాగా పనిచేస్తుంది.

చిన్న మరియు మధ్య తరహా ప్రాజెక్ట్‌ల కోసం, APIలను పర్యవేక్షించడం మరియు డాక్యుమెంట్ చేయడం కోసం నేను పోస్ట్‌మాన్‌ని సిఫార్సు చేస్తున్నాను. కానీ సాధారణంగా, మీరు ఎప్పుడు అంతరాయం ఏర్పడిందో తెలుసుకోవడానికి మరియు సకాలంలో తెలియజేయడానికి మీకు మార్గం ఉందని నిర్ధారించుకోవాలి.

లోడ్‌పై ఆధారపడి ఆటోస్కేలింగ్

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

మీకు క్లౌడ్ సర్వీస్ ఉన్నప్పుడు ప్రశాంతంగా నిద్రపోవడం ఎలా: ప్రాథమిక వాస్తు చిట్కాలు
చాలా క్లౌడ్ సేవలతో, మీరు మరిన్ని సర్వర్‌లు లేదా మరింత శక్తివంతమైన సర్వర్‌లను ఉపయోగించి దీన్ని స్వయంచాలకంగా కాన్ఫిగర్ చేయవచ్చు.

ప్రయోగ వ్యవస్థ

అప్‌డేట్‌లను సురక్షితంగా విడుదల చేయడానికి ఒక మంచి మార్గం ఏమిటంటే, 1% మంది వినియోగదారుల కోసం ఒక గంట పాటు ఏదైనా పరీక్షించడం. మీరు, వాస్తవానికి, అటువంటి యంత్రాంగాలను చర్యలో చూసారు. ఉదాహరణకు, Facebook ప్రేక్షకుల భాగాలను వేరే రంగును చూపుతుంది లేదా వినియోగదారులు మార్పులను ఎలా గ్రహిస్తారో చూడటానికి ఫాంట్ పరిమాణాన్ని మారుస్తుంది. దీనిని A/B పరీక్ష అంటారు.

కొత్త ఫీచర్‌ను విడుదల చేయడం కూడా ఒక ప్రయోగంగా ప్రారంభించి, దానిని ఎలా విడుదల చేయాలో నిర్ణయించవచ్చు. మీరు మీ సేవలో క్షీణతకు కారణమయ్యే ఫంక్షన్ ఆధారంగా ఫ్లైలో కాన్ఫిగరేషన్‌ను "గుర్తుంచుకో" లేదా మార్చగల సామర్థ్యాన్ని కూడా పొందుతారు.

అధునాతన స్థాయి

అమలు చేయడం చాలా కష్టంగా ఉండే చిట్కాలు ఇక్కడ ఉన్నాయి. మీకు బహుశా కొంచెం ఎక్కువ వనరులు అవసరం కావచ్చు, కాబట్టి చిన్న లేదా మధ్య తరహా కంపెనీ దీన్ని నిర్వహించడం చాలా కష్టం.

నీలం-ఆకుపచ్చ విస్తరణలు

దీనినే నేను "ఎర్లాంగ్" విప్పే మార్గం అని పిలుస్తాను. టెలిఫోన్ కంపెనీలు కనిపించినప్పుడు ఎర్లాంగ్ విస్తృతంగా ఉపయోగించబడింది. టెలిఫోన్ కాల్‌లను రూట్ చేయడానికి సాఫ్ట్‌స్విచ్‌లను ఉపయోగించడం ప్రారంభించారు. ఈ స్విచ్‌లలోని సాఫ్ట్‌వేర్ యొక్క ముఖ్య ఉద్దేశ్యం సిస్టమ్ అప్‌గ్రేడ్‌ల సమయంలో కాల్‌లను వదలకుండా చేయడం. ఎర్లాంగ్ మునుపటిది క్రాష్ చేయకుండా కొత్త మాడ్యూల్‌ను లోడ్ చేయడానికి చక్కని మార్గాన్ని కలిగి ఉంది.

ఈ దశ లోడ్ బాలన్సర్ ఉనికిపై ఆధారపడి ఉంటుంది. మీరు మీ సాఫ్ట్‌వేర్ వెర్షన్ Nని కలిగి ఉన్నారని ఊహించండి, ఆపై మీరు వెర్షన్ N+1ని అమలు చేయాలనుకుంటున్నారు. 

Вы మేము చేయగలము సేవను ఆపివేసి, మీ వినియోగదారుల కోసం పని చేసే సమయంలో తదుపరి సంస్కరణను విడుదల చేయండి మరియు కొంత పనికిరాని సమయాన్ని పొందండి. కానీ మీ దగ్గర ఉందనుకోండి నిజంగా కఠినమైన SLA షరతులు. కాబట్టి, SLA 99,99% అంటే మీరు ఆఫ్‌లైన్‌లో వెళ్లవచ్చు మాత్రమే సంవత్సరానికి 52 నిమిషాలు.

మీరు నిజంగా అలాంటి సూచికలను సాధించాలనుకుంటే, మీకు ఒకే సమయంలో రెండు విస్తరణలు అవసరం: 

  • ప్రస్తుతం ఉన్నది (N);
  • తదుపరి వెర్షన్ (N+1). 

మీరు రిగ్రెషన్‌ల కోసం చురుకుగా పర్యవేక్షిస్తున్నప్పుడు ట్రాఫిక్ శాతాన్ని కొత్త వెర్షన్ (N+1)కి మళ్లించమని లోడ్ బ్యాలెన్సర్‌కి చెప్పండి.

మీకు క్లౌడ్ సర్వీస్ ఉన్నప్పుడు ప్రశాంతంగా నిద్రపోవడం ఎలా: ప్రాథమిక వాస్తు చిట్కాలు
ఇక్కడ మనకు ఆకుపచ్చ N విస్తరణ ఉంది, అది బాగా పనిచేస్తుంది. మేము ఈ విస్తరణ యొక్క తదుపరి సంస్కరణకు వెళ్లడానికి ప్రయత్నిస్తున్నాము

ముందుగా మేము మా N+1 విస్తరణ తక్కువ మొత్తంలో ట్రాఫిక్‌తో పనిచేస్తుందో లేదో చూడటానికి నిజంగా చిన్న పరీక్షను పంపుతాము:

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

మీకు క్లౌడ్ సర్వీస్ ఉన్నప్పుడు ప్రశాంతంగా నిద్రపోవడం ఎలా: ప్రాథమిక వాస్తు చిట్కాలు
మీరు మరింత అధునాతన స్థాయికి వెళ్లాలనుకుంటే, బ్లూ-గ్రీన్ డిప్లాయ్‌మెంట్‌లోని ప్రతిదీ స్వయంచాలకంగా అమలు చేయనివ్వండి.

అసాధారణ గుర్తింపు మరియు స్వయంచాలక ఉపశమనం

మీరు కేంద్రీకృత లాగింగ్ మరియు మంచి లాగ్ సేకరణను కలిగి ఉన్నందున, మీరు ఇప్పటికే అధిక లక్ష్యాలను సెట్ చేసుకోవచ్చు. ఉదాహరణకు, వైఫల్యాలను ముందుగానే అంచనా వేయండి. మానిటర్‌లు మరియు లాగ్‌లలో విధులు ట్రాక్ చేయబడతాయి మరియు వివిధ రేఖాచిత్రాలు నిర్మించబడ్డాయి - మరియు మీరు ఏమి తప్పు జరుగుతుందో ముందుగానే అంచనా వేయవచ్చు:

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

ఈ అంతర్దృష్టులతో, మీరు ఏ పరిమాణంలోనైనా స్కేల్ చేయవచ్చు మరియు మెషీన్‌లు, డేటాబేస్‌లు, కనెక్షన్‌లు మరియు ఇతర వనరుల లక్షణాలను ముందస్తుగా మరియు రియాక్టివ్‌గా మార్చవచ్చు.

అంతే!

మీరు క్లౌడ్ సేవను పెంచుతున్నట్లయితే ఈ ప్రాధాన్యతల జాబితా మీకు చాలా సమస్యలను ఆదా చేస్తుంది.

అసలు కథనం యొక్క రచయిత పాఠకులను వారి వ్యాఖ్యలను వదిలి మార్పులు చేయమని ఆహ్వానిస్తున్నారు. వ్యాసం ఓపెన్ సోర్స్‌గా పంపిణీ చేయబడింది, రచయిత ద్వారా అభ్యర్థనలను లాగండి గితుబ్‌లో అంగీకరిస్తుంది.

అంశంపై ఇంకా ఏమి చదవాలి:

  1. వెళ్ళండి మరియు CPU కాష్లు
  2. అమలు కోసం టెంప్లేట్‌తో పైరసీ స్ఫూర్తితో కుబెర్నెట్స్
  3. టెలిగ్రామ్‌లో కుబెర్నెట్స్ చుట్టూ ఉన్న మా ఛానెల్

మూలం: www.habr.com

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