Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Ny rahona dia toy ny boaty majika - manontany izay ilainao ianao, ary ny loharanon-karena dia miseho avy hatrany. Masinina virtoaly, angon-drakitra, tambajotra - izany rehetra izany dia anao irery ihany. Misy mpanofa rahona hafa, fa ao amin'ny Universenao ianao no hany mpitondra. Azonao antoka fa hahazo ny loharano ilaina foana ianao, tsy mandray na iza na iza ary ianao no mamaritra ny ho toy ny tambajotra. Ahoana no fiasan'ity ody ity izay mahatonga ny rahona hizara loharanon-karena sy hampisaraka tanteraka ny mpanofa?

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Ny rahona AWS dia rafitra mega-super complex izay nivoatra tamin'ny evolisiona nanomboka tamin'ny taona 2006. Anisan’ny nitranga izany fampandrosoana izany Vasily Pantyukhin - Amazon Web Services Architect. Amin'ny maha-mpanao maritrano azy, tsy ny vokatra farany ihany no jerena, fa ny fanamby atrehin'ny AWS ihany koa. Arakaraka ny fahatakarana bebe kokoa ny fomba fiasan'ny rafitra no lehibe kokoa ny fahatokisana. Noho izany dia hizara ny tsiambaratelon'ny serivisy rahona AWS i Vasily. Ity ambany ity ny famolavolan'ny mpizara AWS ara-batana, ny scalability ny angon-drakitra elastika, ny angon-drakitra Amazon mahazatra sy ny fomba fampitomboana ny fahombiazan'ny milina virtoaly ary ny fampihenana ny vidiny. Ny fahalalana ny fomba fiasa ara-javakanto an'ny Amazon dia hanampy anao hampiasa ny serivisy AWS amin'ny fomba mahomby kokoa ary mety hanome anao hevitra vaovao amin'ny fananganana vahaolana ho anao manokana.

Momba ny mpandahateny: Vasily Pantyukhin (akoho) dia nanomboka tamin'ny maha admin Unix tao amin'ny orinasa .ru, niasa tamin'ny fitaovana lehibe Sun Microsystem nandritra ny 6 taona, ary nitory tontolo mifototra amin'ny angona tao amin'ny EMC nandritra ny 11 taona. Nivoatra ho azy ho rahona manokana izy io, ary tamin'ny taona 2017 dia nifindra ho an'ny daholobe. Ankehitriny izy dia manome torohevitra ara-teknika hanampiana ny fiainana sy hivoatra ao amin'ny rahona AWS.

Disclaimer: ny zava-drehetra eto ambany dia ny hevitr'i Vasily manokana ary mety tsy mifanandrify amin'ny toeran'ny Amazon Web Services. Fandraketana video Ny tatitra izay iorenan'ny lahatsoratra dia azo jerena ao amin'ny fantsonay YouTube.

Nahoana aho no miresaka momba ny fitaovana Amazon?

Ny fiarako voalohany dia nisy fifindran'ny tanana. Tena nahafinaritra izany noho ny fahatsapana fa afaka mitondra ny fiara aho ary mifehy azy tanteraka. Nahafinaritra ahy koa ny nahatakatra ny fitsipiky ny fiasan'izy io farafaharatsiny. Mazava ho azy, noheveriko ho tena tranainy ny firafitry ny boaty - zavatra toy ny boaty amin'ny bisikileta.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Tsara daholo ny zava-drehetra, afa-tsy ny zavatra iray - niraikitra tamin'ny fitohanan'ny fiara. Toa mipetraka ianao fa tsy manao na inona na inona, fa miova tsy tapaka, manindry ny clutch, entona, frein - tena mandreraka anao izany. Nivaha ampahany ny olan’ny fitohanana rehefa nahazo fiara mandeha ho azy ny fianakaviana. Teo am-pamiliana dia nanam-potoana nieritreretana zavatra sy nihaino bokim-peo aho.

Nisy zava-miafina iray hafa niseho teo amin'ny fiainako, satria tsy nahatakatra tanteraka ny fomba fiasan'ny fiarako aho. Ny fiara maoderina dia fitaovana sarotra. Ny fiara dia mifanaraka amin'ny masontsivana am-polony maro isan-karazany: manindry ny entona, frein, fomba mitondra fiara, kalitaon'ny lalana. Tsy azoko intsony ny fandehany.

Rehefa nanomboka niasa tamin'ny rahona Amazon aho, dia mistery ho ahy ihany koa izany. Ity mistery ity ihany no filaharana lehibe kokoa, satria misy mpamily iray ao anaty fiara, ary ao amin'ny AWS dia misy an-tapitrisany amin'izy ireo. Ny mpampiasa rehetra dia miaraka mamily, manindry ny entona ary ny frein. Mahagaga fa mandeha any amin'izay tiany izy ireo - fahagagana amiko izany! Ny rafitra dia mampifanaraka ho azy, mizana ary manitsy elastika amin'ny mpampiasa tsirairay ka toa izy irery no ao amin'ity Universe ity.

Nihena kely ny majika rehefa tonga niasa ho mpanao mari-trano tao Amazon aho tatỳ aoriana. Hitako hoe inona ny olana atrehintsika, ny fomba famahana azy ireny, ary ny fomba fampivelarana tolotra. Miaraka amin'ny fitomboan'ny fahatakarana ny fomba fiasan'ny rafitra dia miseho ny fahatokisana bebe kokoa amin'ny serivisy. Ka te-hizara sarin'izay ao ambanin'ny rahona AWS aho.

Inona no horesahina

Nisafidy fomba isan-karazany aho - nisafidy serivisy mahaliana 4 izay mendrika iresahana aho.

Optimization ny mpizara. Rahona ephemeral miaraka amin'ny endrika ara-batana: ivontoerana angon-drakitra ara-batana izay misy mpizara ara-batana manembona, mafana ary mamiratra miaraka amin'ny jiro.

Fampiasa tsy misy mpizara (Lambda) angamba no serivisy azo scalable indrindra amin'ny rahona.

Fanamafisana ny angona. Holazaiko aminao ny fomba hananganantsika ny angon-drakitra azo scalable.

Fanamafisana ny tambajotra. Ny ampahany farany izay hanokafako ny fitaovan'ny tambajotrantsika. Tena mahafinaritra izany - ny mpampiasa rahona rehetra dia mino fa irery ao anaty rahona izy ary tsy mahita mpanofa hafa mihitsy.

Fanamarihana. Ity lahatsoratra ity dia hiresaka momba ny fanatsarana ny mpizara sy ny fanamafisam-peo. Hodinihintsika ao amin'ny lahatsoratra manaraka ny fampitomboana ny tambajotra. Aiza ny asa tsy misy mpizara? Nisy dika mitovy navoaka momba azy ireo "Kely, nefa marani-tsaina. Unboxing Firecracker microvirtual" Miresaka momba ny fomba fanamafisam-peo isan-karazany izy io, ary miresaka amin'ny antsipiriany ny vahaolana Firecracker - simbiose amin'ny toetra tsara indrindra amin'ny milina virtoaly sy fitoeran-javatra.

lohamilina

Ny rahona dia mihelina. Saingy ity ephemerality ity dia mbola manana endrika ara-batana - mpizara. Tamin'ny voalohany, ny maritranony dia klasika. Chipset x86 mahazatra, karatra tambajotra, Linux, Xen hypervisor izay nampandehanana milina virtoaly.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Tamin'ny taona 2012, ity rafitra ity dia niatrika tsara ny asany. Xen dia hypervisor lehibe, saingy manana lesoka lehibe iray izy. Efa ampy izy ambony ambony ho an'ny emulation fitaovana. Rehefa misy karatra tambajotra haingana kokoa na SSD, dia lasa avo loatra io overhead io. Ahoana no hiatrehana io olana io? Nanapa-kevitra izahay fa hiasa amin'ny lafiny roa indray mandeha - optimize na hardware sy hypervisor. Tena matotra ny asa.

Optimizing hardware sy hypervisor

Ny fanaovana ny zava-drehetra indray mandeha sy ny fanaovana izany tsara dia tsy hahomby. Tsy mazava koa ny hoe “tsara” tamin’ny voalohany.

Nanapa-kevitra ny handray fomba fiasa evolisiona izahay - manova singa manan-danja iray amin'ny maritrano izahay ary manipy izany amin'ny famokarana.

Isika dia manitsaka isaky ny rake, mihaino ny fitarainana sy ny soso-kevitra. Avy eo dia manova singa iray hafa isika. Noho izany, amin'ny fisondrotana kely, dia manova tanteraka ny maritrano manontolo mifototra amin'ny tamberin'ny mpampiasa sy ny fanohanana.

Nanomboka tamin'ny 2013 ny fiovana tamin'ny zavatra sarotra indrindra - ny tambajotra. IN S3 Ohatra, nisy karatra Network Accelerator manokana nampiana tamin'ny karatra tambajotra mahazatra. Nampifandraisiny ara-bakiteny tamin'ny tariby loopback fohy teo amin'ny tontonana anoloana. Tsy tsara tarehy, fa tsy hita eny amin'ny rahona. Saingy ny fifaneraserana mivantana amin'ny hardware dia nanatsara ny jitter sy ny fidirana amin'ny tambajotra.

Avy eo dia nanapa-kevitra ny hanatsara ny fidirana amin'ny fanakanana fitahirizana angon-drakitra EBS - Elastic Block Storage. Izy io dia fitambaran'ny tambajotra sy fitahirizana. Ny fahasarotana dia na dia teo amin'ny tsena aza ny karatra Network Accelerator dia tsy nisy safidy hividianana fitaovana fitahirizana Accelerator fotsiny. Noho izany dia nitodika tany amin'ny fanombohana izahay Annapurna Labs, izay namolavola puce ASIC manokana ho antsika. Navelany hapetraka ho fitaovana NVMe ny boky EBS lavitra.

Amin'ny tranga C4 namaha olana roa izahay. Ny voalohany dia ny fametrahana fototra ho an'ny ho avin'ny fampanantenana, saingy vaovao tamin'izany fotoana izany, ny teknolojia NVMe. Faharoa, nanala tanteraka ny processeur afovoany izahay tamin'ny alàlan'ny famindrana ny fanodinana ny fangatahana amin'ny EBS amin'ny karatra vaovao. Nivoaka tsara izany, ka izao dia anisan'ny Amazon ny Annapurna Labs.

Tamin'ny Novambra 2017, tsapanay fa tonga ny fotoana hanovana ny hypervisor mihitsy.

Ny hypervisor vaovao dia novolavolaina mifototra amin'ny maodely kernel KVM novaina.

Nahafahana nampihena ifotony ny tampon'ny fanodinkodinana fitaovana ary niasa mivantana tamin'ireo ASIC vaovao. tranga S5 no milina virtoaly voalohany misy hypervisor vaovao mandeha eo ambanin'ny saron-tava. Nantsoinay izy Nitro.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy databaseNy fivoaran'ny tranga eo amin'ny fandaharam-potoana.

Ireo karazana milina virtoaly vaovao rehetra izay niseho nanomboka tamin'ny Novambra 2017 dia mandeha amin'ity hypervisor ity. Ny tranga Bare Metal dia tsy manana hypervisor, nefa antsoina koa hoe Nitro izy ireo, satria mampiasa karatra Nitro manokana.

Tao anatin'ny roa taona manaraka, ny isan'ny karazana tranga Nitro dia mihoatra ny am-polony roa: A1, C5, M5, T3 sy ny hafa.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database
Karazana ohatra.

Ny fomba fiasan'ny milina Nitro maoderina

Manana singa telo lehibe izy ireo: ny hypervisor Nitro (voaresaka etsy ambony), ny puce fiarovana ary ny karatra Nitro.

Chip fiarovana tafiditra mivantana amin'ny motherboard. Izy io dia mifehy ny asa manan-danja maro, toy ny fanaraha-maso ny fandefasana ny OS host.

karatra Nitro - Misy karazany efatra izy ireo. Izy rehetra dia novolavolain'ny Annapurna Labs ary mifototra amin'ny ASIC mahazatra. Ny sasany amin'ny firmware-ny dia mahazatra ihany koa.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database
Karazana karatra Nitro efatra.

Ny iray amin'ireo karatra dia natao hiasa tambajotraVPC. Izany no hita amin'ny milina virtoaly toy ny karatra tambajotra ENA - Tambajotra elastika adaptatera. Izy io koa dia mandrakotra ny fifamoivoizana rehefa mamindra izany amin'ny alàlan'ny tambajotra ara-batana (hiresaka momba izany isika ao amin'ny tapany faharoa amin'ny lahatsoratra), mifehy ny firewall-n'ny Security Groups, ary tompon'andraikitra amin'ny fitaterana sy ny zavatra hafa amin'ny tambajotra.

Fanteno karatra miasa miaraka amin'ny fitehirizana sakana EBS ary disks izay natsangana tao amin'ny server. Miseho amin'ny milina virtoaly vahiny izy ireo NVMe adapters. Izy ireo ihany koa no tompon'andraikitra amin'ny fanafenana angon-drakitra sy ny fanaraha-maso ny kapila.

Ny rafitra karatra Nitro, hypervisor ary chip fiarovana dia tafiditra ao anaty tambajotra SDN na Software Defined Network. Tompon'andraikitra amin'ny fitantanana ity tambazotra ity (Avion Fanaraha-maso) karatra fanaraha-maso.

Mazava ho azy fa manohy mamolavola ASIC vaovao izahay. Ohatra, tamin'ny faran'ny taona 2018 dia namoaka ny chip Inferentia izy ireo, izay ahafahanao miasa tsara kokoa amin'ny asa fianarana milina.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database
Inferentia Machine Learning Processor chip.

Database azo scalable

Ny tahiry nentim-paharazana dia manana rafitra misy sosona. Mba hanatsorana be dia be dia avahana ireto ambaratonga manaraka ireto.

  • SQL - ny mpanjifa sy ny mpaninjara fangatahana miasa amin'izany.
  • FEPETRA varotra - mazava daholo eto, ny ACID sy izay rehetra.
  • Caching, izay omen'ny dobo buffer.
  • logging - manome asa miaraka amin'ny redo logs. Ao amin'ny MySQL dia antsoina hoe Bin Logs izy ireo, ao amin'ny PosgreSQL - Manorata Logs mialoha (WAL).
  • fitehirizana – firaketana mivantana amin'ny kapila.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database
Rafitra angon-drakitra misy sosona.

Misy fomba isan-karazany hanesorana ny angon-drakitra: sharding, Shared Nothing architecture, shared disks.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Na izany aza, ireo fomba rehetra ireo dia mitazona ny firafitry ny angona monolithic mitovy. Tena mametra ny scaling izany. Mba hamahana ity olana ity dia namolavola ny angonay manokana izahay − Amazon Aurora. Mifanaraka amin'ny MySQL sy PostgreSQL izy io.

Amazon Aurora

Ny hevi-dehibe momba ny maritrano dia ny manasaraka ny haavon'ny fitahirizana sy ny logging amin'ny tahiry fototra.

Raha jerena ny ho avy dia lazaiko fa nataonay tsy miankina ihany koa ny haavon'ny caching. Ny maritrano dia tsy ho monolith intsony, ary mahazo ambaratongam-pahalalahana fanampiny isika amin'ny fampitomboana ny sakana tsirairay.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database
Misaraka amin'ny angon-drakitra ny haavon'ny fanoratana sy ny fitahirizana.

Ny DBMS nentim-paharazana dia manoratra angona amin'ny rafitra fitahirizana amin'ny endrika sakana. Tao amin'ny Amazon Aurora, namorona fitahirizana marani-tsaina afaka miteny fiteny izahay redo-logs. Ao anatiny, ny fitehirizana dia mamadika logs ho bloc data, manara-maso ny fahamarinan'izy ireo ary miverina mandeha ho azy.

Ity fomba fiasa ity dia ahafahanao mampihatra zavatra mahaliana toy ny fanamboarana. Miasa haingana kokoa sy ara-toekarena kokoa izy io noho ny tsy fisian'ny famoronana dika mitovy amin'ny angon-drakitra rehetra.

Ny sosona fitehirizana dia ampiharina ho toy ny rafitra fizarana. Izy io dia ahitana mpizara ara-batana marobe. Ny log redo tsirairay dia karakaraina sy voatahiry miaraka enina knot. Izany dia miantoka ny fiarovana ny angona sy ny fifandanjana entana.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Azo atao amin'ny alàlan'ny kopia mifanaraka amin'izany ny fanokafana vakiana. Ny fitehirizana voazara dia manafoana ny filàna fampifanarahana eo amin'ny ohatra fototra amin'ny angon-drakitra, izay hanoratantsika angona, sy ny kopia sisa. Ny angon-drakitra vaovao dia azo antoka fa azo ampiasaina amin'ny kopia rehetra.

Ny hany olana dia ny fitahirizana angon-drakitra taloha amin'ny replika vakiana. Efa voavaha anefa ity olana ity famindrana ny rakitra redo rehetra amin'ny kopia amin'ny tambajotra anatiny. Raha ao amin'ny cache ny log dia voamarika ho diso sy voasolo. Raha tsy ao anaty cache ilay izy dia ariana fotsiny.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Nandamina ny fitahirizana izahay.

Ahoana ny fampitomboana ny tiers DBMS

Amin'ity tranga ity, sarotra kokoa ny manenjana marindrano. Andeha àry isika hidina amin’ilay lalana voadaroka scaling mitsangana klasika.

Aoka hatao hoe manana fampiharana mifandray amin'ny DBMS amin'ny alalan'ny node master.

Rehefa manao scaling mitsangana isika dia manome node vaovao izay hanana processeur sy fitadidiana bebe kokoa.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Manaraka, mamadika ny fampiharana avy amin'ny node master taloha mankany amin'ny vaovao. Mipoitra ny olana.

  • Mitaky fotoana fiatoana lehibe ny fampiharana izany.
  • Ny node master vaovao dia hanana cache mangatsiaka. Ny fampandehanana angon-drakitra dia ho ambony indrindra rehefa mafana ny cache.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Ahoana no hanatsarana ny toe-javatra? Mametraha proxy eo anelanelan'ny fampiharana sy ny node master.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Inona no homen’izany antsika? Ankehitriny ny fampiharana rehetra dia tsy mila averina amin'ny tanana amin'ny node vaovao. Ny fifandimbiasana dia azo atao eo ambanin'ny proxy ary haingana kokoa.

Toa efa voavaha ny olana. Saingy tsia, mbola mijaly noho ny filàna hanafana ny cache isika. Fanampin'izany, nisy olana vaovao niseho - ankehitriny ny proxy dia teboka mety tsy fahombiazana.

Vahaolana farany miaraka amin'ny Amazon Aurora tsy misy mpizara

Ahoana no namaha ireo olana ireo?

Namela proxy. Tsy ohatra misaraka io, fa andiana proxy miparitaka manontolo izay ahafahan'ny fampiharana mifandray amin'ny angon-drakitra. Raha misy ny tsy fahombiazana, ny iray amin'ireo node dia azo soloina saika avy hatrany.

Nampiana dobo misy nodes mafana isan-karazany. Noho izany, raha ilaina ny manolotra node vaovao amin'ny habeny lehibe kokoa na kely kokoa, dia azo alaina avy hatrany. Tsy mila miandry ny entana.

Ny fizotran'ny scaling manontolo dia fehezin'ny rafitra fanaraha-maso manokana. Ny fanaraha-maso dia manara-maso tsy tapaka ny toetry ny node master ankehitriny. Raha hitany, ohatra, fa tonga amin'ny lanjany lehibe ny enta-mavesatry ny processeur, dia mampandre ny dobo misy tranga mafana momba ny filàna manokana node vaovao.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database
Mizara proxy, tranga mafana ary fanaraha-maso.

Misy node misy hery ilaina. Ny dobo buffer dia adika amin'izany, ary manomboka miandry fotoana azo antoka ny rafitra hiova.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Mazàna dia tonga haingana ny fotoana hifindrana. Avy eo dia miato ny fifandraisana eo amin'ny proxy sy ny node master taloha, avadika amin'ny node vaovao ny session rehetra.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Miasa miaraka amin'ny tohin'ny angona.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Ny grafika dia mampiseho fa tena fohy tokoa ny fampiatoana. Ny grafika manga dia mampiseho ny enta-mavesatra, ary ny dingana mena dia mampiseho ny fotoana fisondrotana. Ny fihenan'ny fotoana fohy amin'ny grafika manga dia ny fahatarana fohy indrindra.

Ny fomba fandrahoan'ny AWS ny serivisy elastika. Scaling servers sy database

Amin'ny lafiny iray, ny Amazon Aurora dia ahafahanao mitahiry vola tanteraka ary mamono ny angon-drakitra rehefa tsy ampiasaina, ohatra, amin'ny faran'ny herinandro. Aorian'ny fampitsaharana ny entana dia mihena tsikelikely ny heriny ny DB ary maty mandritra ny fotoana fohy. Rehefa miverina ny entana dia hiakatra tsara indray.

Ao amin'ny ampahany manaraka amin'ny tantara momba ny fitaovana Amazon dia hiresaka momba ny scaling tambajotra isika. Raiso amin ny namany Sary ary araho hatrany mba tsy ho diso ny lahatsoratra.

amin'ny HighLoad ++ Vasily Pantyukhin dia hanao tatitra "Houston, manana olana izahay. Famolavolana rafitra ho an'ny tsy fahombiazana, lamina fampandrosoana ho an'ny serivisy rahona Amazon anatiny" Inona no lamina famolavolana ho an'ny rafitra zaraina ampiasain'ny mpamorona Amazon, inona no antony mahatonga ny tsy fahombiazan'ny serivisy, inona ny maritrano miorina amin'ny Cell, Constant Work, Shuffle Sharding - hahaliana izany. Iray volana latsaka alohan'ny fihaonambe - mamandrika ny tapakilanao. 24 Oktobra ny fiakaran'ny vidiny farany.

Source: www.habr.com

Add a comment