Kumaha AWS masak jasa elastis na. Skala jaringan

Skala jaringan Amazon Web Services nyaéta 69 zona di sakumna dunya dina 22 daérah: AS, Eropa, Asia, Afrika sareng Australia. Unggal zone ngandung nepi ka 8 puseur data - Data Processing Center. Unggal puseur data boga rébuan atawa ratusan rébu tina server. Jaringan dirancang ku cara anu sadayana skenario outage anu teu mungkin dipertimbangkeun. Salaku conto, sadaya daérah diisolasi, sareng zona aksés dipisahkeun dina jarak sababaraha kilométer. Malah lamun motong kabel, sistem bakal pindah ka saluran cadangan, sarta leungitna informasi bakal Jumlah sababaraha pakét data. Vasily Pantyukhin bakal ngobrol ngeunaan naon prinsip séjén jaringan diwangun dina na kumaha eta terstruktur.

Kumaha AWS masak jasa elastis na. Skala jaringan

Vasily Pantyukhin dimimitian salaku administrator Unix di pausahaan .ru, digawé dina hardware Sun Microsystem badag pikeun 6 taun, sarta ngahutbah dunya data-centric pikeun 11 taun di EMC. Éta sacara alami mekar janten awan pribadi, teras ngalih ka awan umum. Ayeuna, salaku arsiték Amazon Web Services, anjeunna nyayogikeun nasihat téknis pikeun ngabantosan hirup sareng ngembangkeun dina awan AWS.

Dina bagian saméméhna tina trilogy AWS, Vasily delved kana desain server fisik sarta skala database. Kartu Nitro, hypervisor basis KVM khusus, database Amazon Aurora - ngeunaan sadayana ieu dina bahan "Kumaha AWS masak jasa elastis na. Skala server jeung database" Baca pikeun konteks atanapi nonton ngarékam pidéo pidato.

Bagian ieu bakal difokuskeun kana skala jaringan, salah sahiji sistem anu paling kompleks dina AWS. Évolusi tina jaringan datar ka Virtual Private Cloud sareng desainna, jasa internal Blackfoot sareng HyperPlane, masalah tatangga ribut, sareng tungtungna - skala jaringan, tulang tonggong sareng kabel fisik. Ngeunaan sadayana ieu handapeun cut.

Bantahan: sadayana di handap ieu mangrupikeun pendapat pribadi Vasily sareng panginten henteu saluyu sareng posisi Amazon Web Services.

Skala jaringan

AWS Awan diluncurkeun dina 2006. Jaringanna cukup primitif - kalayan struktur datar. Kisaran alamat pribadi éta umum pikeun sadaya panyewa awan. Nalika ngamimitian mesin virtual anyar, anjeun teu kahaja nampi alamat IP anu sayogi tina rentang ieu.

Kumaha AWS masak jasa elastis na. Skala jaringan

Pendekatan ieu gampang dilaksanakeun, tapi dasarna ngawatesan panggunaan awan. Khususna, éta rada sesah pikeun ngembangkeun solusi hibrida anu ngagabungkeun jaringan pribadi dina taneuh sareng di AWS. Masalah anu paling umum nyaéta tumpang tindihna rentang alamat IP.

Kumaha AWS masak jasa elastis na. Skala jaringan

Awan Pribadi Virtual

Méga tétéla aya paménta. Waktosna parantos mikir ngeunaan skalabilitas sareng kamungkinan pamakeanna ku puluhan juta panyewa. Jaringan datar geus jadi halangan utama. Kituna, urang mikir ngeunaan kumaha carana ngasingkeun pamaké ti unggal lianna di tingkat jaringan ambéh maranéhanana bisa bebas milih rentang IP.

Kumaha AWS masak jasa elastis na. Skala jaringan

Naon hal anu mimiti dipikiran nalika anjeun mikir ngeunaan isolasi jaringan? Tangtu VLAN и VRF - Virtual Routing na Neraskeun.

Hanjakal, teu hasil. VLAN ID ngan 12 bit, nu mere urang ngan 4096 bagéan terasing. Malah saklar pangbadagna bisa ngagunakeun maksimum 1-2 sarébu VRFs. Ngagunakeun VRF jeung VLAN babarengan méré urang ngan sababaraha juta subnets. Ieu pasti henteu cekap pikeun puluhan juta panyewa, masing-masing kedah tiasa nganggo sababaraha subnet.

Urang ogé ngan saukur teu bisa mampuh meuli jumlah diperlukeun kotak badag, Contona, ti Cisco atanapi Juniper. Aya dua alesan: éta mahal pisan, sareng kami henteu hoyong karunya kana kabijakan pangwangunan sareng patching.

Aya ngan hiji kacindekan - nyieun solusi sorangan.

Dina 2009 kami ngumumkeun VPC - Awan Pribadi Virtual. Ngaranna nyangkut sareng ayeuna seueur panyadia awan ogé ngagunakeun éta.

VPC nyaéta jaringan virtual SDN (Software Defined Network). Kami mutuskeun henteu nyiptakeun protokol khusus dina tingkat L2 sareng L3. Jaringan dijalankeun dina standar Ethernet sareng IP. Pikeun pangiriman ngaliwatan jaringan, lalulintas mesin virtual ieu encapsulated dina wrapper protokol urang sorangan. Ieu nunjukkeun ID nu milik VPC tenant urang.

Kumaha AWS masak jasa elastis na. Skala jaringan

Sora basajan. Nanging, aya sababaraha tantangan téknis anu serius anu kedah diatasi. Contona, dimana jeung kumaha carana nyimpen data dina pemetaan maya MAC / alamat IP, VPC ID na pakait fisik MAC / IP. Dina skala AWS, ieu mangrupikeun méja ageung anu kedah dianggo kalayan telat aksés minimal. Tanggung jawab ieu jasa pemetaan, nu sumebar dina lapisan ipis sakuliah jaringan.

Dina mesin generasi anyar, enkapsulasi dilakukeun ku kartu Nitro dina tingkat hardware. Dina instansi heubeul, encapsulation na decapsulation dumasar kana software. 

Kumaha AWS masak jasa elastis na. Skala jaringan

Hayu urang terang kumaha éta tiasa dianggo sacara umum. Hayu urang mimitian ku tingkat L2. Hayu urang nganggap yen urang boga mesin virtual kalawan IP 10.0.0.2 dina server fisik 192.168.0.3. Ieu ngirimkeun data ka mesin virtual 10.0.0.3, nu hirup dina 192.168.1.4. Hiji pamundut ARP dihasilkeun sarta dikirim ka kartu jaringan Nitro. Pikeun kesederhanaan, urang nganggap yén duanana mesin virtual hirup dina VPC "biru" sami.

Kumaha AWS masak jasa elastis na. Skala jaringan

Peta ngagentos alamat sumber sareng alamatna sareng teraskeun pigura ARP ka jasa pemetaan.

Kumaha AWS masak jasa elastis na. Skala jaringan

Ladenan pemetaan mulih informasi anu dipikabutuh pikeun transmisi ngaliwatan jaringan fisik L2.

Kumaha AWS masak jasa elastis na. Skala jaringan

Kartu Nitro dina respon ARP ngagantikeun MAC dina jaringan fisik jeung alamat di VPC.

Kumaha AWS masak jasa elastis na. Skala jaringan

Nalika nransferkeun data, urang mungkus MAC sareng IP logis dina bungkus VPC. Kami ngirimkeun sadayana ieu dina jaringan fisik nganggo sumber anu cocog sareng kartu IP Nitro tujuan.

Kumaha AWS masak jasa elastis na. Skala jaringan

Mesin fisik dimana pakét ditakdirkeun ngalaksanakeun cek. Ieu diperlukeun pikeun nyegah kamungkinan spoofing alamat. Mesin ngirimkeun pamundut husus ka layanan pemetaan jeung nanya: "Ti mesin fisik 192.168.0.3 Kuring narima pakét anu dimaksudkeun pikeun 10.0.0.3 dina VPC biru. Naha anjeunna sah? 

Kumaha AWS masak jasa elastis na. Skala jaringan

Ladenan pemetaan pariksa tabel alokasi sumberdaya sarta ngidinan atawa denies pakét ngaliwatan. Dina sadaya instansi anyar, validasi tambahan dipasang dina kartu Nitro. Teu mungkin mun bypass eta malah téoritis. Ku alatan éta, spoofing kana sumberdaya di VPC sejen moal jalan.

Kumaha AWS masak jasa elastis na. Skala jaringan

Salajengna, data dikirim ka mesin virtual anu dimaksudkeun. 

Kumaha AWS masak jasa elastis na. Skala jaringan

Ladenan pemetaan ogé jalan salaku router logis pikeun mindahkeun data antara mesin virtual dina subnet béda. Sagalana téh conceptually basajan, abdi moal balik kana detil.

Kumaha AWS masak jasa elastis na. Skala jaringan

Tétéla nalika ngirimkeun unggal pakét, server giliran jasa pemetaan. Kumaha carana nungkulan reureuh dilawan? Caching, tangtosna.

Kaéndahanana nyaéta anjeun henteu kedah nga-cache sadayana méja ageung. A server fisik host mesin virtual tina jumlah relatif leutik VPCs. Anjeun ngan ukur kedah nyimpen inpormasi ngeunaan VPC ieu. Mindahkeun data ka VPC séjén dina konfigurasi "standar" masih teu sah. Upami fungsionalitas sapertos VPC-peering dianggo, teras inpormasi ngeunaan VPC anu saluyu ogé dimuat kana cache. 

Kumaha AWS masak jasa elastis na. Skala jaringan

Urang nyortir kaluar mindahkeun data ka VPC.

Blackfoot

Naon anu kudu dilakukeun dina kasus dimana lalu lintas kedah dikirimkeun ka luar, contona ka Internét atanapi via VPN ka darat? Mantuan kami kaluar dieu Blackfoot - jasa internal AWS. Éta dikembangkeun ku tim Afrika Kidul urang. Éta sababna jasa éta dingaranan pinguin anu cicing di Afrika Kidul.

Kumaha AWS masak jasa elastis na. Skala jaringan

Blackfoot decapsulates lalulintas sarta ngalakukeun naon anu diperlukeun ku eta. Data dikirim ka Internet sakumaha anu kasebut.

Kumaha AWS masak jasa elastis na. Skala jaringan

Datana didekapsulasi sareng dibungkus deui dina IPsec nalika nganggo VPN.

Kumaha AWS masak jasa elastis na. Skala jaringan

Lamun maké Direct Connect, lalulintas ditandaan tur dikirim ka VLAN luyu.

Kumaha AWS masak jasa elastis na. Skala jaringan

HyperPlane

Ieu mangrupikeun jasa kontrol aliran internal. Seueur jasa jaringan ngabutuhkeun monitoring kaayaan aliran data. Salaku conto, nalika nganggo NAT, kontrol aliran kedah mastikeun yén unggal IP: pasangan port tujuan gaduh port kaluar anu unik. Dina kasus balancer a NLB - Network Beban Balancer, aliran data kudu salawasna diarahkeun ka mesin virtual target sarua. Grup Kaamanan mangrupakeun firewall stateful. Éta ngawas lalu lintas asup sareng sacara implisit muka palabuhan pikeun aliran pakét kaluar.

Kumaha AWS masak jasa elastis na. Skala jaringan

Dina awan AWS, syarat latency transmisi kacida luhurna. Éta alesanana HyperPlane kritis kana kinerja sakabéh jaringan.

Kumaha AWS masak jasa elastis na. Skala jaringan

Hyperplane diwangun dina mesin virtual EC2. Henteu aya sihir di dieu, ngan ukur licik. Trik nyaéta yén ieu mesin virtual kalayan RAM anu ageung. Operasi anu transactional sarta dipigawé sacara éksklusif dina mémori. Ieu ngidinan Anjeun pikeun ngahontal reureuh ngan puluhan microseconds. Gawe sareng disk bakal maéhan sadaya produktivitas. 

Hyperplane mangrupikeun sistem anu disebarkeun tina sajumlah ageung mesin EC2 sapertos kitu. Unggal mesin virtual boga rubakpita 5 GB / s. Sakuliah jaringan régional, ieu nyadiakeun terabits rubakpita luar biasa tur ngamungkinkeun processing jutaan sambungan per detik.

HyperPlane ngan ukur tiasa dianggo sareng aliran. VPC pakét encapsulation sagemblengna transparan pikeun eta. Potensi kerentanan dina layanan internal ieu masih bakal nyegah isolasi VPC ti rusak. Tingkat di handap tanggung jawab kaamanan.

Tatangga ribut

Aya kénéh masalah tatangga ribut - tatangga ribut. Anggap urang gaduh 8 titik. Titik ieu ngolah aliran sadaya pangguna awan. Sagalana sigana henteu kunanaon sareng beban kedah disebarkeun merata ka sadaya titik. Node kuat pisan sareng hese ngabebankeunana.

Tapi urang ngawangun arsitektur urang dumasar kana skenario malah saperti teu mirip. 

Kamungkinan low henteu hartosna teu mungkin.

Urang tiasa ngabayangkeun kaayaan dimana hiji atanapi langkung pangguna bakal ngahasilkeun beban teuing. Sadaya titik HyperPlane aub dina ngolah beban ieu sareng pangguna anu sanés tiasa ngalaman sababaraha jinis kinerja hit. Ieu ngarecah konsép awan, nu nyewa teu boga kamampuhan pikeun pangaruh silih.

Kumaha AWS masak jasa elastis na. Skala jaringan

Kumaha carana ngajawab masalah tatangga ribut? Hal kahiji anu datang ka pikiran nyaéta sharding. 8 titik kami sacara logis dibagi kana 4 shards tina 2 titik unggal. Ayeuna tatangga anu ribut bakal ngaganggu ngan ukur saparapat tina sadaya pangguna, tapi éta bakal ngaganggu pisan.

Kumaha AWS masak jasa elastis na. Skala jaringan

Hayu urang ngalakukeun hal béda. Urang bakal allocate ngan 3 titik pikeun tiap pamaké. 

Kumaha AWS masak jasa elastis na. Skala jaringan

Trikna nyaéta sacara acak napelkeun titik ka pangguna anu béda. Dina gambar di handap, pamaké biru intersects titik jeung salah sahiji dua pamaké séjén - héjo sarta oranyeu.

Kumaha AWS masak jasa elastis na. Skala jaringan

Kalayan 8 titik sareng 3 pangguna, kamungkinan tatangga anu ribut intersecting sareng salah sahiji pangguna nyaéta 54%. Éta kalayan kamungkinan ieu yén pangguna biru bakal mangaruhan panyewa sanés. Dina waktu nu sarua, ngan bagian tina beban na. Dina conto urang, pangaruh ieu bakal sahenteuna kumaha bae noticeable teu sadaya jelema, tapi mun ngan sapertilu ti sakabeh pamaké. Ieu geus hasil alus.

Jumlah pamaké anu bakal intersect

Probabilitas dina persen

0

18%

1

54%

2

26%

3

2%

Hayu urang ngadeukeutkeun kaayaan kana kanyataan - hayu urang nyandak 100 titik sareng 5 pangguna dina 5 titik. Dina hal ieu, taya sahiji titik bakal motong kalawan probabiliti 77%. 

Jumlah pamaké anu bakal intersect

Probabilitas dina persen

0

77%

1

21%

2

1,8%

3

0,06%

4

0,0006%

5

0,00000013%

Dina kaayaan nyata, kalayan sajumlah ageung titik sareng pangguna HyperPlane, dampak poténsial tatangga anu ribut pikeun pangguna anu sanés minimal. Metoda ieu disebut nyampur sharding - ngacak sharding. Éta ngaminimalkeun pangaruh négatip tina gagalna titik.

Seueur jasa anu diwangun dina dasar HyperPlane: Network Load Balancer, NAT Gateway, Amazon EFS, AWS PrivateLink, AWS Transit Gateway.

Skala jaringan

Ayeuna hayu urang ngobrol ngeunaan skala jaringan sorangan. Pikeun Oktober 2019 AWS nawiskeun jasa na di 22 wewengkon, jeung 9 deui rencanana.

  • Unggal wewengkon ngandung sababaraha Zona Kasadiaan. Aya 69 di antarana di sakuliah dunya.
  • Unggal AZ diwangun ku Pusat Pangolahan Data. Jumlahna henteu langkung ti 8.
  • Pusat data ngagaduhan sajumlah ageung server, sababaraha dugi ka 300.

Ayeuna hayu urang rata sadayana ieu, kalikeun tur meunangkeun inohong impressive nu ngagambarkeun Skala awan Amazon.

Aya seueur tautan optik antara Zona Kasadiaan sareng pusat data. Di salah sahiji daérah anu panggedéna, 388 saluran parantos dipasang kanggo komunikasi AZ antara séwang-séwangan sareng pusat komunikasi sareng daérah sanés (Pusat Transit). Dina total ieu méré gélo 5000 Tbit.

Kumaha AWS masak jasa elastis na. Skala jaringan

Tulang tonggong AWS diwangun khusus pikeun sareng dioptimalkeun pikeun awan. Urang ngawangun éta dina saluran 100 GB / s. Urang ngadalikeun aranjeunna sagemblengna, iwal wewengkon di Cina. Lalu lintas henteu dibagikeun sareng beban perusahaan sanés.

Kumaha AWS masak jasa elastis na. Skala jaringan

Tangtosna, kami sanés ngan ukur panyadia awan anu gaduh jaringan tulang tonggong pribadi. Beuki seueur perusahaan ageung anu nuturkeun jalan ieu. Ieu dikonfirmasi ku peneliti bebas, contona tina Telegéografi.

Kumaha AWS masak jasa elastis na. Skala jaringan

Grafik nunjukkeun yén pangsa panyadia kontén sareng panyadia awan naék. Kusabab ieu, pangsa lalu lintas Internét panyadia tulang tonggong terus-terusan turun.

Kuring bakal ngajelaskeun naha ieu kajadian. Saméméhna, kalolobaan ladenan wéb tiasa diaksés sareng dikonsumsi langsung tina Internét. Kiwari, beuki loba server anu lokasina di awan tur diaksés via CDN - Jaringan Distribusi Kandungan. Pikeun ngakses sumber daya, pamaké ngaliwatan Internet ngan ka CDN PoP pangcaketna - Titik Ayana. Paling sering éta tempat caket dieu. Lajeng daun Internet umum tur ngalayang ngaliwatan tulang tonggong swasta peuntas Atlantik, contona, sarta meunang langsung ka sumberdaya nu.

Kuring heran kumaha Internet bakal robah dina 10 taun lamun trend ieu terus?

Saluran fisik

Élmuwan henteu acan terang kumaha carana ningkatkeun kagancangan cahaya di Alam Semesta, tapi aranjeunna parantos ngadamel kamajuan anu hébat dina cara ngirimkeunana ngaliwatan serat optik. Ayeuna kami nganggo 6912 kabel serat. Ieu ngabantuan nyata ngaoptimalkeun biaya instalasi maranéhanana.

Di sababaraha daérah urang kedah nganggo kabel khusus. Contona, di wewengkon Sydney kami nganggo kabel ku palapis husus ngalawan rinyuh. 

Kumaha AWS masak jasa elastis na. Skala jaringan

Teu aya anu kebal tina masalah sareng kadang saluran urang rusak. Poto di beulah katuhu nembongkeun kabel optik di salah sahiji wewengkon Amérika anu torn ku pagawe konstruksi. Akibat kacilakaan éta, ngan 13 pakét data anu leungit, anu matak pikaheraneun. Sakali deui - ngan 13! Sistem sacara harfiah langsung ngalih ka saluran cadangan - skalana berpungsi.

Kami ngalangkungan sababaraha jasa sareng téknologi awan Amazon. Abdi ngarepkeun anjeun gaduh sahenteuna sababaraha ide ngeunaan skala tugas anu kedah direngsekeun ku insinyur urang. Pribadi, kuring manggihan ieu pisan seru. 

Ieu mangrupikeun bagian ahir trilogi Vasily Pantyukhin ngeunaan alat AWS. DI kahiji bagian ngajelaskeun optimasi server na database skala, sarta di kadua - fungsi tanpa server sareng Firecracker.

on HighLoad ++ dina bulan Nopémber Vasily Pantyukhin bakal babagi rinci anyar tina alat Amazon. Anjeunna nyaritakeun ngeunaan panyabab gagal sareng desain sistem anu disebarkeun di Amazon. 24 Oktober masih mungkin pikeun buku tikét kalawan harga alus, sarta mayar engké. Kami ngantosan anjeun di HighLoad ++, sumping sareng hayu urang ngobrol!

sumber: www.habr.com

Tambahkeun komentar