ProHoster > Блог > Kev tswj hwm > Yuav ua li cas AWS ua nws cov kev pabcuam elastic. Scaling servers thiab database
Yuav ua li cas AWS ua nws cov kev pabcuam elastic. Scaling servers thiab database
Huab zoo li lub thawv khawv koob - koj nug dab tsi koj xav tau, thiab cov peev txheej tsuas yog tshwm sim tsis pom qhov twg. Cov tshuab virtual, databases, network - tag nrho cov no tsuas yog rau koj xwb. Muaj lwm cov neeg nyob hauv huab, tab sis hauv koj lub Ntiaj Teb koj yog tus kav ib leeg. Koj paub tseeb tias koj yuav tau txais cov peev txheej uas yuav tsum tau ua, koj tsis suav nrog leej twg thiab koj tus kheej txiav txim siab seb lub network yuav zoo li cas. Cov khawv koob no ua haujlwm li cas uas ua rau huab cua elastically faib cov peev txheej thiab cais cov neeg xauj tsev ntawm ib leeg?
AWS huab yog mega-super complex system uas tau hloov zuj zus mus txij li xyoo 2006. Ib feem ntawm qhov kev txhim kho no tau tshwm sim Vasily Pantyukhin - Amazon Web Services Architect. Raws li tus kws tsim qauv, nws tau txais kev saib sab hauv tsis yog qhov kawg nkaus xwb, tab sis kuj yog qhov kev sib tw AWS kov yeej. Qhov kev nkag siab ntau dua ntawm qhov system ua haujlwm li cas, qhov kev ntseeg siab ntau dua. Yog li ntawd, Vasily yuav qhia cov secrets ntawm AWS huab kev pab cuam. Hauv qab no yog tus tsim ntawm lub cev AWS servers, elastic database scalability, kev cai Amazon database thiab cov txheej txheem rau nce kev ua tau zoo ntawm cov tshuab virtual thaum tib lub sijhawm txo lawv cov nqi. Kev paub txog Amazon txoj hauv kev tsim vaj tsev yuav pab koj siv AWS cov kev pabcuam zoo dua thiab tuaj yeem muab tswv yim tshiab rau koj los tsim koj tus kheej cov kev daws teeb meem. Hais txog tus neeg hais lus: Vasily Pantyukhin (Hen) pib ua tus tswj hwm Unix ntawm .ru cov tuam txhab, ua haujlwm ntawm Sun Microsystem kho vajtse loj rau 6 xyoo, thiab tshaj tawm lub ntiaj teb cov ntaub ntawv-centric ntawm EMC rau 11 xyoo. Nws ib txwm hloov mus rau hauv huab huab, thiab hauv 2017 tau tsiv mus rau pej xeem sawv daws. Tam sim no nws muab kev qhia tswv yim los pab ua neej nyob thiab txhim kho hauv AWS huab.
Tsis lees paub: txhua yam hauv qab no yog Vasily tus kheej lub tswv yim thiab tej zaum yuav tsis sib haum nrog txoj haujlwm ntawm Amazon Web Services. Kev kaw video Daim ntawv tshaj tawm uas tsab xov xwm yog raws li muaj nyob rau ntawm peb YouTube channel.
Vim li cas kuv thiaj tham txog Amazon ntaus ntawv?
Kuv thawj lub tsheb muaj ib tug phau ntawv kis tau tus mob. Nws yog qhov zoo heev vim qhov kev xav tias kuv tuaj yeem tsav lub tsheb thiab muaj kev tswj kom tiav. Kuv kuj nyiam tias yam tsawg kawg kuv tau nkag siab txog lub hauv paus ntsiab lus ntawm nws txoj haujlwm. Lawm, kuv xav txog cov qauv ntawm lub thawv kom zoo li qub - ib yam dab tsi zoo li lub gearbox ntawm lub tsheb kauj vab.
Txhua yam zoo heev, tshwj tsis yog rau ib yam - daig hauv kev tsheb thauj mus los. Nws zoo li koj zaum thiab tsis ua dab tsi, tab sis koj tab tom hloov lub zog, nias lub clutch, roj, nres - nws yeej ua rau koj nkees. Cov teeb meem tsheb khiav tsheb tau daws ib nrab thaum tsev neeg tau txais lub tsheb tsis siv neeg. Thaum tsav tsheb, kuv muaj sij hawm los xav txog tej yam thiab mloog ib phau ntawv audio.
Lwm qhov kev paub tsis meej tau tshwm sim hauv kuv lub neej, vim kuv tsis nkag siab tias kuv lub tsheb ua haujlwm li cas. Lub tsheb niaj hnub yog ib qho cuab yeej siv. Lub tsheb adapts ib txhij mus rau kaum ob ntawm qhov sib txawv tsis: nias lub roj, nres, tsav tsheb style, txoj kev zoo. Kuv tsis nkag siab tias nws ua haujlwm li cas lawm.
Thaum kuv pib ua haujlwm ntawm Amazon huab, nws kuj yog qhov tsis paub rau kuv. Tsuas yog qhov kev paub tsis meej no yog qhov kev txiav txim siab ntau dua, vim tias muaj ib tus neeg tsav tsheb hauv lub tsheb, thiab hauv AWS muaj ntau lab ntawm lawv. Txhua tus neeg siv ib txhij tsav, nias lub roj thiab nres. Nws yog amazing tias lawv mus qhov twg lawv xav tau - nws yog ib qho txuj ci tseem ceeb rau kuv! Lub kaw lus cia li hloov kho, ntsuas thiab hloov kho elastically rau txhua tus neeg siv kom nws zoo li nws nyob ib leeg hauv lub Ntiaj Teb no.
Cov khawv koob hnav tawm me ntsis thaum kuv tom qab tuaj ua haujlwm ua tus kws kos duab ntawm Amazon. Kuv pom tias peb ntsib teeb meem dab tsi, peb daws lawv li cas, thiab peb tsim cov kev pab cuam li cas. Nrog kev nkag siab ntau ntxiv txog qhov system ua haujlwm li cas, kev ntseeg siab ntau dua hauv kev pabcuam tshwm. Yog li kuv xav qhia ib daim duab ntawm dab tsi nyob rau hauv lub hood ntawm AWS huab.
Tom ntej no peb txiav txim siab los txhim kho kev nkag mus rau thaiv cov ntaub ntawv cia EBS - Elastic Block Storage. Nws yog kev sib txuas ntawm network thiab kev cia khoom. Qhov nyuaj yog tias thaum Network Accelerator phaib muaj nyob rau hauv kev ua lag luam, tsis muaj kev xaiv los tsuas yog yuav Storage Accelerator kho vajtse. Yog li peb tig mus rau qhov pib Annapurna Labs, leej twg tsim tshwj xeeb ASIC chips rau peb. Lawv tau tso cai rau cov chaw taws teeb EBS ntim tau los ua NVMe cov khoom siv.
Piv txwv li C4 peb daws tau ob qhov teeb meem. Thawj qhov yog tias peb tau siv lub hauv paus rau yav tom ntej ntawm kev cog lus, tab sis tshiab ntawm lub sijhawm ntawd, NVMe thev naus laus zis. Qhov thib ob, peb tau rub tawm cov txheej txheem hauv nruab nrab los ntawm kev xa cov kev thov rau EBS rau daim npav tshiab. Nws hloov tawm zoo, yog li tam sim no Annapurna Labs yog ib feem ntawm Amazon.
Thaum lub Kaum Ib Hlis 2017, peb pom tau tias nws yog lub sijhawm los hloov tus neeg saib xyuas nws tus kheej.
Tus tshiab hypervisor tau tsim los ntawm kev hloov kho KVM kernel modules.
Nws ua rau nws muaj peev xwm txo qis cov nyiaj siv ua haujlwm ntawm cov cuab yeej emulation thiab ua haujlwm ncaj qha nrog ASICs tshiab. Piv txwv C5 yog thawj lub tshuab virtual nrog lub hypervisor tshiab khiav hauv qab lub hood. Peb npe hu nws Nitro.
Evolution ntawm cov xwm txheej ntawm lub sijhawm.
Txhua yam tshiab ntawm cov tshuab virtual uas tau tshwm sim txij li lub Kaum Ib Hlis 2017 khiav ntawm no hypervisor. Bare Metal piv txwv tsis muaj hypervisor, tab sis lawv tseem hu ua Nitro, vim lawv siv cov ntawv tshwj xeeb Nitro.
Nyob rau ob xyoos tom ntej no, tus naj npawb ntawm cov xwm txheej Nitro tau tshaj ob peb lub kaum os: A1, C5, M5, T3 thiab lwm yam.
Hom piv txwv.
Cov tshuab Nitro niaj hnub ua haujlwm li cas
Lawv muaj peb yam tseem ceeb: Nitro hypervisor (sib tham saum toj no), kev ruaj ntseg nti thiab Nitro phaib.
Kev ruaj ntseg nti integrated ncaj qha mus rau hauv lub motherboard. Nws tswj ntau lub luag haujlwm tseem ceeb, xws li tswj kev thauj khoom ntawm tus tswv OS.
Nitro phaib - Muaj plaub hom ntawm lawv. Tag nrho cov ntawm lawv yog tsim los ntawm Annapurna Labs thiab ua raws li ASICs. Qee qhov ntawm lawv cov firmware kuj muaj ntau.
Plaub hom ntawv Nitro.
Ib daim npav yog tsim los ua haujlwm nrog networkVPC. Qhov no yog qhov pom hauv cov tshuab virtual ua daim npav network ENA - Elastic Network Adapter. Nws kuj tseem encapsulates kev khiav tsheb thaum xa nws los ntawm lub cev lub cev (peb yuav tham txog qhov no hauv ntu thib ob ntawm tsab xov xwm), tswj hwm Pawg Saib Xyuas Kev Ruaj Ntseg Hluav Taws Xob, thiab yog lub luag haujlwm rau routing thiab lwm yam network.
Xaiv daim npav ua haujlwm nrog thaiv cia EBS thiab disks uas tau tsim rau hauv lub server. Lawv tshwm sim rau cov qhua virtual tshuab li NVMe adapters. Lawv kuj muaj lub luag haujlwm rau cov ntaub ntawv encryption thiab kev saib xyuas disk.
Lub kaw lus ntawm Nitro phaib, hypervisor thiab kev ruaj ntseg nti tau koom ua ke hauv SDN network lossis Software Defined Network. Lub luag haujlwm tswj hwm lub network no (Control Plane) tswj daim npav.
Tau kawg, peb txuas ntxiv txhim kho ASICs tshiab. Piv txwv li, thaum kawg ntawm 2018 lawv tau tso tawm Inferentia nti, uas tso cai rau koj ua haujlwm tau zoo dua nrog cov haujlwm ntawm kev kawm tshuab.
Inferentia Machine Learning Processor nti.
Scalable Database
Ib txwm database muaj ib txheej txheej. Yuav kom yooj yim heev, cov theem hauv qab no yog qhov txawv.
SQL - Cov neeg siv khoom thiab thov cov neeg xa khoom ua haujlwm rau nws.
Kev pab kev lag luam - txhua yam yog qhov tseeb ntawm no, ACID thiab txhua yam ntawd.
caching, uas yog muab los ntawm buffer pas dej ua ke.
Kev sau npe - muab kev ua haujlwm nrog redo cav. Hauv MySQL lawv hu ua Bin Logs, hauv PosgreSQL - Sau Ua Ntej Logs (WAL).
Txawm li cas los xij, tag nrho cov txheej txheem no tuav tib lub qauv monolithic database. Qhov no tseem ceeb txwv scaling. Txhawm rau daws qhov teeb meem no, peb tsim peb tus kheej database − Amazon Aurora. Nws yog sib xws nrog MySQL thiab PostgreSQL.
Saib ua ntej, Kuv yuav hais tias peb kuj ua rau qib caching ywj siab. Lub architecture tsis yog monolith, thiab peb tau txais ntau qib ntawm kev ywj pheej hauv kev ntsuas tus kheej blocks.
Cov ntawv teev cia thiab qib khaws cia yog cais los ntawm cov ntaub ntawv.
Ib txwm DBMS sau cov ntaub ntawv rau lub kaw lus cia hauv daim ntawv ntawm cov blocks. Ntawm Amazon Aurora, peb tsim cov khoom ntse ntse uas tuaj yeem hais lus redo-logs. Sab hauv, qhov chaw cia hloov nkag mus rau hauv cov ntaub ntawv thaiv, saib xyuas lawv txoj kev ncaj ncees thiab cia li thim rov qab.
Txoj kev no tso cai rau koj los siv cov khoom nthuav xws li cloning. Nws ua hauj lwm hauv paus sai dua thiab kev lag luam ntau dua vim qhov tseeb tias nws tsis tas yuav tsim cov ntawv luam ntawm tag nrho cov ntaub ntawv.
Cov txheej khaws cia yog siv raws li kev faib tawm. Nws muaj ntau lub cev servers. Txhua redo log yog ua tiav thiab khaws cia ib txhij rau knot. Qhov no ua kom muaj kev tiv thaiv cov ntaub ntawv thiab cov khoom sib npaug.
Nyeem scaling tuaj yeem ua tiav nrog cov qauv tsim nyog. Distributed cia tshem tawm qhov xav tau rau synchronization ntawm lub ntsiab database piv txwv, los ntawm qhov uas peb sau cov ntaub ntawv, thiab cov seem replicas. Cov ntaub ntawv hloov tshiab tau lees tias yuav muaj rau txhua qhov kev hloov pauv.
Qhov teeb meem nkaus xwb yog caching cov ntaub ntawv qub ntawm kev nyeem replicas. Tab sis qhov teeb meem no tau raug daws hloov ntawm tag nrho cov ntaub ntawv rov qab rau replicas tshaj lub internal network. Yog hais tias lub cav nyob rau hauv lub cache, nws yog cim raws li tsis raug thiab overwritten. Yog tias nws tsis nyob hauv lub cache, nws tsuas yog muab pov tseg.
Peb tau txheeb xyuas qhov chaw cia.
Yuav ua li cas ntsuas DBMS tiers
Ntawm no, kab rov tav scaling yog qhov nyuaj dua. Yog li cia peb mus rau txoj kev ntaus classic ntsug scaling.
Cia peb xav tias peb muaj ib daim ntawv thov uas sib txuas lus nrog DBMS los ntawm tus tswv ntawm lub npe.
Tom ntej no, peb hloov daim ntawv thov los ntawm tus qub master node mus rau tus tshiab. Teeb meem tshwm sim.
Qhov no yuav xav tau qhov tseem ceeb ntawm daim ntawv thov downtime.
Tus tshiab master node yuav muaj txias cache. Database kev ua tau zoo yuav siab tshaj plaws tsuas yog tom qab lub cache tau sov.
Yuav ua li cas txhim kho qhov xwm txheej? Teem ib lub npe ntawm daim ntawv thov thiab tus tswv node.
Qhov no yuav muab dab tsi rau peb? Tam sim no txhua daim ntawv thov tsis tas yuav tsum tau manually redirected mus rau qhov tshiab node. Kev hloov pauv tuaj yeem ua tau raws li tus neeg sawv cev thiab yog qhov yooj yim dua.
Zoo li qhov teeb meem tau daws lawm. Tab sis tsis yog, peb tseem raug kev txom nyem los ntawm qhov xav tau kom sov lub cache. Tsis tas li ntawd, ib qho teeb meem tshiab tau tshwm sim - tam sim no lub npe yog lub peev xwm ntawm qhov tsis ua tiav.
Kev daws teeb meem kawg nrog Amazon Aurora serverless
Peb daws tau cov teeb meem no li cas?
Sab laug ib tug proxy. Qhov no tsis yog ib qho piv txwv, tab sis tag nrho cov kev faib tawm ntawm cov neeg sawv cev los ntawm cov ntawv thov txuas rau cov ntaub ntawv. Nyob rau hauv rooj plaub uas tsis ua hauj lwm, ib qho ntawm cov nodes tuaj yeem hloov tau yuav luag tam sim.
Ntxiv ib lub pas dej sov ntawm ntau qhov ntau thiab tsawg. Yog li ntawd, yog hais tias nws yog tsim nyog los faib ib tug tshiab node ntawm ib tug loj los yog me me, nws yog tam sim ntawd muaj. Tsis tas yuav tos kom nws thauj khoom.
Tag nrho cov txheej txheem scaling yog tswj los ntawm kev saib xyuas tshwj xeeb. Kev saib xyuas tas li saib xyuas lub xeev ntawm tus tswv ntawm tam sim no. Yog tias nws pom, piv txwv li, tias cov khoom thauj khoom tau mus txog qhov tseem ceeb, nws ceeb toom rau lub pas dej ntawm cov xwm txheej sov txog qhov xav tau los faib cov node tshiab.
Distributed proxies, sov sov thiab saib xyuas.
Lub node nrog lub zog xav tau yog muaj. Cov pas dej tsis sib xws tau theej rau nws, thiab lub kaw lus pib tos lub sijhawm nyab xeeb hloov pauv.
Feem ntau lub sijhawm hloov mus sai heev. Tom qab ntawd kev sib txuas lus ntawm tus neeg sawv cev thiab tus qub master node raug ncua, txhua qhov kev sib tham tau hloov mus rau qhov tshiab node.
Ua haujlwm nrog cov ntaub ntawv rov pib dua.
Daim duab qhia tau hais tias qhov kev ncua yog luv heev. Daim duab xiav qhia txog kev thauj khoom, thiab cov kauj ruam liab qhia lub sijhawm scaling. Lub sij hawm luv luv dips nyob rau hauv daim duab xiav yog precisely tias luv luv.
Los ntawm txoj kev, Amazon Aurora tso cai rau koj kom txuag tau nyiaj thiab tua cov ntaub ntawv thaum nws tsis siv, piv txwv li, hnub so. Tom qab nres lub thauj khoom, DB maj mam txo nws lub zog thiab tua rau qee lub sijhawm. Thaum lub load rov qab, nws yuav nce smoothly dua.
Hauv ntu tom ntej ntawm zaj dab neeg hais txog Amazon ntaus ntawv, peb yuav tham txog kev ntsuas lub network. Sau npe xa ntawv thiab nyob twj ywm kom koj tsis txhob nco tsab xov xwm.