ProHoster > Blogs > AdministrÄcija > AutomatizÄcija paÅ”iem mazÄkajiem. PirmÄ daļa (kas ir pÄc nulles). TÄ«kla virtualizÄcija
AutomatizÄcija paÅ”iem mazÄkajiem. PirmÄ daļa (kas ir pÄc nulles). TÄ«kla virtualizÄcija
Š iepriekÅ”Äjais numurs Es aprakstÄ«ju tÄ«kla automatizÄcijas sistÄmu. PÄc dažu cilvÄku domÄm, pat Ŕī pirmÄ pieeja problÄmai jau ir atrisinÄjusi dažus jautÄjumus. Un tas mani ļoti iepriecina, jo mÅ«su mÄrÄ·is ciklÄ nav piesegt Ansible ar Python skriptiem, bet gan izveidot sistÄmu.
Tas pats regulÄjums nosaka kÄrtÄ«bu, kÄdÄ mÄs izskatÄ«sim jautÄjumu.
Un tÄ«kla virtualizÄcija, kurai Å”is izdevums ir veltÄ«ts, Ä«paÅ”i neietilpst ADSM tÄmÄ, kurÄ mÄs analizÄjam automatizÄciju.
Bet paskatÄ«simies uz to no cita leÅÄ·a.
Daudzi pakalpojumi jau ilgu laiku ir izmantojuÅ”i vienu un to paÅ”u tÄ«klu. PiemÄram, telekomunikÄciju operatora gadÄ«jumÄ tas ir 2G, 3G, LTE, platjosla un B2B. LÄ«dzstrÄvas gadÄ«jumÄ: savienojamÄ«ba dažÄdiem klientiem, internets, bloku krÄtuve, objektu krÄtuve.
Un visiem pakalpojumiem ir nepiecieÅ”ama izolÄcija vienam no otra. Å Ädi parÄdÄ«jÄs pÄrklÄjuma tÄ«kli.
Un visi pakalpojumi nevÄlas gaidÄ«t, kamÄr persona tos manuÄli konfigurÄs. TÄ parÄdÄ«jÄs orÄ·estranti un SDN.
PirmÄ pieeja sistemÄtiskai tÄ«kla vai drÄ«zÄk tÄ daļas automatizÄcijai jau sen ir pieÅemta un ieviesta daudzÄs vietÄs: VMWare, OpenStack, Google Compute Cloud, AWS, Facebook.
Ar to mÄs Å”odien nodarbosimies.
saturs
iemesli
VÄrdu krÄjums
ApakÅ”klÄjs - fiziskais tÄ«kls
PÄrklÄjums - virtuÄlais tÄ«kls
PÄrklÄjums ar ToR
PÄrklÄjums no saimniekdatora
KÄ piemÄru izmantojot volframa audumu
KomunikÄcija vienÄ fiziskÄ maŔīnÄ
SaziÅa starp virtuÄlajÄm maŔīnÄm, kas atrodas dažÄdÄs fiziskÄs iekÄrtÄs
Izeja uz Ärpasauli
FAQ
SecinÄjums
Noderīgas saites
iemesli
Un, tÄ kÄ mÄs par to runÄjam, ir vÄrts pieminÄt tÄ«kla virtualizÄcijas priekÅ”noteikumus. PatiesÄ«bÄ Å”is process nesÄkÄs vakar.
JÅ«s droÅ”i vien esat dzirdÄjuÅ”i vairÄk nekÄ vienu reizi, ka tÄ«kls vienmÄr ir bijis jebkuras sistÄmas inertÄkÄ daļa. Un tÄ ir taisnÄ«ba visÄs nozÄ«mÄs. TÄ«kls ir pamats, uz kura balstÄs viss, un veikt izmaiÅas tajÄ ir diezgan grÅ«ti - pakalpojumi to nepanes, kad tÄ«kls nedarbojas. Bieži vien viena mezgla ekspluatÄcijas pÄrtraukÅ”ana var likvidÄt lielu daļu lietojumprogrammu un ietekmÄt daudzus klientus. DaļÄji tÄpÄc tÄ«kla komanda var pretoties jebkÄdÄm izmaiÅÄm, jo āātagad tÄ kaut kÄ darbojas (mÄs varbÅ«t pat nezinÄm, kÄ), taÄu Å”eit ir jÄkonfigurÄ kaut kas jauns, un nav zinÄms, kÄ tas ietekmÄs tÄ«klu.
Lai negaidÄ«tu, kamÄr tÄ«kla veidotÄji ievietos VLAN un nereÄ£istrÄtu nevienu pakalpojumu katrÄ tÄ«kla mezglÄ, cilvÄki nÄca klajÄ ar ideju izmantot pÄrklÄjumus - pÄrklÄjuma tÄ«klus -, kuru daudzveidÄ«ba ir ļoti dažÄda: GRE, IPinIP, MPLS, MPLS L2/L3VPN, VXLAN, GENEVE, MPLSoverUDP, MPLSoverGRE utt.
Ir konfigurÄti tikai gala mezgli ā transporta mezgli nav jÄpieskaras. Tas ievÄrojami paÄtrina procesu un dažreiz ļauj pilnÄ«bÄ izslÄgt tÄ«kla infrastruktÅ«ras nodaļu no jaunu pakalpojumu ievieÅ”anas procesa.
Slodze ir paslÄpta dziļi galvenÄs - tranzÄ«ta mezgliem nekas nav jÄzina par to, par adresÄÅ”anu saimniekos vai par pÄrklÄjuma tÄ«kla marÅ”rutiem. Tas nozÄ«mÄ, ka tabulÄs jÄsaglabÄ mazÄk informÄcijas, kas nozÄ«mÄ vienkÄrÅ”Äkas/lÄtÄkas ierÄ«ces izmantoÅ”anu.
Å ajÄ ne visai pilnvÄrtÄ«gajÄ jautÄjumÄ es neplÄnoju analizÄt visas iespÄjamÄs tehnoloÄ£ijas, bet drÄ«zÄk aprakstu pÄrklÄjuma tÄ«klu darbÄ«bas ietvaru DC.
Visa sÄrija aprakstÄ«s datu centru, kas sastÄv no identisku plauktu rindÄm, kurÄs ir uzstÄdÄ«ta viena un tÄ pati servera iekÄrta.
Å is aprÄ«kojums darbina virtuÄlÄs maŔīnas/konteinerus/bez servera, kas ievieÅ” pakalpojumus.
VÄrdu krÄjums
CilpÄ serveris Es nosaukÅ”u programmu, kas realizÄ klienta-servera komunikÄcijas servera pusi.
Plauktos esoÅ”Äs fiziskÄs maŔīnas sauc par serveriem nÄ mÄs bÅ«sim.
FiziskÄ maŔīna ā x86 dators uzstÄdÄ«ts statÄ«vÄ. VisbiežÄk lietotais termins uzÅÄmÄja. TÄ mÄs to sauksim "maŔīna"Or uzÅÄmÄja.
Hipervizors - lietojumprogramma, kas darbojas fiziskÄ iekÄrtÄ, kas emulÄ fiziskos resursus, kuros darbojas virtuÄlÄs maŔīnas. Dažreiz literatÅ«rÄ un internetÄ vÄrds āhipervizorsā tiek lietots kÄ āsaimniekaā sinonÄ«ms.
VirtuÄlÄ iekÄrta - operÄtÄjsistÄma, kas darbojas fiziskÄ maŔīnÄ hipervizora augÅ”pusÄ. Mums Å”ajÄ ciklÄ nav Ä«sti svarÄ«gi, vai tÄ patiesÄ«bÄ ir virtuÄlÄ maŔīna vai tikai konteiners. Sauksim to"VMĀ«
ÄŖrnieks ir plaÅ”s jÄdziens, ko Å”ajÄ rakstÄ definÄÅ”u kÄ atseviŔķu pakalpojumu vai atseviŔķu klientu.
DaudzkÄrtÄja Ä«re vai multiÄ«re - vienas un tÄs paÅ”as lietojumprogrammas izmantoÅ”ana dažÄdiem klientiem/pakalpojumiem. TajÄ paÅ”Ä laikÄ klientu izolÄÅ”ana viens no otra tiek panÄkta, pateicoties lietojumprogrammu arhitektÅ«rai, nevis ar atseviŔķi darbinÄmiem gadÄ«jumiem.
ToR ā slÄdža augÅ”daļa - statÄ«vÄ uzstÄdÄ«ts slÄdzis, kuram ir pievienotas visas fiziskÄs iekÄrtas.
Papildus ToR topoloÄ£ijai dažÄdi pakalpojumu sniedzÄji praktizÄ End of Row (EoR) vai Middle of Row (lai gan pÄdÄjais ir nievÄjoÅ”s retums, un es neesmu redzÄjis MoR saÄ«sinÄjumu).
ApakÅ”klÄjuma tÄ«kls vai pamatÄ esoÅ”ais tÄ«kls vai apakÅ”klÄjs ir fiziskÄ tÄ«kla infrastruktÅ«ra: slÄdži, marÅ”rutÄtÄji, kabeļi.
PÄrklÄjuma tÄ«kls vai pÄrklÄjuma tÄ«kls vai pÄrklÄjums - virtuÄls tuneļu tÄ«kls, kas darbojas virs fiziskÄ.
L3 audums vai IP audums - pÄrsteidzoÅ”s cilvÄces izgudrojums, kas ļauj izvairÄ«ties no STP atkÄrtoÅ”anas un TRILL mÄcÄ«Å”anÄs intervijÄm. Koncepcija, kurÄ viss tÄ«kls lÄ«dz piekļuves lÄ«menim ir tikai L3, bez VLAN un attiecÄ«gi milzÄ«giem paplaÅ”inÄtiem apraides domÄniem. NÄkamajÄ daÄ¼Ä apskatÄ«sim, no kurienes nÄk vÄrds ārÅ«pnÄ«caā.
SDN - ProgrammatÅ«ras definÄts tÄ«kls. Diez vai nepiecieÅ”ams ievads. TÄ«kla pÄrvaldÄ«bas pieeja, kur izmaiÅas tÄ«klÄ veic nevis cilvÄks, bet gan programma. Parasti tas nozÄ«mÄ vadÄ«bas plaknes pÄrvietoÅ”anu Ärpus gala tÄ«kla ierÄ«cÄm uz kontrolieri.
NFV ā TÄ«kla funkciju virtualizÄcija ā tÄ«kla ierÄ«Äu virtualizÄcija, kas liecina, ka dažas tÄ«kla funkcijas var palaist virtuÄlo maŔīnu vai konteineru veidÄ, lai paÄtrinÄtu jaunu pakalpojumu ievieÅ”anu, organizÄtu pakalpojumu Ä·Ädi un vienkÄrÅ”Äku horizontÄlo mÄrogojamÄ«bu.
Tagad es apzinÄti vienkÄrÅ”oju aprakstu lÄ«dz konkrÄtai realizÄcijai, lai pÄrÄk nesamulsinÄtu lasÄ«tÄju. Lai lasÄ«tu vairÄk pÄrdomÄtu, es aicinu viÅu uz sadaļu atsauces. TurklÄt Roma Gorge, kurÅ” kritizÄ Å”o rakstu par neprecizitÄtÄm, sola uzrakstÄ«t atseviŔķu numuru par serveru un tÄ«kla virtualizÄcijas tehnoloÄ£ijÄm, padziļinÄtÄku un uzmanÄ«gÄku pret detaļÄm.
LielÄko daļu tÄ«klu mÅ«sdienÄs var skaidri iedalÄ«t divÄs daļÄs:
ApakÅ”klÄjs ā fizisks tÄ«kls ar stabilu konfigurÄciju. PÄrklÄt ā abstrakcija virs apakÅ”klÄja Ä«rnieku izolÄÅ”anai.
Tas attiecas gan uz lÄ«dzstrÄvas gadÄ«jumu (ko mÄs analizÄsim Å”ajÄ rakstÄ), gan uz ISP (kuru mÄs neanalizÄsim, jo āātas jau ir bijis SDSM). Protams, ar uzÅÄmumu tÄ«kliem situÄcija ir nedaudz atŔķirÄ«ga.
AttÄls ar fokusu uz tÄ«klu:
ApakÅ”klÄjs
ApakÅ”klÄjums ir fizisks tÄ«kls: aparatÅ«ras slÄdži un kabeļi. IerÄ«ces pazemÄ zina, kÄ sasniegt fiziskÄs maŔīnas.
Tas balstÄs uz standarta protokoliem un tehnoloÄ£ijÄm. Ne tikai tÄpÄc, ka aparatÅ«ras ierÄ«ces lÄ«dz mÅ«sdienÄm darbojas ar patentÄtu programmatÅ«ru, kas neļauj ne programmÄt mikroshÄmu, ne ieviest savus protokolus; attiecÄ«gi ir nepiecieÅ”ama saderÄ«ba ar citiem piegÄdÄtÄjiem un standartizÄcija.
Bet kÄds, piemÄram, Google, var atļauties izstrÄdÄt savus slÄdžus un atteikties no vispÄrpieÅemtiem protokoliem. Bet LAN_DC nav Google.
ApakÅ”klÄjums mainÄs salÄ«dzinoÅ”i reti, jo tÄ mÄrÄ·is ir pamata IP savienojamÄ«ba starp fiziskÄm iekÄrtÄm. ApakÅ”klÄjs neko nezina par pakalpojumiem, klientiem vai nomniekiem, kas darbojas uz tÄ ā tai tikai jÄnogÄdÄ pakotne no vienas iekÄrtas uz otru.
ApakÅ”klÄjs varÄtu bÅ«t Å”Äds:
IPv4+OSPF
IPv6+ISIS+BGP+L3VPN
L2+TRILL
L2+STP
ApakÅ”klÄjuma tÄ«kls ir konfigurÄts klasiskÄ veidÄ: CLI/GUI/NETCONF.
PÄrklÄjums ir virtuÄls tuneļu tÄ«kls, kas izstiepts virs apakÅ”klÄja, un tas ļauj viena klienta virtuÄlajÄm maŔīnÄm sazinÄties savÄ starpÄ, vienlaikus nodroÅ”inot izolÄciju no citiem klientiem.
Klienta dati ir iekapsulÄti dažÄs tunelÄÅ”anas galvenÄs, lai tos pÄrraidÄ«tu publiskajÄ tÄ«klÄ.
TÄtad viena klienta (viena pakalpojuma) virtuÄlÄs maŔīnas var sazinÄties savÄ starpÄ, izmantojot pÄrklÄjumu, pat nezinot, kÄdu ceļu pakete patiesÄ«bÄ izmanto.
PÄrklÄjuma tÄ«kls parasti tiek konfigurÄts un uzturÄts, izmantojot centrÄlo kontrolleri. No tÄ konfigurÄcija, vadÄ«bas plakne un datu plakne tiek piegÄdÄta ierÄ«cÄm, kas marÅ”rutÄ un iekapsulÄ klienta trafiku. Mazliet zemÄk ApskatÄ«sim to ar piemÄriem.
JÄ, tas ir SDN tÄ«rÄkajÄ formÄ.
PÄrklÄjuma tÄ«kla organizÄÅ”anai ir divas principiÄli atŔķirÄ«gas pieejas:
PÄrklÄjums ar ToR
PÄrklÄjums no saimniekdatora
PÄrklÄjums ar ToR
PÄrklÄjums var sÄkties no piekļuves slÄdža (ToR), kas stÄv plauktÄ, kÄ tas notiek, piemÄram, VXLAN auduma gadÄ«jumÄ.
Å is ir laika pÄrbaudÄ«ts mehÄnisms ISP tÄ«klos, un visi tÄ«kla iekÄrtu pÄrdevÄji to atbalsta.
TaÄu Å”ajÄ gadÄ«jumÄ ToR slÄdzim jÄspÄj attiecÄ«gi nodalÄ«t dažÄdus pakalpojumus un tÄ«kla administratoram zinÄmÄ mÄrÄ jÄsadarbojas ar virtuÄlÄs maŔīnas administratoriem un jÄveic izmaiÅas (kaut arÄ« automÄtiski) ierÄ«Äu konfigurÄcijÄ. .
Es atzÄ«mÄju, ka VXLAN ir tikai iekapsulÄÅ”anas metode, un tuneļu pÄrtraukÅ”ana var notikt nevis ToR, bet gan resursdatorÄ, kÄ tas notiek, piemÄram, OpenStack gadÄ«jumÄ.
TomÄr VXLAN audums, kur pÄrklÄjums sÄkas ar ToR, ir viens no izveidotajiem pÄrklÄjuma tÄ«kla dizainiem.
PÄrklÄjums no saimniekdatora
VÄl viena pieeja ir sÄkt un pÄrtraukt tuneļus gala saimniekiem.
Å ajÄ gadÄ«jumÄ tÄ«kls (apakÅ”klÄjs) paliek pÄc iespÄjas vienkÄrÅ”Äks un statiskÄks.
Un pats saimnieks veic visu nepiecieÅ”amo iekapsulÄÅ”anu.
Tas, protams, prasÄ«s saimniekdatoros palaist Ä«paÅ”u lietojumprogrammu, taÄu tas ir tÄ vÄrts.
PirmkÄrt, klienta palaiÅ”ana Linux datorÄ ir vienkÄrÅ”Äka vai, teiksim, pat iespÄjama, savukÄrt pÄrslÄdzot, visticamÄk, bÅ«s jÄgriežas pie patentÄtiem SDN risinÄjumiem, kas nogalina ideju par vairÄkiem piegÄdÄtÄjiem.
OtrkÄrt, ToR slÄdzi Å”ajÄ gadÄ«jumÄ var atstÄt pÄc iespÄjas vienkÄrÅ”u gan no vadÄ«bas plaknes, gan no datu plaknes viedokļa. PatieÅ”Äm, tad tam nav jÄsazinÄs ar SDN kontrolieri, kÄ arÄ« nav jÄuzglabÄ visu savienoto klientu tÄ«kli/ARP - pietiek zinÄt fiziskÄs maŔīnas IP adresi, kas ievÄrojami vienkÄrÅ”o pÄrslÄgÅ”anu/ marÅ”rutÄÅ”anas tabulas.
ADSM sÄrijÄ es izvÄlos overlay pieeju no hosta - tad mÄs tikai par to runÄjam un mÄs neatgriezÄ«simies VXLAN rÅ«pnÄ«cÄ.
VisvieglÄk ir aplÅ«kot piemÄrus. Un kÄ testa priekÅ”metu mÄs izmantosim OpenSource SDN platformu OpenContrail, kas tagad pazÄ«stama kÄ Volframa audums.
Raksta beigÄs es sniegÅ”u dažas domas par analoÄ£iju ar OpenFlow un OpenvSwitch.
KÄ piemÄru izmantojot volframa audumu
Katrai fiziskajai maŔīnai ir vRouter - virtuÄls marÅ”rutÄtÄjs, kas zina par tam pievienotajiem tÄ«kliem un kuriem klientiem tie pieder - bÅ«tÄ«bÄ PE marÅ”rutÄtÄjs. Katram klientam tÄ uztur izolÄtu marÅ”rutÄÅ”anas tabulu (lasÄ«t VRF). Un vRouter faktiski veic pÄrklÄjuma tunelÄÅ”anu.
Nedaudz vairÄk par vRouter ir raksta beigÄs.
Katra VM, kas atrodas hipervizorÄ, ir savienota ar Ŕīs iekÄrtas vRouter, izmantojot TAP interfeiss.
TAP - TerminÄļa piekļuves punkts - virtuÄls interfeiss Linux kodolÄ, kas nodroÅ”ina tÄ«kla mijiedarbÄ«bu.
Ja aiz vRouter ir vairÄki tÄ«kli, tad katram no tiem tiek izveidots virtuÄlais interfeiss, kuram tiek pieŔķirta IP adrese - tÄ bÅ«s noklusÄjuma vÄrtejas adrese.
Visi viena klienta tÄ«kli ir ievietoti vienÄ VRF (viens galds), dažÄdas - dažÄdÄs. Å eit es izdarÄ«Å”u atrunu, ka ne viss ir tik vienkÄrÅ”i, un ziÅkÄrÄ«go lasÄ«tÄju nosÅ«tÄ«Å”u uz raksta beigÄm.
Lai vRouteri varÄtu sazinÄties savÄ starpÄ un attiecÄ«gi virtuÄlÄs maŔīnas, kas atrodas aiz tiem, viÅi apmainÄs ar marÅ”rutÄÅ”anas informÄciju, izmantojot SDN kontrolieris.
Lai izkļūtu ÄrpasaulÄ, ir izejas punkts no matricas - virtuÄlÄ tÄ«kla vÄrteja VNGW ā virtuÄlÄ tÄ«kla vÄrteja (mans termiÅÅ”).
Tagad apskatÄ«sim komunikÄciju piemÄrus - un bÅ«s skaidrÄ«ba.
KomunikÄcija vienÄ fiziskÄ maŔīnÄ
VM0 vÄlas nosÅ«tÄ«t paketi uz VM2. PagaidÄm pieÅemsim, ka Ŕī ir viena klienta virtuÄlÄ maŔīna.
Datu plakne
VM-0 ir noklusÄjuma marÅ”ruts uz eth0 saskarni. PaciÅa tiek nosÅ«tÄ«ta tur.
Å Ä« saskarne eth0 faktiski ir virtuÄli savienota ar virtuÄlo marÅ”rutÄtÄju vRouter, izmantojot TAP saskarni tap0.
vRouter analizÄ, uz kuru saskarni pakete nonÄca, tas ir, kuram klientam (VRF) tÄ pieder, un pÄrbauda adresÄta adresi, izmantojot Ŕī klienta marÅ”rutÄÅ”anas tabulu.
KonstatÄjis, ka adresÄts tajÄ paÅ”Ä maŔīnÄ atrodas citÄ portÄ, vRouter vienkÄrÅ”i nosÅ«ta paketi uz to bez papildu galvenÄm - Å”ajÄ gadÄ«jumÄ vRouter jau ir ARP ieraksts.
Å ajÄ gadÄ«jumÄ pakete neienÄk fiziskajÄ tÄ«klÄ - tÄ tiek marÅ”rutÄta vRouter iekÅ”pusÄ.
Vadības plakne
Kad virtuÄlÄ maŔīna tiek startÄta, hipervizors tai paziÅo:
ViÅas paÅ”as IP adrese.
NoklusÄjuma marÅ”ruts ir caur vRouter IP adresi Å”ajÄ tÄ«klÄ.
Hipervizors ziÅo vRouter, izmantojot Ä«paÅ”u API:
Kas jums nepiecieÅ”ams, lai izveidotu virtuÄlo saskarni.
KÄda veida virtuÄlais tÄ«kls tam (VM) ir jÄizveido?
Kuram VRF (VN) to saistīt.
Statisks ARP ieraksts Å”ai virtuÄlajai maŔīnai ā kura saskarne atrodas aiz tÄs IP adreses un ar kuru MAC adresi tÄ ir saistÄ«ta.
Atkal, faktiskÄ mijiedarbÄ«bas procedÅ«ra ir vienkÄrÅ”ota, lai saprastu jÄdzienu.
TÄdÄjÄdi vRouter visas viena klienta virtuÄlÄs maŔīnas konkrÄtajÄ maŔīnÄ redz kÄ tieÅ”i savienotus tÄ«klus un pats var izveidot marÅ”rutu starp tiem.
Bet VM0 un VM1 pieder dažÄdiem klientiem un attiecÄ«gi atrodas dažÄdÄs vRouter tabulÄs.
Tas, vai viÅi var sazinÄties viens ar otru, ir tieÅ”i atkarÄ«gs no vRouter iestatÄ«jumiem un tÄ«kla dizaina.
PiemÄram, ja abu klientu virtuÄlÄs maŔīnas izmanto publiskÄs adreses vai NAT notiek paÅ”Ä vRouter, tad var veikt tieÅ”u marÅ”rutÄÅ”anu uz vRouter.
PretÄjÄ situÄcijÄ ir iespÄjams ŔķÄrsot adreÅ”u telpas - jums ir jÄiet caur NAT serveri, lai iegÅ«tu publisku adresi - tas ir lÄ«dzÄ«gi kÄ piekļūt ÄrÄjiem tÄ«kliem, par kuriem mÄs runÄsim tÄlÄk.
SaziÅa starp virtuÄlajÄm maŔīnÄm, kas atrodas dažÄdÄs fiziskÄs iekÄrtÄs
Datu plakne
SÄkums ir tieÅ”i tÄds pats: VM-0 nosÅ«ta paketi ar galamÄrÄ·i VM-7 (172.17.3.2) pÄc noklusÄjuma.
vRouter to saÅem un Å”oreiz redz, ka galamÄrÄ·is atrodas citÄ maŔīnÄ un ir pieejams caur Tunnel0.
PirmkÄrt, tas uzkarina MPLS etiÄ·eti, kas identificÄ attÄlo interfeisu, lai otrÄ pusÄ vRouter varÄtu noteikt, kur ievietot Å”o paketi bez papildu uzmeklÄÅ”anas.
Tunnel0 ir avots 10.0.0.2, galamÄrÄ·is: 10.0.1.2.
vRouter pievieno GRE (vai UDP) galvenes un jaunu IP oriÄ£inÄlajai paketei.
VRouter marÅ”rutÄÅ”anas tabulai ir noklusÄjuma marÅ”ruts caur ToR1 adresi 10.0.0.1. Tur viÅÅ” to sÅ«ta.
ToR1 kÄ Underlay tÄ«kla dalÄ«bnieks zina (piemÄram, caur OSPF) kÄ nokļūt lÄ«dz 10.0.1.2 un nosÅ«ta paketi pa marÅ”rutu. Å emiet vÄrÄ, ka Å”eit ir iespÄjots ECMP. IlustrÄcijÄ ir divi nexthops, un dažÄdi pavedieni tiks sakÄrtoti tajos pÄc jaukÅ”anas. ÄŖstas rÅ«pnÄ«cas gadÄ«jumÄ, visticamÄk, bÅ«s 4 nÄkamie hopi.
TajÄ paÅ”Ä laikÄ viÅam nav jÄzina, kas atrodas zem ÄrÄjÄs IP galvenes. Tas ir, faktiski, izmantojot IP, var bÅ«t IPv6 sviestmaize, izmantojot MPLS, izmantojot Ethernet, MPLS, GRE un grieÄ·u valoda.
AttiecÄ«gi no saÅÄmÄja puses vRouter noÅem GRE un, izmantojot MPLS tagu, saprot, uz kuru interfeisu Ŕī pakete jÄnosÅ«ta, noÅem to un nosÅ«ta adresÄtam sÄkotnÄjÄ formÄ.
Vadības plakne
Iedarbinot automaŔīnu, notiek tas pats, kas aprakstīts iepriekŔ.
Un plus:
Katram klientam vRouter pieŔķir MPLS tagu. Å Ä« ir L3VPN pakalpojuma etiÄ·ete, ar kuras palÄ«dzÄ«bu klienti tiks atdalÄ«ti vienÄ un tajÄ paÅ”Ä fiziskajÄ maŔīnÄ.
Faktiski MPLS tagu vienmÄr bez nosacÄ«jumiem pieŔķir vRouter - galu galÄ nav iepriekÅ” zinÄms, ka iekÄrta mijiedarbosies tikai ar citÄm maŔīnÄm, kas atrodas aiz tÄ paÅ”a vRouter, un tas, visticamÄk, pat nav taisnÄ«ba.
vRouter izveido savienojumu ar SDN kontrolleri, izmantojot BGP protokolu (vai lÄ«dzÄ«gu tam - TF gadÄ«jumÄ tas ir XMPP 0_o).
Å Ä«s sesijas laikÄ vRouter ziÅo SDN kontrollerim par marÅ”rutiem uz savienotajiem tÄ«kliem:
TÄ«kla adrese
IekapsulÄÅ”anas metode (MPLSoGRE, MPLSoUDP, VXLAN)
MPLS klienta tags
JÅ«su IP adrese kÄ nexthop
SDN kontrolleris saÅem Å”Ädus marÅ”rutus no visiem pievienotajiem vRouteriem un atspoguļo tos citiem. Tas nozÄ«mÄ, ka tas darbojas kÄ marÅ”ruta atstarotÄjs.
Tas pats notiek pretÄjÄ virzienÄ.
PÄrklÄjums var mainÄ«ties vismaz katru minÅ«ti. Tas ir aptuveni tas, kas notiek publiskajos mÄkoÅos, kur klienti regulÄri palaiž un izslÄdz savas virtuÄlÄs maŔīnas.
CentrÄlais kontrolleris rÅ«pÄjas par visu sarežģītÄ«bu, kas saistÄ«ta ar konfigurÄcijas uzturÄÅ”anu un komutÄcijas/marÅ”rutÄÅ”anas tabulu uzraudzÄ«bu vRouter.
Aptuveni runÄjot, kontrolieris sazinÄs ar visiem vRouter, izmantojot BGP (vai lÄ«dzÄ«gu protokolu) un vienkÄrÅ”i pÄrsÅ«ta marÅ”rutÄÅ”anas informÄciju. PiemÄram, BGP jau ir Address-Family, lai nodotu iekapsulÄÅ”anas metodi MPLS GRE vai MPLS-UDP.
TajÄ paÅ”Ä laikÄ nekÄdi nemainÄs Underlay tÄ«kla konfigurÄcija, kuru, starp citu, ir daudz grÅ«tÄk automatizÄt un vieglÄk salauzt ar neveiklu kustÄ«bu.
Izeja uz Ärpasauli
Kaut kur simulÄcijai ir jÄbeidzas, un jums ir jÄiziet no virtuÄlÄs pasaules reÄlajÄ pasaulÄ. Un jums ir nepiecieÅ”ama taksofona vÄrteja.
Tiek praktizÄtas divas pieejas:
Ir instalÄts aparatÅ«ras marÅ”rutÄtÄjs.
Tiek palaists aparÄts, kas realizÄ marÅ”rutÄtÄja funkcijas (jÄ, pÄc SDN mÄs saskÄrÄmies arÄ« ar VNF). Sauksim to par virtuÄlo vÄrteju.
OtrÄs pieejas priekÅ”rocÄ«ba ir lÄta horizontÄlÄ mÄrogojamÄ«ba - nepietiek jaudas - mÄs palaižam citu virtuÄlo maŔīnu ar vÄrteju. Uz jebkuras fiziskas maŔīnas, nemeklÄjot brÄ«vus statÄ«vus, blokus, jaudu, iegÄdÄjieties paÅ”u aparatÅ«ru, transportÄjiet to, uzstÄdiet, pÄrslÄdziet, konfigurÄjiet un pÄc tam arÄ« nomainiet tajÄ bojÄtos komponentus.
VirtuÄlÄs vÄrtejas trÅ«kumi ir tÄdi, ka fiziskÄ marÅ”rutÄtÄja vienÄ«ba joprojÄm ir daudz jaudÄ«gÄka nekÄ daudzkodolu virtuÄlÄ maŔīna, un tÄs programmatÅ«ra, kas pielÄgota savai aparatÅ«ras bÄzei, darbojas daudz stabilÄk (nÄ). Ir arÄ« grÅ«ti noliegt faktu, ka aparatÅ«ras un programmatÅ«ras komplekss vienkÄrÅ”i darbojas, prasot tikai konfigurÄciju, savukÄrt virtuÄlÄs vÄrtejas palaiÅ”ana un uzturÄÅ”ana ir spÄcÄ«gu inženieru uzdevums.
Ar vienu kÄju vÄrteja aplÅ«ko Overlay virtuÄlo tÄ«klu, tÄpat kÄ parastÄ virtuÄlÄ maŔīna, un var mijiedarboties ar visÄm pÄrÄjÄm virtuÄlajÄm maŔīnÄm. TajÄ paÅ”Ä laikÄ tas var pÄrtraukt visu klientu tÄ«klus un attiecÄ«gi veikt marÅ”rutÄÅ”anu starp tiem.
Ar otru kÄju vÄrteja ieskatÄs mugurkaula tÄ«klÄ un zina, kÄ piekļūt internetam.
Datu plakne
Tas ir, process izskatÄs Å”Ädi:
VM-0, pÄc noklusÄjuma uz to paÅ”u vRouter, nosÅ«ta paketi ar galamÄrÄ·i ÄrpasaulÄ (185.147.83.177) uz eth0 interfeisu.
vRouter saÅem Å”o paketi un marÅ”rutÄÅ”anas tabulÄ atrod galamÄrÄ·a adresi ā atrod noklusÄjuma marÅ”rutu caur VNGW1 vÄrteju caur 1. tuneli.
ViÅÅ” arÄ« redz, ka Å”is ir GRE tunelis ar SIP 10.0.0.2 un DIP 10.0.255.2, un viÅam arÄ« vispirms jÄpievieno Ŕī klienta MPLS etiÄ·ete, ko sagaida VNGW1.
vRouter iesaiÅo sÄkotnÄjo paketi ar MPLS, GRE un jaunÄm IP galvenÄm un pÄc noklusÄjuma nosÅ«ta to uz ToR1 adresi 10.0.0.1.
PamattÄ«kls piegÄdÄ paketi vÄrtejai VNGW1.
VNGW1 vÄrteja noÅem GRE un MPLS tunelÄÅ”anas galvenes, redz galamÄrÄ·a adresi, apskata tÄs marÅ”rutÄÅ”anas tabulu un saprot, ka tÄ ir novirzÄ«ta uz internetu ā tas ir, izmantojot pilno skatu vai noklusÄjuma iestatÄ«jumu. Ja nepiecieÅ”ams, veic NAT tulkojumu.
VarÄtu bÅ«t parasts IP tÄ«kls no VNGW lÄ«dz robežai, kas ir maz ticams.
Var bÅ«t klasisks MPLS tÄ«kls (IGP+LDP/RSVP TE), var bÅ«t aizmugurÄjais audums ar BGP LU vai GRE tunelis no VNGW lÄ«dz robežai caur IP tÄ«klu.
Lai kÄ arÄ« bÅ«tu, VNGW1 veic nepiecieÅ”amÄs iekapsulÄcijas un nosÅ«ta sÄkotnÄjo paketi robežas virzienÄ.
Satiksme pretÄjÄ virzienÄ iet cauri tiem paÅ”iem soļiem pretÄjÄ secÄ«bÄ.
Robeža nolaiž paketi uz VNGW1
ViÅÅ” viÅu izÄ£Ärbj, apskata adresÄta adresi un redz, ka viÅam var piekļūt caur Tunnel1 tuneli (MPLSoGRE vai MPLSoUDP).
Attiecīgi tas pievieno MPLS etiķeti, GRE/UDP galveni un jaunu IP un nosūta to uz savu ToR3 10.0.255.1.
Tuneļa galamÄrÄ·a adrese ir vRouter IP adrese, aiz kuras atrodas mÄrÄ·a VM ā 10.0.0.2.
MÄrÄ·a vRouter nolasa GRE/UDP, identificÄ interfeisu, izmantojot MPLS etiÄ·eti, un nosÅ«ta tukÅ”u IP paketi uz savu TAP interfeisu, kas saistÄ«ts ar VM eth0.
Vadības plakne
VNGW1 izveido BGP apkaimi ar SDN kontrolieri, no kura tas saÅem visu marÅ”rutÄÅ”anas informÄciju par klientiem: kura IP adrese (vRouter) atrodas aiz kura klienta un ar kÄdu MPLS etiÄ·eti to identificÄ.
TÄpat viÅÅ” pats informÄ SDN kontrolieri par noklusÄjuma marÅ”rutu ar Ŕī klienta etiÄ·eti, norÄdot sevi kÄ nexthop. Un tad Å”is noklusÄjums nonÄk pie vRouters.
Uz VNGW parasti notiek marŔruta apkopoŔana vai NAT tulkoŔana.
Un otrÄ virzienÄ tas nosÅ«ta tieÅ”i Å”o apkopoto marÅ”rutu uz sesiju ar apmalÄm vai marÅ”ruta atspoguļotÄjiem. Un no viÅiem tas saÅem noklusÄjuma marÅ”rutu vai Full-View, vai kaut ko citu.
IekapsulÄÅ”anas un trafika apmaiÅas ziÅÄ VNGW neatŔķiras no vRouter.
Ja nedaudz paplaÅ”inat darbÄ«bas jomu, varat pievienot citas tÄ«kla ierÄ«ces VNGW un vRouters, piemÄram, ugunsmÅ«rus, satiksmes tÄ«rÄ«Å”anas vai bagÄtinÄÅ”anas fermas, IPS utt.
Un, izmantojot secÄ«gu VRF izveidi un pareizu marÅ”rutu izziÅoÅ”anu, jÅ«s varat piespiest satiksmi virzÄ«t cilpu sev vÄlamajÄ veidÄ, ko sauc par pakalpojumu Ä·Ädi.
Tas nozÄ«mÄ, ka arÄ« Å”eit SDN kontrolleris darbojas kÄ marÅ”ruta atspoguļotÄjs starp VNGW, vRouters un citÄm tÄ«kla ierÄ«cÄm.
Bet patiesÄ«bÄ kontrolieris arÄ« izdod informÄciju par ACL un PBR (politiku balstÄ«tu marÅ”rutÄÅ”anu), izraisot atseviŔķu satiksmes plÅ«smu atŔķirÄ«gumu, nekÄ norÄdÄ«ts marÅ”rutÄ.
FAQ
KÄpÄc jÅ«s vienmÄr izsakÄt GRE/UDP piezÄ«mi?
KopumÄ var teikt, ka tas attiecas uz volframa audumu - jums tas vispÄr nav jÄÅem vÄrÄ.
Bet, ja mÄs to Åemam, tad pati TF, vÄl bÅ«dama OpenContrail, atbalstÄ«ja abas iekapsulÄcijas: MPLS GRE un MPLS UDP.
UDP ir labs, jo Source Port ir ļoti vienkÄrÅ”i savÄ galvenÄ iekodÄt hash funkciju no oriÄ£inÄlÄ IP+Proto+Port, kas ļaus veikt balansÄÅ”anu.
GRE gadÄ«jumÄ diemžÄl ir tikai ÄrÄjÄs IP un GRE galvenes, kas ir vienÄdas visai iekapsulÄtajai trafikai un nav runas par balansÄÅ”anu - reti kurÅ” spÄj ieskatÄ«ties tik dziļi paketÄ.
LÄ«dz kÄdu laiku marÅ”rutÄtÄji, ja viÅi prata izmantot dinamiskos tuneļus, to darÄ«ja tikai MPLSoGRE, un tikai pavisam nesen viÅi iemÄcÄ«jÄs izmantot MPLSoUDP. TÄpÄc mums vienmÄr ir jÄatzÄ«mÄ divu dažÄdu iekapsulÄciju iespÄja.
GodÄ«gi sakot, ir vÄrts atzÄ«mÄt, ka TF pilnÄ«bÄ atbalsta L2 savienojumu, izmantojot VXLAN.
JÅ«s solÄ«jÄt vilkt paralÄles ar OpenFlow.
ViÅi patieÅ”Äm to lÅ«dz. vSwitch tajÄ paÅ”Ä OpenStack dara ļoti lÄ«dzÄ«gas lietas, izmantojot VXLAN, kuram, starp citu, ir arÄ« UDP galvene.
Datu plaknÄ tie darbojas aptuveni vienÄdi, vadÄ«bas plakne ievÄrojami atŔķiras. Tungsten Fabric izmanto XMPP, lai piegÄdÄtu marÅ”rutÄÅ”anas informÄciju vRouter, savukÄrt OpenStack darbojas Openflow.
Vai varat pastÄstÄ«t man mazliet vairÄk par vRouter?
Tas ir sadalÄ«ts divÄs daļÄs: vRouter Agent un vRouter Forwarder.
Pirmais darbojas resursdatora OS lietotÄja telpÄ un sazinÄs ar SDN kontrolleri, apmainoties ar informÄciju par marÅ”rutiem, VRF un ACL.
Otrais realizÄ Data Plane - parasti Kernel Space, bet var darboties arÄ« ar SmartNIC - tÄ«kla kartÄm ar centrÄlo procesoru un atseviŔķu programmÄjamu komutÄcijas mikroshÄmu, kas ļauj noÅemt slodzi no resursdatora CPU un padarÄ«t tÄ«klu ÄtrÄku un vairÄk. paredzams.
VÄl viens iespÄjamais scenÄrijs ir tÄds, ka vRouter ir DPDK lietojumprogramma User Space.
Kas ir virtuÄlais tÄ«kls?
Raksta sÄkumÄ par VRF minÄju, ka katrs Ä«rnieks ir piesaistÄ«ts savam VRF. Un, ja ar to pietika, lai virspusÄja izpratne par pÄrklÄjuma tÄ«kla darbÄ«bu, tad nÄkamajÄ atkÄrtojumÄ ir jÄveic precizÄjumi.
Parasti virtualizÄcijas mehÄnismos VirtuÄlÄ tÄ«kla entÄ«tija (jÅ«s varat to uzskatÄ«t par Ä«paÅ”vÄrdu) tiek ieviesta atseviŔķi no klientiem/Ä«rniekiem/virtuÄlajÄm maŔīnÄm - pilnÄ«gi neatkarÄ«ga lieta. Un Å”o virtuÄlo tÄ«klu jau var pieslÄgt caur interfeisiem vienam nomniekam, citam, diviem vai jebkur. TÄ, piemÄram, pakalpojumu Ä·Äde tiek ieviesta, kad satiksme ir jÄnodod caur noteiktiem mezgliem vajadzÄ«gajÄ secÄ«bÄ, vienkÄrÅ”i izveidojot un savienojot virtuÄlos tÄ«klus pareizajÄ secÄ«bÄ.
TÄpÄc starp VirtuÄlo tÄ«klu un nomnieku nav tieÅ”as sarakstes.
SecinÄjums
Å is ir ļoti virspusÄjs virtuÄlÄ tÄ«kla darbÄ«bas apraksts ar pÄrklÄjumu no resursdatora un SDN kontrollera. Bet neatkarÄ«gi no tÄ, kÄdu virtualizÄcijas platformu jÅ«s Å”odien izvÄlaties, tÄ darbosies lÄ«dzÄ«gi, vai tÄ bÅ«tu VMWare, ACI, OpenStack, CloudStack, Tungsten Fabric vai Juniper Contrail. Tie atŔķirsies pÄc iekapsulÄÅ”anas un galvenes veidiem, protokoliem informÄcijas nogÄdÄÅ”anai gala tÄ«kla ierÄ«cÄs, taÄu programmatÅ«ras konfigurÄjama pÄrklÄjuma tÄ«kla princips, kas darbojas virs salÄ«dzinoÅ”i vienkÄrÅ”a un statiska apakÅ”tÄ«kla, paliks nemainÄ«gs.
Var teikt, ka Å”odien SDN, kas balstÄ«ts uz pÄrklÄjuma tÄ«klu, ir uzvarÄjis privÄtÄ mÄkoÅa izveides jomÄ. TomÄr tas nenozÄ«mÄ, ka Openflow nav vietas mÅ«sdienu pasaulÄ ā tas tiek izmantots OpenStacke un tajÄ paÅ”Ä VMWare NSX, cik man zinÄms, Google to izmanto, lai izveidotu pazemes tÄ«klu.
ZemÄk esmu sniedzis saites uz detalizÄtÄkiem materiÄliem, ja vÄlaties Å”o jautÄjumu izpÄtÄ«t dziļÄk.
Un kÄ ar mÅ«su apakÅ”klÄju?
Bet kopumÄ nekas. ViÅÅ” nemainÄ«jÄs visu ceļu. Viss, kas viÅam jÄdara resursdatora pÄrklÄjuma gadÄ«jumÄ, ir jÄatjaunina marÅ”ruti un ARP, kad parÄdÄs un pazÅ«d vRouter/VNGW un pÄrnÄsÄ paketes starp tÄm.
JÄprot izmantot kaut kÄdu marÅ”rutÄÅ”anas protokolu, mÅ«su situÄcijÄ - BGP.
JÄbÅ«t plaÅ”am joslas platumam, vÄlams bez pÄrrakstÄ«Å”anÄs, lai paketes netiktu zaudÄtas pÄrslodzes dÄļ.
ECMP atbalsts ir auduma neatÅemama sastÄvdaļa.
JÄspÄj nodroÅ”inÄt QoS, tostarp tÄdas sarežģītas lietas kÄ ECN.
NETCONF atbalsts ir nÄkotnes pamats.
Es Å”eit veltÄ«ju ļoti maz laika paÅ”a Underlay tÄ«kla darbam. Tas ir tÄpÄc, ka vÄlÄk sÄrijÄ es pievÄrsÄ«Å”os tam, un pÄrklÄjumam pieskarsimies tikai garÄmejot.
AcÄ«mredzot es ļoti ierobežoju mÅ«s visus, kÄ piemÄru izmantojot Clos rÅ«pnÄ«cÄ iebÅ«vÄtu lÄ«dzstrÄvas tÄ«klu ar tÄ«ru IP marÅ”rutÄÅ”anu un resursdatora pÄrklÄjumu.
TomÄr esmu pÄrliecinÄts, ka jebkuru tÄ«klu, kuram ir dizains, var aprakstÄ«t formÄli un automatizÄt. VienkÄrÅ”i mans mÄrÄ·is Å”eit ir izprast automatizÄcijas pieejas un nemulsinÄt visus, risinot problÄmu vispÄrÄ«gÄ veidÄ.
ADSM ietvaros RomÄns Gorge un es plÄnojam publicÄt atseviŔķu izdevumu par skaitļoÅ”anas jaudas virtualizÄciju un tÄs mijiedarbÄ«bu ar tÄ«kla virtualizÄciju. UzturÄt kontaktus.
Scaleway pieeja VXLAN EVPN audumam. TajÄ ir runÄts par visu lÄ«dzstrÄvas tÄ«klu, tostarp apakÅ”klÄju, pÄrklÄjumu, pieejÄm vairÄku izvietoÅ”anu un pÄrvaldÄ«bu.
Paldies
RomÄns Gorga - bijuÅ”ais linkmeup aplÄdes vadÄ«tÄjs un tagad eksperts mÄkoÅu platformu jomÄ. KomentÄriem un labojumiem. Nu ko, tuvÄkajÄ laikÄ gaidÄm viÅa padziļinÄtÄku rakstu par virtualizÄciju.
Aleksandrs Å alimovs - mans kolÄÄ£is un eksperts virtuÄlo tÄ«klu attÄ«stÄ«bas jomÄ. KomentÄriem un labojumiem.
ValentÄ«ns SiÅicins - mans kolÄÄ£is un eksperts volframa auduma jomÄ. KomentÄriem un labojumiem.
Artjoms Äernobajs ā ilustrators linkmeup. Par KDPV.