Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

Maru a tšoana le lebokose la boselamose - o botsa hore na o hloka eng, 'me lisebelisoa li hlaha ka ntle ho moo. Mechini ea sebele, li-database, marang-rang - tsena tsohle ke tsa hau feela. Ho na le bahiri ba bang ba maru, empa bokahohleng ba hau ke uena feela 'musi. U na le bonnete ba hore u tla lula u fumana lisebelisoa tse hlokahalang, ha u nahane ka mang kapa mang 'me u iketsetsa qeto ea hore na marang-rang a tla ba joang. Joang boselamose bona bo etsang hore leru le arole lisebelisoa le ho arola bahiri ka botlalo ho ba bang?

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

Leru la AWS ke sistimi e rarahaneng ea mega-super e ntseng e tsoela pele ka ho iphetola ha lintho ho tloha ka 2006. Karolo ea tsoelo-pele ena e etsahetse Vasily Pantyukhin - Amazon Web Services Architect. Joaloka setsebi sa meralo ea meralo, ha a shebelle ka hare feela sephetho, empa hape le liphephetso tseo AWS e li hlolang. Ha kutloisiso e kholo ea kamoo sistimi e sebetsang kateng, tšepo e kholoanyane. Ka hona, Vasily o tla arolelana liphiri tsa lits'ebeletso tsa leru tsa AWS. Ka tlase ke moralo oa li-server tsa AWS tsa 'mele, scalability ea database ea elastic, database ea tloaelo ea Amazon le mekhoa ea ho eketsa ts'ebetso ea mechini ea sebele ha ka nako e ts'oanang e fokotsa theko ea eona. Tsebo ea mekhoa ea meralo ea Amazon e tla u thusa ho sebelisa lits'ebeletso tsa AWS ka nepo mme e ka u fa mehopolo e mecha ea ho iketsetsa tharollo.

Mabapi le sebui: Vasily Pantyukhin (Hen) o qalile e le mookameli oa Unix lik'hamphani tsa .ru, a sebetsa ka lisebelisoa tse kholo tsa Sun Microsystem ka lilemo tse 6, 'me a bolela lefats'e la data-centric ho EMC ka lilemo tse 11. Ka tlhaho e ile ea fetoha maru a poraefete, 'me ka 2017 ea fallela ho batho ba sechaba. Hona joale o fana ka likeletso tsa tekheniki ho thusa ho phela le ho nts'etsapele lerung la AWS.

Boitlhotlhollo: Ntho e ngoe le e ngoe e ka tlase ke maikutlo a Vasily mme e kanna ea se ke ea tsamaellana le boemo ba Amazon Web Services. Ho rekota video Tlaleho eo sengoloa se thehiloeng ho eona e fumaneha mocha oa rona oa YouTube.

Hobaneng ke bua ka sesebelisoa sa Amazon?

Koloi ea ka ea pele e ne e na le transmission ea letsoho. E ne e le monate ka lebaka la boikutlo ba hore nka khanna koloi le ho ba le taolo e feletseng holim'a eona. Ke ne ke boetse ke rata hore bonyane ke ne ke utloisisa molao-motheo oa ts'ebetso ea eona. Ka tlhaho, ke ne ke nahana hore sebopeho sa lebokose ke sa khale haholo - ntho e kang lebokose la gear holim'a baesekele.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

Ntho e 'ngoe le e' ngoe e ne e le ntle, ntle le ntho e le 'ngoe - ho ts'oaroa ke tšubuhlellano ea sephethephethe. Ho bonahala eka u lutse 'me u sa etse letho, empa u lula u fetola likoloi, u hatella clutch, khase, brake - e hlile e etsa hore u khathetse. Bothata ba tšubuhlellano ea sephethephethe bo ile ba rarolloa hanyane ka hanyane ha lelapa le fumana koloi e itšebetsang. Ha ke ntse ke khanna, ke ne ke e-na le nako ea ho nahana ka ntho e itseng le ho mamela buka ea audio.

Ho ile ha hlaha sephiri se seng bophelong ba ka, hobane ke ile ka khaotsa ka ho feletseng ho utloisisa hore na koloi ea ka e sebetsa joang. Koloi ea kajeno ke sesebelisoa se rarahaneng. Koloi e ikamahanya le maemo ka nako e le 'ngoe ho mekhahlelo e mengata e fapaneng: ho hatella khase, brake, mokhoa oa ho khanna, boleng ba tsela. Ha ke sa utloisisa hore na e sebetsa joang.

Ha ke qala ho sebetsa ka leru la Amazon, e ne e boetse e le sephiri ho 'na. Ke sephiri sena feela ke taelo ea boholo bo boholo, hobane ho na le mokhanni a le mong ka koloing, 'me ho AWS ho na le limilione tsa bona. Basebelisi bohle ka nako e le 'ngoe ba tsamaise, tobetsa khase ebe u brake. Hoa makatsa hore ebe ba ea moo ba batlang - ke mohlolo ho 'na! Sistimi e ikamahanya le maemo, e leka-lekanya le ho ikamahanya le maemo ho mosebelisi e mong le e mong e le hore ho bonahale ho eena hore ke eena a le mong Bokahohleng bona.

Boselamose bo ile ba fela hanyane ha hamorao ke tla sebetsa ke le setsebi sa meralo Amazon. Ke bone hore na re tobana le mathata afe, hore na re a rarolla joang, le hore na re ntlafatsa litšebeletso joang. Ka kutloisiso e ntseng e eketseha ea hore na tsamaiso e sebetsa joang, tšepo e eketsehileng tšebeletsong e bonahala. Kahoo ke batla ho arolelana setšoantšo sa se ka tlas'a leru la AWS.

Re tla bua ka eng

Ke khethile mokhoa o fapaneng - ke khethile litšebeletso tse 4 tse thahasellisang tse lokelang ho bua ka tsona.

Ntlafatso ea seva. Ephemeral cloud e nang le sebopeho sa 'mele: litsi tsa data tsa 'mele moo ho nang le li-server tse llang, tse futhumatsang le ho panya ka mabone.

Mesebetsi e se nang seva (Lambda) mohlomong ke ts'ebeletso e mpe ka ho fetesisa marung.

Ho eketsa database. Ke tla u bolella kamoo re iketsetsang li-database tsa rona tse scalable.

Ho eketsa marang-rang. Karolo ea ho qetela eo ke tla bula sesebelisoa sa marang-rang a rona. Ena ke ntho e babatsehang - e mong le e mong ea sebelisang leru o lumela hore o mong ka har'a leru mme ha a bone bahiri ba bang ho hang.

Hlokomela. Sengoliloeng sena se tla tšohla ntlafatso ea seva le ho eketsa database. Re tla nahana ka ho eketsa marang-rang sehloohong se latelang. Mesebetsi e se nang seva e hokae? Ho hatisitsoe sengoloa se fapaneng ka bona "E nyane, empa e bohlale. Unboxing Firecracker microvirtual" E bua ka mekhoa e mengata e fapaneng ea ho lekanya, 'me e tšohla ka botlalo tharollo ea Firecracker - symbiosis ea litšoaneleho tse ntle ka ho fetisisa tsa mochini le lijana.

Liseva

Leru ke ephemeral. Empa ephemerality ena e ntse e na le sebopeho sa 'mele - li-server. Qalong, mehaho ea bona e ne e le ea khale. Chipset e tloaelehileng ea x86, likarete tsa marang-rang, Linux, Xen hypervisor eo ho eona ho ileng ha qalisoa mechine ea sebele.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

Ka 2012, mohaho ona o ile oa sebetsana hantle le mesebetsi ea oona. Xen ke hypervisor e kholo, empa e na le tšitiso e le 'ngoe e kholo. O na le ho lekana hodimo bakeng sa ketsiso ya sesebediswa. Ha likarete tse ncha, tse potlakileng tsa marang-rang kapa li-drive tsa SSD li ntse li fumaneha, sehlooho sena se ba holimo haholo. Joang ho sebetsana le bothata bona? Re nkile qeto ea ho sebetsa mahlakoreng a mabeli hang-hang - ntlafatsa ka bobeli hardware le hypervisor. Mosebetsi o boima haholo.

Ho ntlafatsa hardware le hypervisor

Ho etsa ntho e 'ngoe le e' ngoe ka nako e le 'ngoe le ho e etsa hantle ho ke ke ha sebetsa. Se "molemo" le sona se ne se sa hlaka qalong.

Re nkile qeto ea ho nka mokhoa oa ho iphetola ha lintho - re fetola ntho e le 'ngoe ea bohlokoa ea meralo ebe re e lahlela tlhahiso.

Re hata rakeng e 'ngoe le e 'ngoe, re mamela litletlebo le litlhahiso. Ebe re fetola karolo e 'ngoe. Kahoo, ka li-increments tse nyane, re fetola ka botlalo moaho oohle ho latela maikutlo a basebelisi le tšehetso.

Phetoho e qalile ka 2013 ka ntho e rarahaneng ka ho fetisisa - marang-rang. IN S3 Maemong a mang, karete e khethehileng ea Network Accelerator e kentsoe kareteng e tloaelehileng ea marang-rang. E ne e hoketsoe ka ho toba ka mohala o mokhutšoane oa loopback phanele e ka pele. Ha e ntle, empa ha e bonahale marung. Empa tšebelisano e tobileng le hardware e ntlafalitse jitter le ts'ebetso ea marang-rang.

Ka mor'a moo re nkile qeto ea ho ntlafatsa phihlello ea ho thibela polokelo ea data EBS - Elastic Block Storage. Ke motsoako oa marang-rang le polokelo. Bothata ke hore leha likarete tsa Network Accelerator li ne li le teng 'marakeng, ho ne ho se khetho ea ho reka lisebelisoa tsa Storage Accelerator. Kahoo re retelehela ho qala Annapurna Labs, ea ileng a hlahisa li-chips tse khethehileng tsa ASIC bakeng sa rona. Ba lumelletse li-volumes tsa EBS tse hole hore li kenngoe joalo ka lisebelisoa tsa NVMe.

Ka linako tse ling C4 re rarolle mathata a mabeli. Ea pele ke hore re kentse ts'ebetsong motheo oa bokamoso ba ts'episo, empa e ncha ka nako eo, theknoloji ea NVMe. Taba ea bobeli, re ile ra laolla processor e bohareng haholo ka ho fetisetsa ts'ebetso ea likopo ho EBS kareteng e ncha. Ho bile hantle, joale Annapurna Labs ke karolo ea Amazon.

Ka November 2017, re ile ra hlokomela hore ke nako ea ho fetola hypervisor ka boeona.

Hypervisor e ncha e thehiloe ho latela li-module tsa kernel tsa KVM tse fetotsoeng.

E entse hore ho khonehe ho fokotsa boholo ba ho etsisa lisebelisoa le ho sebetsa ka kotloloho le li-ASIC tse ncha. Liketsahalo S5 e ne e le mechini ea pele ea sebele e nang le hypervisor e ncha e sebetsang ka tlas'a hood. Re ile ra mo reha lebitso Nitro.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le databasePhetoho ea liketsahalo moleng oa nako.

Mefuta eohle e mecha ea mechini ea sebele e hlahileng ho tloha ka November 2017 e sebetsa ho hypervisor ena. Maemo a Bare Metal ha a na hypervisor, empa li boetse li bitsoa Nitro, kaha li sebelisa likarete tse khethehileng tsa Nitro.

Lilemong tse peli tse latelang, palo ea mefuta ea linyeoe tsa Nitro e feta tse seng kae: A1, C5, M5, T3 le tse ling.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database
Mefuta ea mohlala.

Mechini ea kajeno ea Nitro e sebetsa joang

Li na le likarolo tse tharo tse kholo: hypervisor ea Nitro (e builoeng ka holimo), chip ea tšireletso le likarete tsa Nitro.

Tšireletso chip e kenyelelitsoe ka kotloloho ho board ea mama. E laola mesebetsi e mengata ea bohlokoa, joalo ka ho laola ho kenya OS ea moamoheli.

Likarete tsa Nitro - Ho na le mefuta e mene ea tsona. Kaofela ha tsona li hlahisoa ke Annapurna Labs 'me li thehiloe ho li-ASIC tse tloaelehileng. Tse ling tsa firmware ea bona le tsona li tloaelehile.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database
Mefuta e mene ea likarete tsa Nitro.

E 'ngoe ea likarete e etselitsoe ho sebetsa ka eona marang-rangVPC. Sena ke se bonahalang ka mechine ea sebele e le karete ea marang-rang ENA - Elastic Network Adapter. E boetse e kenyelletsa sephethephethe ha u e fetisetsa ka marang-rang a 'mele (re tla bua ka sena karolong ea bobeli ea sehlooho), e laola firewall ea Lihlopha tsa Tšireletso,' me e ikarabella bakeng sa ho tsamaisa le lintho tse ling tsa marang-rang.

Khetha likarete tse sebetsang le polokelo ea li-block EBS le li-disk tse hahiloeng ho seva. Ba hlaha ho moeti ho ka thoeng mochine e le Li-adapter tsa NVMe. Ba boetse ba na le boikarabello ba ho boloka boitsebiso le ho hlahloba disk.

Sistimi ea likarete tsa Nitro, hypervisor le ts'ireletso chip e kopantsoe le marang-rang a SDN kapa Software Defined Network. Boikarabello ba ho laola marang-rang ana (Control Plane) karete ea molaoli.

Ha e le hantle, re tsoela pele ho hlahisa li-ASIC tse ncha. Ka mohlala, qetellong ea 2018 ba ile ba lokolla chip ea Inferentia, e leng se u lumellang hore u sebetse ka katleho le mesebetsi ea ho ithuta mochine.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database
Inferentia Machine Learning Processor chip.

Scalable Database

Database ea setso e na le sebopeho sa lera. Ho nolofatsa haholo, maemo a latelang a khetholloa.

  • SQL - bareki le ho kopa li-dispatchers li sebetsa ho eona.
  • Litokisetso ditransekshene - ntho e 'ngoe le e' ngoe e hlakile mona, ACID le tsohle tseo.
  • Caching, e fanoang ke matamo a buffer.
  • Ho rema lifate - e fana ka mosebetsi ka li-logs tsa redo. Ho MySQL li bitsoa Bin Logs, ho PosgreSQL - Write Ahead Logs (WAL).
  • Boloka - ho rekota ka kotloloho ho disk.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database
Sebopeho sa database se nang le lera.

Ho na le mekhoa e fapaneng ea ho lekanya li-database: ho sharding, ho arolelanoa ha ho na letho, li-disk tse arolelanoang.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

Leha ho le joalo, mekhoa ena kaofela e boloka sebopeho se tšoanang sa database sa monolithic. Sena se fokotsa haholo sekhahla. Ho rarolla bothata bona, re iketselitse polokelong ea rona − Amazon Aurora. E lumellana le MySQL le PostgreSQL.

Amazon Aurora

Mohopolo o ka sehloohong oa meralo ke ho arola maemo a polokelo le ho rema lifate ho tsoa ho database ea mantlha.

Ha ke sheba pele, ke tla re le rona re entse hore boemo ba caching bo ikemele. Meaho e khaotsa ho ba monolith, 'me re fumana likhato tse eketsehileng tsa tokoloho ka ho lekanya li-block tsa motho ka mong.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database
Maemo a ho rema lifate le a polokelo a arohane le database.

DBMS ea setso e ngola data ho sistimi ea polokelo ka mokhoa oa li-blocks. Ho Amazon Aurora, re thehile polokelo e bohlale e khonang ho bua puo redo-logs. Ka hare, polokelo e fetola lits'oants'o hore e be li-block tsa data, e lekola botšepehi ba bona 'me e iphelisa ka bo eona.

Mokhoa ona o u lumella ho kenya tšebetsong lintho tse khahlisang joalo ka cloning. E sebetsa ka potlako le ka moruo haholoanyane ka lebaka la hore ha e hloke ho etsa kopi e feletseng ea data eohle.

Lera la polokelo le kenngoa ts'ebetsong e le tsamaiso e ajoang. E na le palo e kholo haholo ea li-server tsa 'mele. Lenane le leng le le leng la redo le sebetsoa le ho bolokoa ka nako e le 'ngoe mafito a tsheletseng. Sena se tiisa tšireletso ea data le ho leka-lekanya mojaro.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

Ho bala ho ka finyelloa ka ho sebelisa likopi tse loketseng. Polokelo e ajoang e felisa tlhoko ea ho hokahanya lipakeng tsa mohlala oa mantlha oa database, oo ka ona re ngolang data, le likopi tse setseng. Lintlha tsa morao-rao li netefalitsoe hore li ka fumaneha ho likopi tsohle.

Bothata feela ke ho boloka data ea khale ho likopi tse baloang. Empa bothata bona bo ntse bo rarolloa phetiso ea lits'oants'o tsohle tsa redo ho qopitsa marangrang a ka hare. Haeba log e le ka har'a cache, e tšoauoa e fosahetse ebile e ngotsoe holimo. Haeba e le sieo ka har'a cache, e lahloa feela.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

Re ile ra hlophisa polokelo.

Mokhoa oa ho lekanya likarolo tsa DBMS

Mona, ho lekanya ho otloloha ho thata haholo. Kahoo ha re theoheng ka tsela e otlolohileng sekala se otlolohileng.

Ha re nke hore re na le kopo e buisanang le DBMS ka node e kholo.

Ha re phahamisa holimo, re fana ka node e ncha e tla ba le li-processor tse ngata le memori.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

Ka mor'a moo, re fetola kopo ho tloha node ea khale ho ea ho e ncha. Mathata a hlaha.

  • Sena se tla hloka nako e kholo ea ho fokotsa ts'ebeliso.
  • Node e ncha ea master e tla ba le cache e batang. Ts'ebetso ea database e tla ba e phahameng feela kamora hore cache e futhumale.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

Joang ho ntlafatsa boemo? Beha moemeli pakeng tsa kopo le node e kholo.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

See se tla re fa eng? Hona joale lits'ebetso tsohle ha li hloke ho fetisetsoa ho node e ncha. Phetoho e ka etsoa tlasa proxy mme e potlakile haholo.

Ho bonahala eka bothata bo rarollotsoe. Empa che, re ntse re tšoeroe ke tlhoko ea ho futhumatsa cache. Ho phaella moo, bothata bo bocha bo hlahile - joale moemeli ke ntlha e ka 'nang ea hlōleha.

Tharollo ea ho qetela le Amazon Aurora serverless

Re ile ra rarolla mathata aa joang?

E siile moemeli. Sena ha se ketsahalo e arohaneng, empa ke sehlopha se felletseng sa li-proxies tseo ka tsona lits'ebetso li hokelang polokelong ea litaba. Haeba ho hlōleha, leha e le efe ea nodes ka nkeloa sebaka hoo e ka bang hang-hang.

E kentse letamo la li-node tse futhumetseng tsa boholo bo fapaneng. Ka hona, haeba ho hlokahala ho fana ka node e ncha ea boholo bo boholo kapa bo nyane, e fumaneha hang-hang. Ha ho hlokahale ho emela hore e kene.

Ts'ebetso eohle ea ho lekanya e laoloa ke mokhoa o khethehileng oa ho beha leihlo. Tlhokomelo e lula e lekola boemo ba node ea hona joale ea master. Haeba e lemoha, ka mohlala, hore mojaro oa processor o fihlile boleng ba bohlokoa, e tsebisa letamo la maemo a futhumetseng mabapi le tlhoko ea ho fana ka node e ncha.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database
Li-proxies tse ajoang, maemo a mofuthu le tlhokomelo.

Node e nang le matla a hlokahalang e fumaneha. Matamo a Buffer a kopitsoa ho eona, 'me sistimi e qala ho emela nako e sireletsehileng hore e fetohe.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

Hangata nako ea ho fetoha e tla kapele haholo. Ebe puisano pakeng tsa proxy le node ea khale ea master e emisoa, linako tsohle li fetisetsoa ho node e ncha.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

Sebetsa le database e tsoela pele.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

graph e bontša hore suspension ehlile e khutšoanyane haholo. Graph e putsoa e bonts'a mojaro, 'me mehato e khubelu e bonts'a linako tsa ho phahamisa. Ho qoelisoa ha nako e khuts'oane ho graph e putsoa ke tieho e khutšoane.

Kamoo AWS e phehang litšebeletso tsa eona tsa elastic. Ho eketsa li-server le database

Ka tsela, Amazon Aurora e u lumella ho boloka chelete ka ho feletseng le ho tima database ha e sa sebelisoe, mohlala, mafelo-beke. Ka mor'a ho emisa mojaro, DB e fokotsa matla a eona butle-butle ebe e tima ka nako e itseng. Ha mojaro o khutla, o tla nyoloha hantle hape.

Karolong e latelang ea pale e mabapi le sesebelisoa sa Amazon, re tla bua ka sekhahla sa marang-rang. Ngodisa poso 'me u lule u mametse hore u se ke oa fetoa ke sengoloa.

mabapi le Phahameng++ Vasily Pantyukhin o tla fana ka tlaleho "Houston, re na le bothata. Moralo oa litsamaiso tsa ho hloleha, mekhoa ea nts'etsopele ea lits'ebeletso tsa leru tsa Amazon tsa kahare" Ke mekhoa efe ea moralo bakeng sa litsamaiso tse ajoang tse sebelisoang ke baetsi ba Amazon, ke mabaka afe a ho hloleha ha lits'ebeletso, meralo ea Cell-based, Constant Work, Shuffle Sharding - e tla ba e khahlisang. Nako e ka tlase ho khoeli pele ho kopano - kopa litekete tsa hau. 24 October keketseho ea ho qetela ea theko.

Source: www.habr.com

Eketsa ka tlhaloso