Kwa nini Wasimamizi wa Mfumo Wanapaswa Kuwa Wahandisi wa DevOps

Kwa nini Wasimamizi wa Mfumo Wanapaswa Kuwa Wahandisi wa DevOps

Hakuna wakati mzuri wa kujifunza maishani kuliko leo.


Ni 2019, na DevOps inafaa zaidi kuliko hapo awali. Wanasema kwamba siku za wasimamizi wa mfumo zimekwisha, kama vile enzi ya mfumo mkuu. Lakini hii ni kweli?
Mara nyingi hutokea katika IT, hali imebadilika. Mbinu ya DevOps imetokea, lakini haiwezi kuwepo bila mtu mwenye ujuzi wa msimamizi wa mfumo, yaani, bila Ops.

Kabla ya mbinu ya DevOps kuchukua fomu yake ya kisasa, nilijitambulisha kama Ops. Na ninajua vizuri kile ambacho msimamizi wa mfumo hupata anapotambua ni kiasi gani hawezi kufanya bado na ana wakati mdogo wa kujifunza.

Kwa nini Wasimamizi wa Mfumo Wanapaswa Kuwa Wahandisi wa DevOps

Lakini ni kweli kwamba inatisha? Ningesema kwamba ukosefu wa maarifa haupaswi kuzingatiwa kama aina fulani ya shida kubwa. Ni zaidi ya changamoto ya kitaaluma.

Bidhaa za kiwango cha wavuti zinatokana na Linux au programu nyingine huria, na kuna watu wachache na wachache kwenye soko wanaoweza kuzidumisha. Mahitaji tayari yamezidi idadi ya wataalamu katika uwanja huu. Msimamizi wa mfumo hataweza tena kuendelea kufanya kazi bila kuboresha kiwango chake cha ujuzi. Lazima awe na ujuzi wa otomatiki ili kusimamia seva/nodi nyingi na awe na ufahamu mzuri wa jinsi wanavyofanya kazi kutatua matatizo yanayotokea.

Kabla ya kuwa mwanachama wa timu ya DevOps, lazima upitie safari ndefu lakini ya kuvutia, kujifunza teknolojia mpya na zana mbalimbali zinazohitajika ili kudumisha mfumo kulingana na viwango vya DevOps.

Kwa hivyo, msimamizi wa mfumo anawezaje kuhama kutoka kwa njia ya kawaida kwenda kufanya kazi hadi kwa dhana mpya ya DevOps? Kila kitu ni kama kawaida: kwanza unahitaji kubadilisha mawazo yako. Si rahisi kuacha njia ambayo umekuwa ukifuata kwa miaka kumi au ishirini iliyopita na kuanza kufanya mambo kwa njia tofauti, lakini ni lazima.

Kwanza kabisa, ni muhimu kuelewa kwamba DevOps sio nafasi maalum katika kampuni, lakini seti ya mazoea maalum. Mazoea haya yanamaanisha usambazaji wa mifumo iliyotengwa, kupunguza madhara kutoka kwa hitilafu na hitilafu, masasisho ya programu ya mara kwa mara na kwa wakati, mwingiliano ulioimarishwa kati ya wasanidi programu (Dev) na wasimamizi (Ops), pamoja na majaribio ya mara kwa mara ya si tu kanuni, lakini pia. pia muundo mzima ndani ya mchakato ushirikiano endelevu na utoaji (CI/CD).

Pamoja na kubadilisha njia ya kufikiri, unahitaji kujifunza jinsi ya kudumisha miundombinu na kuhakikisha uendeshaji wake thabiti, kuegemea na upatikanaji wa ushirikiano unaoendelea na utoaji wa maombi, huduma na programu.

Unachoweza kukosa kama mtaalamu wa Ops ni ujuzi wa kupanga programu. Sasa kuandika maandishi (scripts), ambayo wasimamizi wa mfumo hutumia kufunga viraka moja kwa moja kwenye seva, kusimamia faili na akaunti, matatizo ya kutatua na kukusanya nyaraka, tayari inachukuliwa kuwa ya kizamani. Uandishi bado unatumika katika hali rahisi, lakini DevOps inahusu kutatua matatizo makubwa, iwe ni utekelezaji, majaribio, miundo, au uwekaji.

Kwa hivyo, ikiwa unataka kujifunza otomatiki, unahitaji kujua angalau programu kidogo, hata kama wewe sio msanidi programu, kwa sababu katika hatua hii ya maendeleo yako. miundombinu otomatiki katika DevOps inahitaji ujuzi huu.

Nini cha kufanya? Ili kubaki katika mahitaji kama mtaalam, unahitaji kupata ujuzi unaofaa - bwana angalau lugha moja ya programu, kwa mfano Python. Hii inaweza kuonekana kuwa ngumu kwa mtu ambaye anajishughulisha kitaaluma na utawala, kwa kuwa amezoea kufikiria kuwa programu ya watengenezaji pekee. Sio lazima kuwa mtaalam, lakini ujuzi wa mojawapo ya lugha za programu (inaweza kuwa Python, Bash au hata Powershell), hakika itakuwa faida.

Kujifunza kupanga huchukua muda. Kuwa mwangalifu na mvumilivu kutakusaidia kukaa juu ya mambo unapowasiliana na wanachama na wateja wa timu ya DevOps. Nusu saa kwa siku, saa moja au zaidi, kujifunza lugha ya programu lazima iwe lengo lako kuu.

Wasimamizi wa mfumo na wataalamu wa DevOps hutatua matatizo sawa, hata hivyo, kuna tofauti kubwa. Inaaminika kuwa msimamizi wa mfumo hawezi kufanya kila kitu ambacho mhandisi wa DevOps anaweza. Wanasema kuwa msimamizi wa mfumo anazingatia zaidi kusanidi, kudumisha na kuhakikisha utendaji wa mifumo ya seva, lakini mhandisi wa DevOps huchota mkokoteni huu wote na gari lingine ndogo.

Lakini taarifa hii ni ya kweli kiasi gani?

Msimamizi wa mfumo: shujaa mmoja kwenye uwanja

Licha ya tofauti na kufanana zilizoelezwa katika makala hii, bado ninaamini kuwa hakuna tofauti kubwa kati ya utawala wa mifumo na DevOps. Wasimamizi wa mfumo daima wamefanya kazi sawa na wataalamu wa DevOps, ni kwamba hakuna mtu aliyeiita DevOps hapo awali. Ninaamini kuwa hakuna maana katika kutafuta tofauti haswa, haswa ikiwa haihusiani na kazi yoyote. Usisahau kwamba, tofauti na msimamizi wa mfumo, DevOps sio nafasi, lakini dhana.

Jambo moja muhimu zaidi linapaswa kuzingatiwa, bila ambayo mazungumzo kuhusu utawala na DevOps hayatakuwa kamili. Utawala wa mfumo kwa maana ya kawaida unadhani kuwa mtaalamu ana seti maalum ya ujuzi na anazingatia kuhudumia aina mbalimbali za miundombinu. Sio kwa maana kwamba huyu ni mfanyakazi wa ulimwengu wote, lakini kwa maana kwamba kuna idadi ya kazi zinazofanywa na wasimamizi wote.

Kwa mfano, mara kwa mara wanapaswa kufanya kama aina ya handyman wa kiufundi, yaani, kufanya kila kitu halisi. Na ikiwa kuna msimamizi mmoja tu kwa shirika zima, basi kwa ujumla atafanya kazi zote za kiufundi. Hii inaweza kuwa kitu chochote kuanzia kutunza vichapishi na vinakili hadi kutekeleza majukumu yanayohusiana na mtandao kama vile kusanidi na kudhibiti vipanga njia na swichi au kusanidi ngome.

Pia atawajibika kwa uboreshaji wa vifaa, ukaguzi wa logi na uchambuzi, ukaguzi wa usalama, uwekaji wa seva, utatuzi wa shida, uchanganuzi wa sababu ya mizizi, na otomatiki-kawaida kupitia hati za PowerShell, Python, au Bash. Mfano mmoja wa matumizi matukio ni usimamizi wa akaunti za mtumiaji na kikundi. Kuunda akaunti za watumiaji na kutoa ruhusa ni kazi inayochosha sana kwani watumiaji huonekana na kutoweka karibu kila siku. Uendeshaji otomatiki kupitia hati huweka muda wa kufanya kazi muhimu zaidi za miundombinu, kama vile kuboresha swichi na seva na miradi mingine inayoathiri faida ya kampuni ambapo msimamizi anafanya kazi (ingawa inakubalika kwa ujumla kuwa idara ya TEHAMA haileti mapato moja kwa moja).

Kazi ya msimamizi wa mfumo si kupoteza muda na kuokoa fedha za kampuni kwa njia yoyote iwezekanavyo. Wakati mwingine wasimamizi wa mfumo hufanya kazi kama washiriki wa timu kubwa, wakiunganisha, kwa mfano, wasimamizi wa Linux, Windows, hifadhidata, hifadhi, na kadhalika. Ratiba za kazi pia hutofautiana. Kwa mfano, mabadiliko katika eneo la wakati mmoja mwishoni mwa siku huhamisha kesi hadi zamu inayofuata katika eneo lingine la saa ili michakato isisitishe (kufuata-jua); au wafanyakazi wana siku ya kawaida ya kazi kutoka 9 asubuhi hadi 5 p.m.; au inafanya kazi katika kituo cha data cha XNUMX/XNUMX.

Baada ya muda, wasimamizi wa mfumo wamejifunza kufikiria kimkakati na kuchanganya mambo muhimu na kazi za kawaida. Timu na idara wanazofanyia kazi kwa kawaida huwa na uhaba wa rasilimali, lakini wakati huo huo kila mtu anajaribu kukamilisha kazi za kila siku kwa ukamilifu zaidi.

DevOps: maendeleo na matengenezo kama moja

DevOps ni aina ya falsafa ya michakato ya maendeleo na matengenezo. Mbinu hii katika ulimwengu wa IT imekuwa ya ubunifu kweli.

Chini ya mwavuli wa DevOps, kuna timu ya ukuzaji programu upande mmoja na timu ya matengenezo kwa upande mwingine. Mara nyingi huunganishwa na wataalamu wa usimamizi wa bidhaa, wanaojaribu na wabunifu wa kiolesura. Kwa pamoja, wataalam hawa hurahisisha utendakazi ili kusambaza kwa haraka programu mpya na masasisho ya msimbo ili kusaidia na kuboresha ufanisi wa kampuni nzima.

DevOps inategemea udhibiti wa uundaji na uendeshaji wa programu katika mzunguko wake wote wa maisha. Watu wa matengenezo lazima waunge mkono wasanidi programu, na wasanidi wana jukumu la kuelewa zaidi ya API zinazotumiwa katika mifumo. Wanahitaji kuelewa kilicho chini ya kifuniko (yaani, jinsi maunzi na mifumo ya uendeshaji inavyofanya kazi) ili waweze kushughulikia vyema hitilafu, kutatua matatizo na kuingiliana na mafundi wa huduma.

Wasimamizi wa mfumo wanaweza kuhamia timu ya DevOps ikiwa wanataka kujifunza teknolojia za hivi punde na wako tayari kupokea mawazo na suluhu bunifu. Kama nilivyosema, sio lazima wawe waandaaji programu kamili, lakini kujua lugha ya programu kama Ruby, Python au Go kutawasaidia kuwa washiriki muhimu sana wa timu. Ingawa kwa kawaida wasimamizi wa mfumo hufanya kazi zote wenyewe na mara nyingi huchukuliwa kuwa wapweke, katika DevOps wana uzoefu tofauti kabisa, ambapo kila mtu katika mchakato hutangamana.

Mada ya otomatiki inazidi kuwa muhimu. Wasimamizi wa mfumo na wataalamu wa DevOps wanapenda kuongeza kasi, kupunguza makosa, na kutafuta na kurekebisha makosa yaliyopo kwa haraka. Kwa hivyo, otomatiki ni dhana ambapo maeneo mawili yanaungana. Wasimamizi wa mfumo wanawajibika kwa huduma za wingu kama vile AWS, Azure na Google Cloud Platform. Lazima waelewe kanuni za ujumuishaji na utoaji endelevu na jinsi ya kutumia zana kama Jenkins.

Kwa kuongeza, wasimamizi wa mfumo lazima watumie zana za usanidi na usimamizi kama vile Inawezekana, muhimu kwa uwekaji sambamba wa seva kumi au ishirini.

Dhana kuu ni miundombinu kama kanuni. Programu ni kila kitu. Kwa kweli, ili taaluma ya msimamizi wa mfumo usipoteze umuhimu, unahitaji tu kubadili msisitizo kidogo. Wasimamizi wa mfumo wako katika biashara ya huduma na lazima waweze kuwasiliana kwa ufanisi na wasanidi programu, na kinyume chake. Kama wanasema, kichwa kimoja ni nzuri, lakini mbili ni bora.

Na maelezo ya mwisho katika utaratibu huu ni kwenda. Kufanya kazi na Git ni moja ya majukumu ya jadi ya kila siku ya msimamizi wa mfumo. Mfumo huu wa udhibiti wa toleo hutumiwa sana na wasanidi programu, wataalamu wa DevOps, timu za Agile na wengine wengi. Ikiwa kazi yako inahusiana na mzunguko wa maisha ya programu, basi hakika utafanya kazi na Git.

Git ina sifa nyingi. Labda hutawahi kujifunza amri zote za Git, lakini utaelewa kwa nini ni msingi katika mawasiliano na ushirikiano wa programu. Ujuzi kamili wa Git ni muhimu sana ikiwa unafanya kazi katika timu ya DevOps.

Ikiwa wewe ni msimamizi wa mfumo, basi unahitaji kusoma vizuri Git, kuelewa jinsi udhibiti wa toleo hujengwa na ukumbuke amri za kawaida: git status, git commit -m, git add, git pull, git push, git rebase, git branch, git diff na wengine. Kuna kozi nyingi za mtandaoni na vitabu ambavyo vinaweza kukusaidia kujifunza mada hii kutoka mwanzo na kuwa mtaalamu na ujuzi maalum. Pia kuna ajabu kudanganya karatasi na maagizo ya Git, kwa hivyo sio lazima uwajaze wote, lakini kadiri unavyotumia Git, itakuwa rahisi zaidi.

Hitimisho

Hatimaye, unaamua ikiwa unahitaji kuwa mtaalamu wa DevOps au ikiwa ni bora kubaki msimamizi wa mfumo. Kama unaweza kuona, kuna curve ya kujifunza ili kufanya mabadiliko, lakini haraka unapoanza, ni bora zaidi. Chagua lugha ya programu na wakati huo huo ujifunze zana kama vile kwenda (udhibiti wa toleo), Jenkins (CI/CD, ushirikiano unaoendelea) na Inawezekana (usanidi na otomatiki). Chochote chaguo unachochagua, usisahau kwamba unahitaji daima kujifunza na kuboresha ujuzi wako.

Chanzo: mapenzi.com

Kuongeza maoni