{"id":35973,"date":"2019-10-31T22:08:54","date_gmt":"2019-10-31T19:08:54","guid":{"rendered":"https:\/\/prohoster.info\/blog\/avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti\/"},"modified":"2019-10-31T22:08:54","modified_gmt":"2019-10-31T19:08:54","slug":"avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti","title":{"rendered":"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>V <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/453516\/\">prethodnom izdanju<\/a><\/noindex> Opi\u0161al sem okvir za omre\u017eno avtomatizacijo. Po mnenju nekaterih ljudi je \u017ee ta prvi pristop k problemu razjasnil nekatere zadeve. To me zelo veseli, saj je na\u0161 cilj v ciklu, da ne prekrijemo Ansible-a s Python skripti, temve\u010d zgradimo sistem.<\/p>\n<p>Ta okvir dolo\u010da vrstni red, s katerim bomo obravnavali vpra\u0161anje.<br \/>\nIn virtualizacija omre\u017eja, ki je namenjena tej izdaji, se ne ujema najbolje s tematiko ADSM, kjer obravnavamo avtomatizacijo. <\/p>\n<p>Toda poglejmo jo z druge perspektive.<\/p>\n<p>\u017de dolgo \u010dasa se mnoge storitve zana\u0161ajo na isto omre\u017eje. V primeru telekomunikacijskega operaterja to vklju\u010duje 2G, 3G, LTE, \u0161irokopasovni internet in B2B, na primer. V primeru podatkovnih centrov: povezanost za razli\u010dne stranke, internet, blokovno shranjevanje, objektno shranjevanje.<\/p>\n<p>In vse storitve zahtevajo izolacijo druga od druge. Tako so nastala overlay omre\u017eja.<\/p>\n<p>In vse storitve no\u010dejo \u010dakati, da jih nekdo nastavi ro\u010dno. Tako so nastali orkestratorji in SDN.<\/p>\n<p>Prvi pristop k sistemati\u010dni avtomatizaciji omre\u017eja, natan\u010dneje njenega dela, je bil \u017ee dolgo vzpostavljen in uveljavljen na mnogih mestih: VMWare, OpenStack, Google Compute Cloud, AWS, Facebook.<\/p>\n<p>O tem se bomo danes pogovarjali. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/kdpv.jpg\"><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/e0bf73b7b71c383c5526da48a6f6b776.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h1>Vsebina<\/h1>\n<p><\/p>\n<ul>\n<li><b>Razlogi<\/b><\/li>\n<li><b>Terminologija<\/b><\/li>\n<li><b>Podlaga \u2014 fizi\u010dno omre\u017eje<\/b><\/li>\n<li><b>Overlay \u2014 virtualno omre\u017eje<\/b>\n<ul>\n<li>Overlay s ToR-a<\/li>\n<li>Overlay z gostitelja<\/li>\n<li>Na primeru Tungsten Fabric\n<ul>\n<li>Komunikacija znotraj ene fizi\u010dne naprave<\/li>\n<li>Komunikacija med VM-ji, ki so name\u0161\u010deni na razli\u010dnih fizi\u010dnih napravah<\/li>\n<li>Izhod v zunanji svet<\/li>\n<\/ul>\n<p>\n <\/li>\n<\/ul>\n<p>\n <\/li>\n<li><b>FAQ<\/b><\/li>\n<li><b>Zaklju\u010dek<\/b><\/li>\n<li><b>Koristne poveznice<\/b><\/li>\n<\/ul>\n<p><\/p>\n<h1>Razlogi<\/h1>\n<p>\nIn ker smo \u017ee omenili to temo, je smiselno omeniti tudi predpogoje za virtualizacijo omre\u017eja. Ta proces se je v resnici za\u010del \u017ee davno. <\/p>\n<p>Verjetno ste \u017ee sli\u0161ali, da je omre\u017eje vedno bilo najbolj inertni del vsakega sistema. In to je res v vseh pogledih. Omre\u017eje je osnova, na katero se naslanja vse, in spremembe nanj so precej zapletene \u2014 storitve ne dopu\u0161\u010dajo, da omre\u017eje ne deluje. Pogosto lahko izlo\u010ditev enega vozli\u0161\u010da ohromi velik del aplikacij in vpliva na veliko strank. Deloma zato se lahko omre\u017ena ekipa upira kakr\u0161nim koli spremembam \u2014 ker sedaj nekako deluje (<i>morda celo ne vemo kako<\/i>), sedaj pa je potrebno nastaviti nekaj novega, pri \u010demer pa ni jasno, kako bo to vplivalo na omre\u017eje.<\/p>\n<p>Da bi se izbeglo \u010dekanje da provajderi postave VLAN i da se bilo koji servisi ne moraju postavljati na svakom \u010dvoru mre\u017ee, ljudi su smislili kori\u0161\u0107enje overlay mre\u017ea \u2014 kojih ima raznovrsnih: GRE, IPinIP, MPLS, MPLS L2\/L3VPN, VXLAN, GENEVE, MPLSoverUDP, MPLSoverGRE itd.<\/p>\n<p>Njihova privla\u010dnost dolazi iz dve jednostavne stvari:<\/p>\n<ul>\n<li>Konfiguri\u0161u se samo krajnji \u010dvorovi \u2014 transitne se ne diraju. Ovo zna\u010dajno ubrzava proces i ponekad \u010dak omogu\u0107ava potpuno isklju\u010divanje odeljenja mre\u017ene infrastrukture iz procesa uvo\u0111enja novih usluga.<\/li>\n<li>Optere\u0107enje je skriveno duboko unutar zaglavlja \u2014 transitnim \u010dvorovima nije potrebno ni\u0161ta da zna o njemu, o adresiranju na hostovima, rutama overlay mre\u017ee. A to zna\u010di da je potrebno \u010duvati manje informacija u tabelama, pa je mogu\u0107e koristiti jednostavnije\/jeftinije ure\u0111aje.<\/li>\n<\/ul>\n<p>\nU ovom ne sasvim potpunom izdanju ne planiram da razmatram sve mogu\u0107e tehnologije, ve\u0107 \u0107u opisati okvir rada overlay mre\u017ea u DC-u.<\/p>\n<p>Cela serija \u0107e opisivati data centar koji se sastoji od redova identi\u010dnih oprema, u kojima je instalirana identi\u010dna serverska oprema. <\/p>\n<p>Na toj opremi se pokre\u0107u virtuelne ma\u0161ine\/kontejneri\/serverless koji implementiraju servise.<\/p>\n<p><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/a6863eb2804a298304d1e93daecf90d9.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h1>Terminologija<\/h1>\n<p>\nU ciklusu <b>serverom<\/b> \u0107u nazvati program koji implementira serversku stranu klijent-server komunikacije.<\/p>\n<p>Fizi\u010dke ma\u0161ine u rackovima nazivamo serverima <b>ne<\/b> bi\u0107e.<\/p>\n<p><b>Fizi\u010dka ma\u0161ina<\/b> \u2014 x86 ra\u010dunar koji je instaliran u racku. Naj\u010de\u0161\u0107e kori\u0161\u0107en termin <b>host<\/b>. Tako \u0107emo je zvati \u201e<b>ma\u0161ina<\/b>\u201c ili <b>host<\/b>.<\/p>\n<p><b>Hipervizor<\/b> \u2014 aplikacija pokrenuta na fizi\u010dkoj ma\u0161ini koja emulira fizi\u010dke resurse, na kojima se pokre\u0107u virtuelne ma\u0161ine. Ponekad se u literaturi i na mre\u017ei re\u010d \u201ehipervizor\u201c koristi kao sinonim za \u201ehost\u201c.<\/p>\n<p><b>Virtualni stroj<\/b> \u2014 operativni sistem koji se pokre\u0107e na fizi\u010dkoj ma\u0161ini iznad hipervizora. Za nas, u okviru ovog ciklusa, nije toliko va\u017eno da li je to zapravo virtuelna ma\u0161ina ili samo kontejner. Nazva\u0107emo to \u201e<b>VM<\/b>&#171;<\/p>\n<p><b>Tenan<\/b> \u2014 \u0161irok pojam koji \u0107u u ovom \u010dlanku definisati kao odvojenu uslugu ili odvojenog klijenta.<\/p>\n<p><b>Vi\u0161ekorisni\u010dko<\/b> ili multitenantovanje \u2014 kori\u0161\u0107enje iste aplikacije od strane razli\u010ditih klijenata\/usluga. Pri tome se izolacija klijenata posti\u017ee zahvaljuju\u0107i arhitekturi aplikacije, a ne pokrenutim odvojenim instancama.<\/p>\n<p><b>ToR \u2014 Top of the Rack switch<\/b> \u2014 switch mounted in a rack to which all physical machines are connected.<\/p>\n<blockquote><p> In addition to the ToR topology, different providers practice End of Row (EoR) or Middle of Row (although the latter is a neglectable rarity and I have not encountered the MoR abbreviation).\n<\/p><\/blockquote>\n<p> <b>Underlay network<\/b> or the underlying network or underlay \u2014 the physical network infrastructure: switches, routers, cables.<\/p>\n<p><b>Overlay network<\/b> or the overlay network \u2014 a virtual network of tunnels operating over the physical layer.<\/p>\n<p><b>L3-fabric or IP-fabric<\/b> \u2014 a remarkable invention of humanity that allows not repeating STP in interviews and not learning TRILL. A concept where the entire network up to the access level is exclusively L3, without VLANs and thus huge stretched broadcast domains. We will discuss where the term 'fabric' comes from in the next part.<\/p>\n<p><b>SDN<\/b> \u2014 Software Defined Network. Hardly needs an introduction. An approach to network management where changes in the network are made by a program rather than by a person. Usually implies moving the Control Plane beyond the end network devices to a controller.<\/p>\n<p><b>NFV<\/b> \u2014 Network Function Virtualization \u2014 virtualization of network devices, implying that some network functions can be run as virtual machines or containers to accelerate the deployment of new services, facilitate Service Chaining, and allow for easier horizontal scalability.<\/p>\n<p><b>VNF<\/b> \u2014 Virtual Network Function. A specific virtual device: router, switch, firewall, NAT, IPS\/IDS, etc.<\/p>\n<p><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/971b6a28a9caab5f3a7067ce4d25749c.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<blockquote><p> I am deliberately simplifying the description to a specific implementation to avoid confusing the reader too much. For a more thoughtful reading, I direct them to the section <noindex><a rel=\"nofollow\" href=\"#LINKS\">Povezave<\/a><\/noindex>. Additionally, Roma Gorge, who criticizes this article for inaccuracies, promises to write a separate issue about server and network virtualization technologies, which will be more in-depth and detail-oriented.<\/p><\/blockquote>\n<p>Most networks today can clearly be divided into two parts: <\/p>\n<p><b>Underlay<\/b> \u2014 the physical network with a stable configuration.<br \/>\n<b>Overlay<\/b> \u2014 an abstraction over Underlay for isolating tenants. <\/p>\n<p>This is true for both the DC case (which we will discuss in this article) and for ISPs (which we will not discuss, as it has already been covered in <noindex><a rel=\"nofollow\" href=\"https:\/\/linkmeup.ru\/sdsm\">\u0421\u0414\u0421\u041c<\/a><\/noindex>). With enterprise networks, of course, the situation is somewhat different. <\/p>\n<p>Image focusing on the network:<\/p>\n<p><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/7b7dabc6d9f3b87c598346bf9195d568.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<h1>Underlay<\/h1>\n<p>\nUnderlay je fizi\u010dna mre\u017ea: strojni stikala in kabli. Naprave v underlay-u vedo, kako priti do fizi\u010dnih naprav.<\/p>\n<p><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/776a77a3821fe79a7323947e0bdf67e8.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nOprta je na standardne protokole in tehnologije. Ne nazadnje zato, ker strojne naprave do danes delujejo na lastni\u0161kem programski opremi, ki ne dopu\u0161\u010da programiranja \u010dipov ali izvajanja lastnih protokolov, zato je potrebna zdru\u017eljivost z drugimi ponudniki in standardizacija.<\/p>\n<blockquote><p>Nekdo kot Google si lahko privo\u0161\u010di razvoj lastnih stikal in opustitev splo\u0161no sprejetih protokolov. Ampak LAN_DC ni Google.\n<\/p><\/blockquote>\n<p> Underlay se relativno redko spreminja, ker je njegova naloga osnovna IP-povezljivost med fizi\u010dnimi napravami. Underlay ne ve ni\u010d o storitvah, strankah, najemnikih, ki te\u010dejo nad njim \u2014 le dostaviti mora paket od ene naprave do druge.<br \/>\nUnderlay je lahko na primer tak\u0161en: <\/p>\n<ul>\n<li>IPv4+OSPF<\/li>\n<li>IPv6+ISIS+BGP+L3VPN<\/li>\n<li>L2+TRILL<\/li>\n<li>L2+STP<\/li>\n<\/ul>\n<p>\nKonfiguracija Underlay mre\u017ee vr\u0161i se na klasi\u010dan na\u010din: CLI\/GUI\/NETCONF.<\/p>\n<p>Ro\u010dno, s skripti, z lastni\u0161kimi orodji.<\/p>\n<p>Podrobneje bo underlay obravnavan v naslednjem \u010dlanku v seriji.<\/p>\n<p><\/p>\n<h1>Overlay<\/h1>\n<p>\nOverlay je virtualno omre\u017eje tunelov, raztegnjeno nad Underlay-em, ki omogo\u010da VM enega naro\u010dnika komunikacijo med seboj, pri \u010demer zagotavlja izolacijo od drugih naro\u010dnikov.<\/p>\n<p>Podatki stranke so enkapsulirani v tunelirne naslove za prenos preko skupne mre\u017ee.<\/p>\n<p><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/3060bc4913c55c21b785083fbe0b603b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTako lahko VM enega naro\u010dnika (enega servisa) komunicirajo med seboj preko Overlay-a, celo ne da bi slutili, katero pot paket pravzaprav potuje. <\/p>\n<p>Overlay je lahko na primer tak\u0161en, kot sem \u017ee omenil zgoraj:<\/p>\n<ul>\n<li>GRE-tunel<\/li>\n<li>VXLAN<\/li>\n<li>EVPN<\/li>\n<li>L3VPN<\/li>\n<li>GENEVE<\/li>\n<\/ul>\n<p>\nOverlay mre\u017ea se obi\u010dno konfiguri\u0161e i odr\u017eava preko centralnog kontrolera. Sa njega se konfiguracija, Control Plane i Data Plane dostavljaju ure\u0111ajima koji se bave rutiranjem i enkapsulacijom korisni\u010dkog saobra\u0107aja. Malo <noindex><a rel=\"nofollow\" href=\"#TF\">spodaj<\/a><\/noindex> to bomo raz\u010dlenili na primerih.<\/p>\n<p><b>Ja, to je SDN v svoji \u010distej\u0161i obliki. <\/b><\/p>\n<p>Obstajata dva principielno razli\u010dna pristopa k organizaciji Overlay omre\u017eja:<\/p>\n<ol>\n<li>Overlay s ToR-a<\/li>\n<li>Overlay z gostitelja<\/li>\n<\/ol>\n<h2>Overlay s ToR-a<\/h2>\n<p>\nOverlay se lahko za\u010dne na dostopnem stikalih (ToR), ki stoji v omari, kot se dogaja, na primer, v primeru VXLAN tovarne. <\/p>\n<p>To je s \u010dasom preizku\u0161en mehanizem v ISP omre\u017ejih, vsa omre\u017ena oprema ga podpira.<\/p>\n<p>Vendar v tem primeru mora ToR stikalo znati lo\u010diti razli\u010dne storitve, ustrezno pa mora omre\u017eni administrator do neke mere sodelovati z administratorji virtualnih strojev ter vna\u0161ati spremembe (tudi samodejno) v konfiguracijo naprav.<\/p>\n<p><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/9a5fe4d4a0cbb7e5c3bbac82527c6a6a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTukaj bralca napotim na \u010dlanek o <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/344326\/\">VxLAN na Habrju<\/a><\/noindex> na\u0161ega starega prijatelja <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/users\/bormoglotx\/\">@bormoglotx<\/a><\/noindex>.<br \/>\nV tem <noindex><a rel=\"nofollow\" href=\"https:\/\/www.enog.org\/wp-content\/uploads\/presentations\/enog-16\/18-Scaleway-P14-fabric-ENOG16.pdf\">prezentacije z ENOG<\/a><\/noindex> so podrobno opisani pristopi k gradnji omre\u017eja DC z EVPN VXLAN tovarno. <\/p>\n<p>Za bolj popolno potopitev v realnost pa lahko preberete Cisckovo knjigo <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cisco.com\/c\/dam\/en\/us\/td\/docs\/switches\/datacenter\/nexus9000\/sw\/vxlan_evpn\/VXLAN_EVPN.pdf\">A Modern, Open, and Scalable Fabric: VXLAN EVPN<\/a><\/noindex>.<\/p>\n<blockquote><p> Primeti\u0107u da je VXLAN samo metoda enkapsulacije i da terminacija tunela mo\u017ee da se vr\u0161i ne na ToR-u, ve\u0107 na hostu, kao \u0161to je slu\u010daj sa OpenStack-om, na primer.<\/p>\n<p>Me\u0111utim, VXLAN-fabrika, gde overlay po\u010dinje na ToR-u, je jedan od ustaljenih dizajna overlay mre\u017ee.\n<\/p><\/blockquote>\n<p><\/p>\n<h2>Overlay z gostitelja<\/h2>\n<p>\nDrugi pristop je za\u010deti in terminirati tunele na kon\u010dnih gostiteljih.<br \/>\nV tem primeru omre\u017eje (Underlay) ostane kar se da preprosto in stati\u010dno.<br \/>\nGostitelj pa opravi vse potrebne enkapsulacije sam.<\/p>\n<p><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/c9c2971369d1b3e5f026d6844afeb67f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nZa to bo nedvomno potrebno zagnati posebno aplikacijo na gostiteljih, vendar se to spla\u010da. <\/p>\n<p>Prvi\u010d, zagon odjemalca na linux stroju je enostavnej\u0161i ali, recimo, \u2014 sploh mogo\u010d \u2014 medtem ko bo verjetno na switchu treba \u0161e naprej uporabljati lastni\u0161ke SDN re\u0161itve, kar ubija idejo ve\u010dvenderne re\u0161itve.<\/p>\n<p>U drugom, ToR switch se u ovom slu\u010daju mo\u017ee ostaviti \u0161to jednostavnijim, kako sa stanovi\u0161ta Control Plane-a, tako i Data Plane-a. Zaista \u2014 sa SDN kontrolerom mu tada nije potrebna komunikacija, a \u010duvanje mre\u017ea\/ARP-a svih povezanih klijenata nije neophodno \u2014 dovoljno je znati IP adresu fizi\u010dke ma\u0161ine, \u0161to u velikoj meri olak\u0161ava tabele preklapanja\/rutiranja.<\/p>\n<p>\nV seriji ADSN izbiram pristop overlay z gostitelja \u2014 naprej bomo govorili samo o njem in se ne bomo ve\u010d vra\u010dali k VXLAN tovarni.<\/p>\n<p>\nNajlak\u0161e je razmotriti na primerima. I kao pokusni model uze\u0107emo OpenSource SDN platformu OpenContrail, danas poznatu kao <noindex><a rel=\"nofollow\" href=\"https:\/\/tungsten.io\">Tungsten Fabric<\/a><\/noindex>.<\/p>\n<blockquote><p> Na koncu \u010dlanka bom prilo\u017eil nekaj razmi\u0161ljanj o analogiji z OpenFlow in OpenvSwitch.\n<\/p><\/blockquote>\n<p><\/p>\n<h2>Na primeru Tungsten Fabric<\/h2>\n<p>\nNa vsakem fizi\u010dnem stroju je <b>vRouter<\/b> \u2014 virtuelni rutera koji zna o mre\u017eama koje su mu povezane i kojim klijentima one pripadaju \u2014 u su\u0161tini \u2014 PE rutera. Za svakog klijenta on odr\u017eava izolovanu tabelu rutiranja (\u010ditaj VRF). I sam vRouter vr\u0161i overlay tuneliranje.<\/p>\n<p>Malce podrobneje o vRouterju \u2014 na koncu \u010dlanka.<\/p>\n<p>Svaka VM koja se nalazi na hipervizoru povezuje se sa vRouter-om te ma\u0161ine preko <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/TUN\/TAP\">TAP-vmesnika<\/a><\/noindex>.<\/p>\n<p><b>TAP<\/b> \u2014 Terminal Access Point \u2014 virtualni vmesnik v jedru linux, ki omogo\u010da omre\u017eno interakcijo.<\/p>\n<p><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/a6fa1b4370ba4e787303ae647a28f5ed.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAko se iza vRouter-a nalazi vi\u0161e mre\u017ea, za svaku od njih stvara se virtuelni interfejs kojem se dodeljuje IP adresa \u2014 ona \u0107e biti adresa podrazumevanog prolaza.<br \/>\nVsa omre\u017eja ene stranke se postavijo v en <b>VRF<\/b> (eno tabelo), razli\u010dna \u2014 v razli\u010dne.<br \/>\n<i>Tu bi dodal opombo, da ni vse tako preprosto, in bi rad radovednega bralca napotil na konec \u010dlanka.<\/i>.<\/p>\n<p>Da bi vRouter-i mogli da komuniciraju jedni sa drugima, a samim tim i VM-ovi koji se nalaze iza njih, razmenjuju informacije o rutiranju preko <b>SDN-kontrolerja.<\/b>.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/sdn-controller.png\"><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/8b133e10582dbde9c0670ad98c1840de.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>Da bi se prebijali v zunanji svet, obstaja izhodna to\u010dka iz matrike \u2014 prehod virtualnega omre\u017eja <b>VNGW<\/b> \u2014 Virtual Network GateWay (<i>to je moj izraz.<\/i>).<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/vngw.png\"><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/9ac4d084d9b58b7ed1bc2c0ed6d06059.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>\nZdaj si poglejmo primere komunikacij \u2014 in bo jasno.<\/p>\n<p><\/p>\n<h3>Komunikacija znotraj ene fizi\u010dne naprave<\/h3>\n<p>\nVM0 \u017eeli poslati paket na VM2. Predpostavimo zaenkrat, da gre za VM ene stranke.<\/p>\n<h4>Data Plane<\/h4>\n<p><\/p>\n<ol>\n<li>VM-0 ima privzeto pot do svojega vmesnika eth0. Paket se po\u0161lje tja.<br \/>\n Ta vmesnik eth0 je dejansko virtualno povezan z virtualnim usmerjevalnikom vRouter preko TAP-vmesnika tap0.<\/li>\n<li>vRouter analizira, na kateri vmesnik je pri\u0161el paket, torej kateremu klientu (VRF) pripada, in preveri naslov prejemnika s tabelo usmerjanja te stranke.<\/li>\n<li>Otkriv\u0161i da je primalac na istoj ma\u0161ini, sa druge strane porta, vRouter jednostavno \u0161alje paket direktno njemu bez dodatnih zaglavlja \u2014 u tom slu\u010daju vRouter ve\u0107 ima ARP zapis. <\/li>\n<\/ol>\n<p>\n<img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/a42da3f48a3f538eb92c1908d9d66921.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nV tem primeru paket ne pride v fizi\u010dno omre\u017eje - usmeril se je znotraj vRouterja.<\/p>\n<p><\/p>\n<h4>Control Plane<\/h4>\n<p>\nHipervizor ob zagonu virtualne naprave sporo\u010di:<\/p>\n<ul>\n<li>Njen lastni IP-naslov.<\/li>\n<li>Privzeta pot je skozi IP naslov vRouterja v tem omre\u017eju.<\/li>\n<\/ul>\n<p>\nvRouterju preko posebnega API-ja hipervizor sporo\u010di:<\/p>\n<ul>\n<li>Kaj je treba ustvariti virtualni vmesnik.<\/li>\n<li>Katero virtualno omre\u017eje (VN) naj ustvari.<\/li>\n<li>Na kateri VRF naj ga (VN) ve\u017ee.<\/li>\n<li>Stati\u010dni ARP zapis za to VM \u2014 za kak\u0161en vmesnik se nahaja njen IP naslov in kateremu MAC naslovu je pritrjen.<\/li>\n<\/ul>\n<p><\/p>\n<blockquote><p> In spet je dejanska procedura interakcije poenostavljena za razumevanje koncepta.\n<\/p><\/blockquote>\n<p> <img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/593d7ad41782e882a88732b475bf91cb.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTako vse VM enega strank na tem stre\u017eniku vRouter vidi kot neposredno priklju\u010dene mre\u017ee in lahko samostojno usmerja med njimi.<\/p>\n<p>\nVM0 in VM1 pripadata razli\u010dnim strankam, zato sta v razli\u010dnih tabelah vRouterja.<\/p>\n<p>Ali se lahko neposredno pogovarjata, je odvisno od nastavitev vRouter in zasnove omre\u017eja.<br \/>\nNa primer, \u010de VM obeh strank uporabljata javne naslove, ali pa se NAT dogaja na samem vRouterju, lahko direktno usmerimo na vRouter.<\/p>\n<p>V nasprotnem primeru je mogo\u010de prekrivanje naslovnih prostorov \u2014 potrebno je iti skozi NAT stre\u017enik, da pridobimo javni naslov \u2014 to je podobno izhodu v zunanja omre\u017eja, ki jih obravnavamo spodaj.<\/p>\n<h3>Komunikacija med VM-ji, ki so name\u0161\u010deni na razli\u010dnih fizi\u010dnih napravah<\/h3>\n<p><\/p>\n<h4>Data Plane<\/h4>\n<p><\/p>\n<ol>\n<li>Za\u010detek je povsem enak: VM-0 po\u0161lje paket z naslovnikom VM-7 (172.17.3.2) po svojem privzetem.<\/li>\n<li>vRouter ga prejme in tokrat vidi, da je naslovnik na drugem stre\u017eniku in dostopen preko tunela Tunnel0.<\/li>\n<li>Najprej doda MPLS oznako, ki identificira oddaljeni vmesnik, da lahko na drugi strani vRouter dolo\u010di, kam naj po\u0161lje ta paket, brez dodatnih preusmeritev.\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/inter-hv-dp.png\"><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/1e159049376e2bf458b8c6cb5878cc17.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex>\n <\/li>\n<li>Tunel0 ima vir 10.0.0.2, prejemnik: 10.0.1.2.<br \/>\n vRouter doda GRE (ali UDP) naslove in nov IP k izvirnemu paketu.<\/li>\n<li>V tabeli usmerjanja vRouterja obstaja privzeta pot preko naslova ToR1 10.0.0.1. Tja tudi po\u0161lje.\n<p> <img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/8cb98a8ec43d202259acf6a1fcaeb3ee.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n \n <\/li>\n<li>ToR1 kot udele\u017eenec Underlay omre\u017eja ve (na primer, preko OSPF), kako priti do 10.0.1.2 in po\u0161lje paket po poti. Upo\u0161tevajte, da se tukaj vklju\u010duje ECMP. Na ilustraciji sta dva naslednja skoka, razli\u010dni tokovi pa se bodo razdelili med njimi glede na hash. V primeru pravega okolja bi tukaj verjetno bilo 4 naslednjih skokov.\n<p>Pri tem ni potrebno vedeti, kaj se nahaja pod zunanjim IP naslovom. To pomeni, da je dejansko pod IP lahko sendvi\u010d iz IPv6 nad MPLS nad Ethernet nad MPLS nad GRE nad nad nad Grek.<\/li>\n<li>Zato na sprejemni strani vRouter odstrani GRE in po MPLS oznaki razume, v kateri vmesnik je treba ta paket poslati, ga razgrne in po\u0161lje v prvotni obliki prejemniku.<\/li>\n<\/ol>\n<h4>Control Plane<\/h4>\n<p>\nPri zagonu stroja se zgodi vse, kar je bilo opisano zgoraj.<\/p>\n<p>In plus \u0161e naslednje:<\/p>\n<ul>\n<li>Za vsakogar klienta vRouter dodeli MPLS-oznake. To je servisna oznaka L3VPN, po kateri bodo klienti lo\u010deni znotraj ene fizi\u010dne naprave.<br \/>\n<blockquote><p> Dejansko MPLS-oznaka dodeli vRouter vedno - saj ni vnaprej znano, da bo naprava komunicirala samo z drugimi napravami za tem istem vRouterjem, kar verjetno niti ni tako. \n <\/p><\/blockquote>\n<\/li>\n<li>vRouter vzpostavi povezavo z SDN-nadzornikom preko protokola BGP (ali podobnega - v primeru TF je to XMPP 0_o).<\/li>\n<li>Skozi to sejo vRouter obve\u0161\u010da SDN-nadzornika o poteh do povezanih omre\u017eij:\n<ul>\n<li>Naslov omre\u017eja<\/li>\n<li>Metoda inkapsulacije (MPLSoGRE, MPLSoUDP, VXLAN)<\/li>\n<li>MPLS-oznake klienta<\/li>\n<li>Svoj IP-naslov kot nexthop<\/li>\n<\/ul>\n<p>\n <\/li>\n<li>SDN-kontroler prejema take poti od vseh povezanih vRouterjev in jih odra\u017ea drugim. To pomeni, da deluje kot Route Reflector.<\/li>\n<\/ul>\n<p>\nEnako se dogaja tudi v obratni smeri.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/inter-hv-cp.png\"><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/feef9181133f3a50a5cb21aa7ba16dc0.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>Overlay se lahko spreminja celo vsako minuto. Tako nekako se dogaja v javnih oblakih, ko klienti redno za\u017eenejo in ugasnejo svoje virtualne naprave.<\/p>\n<p>Centralni nadzornik se ukvarja z vsemi te\u017eavami pri vzdr\u017eevanju konfiguracije in kontroli tabel preklapljanja\/rutiranja na vRouterju.<\/p>\n<p>\u010ce govorimo na grob na\u010din, se kontroler povezuje z vsemi vRouterji preko BGP (ali protokola, podobnega temu) in enostavno posreduje informacijo o poteh. BGP, na primer, \u017ee ima Address-Family za prenos metode enkapsulacije. <noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/rfc4023\">MPLS-in-GRE<\/a><\/noindex> ili <noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/rfc7510\">MPLS-in-UDP<\/a><\/noindex>.<\/p>\n<p>Pri tem se na noben na\u010din ne spreminja konfiguracija Underlay-omre\u017eja, ki je v resnici veliko te\u017eje avtomatizirati, zlomiti pa je la\u017eje z nepremi\u0161ljenim gibom.<\/p>\n<h3>Izhod v zunanji svet<\/h3>\n<p>\nNekje se mora simulacija kon\u010dati in iz virtualnega sveta je treba preiti v resni\u010dnost. In potreben je dostopni telefon.<\/p>\n<p>Uvajata se dva pristopa:<\/p>\n<ol>\n<li>Namesti se strojni usmerjevalnik.<\/li>\n<li>Za\u017eene se kak\u0161en appliance, ki izvaja funkcije usmerjevalnika (da, res, poleg SDN smo se sre\u010dali tudi z VNF). Poimenujmo ga virtualni prehod.<\/li>\n<\/ol>\n<p><\/p>\n<blockquote><p> Prednost drugega pristopa je poceni horizontalna raz\u0161irljivost - \u010de zmanjka zmogljivosti, za\u017eenemo \u0161e eno virtualko s prehodom. Na vsaki fizi\u010dni napravi, brez potrebe po iskanju prostih omar, enot, napajanja, nakupu same strojne opreme, njenem transportu, namestitvi, kabliranju, nastavitvi, nato pa \u0161e menjavi pokvarjenih komponent.<\/p>\n<p>Slabosti virtualnog gateway-a su u tome \u0161to je fizi\u010dki router nekoliko puta ja\u010di od vi\u0161ejezgrenog virtualnog ure\u0111aja, a njegov softver prilago\u0111en njegovoj hardverskoj osnovi radi znatno stabilnije (<i>ne<\/i>). Te\u0161ko je negirati i \u010dinjenicu da hardversko-softverski sklop jednostavno funkcioni\u0161e, zahtevaju\u0107i samo pode\u0161avanja, dok je pokretanje i odr\u017eavanje virtualnog gateway-a zadatak za iskusne in\u017eenjere.\n<\/p><\/blockquote>\n<p> Jednom nogom, gateway gleda u virtualnu mre\u017eu Overlay, kao obi\u010dna Virtualna Ma\u0161ina, i mo\u017ee se povezati sa svim drugim VM. Pri tome mo\u017ee preuzimati mre\u017ee svih klijenata i, shodno tome, obavljati rutiranje me\u0111u njima.<\/p>\n<p>Drugom nogom, gateway gleda u glavnu mre\u017eu i zna kako da se pove\u017ee s Internetom.<\/p>\n<p><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/552fa0428ff8dd3aed76091a86a72109.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h4>Data Plane<\/h4>\n<p>\nDakle, proces izgleda ovako: <\/p>\n<ol>\n<li>VM-0, imaju\u0107i podrazumevano sve u istom vRouter-u, \u0161alje paket sa odredi\u0161tem u spoljnem svetu (185.147.83.177) na interfejs eth0.<\/li>\n<li>vRouter prima ovaj paket i pravi lookup adrese odredi\u0161ta u tabeli rutiranja \u2013 pronalazi podrazumevani put kroz gateway VNGW1 preko Tunnela 1. <br \/>\n Tako\u0111e vidi da je to GRE tunel sa SIP 10.0.0.2 i DIP 10.0.255.2, a jo\u0161 treba prvo da zaka\u010di MPLS oznaku ovog klijenta, koju o\u010dekuje VNGW1.\n <\/li>\n<li>vRouter upakuje po\u010detni paket u MPLS, GRE i novi IP header i \u0161alje na adresu ToR1 10.0.0.1 po defaultu.<\/li>\n<li>Podmre\u017ea dostavlja paket do gateway-a VNGW1.<\/li>\n<li>Gateway VNGW1 skida tunelske header-e GRE i MPLS, vidi adresu odredi\u0161ta, konsultuje svoju tabelu rutiranja i shvata da je upu\u0107en ka Internetu \u2013 to zna\u010di kroz Full View ili Default. Po potrebi vr\u0161i NAT prevo\u0111enje.<\/li>\n<li>Od VNGW-a do border-a mo\u017ee biti obi\u010dna IP mre\u017ea, \u0161to je malo verovatno.<br \/>\n Mo\u017ee biti klasi\u010dna MPLS mre\u017ea (IGP+LDP\/RSVP TE), mo\u017ee biti povratna fabrika sa BGP LU ili GRE tunel od VNGW do border-a preko IP mre\u017ee.<br \/>\n Kako god, VNGW1 vr\u0161i potrebne inkapsulacije i \u0161alje originalni paket prema border-u.<\/li>\n<\/ol>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/outside-dp.png\"><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/a66e490c75f8220349398af814d4ebf2.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>Saobra\u0107aj u suprotnom smeru prolazi iste korake obrnutim redosledom. <\/p>\n<ol>\n<li>Border \u0161alje paket do VNGW1<\/li>\n<li>On ga skida, gleda adresu primaoca i vidi da je dostupan preko tunela Tunnel1 (MPLSoGRE ili MPLSoUDP).<\/li>\n<li>Shodno tome, postavlja MPLS oznaku, GRE\/UDP header i novi IP i \u0161alje na svoj ToR3 10.0.255.1.<br \/>\n Naslov ciljne tunela - IP naslov vRouterja, za katerim je ciljni VM - 10.0.0.2.<\/li>\n<li>Podlo\u017ena mre\u017ea dostavi paket do \u017eelenega vRouterja. <\/li>\n<li>Ciljani vRouter uklanja GRE\/UDP, odre\u0111uje interfejs putem MPLS oznake i \u0161alje \u010disti IP paket na svoj TAP interfejs, povezan sa eth0 VM.<\/li>\n<\/ol>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/outside-dp-reverse.png\"><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/ba6748694a822fc04f4e872658d1fbbb.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p><\/p>\n<h4>Control Plane<\/h4>\n<p>\nVNGW1 vzpostavi BGP-sosedsko povezavo s SDN-kontrolerjem, od katerega prejema vse informacije o poteh strank: za katerim IP naslovom (vRouterjem) se nahaja katera stranka in s katero MPLS-oznako je identificirana.<\/p>\n<p>Podobno tudi sam SDN-kontroler sporo\u010da privzeto pot s to oznako stranke, pri \u010demer se ozna\u010di kot nexthop. Potem ta privzeta pot pride na vRouterje.<\/p>\n<p>Na VNGW obi\u010dno dolazi do agregacije ruta ili NAT prevo\u0111enja.<\/p>\n<p>In v drugo smer v seji z robnimi napravami ali Route Reflectorji posreduje prav to agregirano pot. Od njih dobi privzeto pot ali Full-View, ali kaj drugega.<\/p>\n<p>U pogledu enkapsulacije i razmene saobra\u0107aja, VNGW se ne razlikuje od vRouter-a. <br \/>\n\u010ce nekoliko raz\u0161irimo obseg, lahko k VNGW in vRouterjem dodamo tudi druge mre\u017ene naprave, kot so po\u017earni zidovi, kmetije \u010di\u0161\u010denja ali obogatitve prometa, IPS in tako naprej.<\/p>\n<p>In s pomo\u010djo zaporednega ustvarjanja VRF in pravilnega napovedovanja poti, lahko prisilimo promet, da se giblje tako, kot \u017eelite, kar imenujemo Service Chaining.<\/p>\n<p>Torej tukaj tudi SDN-kontroler deluje kot Route-Reflector med VNGW, vRouterji in drugimi mre\u017enimi napravami.<\/p>\n<p>Ali, zapravo, kontroler tako\u0111e \u0161alje informacije o ACL i PBR (Policy Based Routing), nateravaju\u0107i pojedina\u010dne tokove saobra\u0107aja da se kre\u0107u suprotno od onoga \u0161to im ruta nala\u017ee.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/fs.linkmeup.ru\/images\/adsm\/1\/outside-cp.png\"><img decoding=\"async\" alt=\"Avtomatizacija za najmlaj\u0161e. Prvi del (ki je po ni\u010delnem). Virtualizacija omre\u017eja\" src=\"\/wp-content\/uploads\/2019\/07\/dbba5a93d64edf56dc9c2b82311c5a11.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<h1>FAQ<\/h1>\n<p><b>Za\u0161to stalno nagla\u0161ava\u0161 GRE\/UDP?<\/b><\/p>\n<p>Pa, u stvari, to je specifi\u010dno za Tungsten Fabric \u2014 zapravo se mo\u017ee potpuno zanemariti.<\/p>\n<p>Men \u010de pa vzamemo, je sam TF, \u0161e v \u010dasu OpenContrail, podpirala obe encapsulaciji: MPLS in GRE in MPLS v UDP. <\/p>\n<p>UDP je dobar jer se u Source Port-u u njegovom zaglavlju vrlo lako mo\u017ee kodirati hash funkcija od originalnih IP+Proto+Port, \u0161to \u0107e omogu\u0107iti balansiranje. <\/p>\n<p>U slu\u010daju GRE, na\u017ealost, postoje samo spolja\u0161nji IP i GRE zaglavlja, koja su identi\u010dna za sav enkapsulirani saobra\u0107aj i o balansiranju ne mo\u017ee biti re\u010di \u2014 malo ko mo\u017ee zaviriti tako duboko unutar paketa.<\/p>\n<p>Do nekaterih trenutkov so usmerjevalniki, \u010deprav so znali obvladati dinami\u010dne tuneline, le v MPLSoGRE, in \u0161ele nedavno so se nau\u010dili v MPLSoUDP. Zato moramo vedno dodati opombo o mo\u017enosti dveh razli\u010dnih inkapsulacij.<\/p>\n<p>Po\u0161teno je poudariti, da TF povsem podpira tudi L2-povezljivost preko VXLAN.<\/p>\n<p>\n<b>Obljubil si, da bo\u0161 delal vzporednice z OpenFlow.<\/b><br \/>\nRes je, da se kar ponujajo. vSwitch v istem OpenStacku dela precej podobne stvari, uporabo VXLAN-a, ki ima mimogrede tudi UDP glavo.<\/p>\n<p>V podatkovni ravni delujejo pribli\u017eno enako, precej se razlikuje kontrolna raven. Tungsten Fabric uporablja XMPP za po\u0161iljanje informacij o poteh na vRouter, medtem ko v OpenStacku deluje Openflow.<\/p>\n<p>\n<b>Ali lahko pove\u0161 kaj ve\u010d o vRouterju?<\/b><br \/>\nDeljen je na dva dela: vRouter Agent in vRouter Forwarder.<\/p>\n<p>Prvi se izvaja v User Space gostiteljskega operacijskega sistema in komunicira s SDN-nadzornikom ter izmenjuje informacije o poteh, VRF in ACL.<\/p>\n<p>Druga implementira podatkovno raven \u2013 obi\u010dajno v Kernel prostoru, lahko pa se za\u017eene tudi na SmartNIC-ih \u2013 omre\u017enih karticah s CPU in lo\u010denim programabilnim \u010dipom za preklapljanje, kar omogo\u010da zmanj\u0161anje obremenitve CPU-ja gostiteljske naprave in hitrej\u0161e ter bolj predvidljive omre\u017eje. <\/p>\n<p>Mogo\u010de je tudi scenarij, ko je vRouter aplikacija DPDK v User Space. <\/p>\n<p>vRouter Agent prenese nastavitve na vRouter Forwarder.<\/p>\n<p>\n<b>Kaj je Virtual Network?<\/b><br \/>\nNa za\u010detku \u010dlanka sem omenil VRF, kar pomeni, da je vsak najemnik vezan na svoj VRF. In \u010de je za povr\u0161insko razumevanje delovanja ovijalne mre\u017ee tega dovolj, pa je \u017ee pri naslednji iteraciji potrebno narediti pojasnila.<\/p>\n<p>Obi\u010dajno v mehanizmih virtualizacije entiteta Virtual Network (to lahko \u0161tejemo za lastno ime) deluje lo\u010deno od strank\/tenantov\/virtualnih strojev \u2013 povsem samostojna zadeva. Ta Virtual Network se lahko prek vmesnikov pove\u017ee v en tenant, v drugega, v dva, ali kamorkoli. Tako se na primer izvaja Service Chaining, kjer je treba promet preusmeriti skozi dolo\u010dene vozli\u0161\u010da v pravilnem zaporedju, preprosto tako, da se ustvari in pove\u017ee Virtual Network v pravem zaporedju.<\/p>\n<p>Zato ne obstaja neposredno razmerje med Virtual Network in najemnikom.<\/p>\n<h1>Zaklju\u010dek<\/h1>\n<p>\nTo je precej povr\u0161inski opis delovanja virtualnega omre\u017eja z overlayjem iz gostitelja in SDN krmilnikom. Ne glede na to, katero virtualizacijsko platformo danes izberete, bo delovala na podoben na\u010din, bodisi da gre za VMWare, ACI, OpenStack, CloudStack, Tungsten Fabric ali Juniper Contrail. Razlikovale se bodo le vrste inkapsulacij in glav, protokoli dostave informacij do kon\u010dnih omre\u017enih naprav, a princip programsko nastavljivega overlay omre\u017eja, ki deluje nad relativno preprostim in stati\u010dnim underlay omre\u017ejem, ostaja enak.<br \/>\nLahko re\u010demo, da je podro\u010dje ustvarjanja zasebnega oblaka danes zmagalo s SDN, ki temelji na overlay omre\u017eju. Vendar to ne pomeni, da Openflow nima mesta v sodobnem svetu \u2014 uporablja se v OpenStacku in v VMWare NSX, kolikor vem, ga Google uporablja za nastavitev underlay omre\u017eja.<\/p>\n<p>Malce ni\u017eje sem navedel povezave na podrobnej\u0161e materiale, \u010de \u017eelite temo raziskati bolj poglobljeno. <\/p>\n<p>Kaj pa na\u0161 Underlay? <\/p>\n<p>V resnici pa ni\u010d. Ni se spremenil ves \u010das. Vse, kar mora storiti v primeru overlay-a s gostitelja, je osve\u017eevanje poti in ARP-jev, ko se vRouter\/VNGW pojavijo in izginejo, ter prena\u0161anje paketov med njimi.<\/p>\n<p>Dolo\u010dimo seznam zahtev za Underlay omre\u017eje.<\/p>\n<ol>\n<li>Mora biti sposoben v nek protokol usmerjanja, v na\u0161em primeru \u2014 BGP.<\/li>\n<li>Imeti \u0161iroko pasovno \u0161irino, najbolje brez preoptere\u010denja, da ne bi izgubljali paketov zaradi obremenitev.<\/li>\n<li>Podpora ECMP je nepogre\u0161ljiv del tovarne.<\/li>\n<li>Mora omogo\u010diti QoS, vklju\u010dno s \u010dudnimi stvarmi, kot je ECN.<\/li>\n<li>Podpora NETCONF \u2014 priprava na prihodnost.<\/li>\n<\/ol>\n<p>\nDelo samega Underlay omre\u017eja sem posvetil tukaj zelo malo \u010dasa. To je zato, ker se bom kasneje v seriji osredoto\u010dil prav nanj, overlay pa bomo obravnavali le mimogrede.<\/p>\n<p>O\u010ditno mo\u010dno omejujem vse nas, ko kot primer uporabljam omre\u017eje DC, zgrajeno na tovarni Kloza s \u010distim IP usmerjanjem in overlayjem iz gostitelja.<\/p>\n<p>Vendar sem prepri\u010dan, da je mogo\u010de katerokoli omre\u017eje z zasnovo opisati v formalnih izrazih in avtomatizirati. Preprosto si tukaj prizadevam razumeti pristope k avtomatizaciji, ne pa zmede vse, ko re\u0161em te\u017eavo na splo\u0161no.<\/p>\n<p>V okviru ADMS-a s Romanom Gorgem na\u010drtujemo objaviti poseben izdaj o virtualizaciji ra\u010dunalni\u0161kih virov in njenem povezovanju z virtualizacijo omre\u017eja. Ostanite v stiku.<\/p>\n<p><\/p>\n<h1>Koristne poveznice<\/h1>\n<p><\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/tungstenfabric.github.io\/website\/\">Tungsten Fabric Arhitektura<\/a><\/noindex>.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/Kr6WIYPts8I?t=3157\">about:cloud<\/a><\/noindex>. 6 ur o Yandex.Cloud, kjer se med drugim obravnava virtualno omre\u017eje na TF.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/docs.openvswitch.org\/en\/latest\/intro\/what-is-ovs\/\">Kaj je Open vSwitch?<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/344326\/\">Uvod v VxLAN<\/a><\/noindex>.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/tools.ietf.org\/html\/rfc7348\">RFC 7348. Virtual eXtensible Local Area Network (VXLAN): Okvir za prekrivanje virtualiziranih omre\u017eij druge ravni na omre\u017ejih tretje ravni.<br \/>\n <\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.enog.org\/wp-content\/uploads\/presentations\/enog-16\/18-Scaleway-P14-fabric-ENOG16.pdf\">Pristop Scaleway k VXLAN EVPN Fabriki<\/a><\/noindex>. Tu se govori o celotnem DC omre\u017eju, vklju\u010dno s Underlay, Overlay, pristopi k multi-homing in upravljanju.<\/li>\n<\/ul>\n<p><\/p>\n<h5>Hvala<\/h5>\n<p><\/p>\n<ul>\n<li><noindex>Romanu Gorgu<\/noindex> \u2014 nekdanjem voditelju podkasta linkmeup, sedaj strokovnjaku za obla\u010dne platforme. Hvala za komentarje in popravke. Upamo, da bomo v prihodnosti videli tudi njegovo globlje delo o virtualizaciji.<\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.alexander-shalimov.com\">Aleksandru \u0160alimovu<\/a><\/noindex> \u2014 mojemu kolegu in strokovnjaku za razvoj virtualnih omre\u017eij. Hvala za komentarje in popravke.<\/li>\n<li><noindex>Valentinu Sini\u010dinu<\/noindex> \u2014 mojemu kolegu in strokovnjaku na podro\u010dju Tungsten Fabric. Hvala za komentarje in popravke.<\/li>\n<li><noindex>Artemu \u010cernobaju<\/noindex> \u2014 ilustratorju linkmeup. Hvala za KDPV.<\/li>\n<li>Aleksandru Limonovu. Hvala za mem \u00abautomato\u00bb.<\/li>\n<\/ul>\n<p>Izvor: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/458622\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c \u0432\u044b\u043f\u0443\u0441\u043a\u0435 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438. \u041f\u043e \u043e\u0442\u0437\u044b\u0432\u0430\u043c \u0443 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043b\u044e\u0434\u0435\u0439 \u0434\u0430\u0436\u0435 \u044d\u0442\u043e\u0442 \u043f\u0435\u0440\u0432\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0435 \u0443\u0436\u0435 \u0440\u0430\u0437\u043b\u043e\u0436\u0438\u043b \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u043f\u043e \u043f\u043e\u043b\u043e\u0447\u043a\u0430\u043c. \u0418 \u044d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043c\u0435\u043d\u044f \u0440\u0430\u0434\u0443\u0435\u0442, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043d\u0430\u0448\u0430 \u0446\u0435\u043b\u044c \u0432 \u0446\u0438\u043a\u043b\u0435 \u2014 \u043d\u0435 \u043e\u0431\u043c\u0430\u0437\u0430\u0442\u044c \u043f\u0438\u0442\u043e\u043d\u043e\u0432\u0441\u043a\u0438\u043c\u0438 \u0441\u043a\u0440\u0438\u043f\u0442\u0430\u043c\u0438 \u0430\u043d\u0437\u0438\u0431\u043b\u044c, \u0430 \u0432\u044b\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0443. \u042d\u0442\u043e\u0442 \u0436\u0435 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0437\u0430\u0434\u0430\u0451\u0442 \u043f\u043e\u0440\u044f\u0434\u043e\u043a, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c\u0441\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":26892,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-35973","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c \u0432\u044b\u043f\u0443\u0441\u043a\u0435 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sl_SI\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f \u0414\u043b\u044f \u0421\u0430\u043c\u044b\u0445 \u041c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445. \u0427\u0430\u0441\u0442\u044c \u043f\u0435\u0440\u0432\u0430\u044f (\u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0441\u043b\u0435 \u043d\u0443\u043b\u0435\u0432\u043e\u0439). \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0435\u0442\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c \u0432\u044b\u043f\u0443\u0441\u043a\u0435 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:08:54+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:08:54+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Avtomatizacija Za Najmanj\u0161e. Prvi del (ki je po ni\u010delni). Virtualizacija omre\u017eja | ProHoster","description":"V prej\u0161nji izdaji sem opisal okvir za omre\u017eno avtomatizacijo.","canonical_url":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sl_SI","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f \u0414\u043b\u044f \u0421\u0430\u043c\u044b\u0445 \u041c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0445. \u0427\u0430\u0441\u0442\u044c \u043f\u0435\u0440\u0432\u0430\u044f (\u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0441\u043b\u0435 \u043d\u0443\u043b\u0435\u0432\u043e\u0439). \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0435\u0442\u0438 | ProHoster","og:description":"\u0412 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u043c \u0432\u044b\u043f\u0443\u0441\u043a\u0435 \u044f \u043e\u043f\u0438\u0441\u0430\u043b \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438.","og:url":"https:\/\/prohoster.info\/sl\/blog\/administrirovanie\/avtomatizatsiya-dlya-samyh-malenkih-chast-pervaya-kotoraya-posle-nulevoj-virtualizatsiya-seti","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:08:54+00:00","article:modified_time":"2019-10-31T19:08:54+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35973","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 01:28:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:53:30","updated":"2026-01-22 01:28:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/35973","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/comments?post=35973"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/35973\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media\/26892"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media?parent=35973"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/categories?post=35973"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/tags?post=35973"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}