Wanamtandao (hawahitajiki).

Wakati wa kuandika makala hii, utafutaji kwenye tovuti maarufu ya kazi kwa maneno "Mhandisi wa Mtandao" ulirudisha nafasi takriban mia tatu katika Urusi yote. Kwa kulinganisha, utaftaji wa kifungu "msimamizi wa mfumo" unarudisha nafasi karibu elfu 2.5, na "mhandisi wa DevOps" - karibu 800.

Je, hii inamaanisha kuwa wanamtandao hawahitajiki tena wakati wa mawingu ya ushindi, Docker, Kubernetes na Wi-Fi inayopatikana kila mahali?
Wacha tufikirie (c)

Wanamtandao (hawahitajiki).

Hebu tufahamiane. Jina langu ni Alexey, na mimi ni mwana mtandao.

Nimehusika katika mitandao kwa zaidi ya miaka 10 na nimekuwa nikifanya kazi na mifumo mbalimbali ya *nix kwa zaidi ya miaka 15 (nilipata nafasi ya kuchezea Linux na FreeBSD). Nilifanya kazi katika waendeshaji wa mawasiliano ya simu, kampuni kubwa ambazo zinachukuliwa kuwa "biashara", na hivi majuzi nimekuwa nikifanya kazi katika fintech "changa na yenye ujasiri", ambapo mawingu, devops, kubernetes na maneno mengine ya kutisha ambayo hakika yatanifanya mimi na wenzangu tusiwe wa lazima. . Siku fulani. Labda.

Kanusho: "Katika maisha yetu, sio kila kitu kiko kila wakati na kila mahali, lakini kitu, wakati mwingine mahali" (c) Maxim Dorofeev.

Kila kitu kilichoandikwa hapa chini kinaweza na kinapaswa kuzingatiwa maoni ya kibinafsi ya mwandishi, ambayo haidai kuwa ukweli wa mwisho, au hata utafiti kamili. Wahusika wote ni wa uwongo, matukio yote ni ya kubahatisha.

Karibu katika ulimwengu wangu.

Unaweza kukutana wapi na wanamtandao?

1. Waendeshaji wa simu, makampuni ya huduma na washiriki wengine. Kila kitu ni rahisi hapa: mtandao kwao ni biashara. Wanauza moja kwa moja muunganisho (waendeshaji) au kutoa huduma za kuzindua/kudumisha mitandao ya wateja wao.

Kuna uzoefu mwingi hapa, lakini sio pesa nyingi (isipokuwa wewe ni mkurugenzi au meneja wa mauzo aliyefanikiwa). Na bado, ikiwa unapenda mitandao, na uko mwanzoni mwa safari yako, kazi ya kusaidia waendeshaji wengine sio kubwa sana, hata sasa, itakuwa mahali pa kuanzia (katika shirikisho kila kitu kimeandikwa sana, na huko. ni nafasi ndogo ya ubunifu). Kweli, hadithi kuhusu jinsi unavyoweza kukua kutoka kwa mhandisi wa zamu katika miaka michache hadi meneja wa kiwango cha C pia ni za kweli, ingawa ni nadra, kwa sababu dhahiri. Daima kuna hitaji la wafanyikazi, kwa sababu mauzo yanatokea. Hii ni nzuri na mbaya kwa wakati mmoja - kuna nafasi kila wakati, kwa upande mwingine - mara nyingi wale wanaofanya kazi zaidi/ werevu huondoka haraka ama kwa kupandishwa cheo au kwenda sehemu zingine, "joto zaidi".

2. "Biashara" ya masharti. Haijalishi ikiwa shughuli yake kuu inahusiana na IT au la. Jambo kuu ni kwamba ina idara yake ya IT, ambayo inahakikisha uendeshaji wa mifumo ya ndani ya kampuni, ikiwa ni pamoja na mtandao katika ofisi, njia za mawasiliano kwa matawi, nk. Kazi za mhandisi wa mtandao katika kampuni kama hizo zinaweza kufanywa "kwa muda" na msimamizi wa mfumo (ikiwa miundombinu ya mtandao ni ndogo au inashughulikiwa na mkandarasi wa nje), na mtaalamu wa mtandao, ikiwa kuna moja, anaweza Wakati huo huo angalia simu na SAN (hakuna nzuri). Wanalipa tofauti - inategemea sana faida ya biashara, ukubwa wa kampuni na muundo. Nilifanya kazi na makampuni ambapo mifumo ya Cisco ilikuwa mara kwa mara "iliyopakiwa kwenye mapipa", na makampuni ambayo mtandao ulijengwa kutoka kwa kinyesi, vijiti na mkanda wa bluu, na seva hazikuwahi kusasishwa (bila kusema, hakuna hifadhi zilizotolewa ama) . Kuna uzoefu mdogo hapa, na itakuwa karibu kuwa katika eneo la kufuli kwa muuzaji, au "jinsi ya kutengeneza kitu bila chochote." Binafsi, niliona ni ya kuchosha sana, ingawa watu wengi wanaipenda - kila kitu kinapimwa na kinaweza kutabirika (ikiwa tunazungumza juu ya kampuni kubwa), "dorakha-bahato", nk. Angalau mara moja kwa mwaka, muuzaji fulani mkuu anasema kwamba wamekuja na mfumo mwingine wa mega-super-duper ambao utafanya kila kitu kiotomatiki sasa na wasimamizi wote wa mfumo na wanamtandao wanaweza kutawanywa, na kuacha wanandoa kubonyeza vifungo kwenye kiolesura kizuri. Ukweli ni kwamba, hata tukipuuza gharama ya suluhu, wanamtandao hawataenda popote pale. Ndio, labda badala ya koni kutakuwa na kiunganishi cha wavuti tena (lakini sio sehemu maalum ya vifaa, lakini mfumo mkubwa ambao unasimamia makumi na mamia ya vipande kama hivyo vya vifaa), lakini ujuzi wa "jinsi kila kitu kitafanya kazi ndani" bado utaendelea. kuhitajika.

3. Makampuni ya bidhaa, faida ambayo inatokana na maendeleo (na, mara nyingi, uendeshaji) wa baadhi ya programu au jukwaa - bidhaa hiyo hiyo. Kawaida wao ni wadogo na mahiri, bado wako mbali na ukubwa wa biashara na urasimu wao. Ni hapa kwamba devops sawa, cubers, dockers na maneno mengine ya kutisha hupatikana kwa wingi, ambayo kwa hakika itafanya mtandao na wahandisi wa mtandao kuwa rudiment isiyo ya lazima.

Mtumiaji wa mtandao ana tofauti gani na msimamizi wa mfumo?

Katika ufahamu wa watu sio kutoka kwa IT - hakuna chochote. Wote wawili hutazama skrini nyeusi na kuandika maneno machache, wakati mwingine huapa kimya kimya.

Katika ufahamu wa waandaaji wa programu - labda kwa eneo la somo. Wasimamizi wa mfumo husimamia seva, wanamtandao husimamia swichi na ruta. Wakati mwingine utawala ni mbaya, na kila kitu huanguka kwa kila mtu. Kweli, ikiwa kuna kitu cha kushangaza, wana mtandao pia wanalaumiwa. Kwa sababu tu kukutania, ndiyo sababu.

Kwa kweli, tofauti kuu ni mbinu ya kufanya kazi. Pengine, ni kati ya wanamtandao ambao kuna wafuasi wengi wa mbinu ya "Ikiwa inafanya kazi, usiiguse!". Kama sheria, kitu kinaweza kufanywa (ndani ya muuzaji mmoja) kwa njia moja tu; usanidi mzima wa kisanduku uko kwenye kiganja cha mkono wako. Gharama ya kosa ni kubwa, na wakati mwingine ni ya juu sana (kwa mfano, italazimika kusafiri kilomita mia kadhaa ili kuwasha tena router, na kwa wakati huu watu elfu kadhaa watakuwa bila mawasiliano - hali ya kawaida kabisa kwa mwendeshaji wa mawasiliano ya simu) .

Kwa maoni yangu, hii ndiyo sababu wahandisi wa mtandao, kwa upande mmoja, wana motisha kubwa sana kwa utulivu wa mtandao (na mabadiliko ni adui mkuu wa utulivu), na pili, ujuzi wao unaenda kwa kina zaidi kuliko upana (huna. haja ya kuwa na uwezo wa kusanidi kadhaa ya daemons tofauti , unahitaji kujua teknolojia na utekelezaji wao kutoka kwa mtengenezaji maalum wa vifaa). Ndiyo maana msimamizi wa mfumo ambaye alitafuta jinsi ya kusajili vlan kwenye mfumo wa Cisco bado sio mwana mtandao. Na hakuna uwezekano kwamba ataweza kuunga mkono kwa ufanisi (pamoja na kutatua matatizo) mtandao ngumu zaidi au chini.

Lakini kwa nini unahitaji mtandao ikiwa una mwenyeji?

Kwa pesa za ziada (na ikiwa wewe ni mteja mkubwa na mpendwa, labda hata bila malipo, "kama rafiki"), wahandisi wa kituo cha data watasanidi swichi zako ili kukidhi mahitaji yako, na labda hata kukusaidia kuanzisha kiolesura cha BGP na watoa huduma. (ikiwa una subnet yako mwenyewe ya anwani za IP za tangazo).

Shida kuu ni kwamba kituo cha data sio idara yako ya IT, ni kampuni tofauti ambayo lengo lake ni kupata faida. Ikiwa ni pamoja na kwa gharama yako kama mteja. Kituo cha data hutoa racks, huwapa umeme na baridi, na pia hutoa muunganisho wa "chaguo-msingi" kwenye Mtandao. Kulingana na miundombinu hii, kituo cha data kinaweza kupangisha vifaa vyako (colocation), kukodisha seva kwako (seva maalum), au kutoa huduma inayodhibitiwa (kwa mfano, OpenStack au K8s). Lakini biashara ya kituo cha data (kawaida) sio usimamizi wa miundombinu ya mteja, kwa sababu mchakato huu ni wa kazi sana, haufanyiki kiotomatiki (na katika kituo cha kawaida cha data kila kitu kinachowezekana ni otomatiki), umoja mbaya zaidi (kila mteja. ni ya mtu binafsi) na kwa ujumla imejaa malalamiko ("unaniambia seva iliwekwa, lakini sasa imeanguka, ni kosa lako !!!111"). Kwa hiyo, ikiwa mhudumu anakusaidia kwa kitu fulani, atajaribu kuifanya iwe rahisi na rahisi iwezekanavyo. Kwa sababu kufanya hivyo vigumu hakuna faida, angalau kutoka kwa mtazamo wa gharama za kazi za wahandisi wa mhudumu huyu (lakini hali ni tofauti, angalia kanusho). Hii haimaanishi kuwa mhudumu atafanya kila kitu vibaya. Lakini sio ukweli kabisa kwamba atafanya kile ulichohitaji sana.

Inaweza kuonekana kuwa jambo hilo ni dhahiri kabisa, lakini mara kadhaa katika mazoezi yangu nimekutana na ukweli kwamba makampuni yalianza kutegemea mtoaji wao mwenyeji kidogo zaidi kuliko wanapaswa, na hii haikusababisha chochote kizuri. Ilinibidi kuelezea kwa kirefu na kwa undani kwamba hakuna SLA moja ingeweza kufunika hasara kutoka kwa wakati wa kupumzika (kuna tofauti, lakini kawaida ni ghali sana, SANA kwa mteja) na kwamba mwenyeji hajui kabisa kile kinachotokea. miundombinu ya wateja (isipokuwa viashiria vya jumla). Na mwenyeji hakufanyii nakala rudufu pia. Hali ni mbaya zaidi ikiwa una wahudumu zaidi ya mmoja. Ikitokea matatizo yoyote baina yao, hakika hawatakujulisha ni nini kilienda vibaya.

Kwa kweli, nia hapa ni sawa na wakati wa kuchagua "timu ya msimamizi wa ndani dhidi ya rasilimali ya nje". Ikiwa hatari zinahesabiwa, ubora ni wa kuridhisha, na biashara haijali, kwa nini usijaribu. Kwa upande mwingine, mtandao ni mojawapo ya tabaka za msingi za miundombinu, na haifai kuwaacha watu wa nje ikiwa tayari unasaidia kila kitu kingine wewe mwenyewe.

Ni katika hali gani mwana mtandao anahitajika?

Ifuatayo tutazungumza haswa juu ya kampuni za kisasa za chakula. Pamoja na waendeshaji na biashara, kila kitu ni wazi, pamoja na au minus - kidogo imebadilika huko katika miaka ya hivi karibuni, na mitandao ilihitajika hapo awali, na inahitajika sasa. Lakini kwa wale wale "wachanga na wanaothubutu" mambo hayako wazi sana. Mara nyingi huweka miundombinu yao yote kwenye mawingu, kwa hivyo hawahitaji hata wasimamizi - isipokuwa wasimamizi wa mawingu hayo hayo, bila shaka. Miundombinu, kwa upande mmoja, ni rahisi sana katika muundo wake, kwa upande mwingine, ni automatiska vizuri (acible / puppet, terraform, ci / cd ... vizuri, unajua). Lakini hata hapa kuna hali wakati huwezi kufanya bila mhandisi wa mtandao.

Mfano 1, classic

Tuseme kampuni inaanza na seva moja na anwani ya IP ya umma, ambayo iko katika kituo cha data. Kisha kuna seva mbili. Kisha zaidi ... Hivi karibuni au baadaye, kutakuwa na haja ya mtandao wa kibinafsi kati ya seva. Kwa sababu trafiki ya "nje" imepunguzwa na kipimo data (sio zaidi ya 100Mbit / s kwa mfano) na kwa kiasi cha kupakuliwa / kupakiwa kwa mwezi (wapangishaji tofauti wana ushuru tofauti, lakini kipimo data kwa ulimwengu wa nje kawaida ni ghali zaidi kuliko mtandao wa kibinafsi).

Mpangishaji anaongeza kadi za mtandao za ziada kwenye seva na kuzijumuisha kwenye swichi zao kwenye vlan tofauti. Eneo la "gorofa" la ndani linaonekana kati ya seva. Raha!

Idadi ya seva inakua, na trafiki kwenye mtandao wa kibinafsi pia inakua - backups, replications, nk. Mwenyeji anajitolea kukusogeza kwenye swichi tofauti ili usiingiliane na wateja wengine, na wasikuingilie. Kipangishi husakinisha swichi kadhaa na kuzisanidi kwa njia fulani - uwezekano mkubwa, na kuacha mtandao mmoja bapa kati ya seva zako zote. Kila kitu hufanya kazi vizuri, lakini kwa wakati fulani matatizo huanza: ucheleweshaji kati ya majeshi huongezeka mara kwa mara, magogo hulalamika kuhusu pakiti nyingi za arp kwa pili, na wakati wa ukaguzi pentester alipiga mtandao wako wote wa ndani, akivunja seva moja tu.

Ni nini kinachohitajika kufanywa?

Gawanya mtandao katika sehemu - vlans. Sanidi anwani yako mwenyewe katika kila vlan, chagua lango ambalo litahamisha trafiki kati ya mitandao. Sanidi acl kwenye lango ili kupunguza ufikiaji kati ya sehemu, au hata usakinishe ngome tofauti iliyo karibu.

Mfano 1, iliendelea

Seva zimeunganishwa kwenye LAN kwa kamba moja. Swichi katika racks kwa namna fulani zimeunganishwa kwa kila mmoja, lakini ikiwa kuna ajali katika rack moja, tatu zaidi zilizo karibu huanguka. Mipango ipo, lakini kuna mashaka juu ya umuhimu wao. Kila seva ina anwani yake ya umma, ambayo hutolewa na mhudumu na imefungwa kwenye rack. Wale. Wakati wa kuhamisha seva, anwani lazima ibadilishwe.

Ni nini kinachohitajika kufanywa?

Unganisha seva kwa kutumia LAG (Kikundi cha Kukusanya Kiungo) na kamba mbili kwenye swichi kwenye rack (pia zinahitaji kuwa redundant). Hifadhi viunganisho kati ya racks, ubadilishe kwa aina ya "nyota" (au CLOS ya sasa ya mtindo), ili upotevu wa rack moja usiathiri wengine. Chagua racks "kati" ambayo msingi wa mtandao utakuwa iko na ambapo racks nyingine zitaunganishwa. Wakati huo huo, weka anwani ya umma kwa utaratibu, chukua kutoka kwa mwenyeji (au kutoka kwa RIR, ikiwa inawezekana) subnet, ambayo wewe mwenyewe (au kupitia mhudumu) unatangaza kwa ulimwengu.

Je, haya yote yanaweza kufanywa na msimamizi wa mfumo "wa kawaida" ambaye hana ujuzi wa kina wa mitandao? Sina uhakika. Mwenyeji atafanya hivi? Labda itakuwa, lakini utahitaji maelezo ya kiufundi ya kina, ambayo mtu atahitaji pia kuchora. na kisha angalia ikiwa kila kitu kimefanywa kwa usahihi.

Mfano 2: Wingu

Wacha tuseme una VPC kwenye wingu fulani la umma. Ili kupata ufikiaji kutoka kwa ofisi au sehemu ya nje ya miundombinu hadi mtandao wa ndani ndani ya VPC, unahitaji kusanidi muunganisho kupitia IPSec au chaneli maalum. Kwa upande mmoja, IPSec ni nafuu, kwa sababu hakuna haja ya kununua maunzi ya ziada; unaweza kusanidi handaki kati ya seva yako na anwani ya umma na wingu. Lakini - ucheleweshaji, utendakazi mdogo (kwani kituo kinahitaji kusimbwa kwa njia fiche), pamoja na muunganisho usiothibitishwa (kwani ufikiaji ni kupitia Mtandao wa kawaida).

Ni nini kinachohitajika kufanywa?

Pandisha muunganisho kupitia chaneli iliyojitolea (kwa mfano, AWS inaiita Direct Connect). Ili kufanya hivyo, pata operator wa mpenzi ambaye atakuunganisha, amua juu ya hatua ya uunganisho karibu na wewe (wewe kwa operator na operator kwa wingu), na, hatimaye, kuweka kila kitu. Inawezekana kufanya haya yote bila mhandisi wa mtandao? Hakika ndiyo. Lakini jinsi ya kutatua shida bila yeye katika kesi ya shida sio wazi tena.

Kunaweza pia kuwa na matatizo na upatikanaji kati ya mawingu (ikiwa una multicloud) au matatizo na ucheleweshaji kati ya mikoa tofauti, nk. Kwa kweli, sasa zana nyingi zimeonekana ambazo huongeza uwazi wa kile kinachotokea katika wingu (Macho Elfu sawa), lakini haya yote ni zana za mhandisi wa mtandao, na sio badala yake.

Ningeweza kuchora mifano kadhaa kama hii kutoka kwa mazoezi yangu, lakini nadhani ni wazi kuwa timu, kuanzia kiwango fulani cha maendeleo ya miundombinu, lazima iwe na mtu (ikiwezekana zaidi ya mmoja) anayejua jinsi mtandao unavyofanya kazi na anaweza kusanidi. vifaa vya mtandao na kutatua matatizo ikiwa yanatokea. Niamini, atakuwa na kitu cha kufanya

Je, mwanamtandao anapaswa kujua nini?

Sio lazima kabisa (na hata, wakati mwingine, hatari) kwa mhandisi wa mtandao kushughulika tu na mtandao na hakuna kitu kingine chochote. Hata kama hatuzingatii chaguo na miundombinu inayoishi karibu kabisa katika wingu la umma (na, chochote mtu anaweza kusema, inazidi kuwa maarufu), na kuchukua, kwa mfano, kwenye msingi au mawingu ya kibinafsi, ambapo kwenye β€œmaarifa ya kiwango cha CCNP pekee” "Hutaondoka.

Kwa kuongezea, kwa kweli, mitandao - ingawa kuna uwanja usio na mwisho wa kusoma, hata ikiwa unazingatia eneo moja tu (mitandao ya watoa huduma, biashara, vituo vya data, Wi-Fi ...)

Bila shaka, wengi wenu sasa mtakumbuka Python na "otomatiki ya mtandao" nyingine, lakini hii ni muhimu tu, lakini si hali ya kutosha. Ili mhandisi wa mtandao "aweze kujiunga na timu kwa mafanikio," lazima aweze kuzungumza lugha moja na wasanidi programu na wasimamizi/waendelezaji wenzake. Ina maana gani?

  • kuwa na uwezo sio tu kufanya kazi katika Linux kama mtumiaji, lakini pia kuisimamia, angalau katika kiwango cha sysadmin-jun: kusakinisha programu muhimu, kuanzisha upya huduma iliyoshindwa, kuandika kitengo rahisi cha systemd.
  • Elewa (angalau kwa maneno ya jumla) jinsi safu ya mtandao inavyofanya kazi katika Linux, jinsi mtandao unavyofanya kazi katika viboreshaji na vyombo (lxc / docker / kubernetes).
  • Bila shaka, kuwa na uwezo wa kufanya kazi na ansible/chef/puppet au mfumo mwingine wa SCM.
  • Mstari tofauti unapaswa kuandikwa kuhusu SDN na mitandao ya mawingu ya kibinafsi (kwa mfano, TungstenFabric au OpenvSwitch). Hii ni safu nyingine kubwa ya maarifa.

Kwa kifupi, nilielezea mtaalamu wa kawaida wa T (kama ni mtindo kusema sasa). Inaonekana kama hakuna jipya, lakini kulingana na uzoefu wa mahojiano, sio wahandisi wote wa mtandao wanaweza kujivunia ujuzi wa angalau mada mbili kutoka kwenye orodha iliyo hapo juu. Kwa mazoezi, ukosefu wa maarifa "katika nyanja zinazohusiana" hufanya iwe ngumu sana sio tu kuwasiliana na wenzako, lakini pia kuelewa mahitaji ambayo biashara inaweka kwenye mtandao, kama miundombinu ya kiwango cha chini cha mradi. Na bila ufahamu huu, inakuwa ngumu zaidi kutetea maoni yako na "kuuuza" kwa biashara.

Kwa upande mwingine, tabia hiyo hiyo ya "kuelewa jinsi mfumo unavyofanya kazi" huwapa wanamtandao faida nzuri sana dhidi ya "majumla" mbalimbali ambao wanajua kuhusu teknolojia kutoka kwa makala kwenye HabrΓ©/kati na kupiga gumzo kwenye Telegram, lakini hawajui kabisa jinsi ya kufanya nini. kanuni hii au programu hiyo inafanya kazi? Na ujuzi wa mifumo fulani, kama inavyojulikana, hufaulu kuchukua nafasi ya ujuzi wa mambo mengi.

Hitimisho, au TL;DR

  1. Msimamizi wa mtandao (kama mhandisi wa DBA au VoIP) ni mtaalamu aliye na wasifu finyu (tofauti na wasimamizi wa mfumo/devs/SRE), hitaji ambalo halijitokezi mara moja (na huenda lisitokee kwa muda mrefu, kwa kweli) . Lakini ikiwa itatokea, hakuna uwezekano wa kubadilishwa na utaalamu wa nje (wasimamizi wa nje au wa kawaida wa madhumuni ya jumla, "ambao pia hutunza mtandao"). Kinachosikitisha zaidi ni kwamba hitaji la wataalam kama hao ni ndogo, na, kwa masharti, katika kampuni iliyo na waandaaji programu 800 na devops/wasimamizi 30, kunaweza kuwa na wanamtandao wawili tu wanaofanya kazi bora na majukumu yao. Wale. soko lilikuwa na ni ndogo sana, na kwa mshahara mzuri - hata kidogo.
  2. Kwa upande mwingine, mtandao mzuri katika ulimwengu wa kisasa lazima ujue sio mitandao yenyewe (na jinsi ya kurekebisha usanidi wao), lakini pia jinsi mifumo ya uendeshaji na programu zinazoendesha juu ya mitandao hii zinavyoingiliana nao. Bila hili, itakuwa vigumu sana kuelewa kile ambacho wenzako wanakuuliza na kuwasilisha (kwa busara) matakwa/mahitaji yako kwao.
  3. Hakuna wingu, ni kompyuta ya mtu mwingine tu. Unahitaji kuelewa kuwa kutumia mawingu ya umma/ya faragha au huduma za mtoa huduma mwenyeji "ambaye anakufanyia kila kitu kwa msingi wa ufunguo" haibadilishi ukweli kwamba programu yako bado inatumia mtandao, na matatizo nayo yataathiri uendeshaji wa mtandao. maombi yako. Chaguo lako ni mahali ambapo kituo cha uwezo kitapatikana, ambacho kitawajibika kwa mtandao wa mradi wako.

Chanzo: mapenzi.com

Kuongeza maoni