Kubectl ఆటోస్కేల్ కమాండ్

Kubectl Atoskel Kamand



మానవ పరస్పర చర్య లేకుండా స్వయంచాలకంగా వనరులను నిర్వహించడానికి Kubernetes ఆటోస్కేలింగ్ సామర్థ్యాన్ని అందిస్తుంది. ఆటోస్కేల్ ఫంక్షన్ అవసరమైనప్పుడు స్వయంచాలకంగా నోడ్‌ల సంఖ్యను మారుస్తుంది మరియు వనరులను ఆదా చేస్తుంది. ఈ కథనంలో, “kubectl autoscale” కమాండ్ మరియు “HorizontalPodScaler” ఆటోస్కేలింగ్‌ను ఎలా అమలు చేయాలో మనం నేర్చుకుంటాము. ఈ ట్యుటోరియల్ ఈ ముఖ్యమైన భావనను వివరంగా బోధిస్తుంది. ముందుగా kubectl ఆటోస్కేల్ కాన్సెప్ట్ అంటే ఏమిటో చర్చించి, ఆపై మెరుగైన అవగాహన కోసం దశల వారీ ప్రక్రియ వైపు వెళ్దాం. మీరు Kubernetes ఆటోస్కేలింగ్ భావనకు కొత్త అయితే ఈ కథనం చాలా ఉపయోగకరంగా ఉంటుంది.

Kubectl ఆటోస్కేల్ అంటే ఏమిటి?

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

ఆటోస్కేలర్ అవసరానికి అనుగుణంగా నోడ్‌ల సంఖ్యను సృష్టించగలదు మరియు నాశనం చేయగలదు. ఆటోస్కేల్ వనరుల వృధాను తగ్గిస్తుంది. Kubectl ఆటోస్కేల్ ప్రస్తుతం Kubernetes క్లస్టర్ లోపల అమలు చేస్తున్న పాడ్‌లను స్వయంచాలకంగా ఎంచుకుంటుంది.







స్కేలింగ్‌లో రెండు రకాలు ఉన్నాయి: (1) హారిజాంటల్‌పాడ్‌స్కేలర్ మరియు (2) వర్టికల్ స్కేలర్. క్షితిజ సమాంతర స్కేలర్ నిలువు స్కేలర్ నుండి భిన్నంగా ఉంటుంది. HorizontalPodScaler అవసరమైనప్పుడు పాడ్‌లను తగ్గించడంలో లేదా పెంచడంలో సహాయపడుతుంది. మరోవైపు, వర్టికల్ స్కేలర్ CPU మరియు మెమరీ వంటి వనరులను ఉపయోగిస్తుంది.



మీ సిస్టమ్‌లో మీరు అనుసరించగల అన్ని దశలు ఇక్కడ ఉన్నాయి మరియు మెరుగైన అవగాహన కోసం అవుట్‌పుట్‌ను చూడండి.



దశ 1: మినీక్యూబ్ క్లస్టర్‌ను ప్రారంభించడం

మొదటి దశలో, Kubernetes క్లస్టర్‌ను అమలు చేయడానికి minikube సాధనాన్ని ప్రారంభించండి, తద్వారా మనం “kubectl autoscale” ఆదేశాన్ని అమలు చేయగలము. మీరు మినీక్యూబ్ క్లస్టర్‌ని ఉపయోగించి కుబెర్నెట్స్ వాతావరణంలో మీ నోడ్‌లు, పాడ్‌లు మరియు క్లస్టర్‌ను కూడా సెటప్ చేయవచ్చు. అలా చేయడానికి, మినీక్యూబ్‌ను సక్రియ మోడ్‌లో ఉంచడానికి కింది ఆదేశాన్ని ఉపయోగించండి:





~$ minikube ప్రారంభించండి

మీరు క్రింది అవుట్‌పుట్ స్క్రీన్‌షాట్‌లో చూడగలిగినట్లుగా, ఈ కమాండ్ మినీక్యూబ్ క్లస్టర్‌ను ఎనేబుల్ చేస్తుంది మరియు కుబెర్నెట్స్ వాతావరణాన్ని ఉపయోగపడేలా చేస్తుంది:

దశ 2: పాడ్ వివరాలను పొందండి

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

~$ kubectl పాడ్‌లను పొందండి

“kubectl get పాడ్స్” అనే మునుపటి ఆదేశాన్ని ఉపయోగించి, మేము Kubernetes క్లస్టర్‌లో రన్ అయ్యే అన్ని పాడ్‌ల జాబితాను పొందవచ్చు.

“గెట్ పాడ్స్” ఆదేశాన్ని అమలు చేసిన తర్వాత, మేము ఈ క్రింది అవుట్‌పుట్‌ను పొందుతాము:

  కంప్యూటర్ ప్రోగ్రామ్ వివరణ యొక్క స్క్రీన్ షాట్ తక్కువ విశ్వాసంతో స్వయంచాలకంగా రూపొందించబడింది

దశ 3: పాడ్ యొక్క విస్తరణలను పొందండి

మునుపటి “kubectl get pods” కమాండ్‌లో, మేము పాడ్‌ల వివరాలను పొందుతాము. ఇప్పుడు, మేము సృష్టించిన విస్తరణల జాబితాను పొందేందుకు 'గెట్ డిప్లాయ్‌మెంట్' ఆదేశాన్ని ఉపయోగిస్తాము. ఈ ప్రయోజనం కోసం క్రింది స్క్రిప్ట్ అమలు చేయబడింది:

~$ kubectl విస్తరణలను పొందండి

ఆదేశాన్ని అమలు చేసిన తర్వాత, కింది స్క్రీన్‌షాట్ అవుట్‌పుట్‌ను చూపుతుంది:

దశ 4: ఆటోస్కేల్ విస్తరణ

క్లస్టర్‌లో నడిచే పాడ్‌ల ఆటోమేషన్ ఎంపిక చేయడానికి ఆటోస్కేల్ కమాండ్ ఉపయోగించబడుతుంది. క్లస్టర్‌లో ఆటోస్కేల్‌ని అమలు చేయడం ద్వారా, మేము స్వయంచాలకంగా నోడ్‌ల సంఖ్యను ఇన్సర్ట్ చేస్తాము మరియు ముగించాము. కింది స్క్రిప్ట్ మినీక్యూబ్ క్లస్టర్‌లో అమలు చేయబడుతుంది మరియు ఇది ఫైల్ పేరు, కనిష్ట పాడ్‌లు మరియు గరిష్ట పాడ్‌లను చూపుతుంది, ఇక్కడ పాడ్‌లు 2 నుండి 10 మధ్య ఉండాలి:

~$ kubectl ఆటోస్కేల్ విస్తరణ nginx1-deployment1 --నిమి = 2 --గరిష్టంగా = 10

ఆదేశాన్ని అమలు చేసిన తర్వాత, కింది అవుట్‌పుట్ ఉత్పత్తి చేయబడుతుంది:

దశ 5: కుబెర్నెట్స్ YAML ఫైల్‌ను సృష్టించండి

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

ఈ వ్యాసంలో, YAML ఫైల్‌ను రూపొందించడానికి మేము “నానో” ఆదేశాన్ని ఉపయోగిస్తాము ఎందుకంటే ఇది ప్రారంభకులకు సులభమైన మార్గం మరియు ఉత్తమ ఎంపిక.

నానోను ఉపయోగించి YAML ఫైల్‌ని సృష్టించడానికి ఇక్కడ ఇచ్చిన దశలను అనుసరించండి:

  • కొత్త ఫైల్‌ను సృష్టించడానికి లేదా ఇప్పటికే ఉన్న దాన్ని మార్చడానికి, కావలసిన డైరెక్టరీ స్థానానికి నావిగేట్ చేయండి.
  • 'నానో' అని టైప్ చేయండి. ఆ తరువాత, ఫైల్ పేరు రాయండి. ఉదాహరణకు, మీరు కొత్త ఫైల్ పేరుని సృష్టించాలనుకుంటే, పేరును వ్రాయండి – “deploo.yaml”.

కింది స్క్రిప్ట్‌ని అమలు చేయండి మరియు ప్రాజెక్ట్ డైరెక్టరీలో YAML ఫైల్‌ను సృష్టించండి:

~$ నానో deploo.yaml

“deploo.yaml” ఫైల్‌ను సృష్టించిన తర్వాత, తదుపరి దశ YAML ఫైల్‌ను కాన్ఫిగర్ చేయడం. మేము దానిని క్రింది దశలో వివరిస్తాము.

దశ 6: YAML ఫైల్ యొక్క కంటెంట్

ఈ దశలో, మేము Apache సర్వర్ మరియు PHP ఫైల్‌లను సులభంగా కాన్ఫిగర్ చేయవచ్చు. మేము HorizontalPodScalerని ఉపయోగించే ముందు, మేము తప్పనిసరిగా వర్క్‌లోడ్ మానిటర్‌ను కాన్ఫిగర్ చేయాలి. కింది కోడ్ ముక్క రకాన్ని చూపుతుంది: విస్తరణ, వెబ్ బ్రౌజర్ యొక్క పోర్ట్ 90 మరియు CPU పరిమితి 200 మీ.

మీరు పూర్తి “deploo.yaml” ఫైల్ సమాచారాన్ని ఇక్కడ చూడవచ్చు:

apiVersion : యాప్‌లు/v1
రకం
: విస్తరణ
మెటాడేటా
:
పేరు
: php
స్పెక్
:
సెలెక్టర్
:
మ్యాచ్‌లేబుల్స్
:
పరుగు
: php-apache
టెంప్లేట్
:
మెటాడేటా
:
లేబుల్స్
:
పరుగు
: php-apache
స్పెక్
:
కంటైనర్లు
:
- పేరు
: php
చిత్రం
: registry.k8s.io/hpa-example
ఓడరేవులు
:
- కంటైనర్ పోర్ట్
: 90
వనరులు
:
పరిమితులు
:
cpu
: 200మీ
అభ్యర్థనలు
:

cpu
: 100మీ
---
apiVersion
: v1
రకం
: సేవ
మెటాడేటా
:
పేరు
: php
లేబుల్స్
:
పరుగు
: php-apache
స్పెక్
:
ఓడరేవులు
:
- పోర్ట్
: 70
సెలెక్టర్
:
పరుగు
: php-apache

దశ 7: విస్తరణను సృష్టించండి

ఈ దశలో, “deploo.yaml” పేరుతో YAML ఫైల్‌ని క్రియేట్ చేద్దాం. కింది స్క్రిప్ట్ minikube క్లస్టర్‌లో అమలు చేయబడుతుంది:

~$ kubectl సృష్టించు -f deploo.yaml

మేము అమలు చేసిన పైన పేర్కొన్న ఆదేశం యొక్క అవుట్‌పుట్ క్రింది స్క్రీన్‌షాట్‌లో చూడవచ్చు. YAML ఫైల్ సృష్టించబడిందని అవుట్‌పుట్ సూచిస్తుంది:

దశ 8: క్షితిజసమాంతర పాడ్‌స్కేలర్‌ని సృష్టించండి

ఈ దశలో, మేము మీకు HorizontalPodAutoscalerని సృష్టించడానికి ఆదేశాన్ని చూపుతాము. డిమాండ్‌ను బట్టి పాడ్‌లు చొప్పించబడతాయి మరియు స్వయంచాలకంగా ముగించబడతాయి. ఇది నిలువు స్కేలింగ్ నుండి భిన్నంగా ఉంటుంది, దీని ద్వారా CPU మరియు మెమరీ వనరులు ఆటోస్కేల్ ద్వారా కేటాయించబడతాయి. కింది స్క్రిప్ట్ minikube క్లస్టర్‌లో అమలు చేయబడుతుంది:

~$ kubectl ఆటోస్కేల్ విస్తరణ php -- cpu - శాతం = యాభై -- నిమి = 10 - గరిష్టంగా = ఇరవై

ఇక్కడ, మేము కనిష్ట మరియు గరిష్ట విలువలను 10 మరియు 20కి సెట్ చేసినట్లు మీరు చూడవచ్చు.

మునుపటి ఆదేశం యొక్క అవుట్‌పుట్ జోడించబడింది:

దశ 9: క్షితిజసమాంతర పాడ్‌స్కేలర్‌ని తనిఖీ చేయండి

ఈ దశలో, మేము కొత్తగా సృష్టించిన HorizontalPodAutoscaler యొక్క ప్రస్తుత స్థితిని తనిఖీ చేస్తాము. కింది ఆదేశం అమలు చేయబడుతుంది:

~$ kubectl hpa పొందండి

ముగింపు

కుబెర్నెటెస్ క్లస్టర్‌లో ఆటోమేటిక్ రిసోర్స్ అప్‌డేట్‌లను అందించే “కుబెక్ట్ల్ ఆటోస్కేల్” కుబెర్నెటెస్ యొక్క అత్యంత ఉపయోగకరమైన ఫీచర్లలో ఒకటి. ఒక క్లస్టర్ పాడ్‌లను పెంచడానికి లేదా పాడ్‌లను తగ్గించడానికి అవసరమైనప్పుడు ఆటోస్కేలర్ సహాయపడుతుంది. ఈ కథనంలో, మేము రెండు ఆటోస్కేల్ పద్ధతులను నేర్చుకున్నాము - ఒకటి డిఫాల్ట్ ఆటోస్కేలర్ మరియు మరొకటి హారిజాంటల్‌పాడ్‌స్కేలర్.

మొదట, మేము పాడ్‌లను మోహరించి వాటిని ప్రకటించాము. అప్పుడు, మేము ఆటోస్కేలర్‌ను సృష్టించాము మరియు HorizontalPodScaler కంటే ముందు వర్క్‌లోడ్ మానిటర్‌ని అమలు చేయడానికి Apache సర్వర్‌ను కాన్ఫిగర్ చేసాము. ఆ తర్వాత, మేము YAML ఫైల్‌ని మరియు క్షితిజసమాంతర పాడ్‌స్కేలర్‌ని సృష్టించాము. ఈ కథనం ఆటోస్కేల్ కుబెర్నెట్‌లను సృష్టించడం, కాన్ఫిగర్ చేయడం మరియు అమలు చేయడం వంటి వివరణాత్మక దశలపై దృష్టి సారించింది.