మీకు కుబెర్నెట్స్ అవసరం లేకపోవచ్చు

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

కుబెర్నెటెస్ అనేది కంటైనర్ ఆర్కెస్ట్రేషన్ యొక్క 300-పౌండ్ల గొరిల్లా. ఇది ప్రపంచంలోని కొన్ని అతిపెద్ద కంటైనర్ సిస్టమ్‌లలో పనిచేస్తుంది, కానీ ఖరీదైనది.

చిన్న జట్లకు ముఖ్యంగా ఖరీదైనది, దీనికి చాలా మద్దతు సమయం మరియు నిటారుగా నేర్చుకునే వక్రత అవసరం. నలుగురితో కూడిన మా బృందానికి ఇది చాలా ఎక్కువ భారం. కాబట్టి మేము ప్రత్యామ్నాయాల కోసం వెతకడం ప్రారంభించాము - మరియు ప్రేమలో పడ్డాము నోమాడ్.

నీకు ఏమి కావాలి

మా బృందం అనేక సాధారణ పనితీరు పర్యవేక్షణ మరియు విశ్లేషణ సేవలకు మద్దతు ఇస్తుంది: గోలో వ్రాసిన కొలమానాల కోసం API ముగింపు పాయింట్‌లు, ప్రోమేతియస్ ఎగుమతులు, లాగ్‌స్టాష్ వంటి లాగ్ పార్సర్‌లు మరియు Gollum, అలాగే InfluxDB లేదా Elasticsearch వంటి డేటాబేస్‌లు. ఈ సేవల్లో ప్రతి దాని స్వంత కంటైనర్‌లో నడుస్తుంది. అన్నింటినీ అమలు చేయడానికి మాకు సాధారణ వ్యవస్థ అవసరం.

మేము కంటైనర్ ఆర్కెస్ట్రేషన్ కోసం అవసరాల జాబితాతో ప్రారంభించాము:

  • అనేక యంత్రాలపై సేవల సమితిని అమలు చేస్తోంది.
  • నడుస్తున్న సేవల యొక్క అవలోకనం.
  • సేవల మధ్య లింక్‌లు.
  • సేవ డౌన్ అయితే ఆటోమేటిక్ రీస్టార్ట్.
  • చిన్న బృందం ద్వారా మౌలిక సదుపాయాల నిర్వహణ.

అదనంగా, కింది విషయాలు చక్కగా ఉంటాయి, కానీ అదనపు అవసరం లేదు:

  • వాటి సామర్థ్యాల ఆధారంగా ట్యాగింగ్ మెషీన్‌లు (ఉదాహరణకు, భారీ I/O సేవల కోసం ఫాస్ట్ డిస్క్‌లతో ట్యాగింగ్ మెషీన్లు).
  • ఆర్కెస్ట్రేటర్ నుండి స్వతంత్రంగా సేవలను అమలు చేయగల సామర్థ్యం (ఉదాహరణకు, అభివృద్ధి సమయంలో).
  • కాన్ఫిగరేషన్‌లు మరియు రహస్యాలను పంచుకోవడానికి ఒక సాధారణ ప్రదేశం.
  • కొలమానాలు మరియు లాగ్‌ల కోసం ముగింపు స్థానం.

ఎందుకు Kubernetes మాకు సరైనది కాదు

కుబెర్నెటెస్‌తో ప్రోటోటైప్ చేస్తున్నప్పుడు, మేము ఎక్కువగా ఆధారపడే తర్కం యొక్క సంక్లిష్ట పొరలను జోడిస్తున్నట్లు మేము గమనించాము.

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

అదనంగా, కుబెర్నెట్స్ పర్యావరణ వ్యవస్థ వేగంగా అభివృద్ధి చెందుతోంది. ఉత్తమ అభ్యాసాలు మరియు తాజా సాధనాలతో తాజాగా ఉండటానికి ఇది చాలా సమయం మరియు శక్తిని తీసుకుంటుంది. Kubectl, minikube, kubeadm, helm, Tiller, kops, oc - జాబితా కొనసాగుతూనే ఉంటుంది. మీరు ప్రారంభించేటప్పుడు ఈ సాధనాలన్నీ అవసరం లేదు, కానీ మీకు ఏమి అవసరమో మీకు తెలియదు, కాబట్టి మీరు ప్రతిదాని గురించి తెలుసుకోవాలి. దీని కారణంగా, అభ్యాస వక్రత చాలా నిటారుగా ఉంటుంది.

Kubernetes ఎప్పుడు ఉపయోగించాలి

మా కంపెనీలో, చాలా మంది వ్యక్తులు కుబెర్నెట్‌లను ఉపయోగిస్తున్నారు మరియు దానితో చాలా సంతోషంగా ఉన్నారు. ఈ ఉదంతాలు Google లేదా Amazon ద్వారా నిర్వహించబడతాయి, వారికి మద్దతు ఇవ్వడానికి వనరులు ఉన్నాయి.

కుబెర్నెటీస్ వస్తుంది అద్భుతమైన లక్షణాలు, స్కేల్ వద్ద కంటైనర్ ఆర్కెస్ట్రేషన్‌ను మరింత నిర్వహించగలిగేలా చేస్తుంది:

  • వివరంగా హక్కుల నిర్వహణ.
  • కస్టమ్ కంట్రోలర్లు క్లస్టర్‌కు లాజిక్‌ని జోడించండి. ఇవి కేవలం Kubernetes APIతో మాట్లాడే ప్రోగ్రామ్‌లు.
  • ఆటోస్కేలింగ్! కుబెర్నెట్‌లు సర్వీస్ మెట్రిక్‌లను ఉపయోగించి మరియు మాన్యువల్ జోక్యం అవసరం లేకుండా డిమాండ్‌పై సేవలను స్కేల్ చేయవచ్చు.

మీకు ఈ లక్షణాలన్నీ నిజంగా అవసరమా అనేది ప్రశ్న. మీరు కేవలం నైరూప్యతలపై ఆధారపడలేరు; హుడ్ కింద ఏమి జరుగుతుందో మీరు కనుగొనవలసి ఉంటుంది.

మా బృందం చాలా సేవలను రిమోట్‌గా అందిస్తుంది (ప్రధాన అవస్థాపనకు దగ్గరి కనెక్షన్ కారణంగా), కాబట్టి మేము మా స్వంత కుబెర్నెట్స్ క్లస్టర్‌ను పెంచాలని కోరుకోలేదు. మేము కేవలం సేవలను అందించాలనుకుంటున్నాము.

బ్యాటరీలు చేర్చబడలేదు

నోమాడ్ ఆర్కెస్ట్రేషన్‌లో 20% అవసరం, ఇది 80% అందిస్తుంది. ఇది చేసేదంతా విస్తరణలను నిర్వహించడమే. నోమాడ్ విస్తరణలను చూసుకుంటుంది, లోపాలు ఏర్పడితే కంటైనర్లను రీస్టార్ట్ చేస్తుంది... అంతే.

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

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

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

వదులుగా కపుల్డ్ భాగాల నోమాడ్ పర్యావరణ వ్యవస్థ

నోమాడ్ యొక్క నిజమైన బలం దాని పర్యావరణ వ్యవస్థ. ఇది ఇతర - పూర్తిగా ఐచ్ఛికం - వంటి ఉత్పత్తులతో బాగా కలిసిపోతుంది కాన్సుల్ (కీ-విలువ స్టోర్) లేదా ఖజానా (ప్రాసెసింగ్ రహస్యాలు). నోమాడ్ ఫైల్ లోపల ఈ సేవల నుండి డేటాను సంగ్రహించడానికి విభాగాలు ఉన్నాయి:

template {
  data = <<EOH
LOG_LEVEL="{{key "service/geo-api/log-verbosity"}}"
API_KEY="{{with secret "secret/geo-api-key"}}{{.Data.value}}{{end}}"
EOH

  destination = "secrets/file.env"
  env         = true
}

ఇక్కడ మేము కీని చదువుతాము service/geo-api/log-verbosity కాన్సుల్ నుండి మరియు ఆపరేషన్ సమయంలో పర్యావరణ వేరియబుల్‌కు దానిని బహిర్గతం చేయండి LOG_LEVEL. మేము కీని కూడా అందిస్తున్నాము secret/geo-api-key వాల్ట్ నుండి API_KEY. సాధారణ కానీ శక్తివంతమైన!

దాని సరళత కారణంగా, నోమాడ్ API ద్వారా ఇతర సేవలతో సులభంగా విస్తరించబడుతుంది. ఉదాహరణకు, టాస్క్‌ల కోసం ట్యాగ్‌లకు మద్దతు ఉంది. మేము అన్ని సేవలను కొలమానాలతో ట్యాగ్ చేస్తాము trv-metrics. ఈ విధంగా ప్రోమేతియస్ కాన్సుల్ ద్వారా ఈ సేవలను సులభంగా కనుగొనవచ్చు మరియు క్రమానుగతంగా ఎండ్ పాయింట్‌ని తనిఖీ చేయవచ్చు /metrics కొత్త డేటా కోసం. అదే విధంగా చేయవచ్చు, ఉదాహరణకు, లాగ్‌ల కోసం, ఉపయోగించడం Loki.

విస్తరణకు అనేక ఇతర ఉదాహరణలు ఉన్నాయి:

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

ఇవన్నీ అనుమతిస్తుంది సేంద్రీయంగా మౌలిక సదుపాయాలను అభివృద్ధి చేయండి విక్రేతకు ప్రత్యేక కనెక్షన్ లేకుండా.

న్యాయమైన హెచ్చరిక

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

కుబెర్నెట్స్‌తో పోలిస్తే, నోమాడ్ కమ్యూనిటీ అంత పెద్దది కాదు. కుబెర్నెటెస్‌లో ఇప్పటికే దాదాపు 75 మంది కమిట్‌లు మరియు 000 మంది కంట్రిబ్యూటర్‌లు ఉన్నారు, నోమాడ్‌లో దాదాపు 2000 మంది కమిట్‌లు మరియు 14 మంది కంట్రిబ్యూటర్‌లు ఉన్నారు. కుబెర్నెటీస్ వేగాన్ని అందుకోవడంలో నోమాడ్ చాలా కష్టపడాల్సి ఉంటుంది, కానీ అలా చేయనవసరం లేదు! ఇది మరింత ప్రత్యేకమైన వ్యవస్థ, మరియు చిన్న కమ్యూనిటీ అంటే కుబెర్నెటెస్‌తో పోలిస్తే మీ పుల్ అభ్యర్థన ఎక్కువగా గుర్తించబడటానికి మరియు ఆమోదించబడే అవకాశం ఉంది.

సారాంశం

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

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

మీరు నిర్వహించడానికి సులభమైన మరియు విస్తరించదగిన నమ్మకమైన ఆర్కెస్ట్రేటర్ కోసం చూస్తున్నట్లయితే, నోమాడ్‌ని ఎందుకు ప్రయత్నించకూడదు? ఇది మిమ్మల్ని ఎంత దూరం తీసుకువెళుతుందో మీరు ఆశ్చర్యపోవచ్చు.

కుబెర్నెట్స్‌ను కారుతో పోలుస్తే, నోమాడ్ స్కూటర్ అవుతుంది. కొన్నిసార్లు మీకు ఒక విషయం అవసరం మరియు కొన్నిసార్లు మీకు మరొకటి అవసరం. ఇద్దరికీ ఉండే హక్కు ఉంది.

మూలం: www.habr.com

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