జీవితంలో నేర్చుకోవడానికి ఈరోజు కంటే మంచి సమయం లేదు.
ఇది 2019, మరియు DevOps గతంలో కంటే చాలా సందర్భోచితమైనది. మెయిన్ఫ్రేమ్ల కాలం లాగే సిస్టమ్ అడ్మినిస్ట్రేటర్ల రోజులు ముగిశాయని వారు అంటున్నారు. అయితే ఇది నిజంగా అలా ఉందా?
ఐటీలో తరచుగా జరుగుతున్నట్లుగా, పరిస్థితి మారిపోయింది. DevOps మెథడాలజీ ఉద్భవించింది, అయితే సిస్టమ్ అడ్మినిస్ట్రేటర్ నైపుణ్యాలు ఉన్న వ్యక్తి లేకుండా, అంటే Ops లేకుండా ఇది ఉనికిలో ఉండదు.
DevOps విధానం దాని ఆధునిక రూపాన్ని తీసుకునే ముందు, నేను నన్ను Opsగా వర్గీకరించాను. మరియు ఒక సిస్టమ్ అడ్మినిస్ట్రేటర్ తాను ఇంకా ఎంత చేయలేకపోతున్నాడో మరియు దానిని నేర్చుకునేందుకు ఎంత తక్కువ సమయం ఉందో తెలుసుకున్నప్పుడు అతను ఏమి అనుభవిస్తాడో నాకు బాగా తెలుసు.
అయితే ఇది నిజంగా భయానకంగా ఉందా? జ్ఞానం లేకపోవడం ఒక రకమైన పెద్ద సమస్యగా భావించకూడదని నేను చెబుతాను. ఇది మరింత వృత్తిపరమైన సవాలు.
వెబ్ స్కేల్ ఉత్పత్తులు Linux లేదా ఇతర ఓపెన్ సోర్స్ సాఫ్ట్వేర్పై ఆధారపడి ఉంటాయి మరియు వాటిని నిర్వహించగల సామర్థ్యం ఉన్న మార్కెట్లో చాలా తక్కువ మంది వ్యక్తులు ఉన్నారు. డిమాండ్ ఇప్పటికే ఈ రంగంలో నిపుణుల సంఖ్యను మించిపోయింది. సిస్టమ్ అడ్మినిస్ట్రేటర్ ఇకపై తన నైపుణ్యం స్థాయిని మెరుగుపరచకుండా కేవలం పనిని కొనసాగించలేరు. అతను బహుళ సర్వర్లు/నోడ్లను నిర్వహించడానికి ఆటోమేషన్ నైపుణ్యాలను కలిగి ఉండాలి మరియు ఉత్పన్నమయ్యే సమస్యలను పరిష్కరించడానికి అవి ఎలా పని చేస్తాయనే దానిపై మంచి అవగాహన కలిగి ఉండాలి.
మీరు DevOps బృందంలో సభ్యునిగా మారడానికి ముందు, మీరు చాలా సుదీర్ఘమైన కానీ ఆసక్తికరమైన ప్రయాణాన్ని గడపాలి, DevOps ప్రమాణాల ప్రకారం సిస్టమ్ను నిర్వహించడానికి అవసరమైన కొత్త సాంకేతికతలు మరియు వివిధ సాధనాలను నేర్చుకోవాలి.
Итак, как же системному администратору перейти от привычного подхода в работе к новой концепции DevOps? Всё как обычно: вначале необходимо изменить мышление. Совсем непросто отказаться от подхода, которому вы следовали последние десять или двадцать лет, и начать всё делать по-новому, но это необходимо.
అన్నింటిలో మొదటిది, DevOps అనేది కంపెనీలో నిర్దిష్ట స్థానం కాదని, నిర్దిష్ట అభ్యాసాల సమితి అని అర్థం చేసుకోవడం ముఖ్యం. ఈ అభ్యాసాలు వివిక్త సిస్టమ్ల పంపిణీని సూచిస్తాయి, బగ్లు మరియు ఎర్రర్ల నుండి హానిని తగ్గించడం, తరచుగా మరియు సమయానుకూల సాఫ్ట్వేర్ అప్డేట్లు, డెవలపర్లు (దేవ్) మరియు అడ్మినిస్ట్రేటర్ల మధ్య బాగా స్థిరపడిన పరస్పర చర్య (Ops), అలాగే కోడ్ను మాత్రమే కాకుండా స్థిరంగా పరీక్షించడం. ప్రక్రియలో మొత్తం నిర్మాణం కూడా
ఆలోచనా విధానాన్ని మార్చడంతో పాటు, అప్లికేషన్లు, సేవలు మరియు సాఫ్ట్వేర్ల నిరంతర ఏకీకరణ మరియు డెలివరీ కోసం మౌలిక సదుపాయాలను ఎలా నిర్వహించాలో మరియు దాని స్థిరమైన ఆపరేషన్, విశ్వసనీయత మరియు లభ్యతను నిర్ధారించడం ఎలాగో మీరు నేర్చుకోవాలి.
Ops ప్రొఫెషనల్గా మీరు కోల్పోయేది ప్రోగ్రామింగ్ నైపుణ్యాలు. ఇప్పుడు సిస్టమ్ నిర్వాహకులు సర్వర్లో ప్యాచ్లను స్వయంచాలకంగా ఇన్స్టాల్ చేయడానికి, ఫైల్లు మరియు ఖాతాలను నిర్వహించడానికి, సమస్యలను పరిష్కరించడానికి మరియు డాక్యుమెంటేషన్ను కంపైల్ చేయడానికి ఉపయోగించే స్క్రిప్ట్లు (స్క్రిప్ట్లు) ఇప్పటికే వాడుకలో లేనివిగా పరిగణించబడుతున్నాయి. స్క్రిప్టింగ్ ఇప్పటికీ సాపేక్షంగా సాధారణ సందర్భాలలో వర్తిస్తుంది, కానీ DevOps అనేది పెద్ద-స్థాయి సమస్యలను పరిష్కరించడం, అది అమలు, పరీక్ష, నిర్మాణాలు లేదా విస్తరణలు కావచ్చు.
అందువల్ల, మీరు ఆటోమేషన్ నేర్చుకోవాలనుకుంటే, మీరు డెవలపర్ కాకపోయినా, మీ అభివృద్ధి యొక్క ఈ దశలో మీరు కనీసం కొంచెం ప్రోగ్రామింగ్లో ప్రావీణ్యం పొందాలి.
ఏం చేయాలి? నిపుణుడిగా డిమాండ్లో ఉండటానికి, మీరు సంబంధిత నైపుణ్యాలను పొందాలి - కనీసం ఒక ప్రోగ్రామింగ్ భాషలో నైపుణ్యం సాధించాలి, ఉదాహరణకు పైథాన్. డెవలపర్లు మాత్రమే ప్రోగ్రామ్ చేయాలని ఆలోచించడం వలన, వృత్తిపరంగా పరిపాలనలో పాలుపంచుకున్న వ్యక్తికి ఇది కష్టంగా అనిపించవచ్చు. నిపుణుడిగా మారడం అవసరం లేదు, కానీ ప్రోగ్రామింగ్ భాషలలో ఒకదానిపై జ్ఞానం (అది పైథాన్, బాష్ లేదా కూడా కావచ్చు
ప్రోగ్రామ్ నేర్చుకోవడానికి కొంత సమయం పడుతుంది. DevOps బృంద సభ్యులు మరియు కస్టమర్లతో కమ్యూనికేట్ చేస్తున్నప్పుడు శ్రద్ధగా మరియు ఓపికగా ఉండటం వలన మీరు విషయాలపై అగ్రగామిగా ఉంటారు. రోజుకు అరగంట, ఒక గంట లేదా అంతకంటే ఎక్కువ, ప్రోగ్రామింగ్ భాష నేర్చుకోవడం మీ ప్రధాన లక్ష్యం.
సిస్టమ్ నిర్వాహకులు మరియు DevOps నిపుణులు ఇలాంటి సమస్యలను పరిష్కరిస్తారు, అయినప్పటికీ, ముఖ్యమైన తేడాలు ఉన్నాయి. DevOps ఇంజనీర్ చేయగలిగినదంతా సిస్టమ్ అడ్మినిస్ట్రేటర్ చేయలేరని నమ్ముతారు. సిస్టమ్ అడ్మినిస్ట్రేటర్ సర్వర్ సిస్టమ్ల పనితీరును కాన్ఫిగర్ చేయడం, నిర్వహించడం మరియు నిర్ధారించడంపై ఎక్కువ దృష్టి పెట్టారని వారు చెప్పారు, అయితే DevOps ఇంజనీర్ ఈ కార్ట్ మరియు మరొక చిన్న కార్ట్ను లాగుతారు.
అయితే ఈ ప్రకటన ఎంతవరకు నిజం?
సిస్టమ్ అడ్మినిస్ట్రేటర్: ఫీల్డ్లో ఒక యోధుడు
ఈ వ్యాసంలో గుర్తించబడిన తేడాలు మరియు సారూప్యతలు ఉన్నప్పటికీ, సిస్టమ్స్ అడ్మినిస్ట్రేషన్ మరియు DevOps మధ్య గణనీయమైన తేడా లేదని నేను ఇప్పటికీ నమ్ముతున్నాను. సిస్టమ్ అడ్మినిస్ట్రేటర్లు ఎల్లప్పుడూ DevOps స్పెషలిస్ట్ల వలె అదే విధులను నిర్వహిస్తారు, ఇంతకు ముందు ఎవరూ దీనిని DevOps అని పిలవలేదు. ప్రత్యేకించి ఏ పనికి సంబంధించినది కాకపోయినా, ప్రత్యేకంగా తేడాలు వెతకడం వల్ల ప్రయోజనం లేదని నేను నమ్ముతున్నాను. సిస్టమ్ అడ్మినిస్ట్రేటర్ వలె కాకుండా, DevOps ఒక స్థానం కాదు, కానీ ఒక భావన అని మర్చిపోవద్దు.
మరో ముఖ్యమైన విషయం గమనించాలి, ఇది లేకుండా పరిపాలన మరియు DevOps రెండింటి గురించి సంభాషణ అసంపూర్ణంగా ఉంటుంది. సాధారణ అర్థంలో సిస్టమ్ అడ్మినిస్ట్రేషన్ అనేది ఒక స్పెషలిస్ట్ నిర్దిష్ట నైపుణ్యాలను కలిగి ఉంటారని మరియు వివిధ రకాల మౌలిక సదుపాయాలకు సేవలందించడంపై దృష్టి సారిస్తుందని ఊహిస్తుంది. ఇది సార్వత్రిక ఉద్యోగి అనే కోణంలో కాదు, నిర్వాహకులందరూ నిర్వహించే అనేక విధులు ఉన్నాయి.
ఉదాహరణకు, ఎప్పటికప్పుడు వారు ఒక రకమైన సాంకేతిక పనివాడుగా వ్యవహరించాలి, అంటే అక్షరాలా ప్రతిదీ చేయాలి. మరియు మొత్తం సంస్థకు అలాంటి ఒక నిర్వాహకుడు మాత్రమే ఉంటే, అతను సాధారణంగా అన్ని సాంకేతిక పనిని నిర్వహిస్తాడు. ఇది ప్రింటర్లు మరియు కాపీయర్లను నిర్వహించడం నుండి రౌటర్లు మరియు స్విచ్లను సెటప్ చేయడం మరియు నిర్వహించడం లేదా ఫైర్వాల్ను కాన్ఫిగర్ చేయడం వంటి నెట్వర్క్-సంబంధిత పనులను చేయడం వరకు ఏదైనా కావచ్చు.
అతను హార్డ్వేర్ అప్గ్రేడ్లు, లాగ్ తనిఖీ మరియు విశ్లేషణ, సెక్యూరిటీ ఆడిట్లు, సర్వర్ ప్యాచింగ్, ట్రబుల్షూటింగ్, మూలకారణ విశ్లేషణ మరియు ఆటోమేషన్-సాధారణంగా పవర్షెల్, పైథాన్ లేదా బాష్ స్క్రిప్ట్ల ద్వారా బాధ్యత వహిస్తాడు. ఉపయోగం యొక్క ఒక ఉదాహరణ
సిస్టమ్ అడ్మినిస్ట్రేటర్ యొక్క పని సమయాన్ని వృథా చేయడం మరియు కంపెనీ డబ్బును ఏ విధంగానైనా ఆదా చేయడం కాదు. కొన్నిసార్లు సిస్టమ్ అడ్మినిస్ట్రేటర్లు పెద్ద బృందం సభ్యులుగా పని చేస్తారు, ఏకం చేస్తారు, ఉదాహరణకు, Linux, Windows, డేటాబేస్లు, నిల్వ మొదలైన వాటి నిర్వాహకులు. పని షెడ్యూల్లు కూడా మారుతూ ఉంటాయి. ఉదాహరణకు, రోజు చివరిలో ఒక టైమ్ జోన్లోని షిఫ్ట్ కేసులను మరొక టైమ్ జోన్లోని తదుపరి షిఫ్ట్కి బదిలీ చేస్తుంది, తద్వారా ప్రక్రియలు ఆగిపోవు (ఫాలో-ది-సన్); లేదా ఉద్యోగులకు ఉదయం 9 నుండి సాయంత్రం 5 గంటల వరకు సాధారణ పని దినం ఉంటుంది; లేదా అది XNUMX/XNUMX డేటా సెంటర్లో పని చేస్తోంది.
కాలక్రమేణా, సిస్టమ్ అడ్మినిస్ట్రేటర్లు వ్యూహాత్మకంగా ఆలోచించడం మరియు ముఖ్యమైన విషయాలను సాధారణ పనులతో కలపడం నేర్చుకున్నారు. వారు పనిచేసే బృందాలు మరియు విభాగాలు సాధారణంగా వనరులు తక్కువగా ఉంటాయి, కానీ అదే సమయంలో ప్రతి ఒక్కరూ రోజువారీ పనులను పూర్తి స్థాయిలో పూర్తి చేయడానికి ప్రయత్నిస్తున్నారు.
DevOps: అభివృద్ధి మరియు నిర్వహణ ఒకటి
DevOps గొడుగు కింద, ఒక వైపు సాఫ్ట్వేర్ డెవలప్మెంట్ టీమ్ మరియు మరోవైపు మెయింటెనెన్స్ టీమ్ ఉంటుంది. వారు తరచుగా ఉత్పత్తి నిర్వహణ నిపుణులు, టెస్టర్లు మరియు వినియోగదారు ఇంటర్ఫేస్ డిజైనర్లచే చేరతారు. మొత్తం కంపెనీ సామర్థ్యాన్ని సపోర్ట్ చేయడానికి మరియు మెరుగుపరచడానికి కొత్త అప్లికేషన్లు మరియు కోడ్ అప్డేట్లను త్వరగా రూపొందించడానికి ఈ నిపుణులు కలిసి కార్యకలాపాలను క్రమబద్ధీకరించారు.
DevOps దాని మొత్తం జీవిత చక్రంలో సాఫ్ట్వేర్ అభివృద్ధి మరియు ఆపరేషన్పై నియంత్రణపై ఆధారపడి ఉంటుంది. నిర్వహణ వ్యక్తులు తప్పనిసరిగా డెవలపర్లకు మద్దతు ఇవ్వాలి మరియు డెవలపర్లు సిస్టమ్లలో ఉపయోగించే APIల కంటే ఎక్కువగా అర్థం చేసుకునే పనిలో ఉన్నారు. వారు హుడ్ కింద ఏమి ఉందో అర్థం చేసుకోవాలి (అంటే హార్డ్వేర్ మరియు ఆపరేటింగ్ సిస్టమ్లు ఎలా పనిచేస్తాయి) తద్వారా వారు బగ్లను మెరుగ్గా నిర్వహించగలరు, సమస్యలను పరిష్కరించగలరు మరియు సేవా సాంకేతిక నిపుణులతో పరస్పర చర్య చేయగలరు.
సిస్టమ్ అడ్మినిస్ట్రేటర్లు సరికొత్త సాంకేతికతలను నేర్చుకోవాలనుకుంటే మరియు వినూత్న ఆలోచనలు మరియు పరిష్కారాలకు సిద్ధంగా ఉంటే DevOps బృందంలోకి మారవచ్చు. నేను ఇంతకు ముందు చెప్పినట్లుగా, వారు పూర్తి స్థాయి ప్రోగ్రామర్లుగా మారవలసిన అవసరం లేదు, కానీ రూబీ, పైథాన్ లేదా గో వంటి ప్రోగ్రామింగ్ భాషలో ప్రావీణ్యం సంపాదించడం వలన వారు జట్టులో చాలా ఉపయోగకరమైన సభ్యులుగా మారడానికి సహాయపడుతుంది. సిస్టమ్ అడ్మినిస్ట్రేటర్లు సాంప్రదాయకంగా అన్ని పనులను స్వయంగా చేస్తారు మరియు తరచుగా ఒంటరివారిగా భావించబడుతున్నప్పటికీ, DevOpsలో వారికి పూర్తిగా వ్యతిరేక అనుభవం ఉంటుంది, ఈ ప్రక్రియలో ప్రతి ఒక్కరూ పరస్పరం పరస్పరం పరస్పరం పరస్పరం వ్యవహరిస్తారు.
ఆటోమేషన్ అంశం చాలా సందర్భోచితంగా మారుతోంది. సిస్టమ్ అడ్మినిస్ట్రేటర్లు మరియు DevOps నిపుణులు ఇద్దరూ త్వరగా స్కేలింగ్ చేయడం, లోపాలను తగ్గించడం మరియు ఇప్పటికే ఉన్న లోపాలను త్వరగా కనుగొని పరిష్కరించడంలో ఆసక్తిని కలిగి ఉన్నారు. అందువలన, ఆటోమేషన్ అనేది రెండు ప్రాంతాలు కలిసే ఒక భావన. AWS, Azure మరియు Google Cloud Platform వంటి క్లౌడ్ సేవలకు సిస్టమ్ నిర్వాహకులు బాధ్యత వహిస్తారు. వారు నిరంతర ఏకీకరణ మరియు డెలివరీ సూత్రాలను అర్థం చేసుకోవాలి మరియు వంటి సాధనాలను ఎలా ఉపయోగించాలి
అదనంగా, సిస్టమ్ నిర్వాహకులు తప్పనిసరిగా కాన్ఫిగరేషన్ మరియు నిర్వహణ సాధనాలను ఉపయోగించాలి
ప్రధాన భావన
మరియు ఈ యంత్రాంగంలోని చివరి వివరాలు
Git చాలా లక్షణాలను కలిగి ఉంది. మీరు అన్ని Git ఆదేశాలను ఎప్పటికీ నేర్చుకోలేరు, కానీ సాఫ్ట్వేర్ కమ్యూనికేషన్ మరియు సహకారంలో ఇది ఎందుకు ప్రధానమో మీరు ఖచ్చితంగా అర్థం చేసుకుంటారు. మీరు DevOps టీమ్లో పని చేస్తున్నట్లయితే Git గురించి క్షుణ్ణంగా తెలుసుకోవడం చాలా ముఖ్యం.
మీరు సిస్టమ్ అడ్మినిస్ట్రేటర్ అయితే, మీరు Gitని బాగా అధ్యయనం చేయాలి, సంస్కరణ నియంత్రణ ఎలా నిర్మించబడుతుందో అర్థం చేసుకోవాలి మరియు సాధారణ ఆదేశాలను గుర్తుంచుకోవాలి: git స్థితి, git కమిట్ -m, git add, git పుల్, git పుష్, git రీబేస్, git శాఖ, git తేడా మరియు ఇతరులు. అనేక ఆన్లైన్ కోర్సులు మరియు పుస్తకాలు ఉన్నాయి, ఇవి మొదటి నుండి ఈ అంశాన్ని నేర్చుకోవడంలో మరియు నిర్దిష్ట నైపుణ్యాలతో ప్రొఫెషనల్గా మారడంలో మీకు సహాయపడతాయి. అద్భుతమైనవి కూడా ఉన్నాయి
తీర్మానం
అంతిమంగా, మీరు DevOps స్పెషలిస్ట్ కావాలనుకుంటున్నారా లేదా సిస్టమ్ అడ్మినిస్ట్రేటర్గా ఉండటం మంచిదా అని మీరు నిర్ణయించుకుంటారు. మీరు చూడగలిగినట్లుగా, పరివర్తన చేయడానికి ఒక అభ్యాస వక్రత ఉంది, కానీ మీరు ఎంత త్వరగా ప్రారంభిస్తే అంత మంచిది. ప్రోగ్రామింగ్ లాంగ్వేజ్ని ఎంచుకోండి మరియు ఏకకాలంలో వంటి సాధనాలను నేర్చుకోండి
మూలం: www.habr.com