{"id":39302,"date":"2019-10-31T22:29:40","date_gmt":"2019-10-31T19:29:40","guid":{"rendered":"https:\/\/prohoster.info\/blog\/kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh\/"},"modified":"2019-10-31T22:29:40","modified_gmt":"2019-10-31T19:29:40","slug":"kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh","title":{"rendered":"Jak AWS \"va\u0159\u00ed\" sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Clouds are like a magical box \u2014 you specify what you need, and resources simply appear out of nowhere. Virtual machines, databases, networks \u2014 all of these belong only to you. There are other cloud tenants, but in your universe, you are the sole ruler. You are confident that you will always receive the required resources, not accounting for anyone else, and you independently determine how the network will be configured. How does this magic work, allowing the cloud to elastically allocate resources and completely isolate tenants from each other?<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/075904e4db290f28746dd0054c9f87bf.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAWS Cloud is a mega-super-complex system that has been evolving since 2006. Part of this evolution was witnessed <strong>Vasily Pantyuchin<\/strong> \u2014 by an architect of Amazon Web Services. As an architect, he sees not only the end result but also the challenges that AWS overcomes. The greater the understanding of how the system works, the more trust is built. Therefore, Vasily will share the secrets of AWS cloud services. Below, you will find the structure of AWS physical servers, elastic database scalability, custom Amazon databases, and methods to enhance virtual machine performance while simultaneously reducing costs. Knowledge of Amazon's architectural approaches will help you utilize AWS services more effectively and may provide new ideas for building your own solutions.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\n<i>About the speaker: Vasily Pantyukhin (<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/users\/hen\/\" class=\"user_link\">Hen<\/a><\/noindex>) started as a Unix admin in Russian companies, spent 6 years working with large hardware at Sun Microsystems, and devoted 11 years to advocating for a data-centric world at EMC. He naturally evolved into private clouds and in 2017 ventured into public clouds. He now offers technical advice to help one thrive and develop in AWS.<\/p>\n<p>Disclaimer: everything below is Vasily's personal opinion and may not coincide with Amazon Web Services' position. <noindex><a rel=\"nofollow\" href=\"https:\/\/youtu.be\/S3f6nWJxBvk\">The video recording<\/a><\/noindex> of the report on which this article is based is available on our YouTube channel.<\/i><\/p>\n<h2>Why I am talking about the structure of Amazon<\/h2>\n<p>\nMy first car had a \u2018stick\u2019 \u2014 it had a manual transmission. It was fantastic because I felt that I could drive the car and have full control over it. I also liked that I understood at least roughly how it worked. Naturally, I envisioned the mechanism of the gearbox quite primitively \u2014 somewhat like a bicycle transmission.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/edaec571a676e162d5f075042ac9d8ea.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nV\u0161e bylo skv\u011bl\u00e9, krom\u011b jedn\u00e9 v\u011bci \u2014 st\u00e1n\u00ed v z\u00e1cp\u00e1ch. Sice sed\u00edte a nic ned\u011bl\u00e1te, ale neust\u00e1le \u0159ad\u00edte, ma\u010dk\u00e1te spojku, plyn, brzdu \u2014 t\u00edm se opravdu unav\u00edte. Probl\u00e9m z\u00e1cp se \u010d\u00e1ste\u010dn\u011b vy\u0159e\u0161il, kdy\u017e jsme si v rodin\u011b po\u0159\u00eddili automat. Za volantem se objevilo \u010das na p\u0159em\u00fd\u0161len\u00ed, poslouch\u00e1n\u00ed audioknihy.<\/p>\n<p>Dal\u0161\u00ed z\u00e1hada se objevila v m\u00e9m \u017eivot\u011b, proto\u017ee jsem p\u0159estal rozum\u011bt tomu, jak moje auto funguje. Modern\u00ed automobil je slo\u017eit\u00e9 za\u0159\u00edzen\u00ed. Auto se p\u0159izp\u016fsobuje z\u00e1rove\u0148 des\u00edtk\u00e1m r\u016fzn\u00fdch parametr\u016f: stisknut\u00ed plynu, brzdy, stylu j\u00edzdy, kvalit\u011b silnice. U\u017e \u00fapln\u011b nerozum\u00edm, jak to funguje.<\/p>\n<p>Kdy\u017e jsem za\u010dal pracovat s Amazonem, byla to pro m\u011b tak\u00e9 tajemstv\u00ed. Jen\u017ee toto tajemstv\u00ed je na zcela jin\u00e9 \u00farovni, proto\u017ee v aut\u011b je jen jeden \u0159idi\u010d, zat\u00edmco v AWS jich jsou miliony. V\u0161ichni u\u017eivatel\u00e9 sou\u010dasn\u011b \u0159\u00edd\u00ed, ma\u010dkaj\u00ed plyn a brzdu. Je p\u0159ekvapiv\u00e9, \u017ee jedou tam, kam cht\u011bj\u00ed \u2014 pro m\u011b je to z\u00e1zrak! Syst\u00e9m se automaticky p\u0159izp\u016fsobuje, \u0161k\u00e1luje a elasticky upravuje pro ka\u017ed\u00e9ho u\u017eivatele tak, \u017ee m\u00e1 pocit, \u017ee je v t\u00e9to vesm\u00edru s\u00e1m.<\/p>\n<p>M\u00e1gie se trochu rozpt\u00fdlila, kdy\u017e jsem pozd\u011bji za\u010dal pracovat jako architekt v Amazonu. Vid\u011bl jsem, s jak\u00fdmi probl\u00e9my se pot\u00fdk\u00e1me, jak je \u0159e\u0161\u00edme, jak vyv\u00edj\u00edme slu\u017eby. S rostouc\u00edm porozum\u011bn\u00edm fungov\u00e1n\u00ed syst\u00e9mu nar\u016fst\u00e1 d\u016fv\u011bra ve slu\u017ebu. Proto se chci pod\u011blit o obr\u00e1zek toho, co se skr\u00fdv\u00e1 pod kapotou cloudov\u00e9ho \u0159e\u0161en\u00ed AWS.<\/p>\n<h2>O \u010dem se budeme bavit<\/h2>\n<p>\nZvolil jsem diverzifikovan\u00fd p\u0159\u00edstup \u2014 vybral jsem \u010dty\u0159i zaj\u00edmav\u00e9 slu\u017eby, o kter\u00fdch stoj\u00ed za to hovo\u0159it.<\/p>\n<p><strong>Optimalizace server\u016f<\/strong>. Efem\u00e9rn\u00ed cloudy s fyzickou podobou: fyzick\u00e1 datacentra, kde stoj\u00ed fyzick\u00e9 servery, kter\u00e9 bzu\u010d\u00ed, zah\u0159\u00edvaj\u00ed se a blikaj\u00ed kontrolkami.<\/p>\n<p><strong>Serverless funkce <\/strong>(Lambda) \u2014 pravd\u011bpodobn\u011b nej\u0161k\u00e1lovateln\u011bj\u0161\u00ed slu\u017eba v cloudu.<\/p>\n<p><strong>\u0160k\u00e1lov\u00e1n\u00ed datab\u00e1ze<\/strong>. \u0158eknu v\u00e1m, jak budujeme na\u0161e vlastn\u00ed \u0161k\u00e1lovateln\u00e9 datab\u00e1ze.<\/p>\n<p><strong>\u0160k\u00e1lov\u00e1n\u00ed s\u00edt\u011b<\/strong>. Posledn\u00ed \u010d\u00e1st, ve kter\u00e9 odhal\u00edm strukturu na\u0161\u00ed s\u00edt\u011b. Je to \u00fa\u017easn\u00e1 v\u011bc \u2014 ka\u017ed\u00fd u\u017eivatel cloudu si mysl\u00ed, \u017ee je v cloudu s\u00e1m a v\u016fbec nevid\u00ed ostatn\u00ed n\u00e1jemce.<\/p>\n<blockquote><p><i>Pozn\u00e1mka. V tomto \u010dl\u00e1nku se budeme v\u011bnovat optimalizaci server\u016f a \u0161k\u00e1lov\u00e1n\u00ed datab\u00e1z\u00ed. \u0160k\u00e1lov\u00e1n\u00ed s\u00edt\u011b probereme v dal\u0161\u00edm \u010dl\u00e1nku. Kde jsou serverless funkce? Ty byly podrobn\u011b pops\u00e1ny v samostatn\u00e9m \u010dl\u00e1nku \u201e<noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/oleg-bunin\/blog\/464305\/\">Mal\u00fd, ale velmi schopn\u00fd. Unboxing mikrovirtualiza\u010dn\u00edch prost\u0159edk\u016f Firecracker<\/a><\/noindex>\u201c. V n\u011bm je pops\u00e1no n\u011bkolik r\u016fzn\u00fdch zp\u016fsob\u016f \u0161k\u00e1lov\u00e1n\u00ed a podrobn\u011b rozebr\u00e1no \u0159e\u0161en\u00ed Firecracker \u2013 spojen\u00ed nejlep\u0161\u00edch vlastnost\u00ed virtu\u00e1ln\u00edch stroj\u016f a kontejner\u016f.<\/i><\/p><\/blockquote>\n<p><\/p>\n<h2>Servery<\/h2>\n<p>\nCloud je efem\u00e9rn\u00ed. Ale tato efem\u00e9rnost m\u00e1 p\u0159esto fyzickou podobu \u2013 servery. Jejich architektura byla p\u016fvodn\u011b klasick\u00e1. Standardn\u00ed \u010dipov\u00e1 sada x86, s\u00ed\u0165ov\u00e9 karty, Linux, hypervizor Xen, na kter\u00e9m b\u011b\u017eely virtu\u00e1ln\u00ed stroje.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/734f99888072f78527bcc5f59485a1ff.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nV roce 2012 takov\u00e1 architektura zcela splnila sv\u00e9 \u00fakoly. Xen je skv\u011bl\u00fd hypervizor, ale m\u00e1 jeden z\u00e1sadn\u00ed nedostatek. M\u00e1 dost <strong>vysok\u00e9 re\u017eijn\u00ed n\u00e1klady na emulaci za\u0159\u00edzen\u00ed<\/strong>. S p\u0159\u00edchodem nov\u011bj\u0161\u00edch, rychlej\u0161\u00edch s\u00ed\u0165ov\u00fdch karet nebo SSD disk\u016f se tyto re\u017eijn\u00ed n\u00e1klady st\u00e1vaj\u00ed p\u0159\u00edli\u0161 vysok\u00fdmi. Jak se s t\u00edmto probl\u00e9mem vypo\u0159\u00e1dat? Rozhodli jsme se pracovat hned na dvou front\u00e1ch \u2013 <strong>optimalizovat jak hardware, tak hypervizor<\/strong>. \u00dakol je velmi v\u00e1\u017en\u00fd.<\/p>\n<h3>Optimalizace hardware a hypervizoru<\/h3>\n<p>\nD\u011blat v\u0161echno najednou a dob\u0159e se nepoda\u0159\u00ed. Co znamen\u00e1 \u201edob\u0159e\u201c, p\u016fvodn\u011b tak\u00e9 nebylo jasn\u00e9.<\/p>\n<blockquote><p>Rozhodli jsme se pou\u017e\u00edt evolu\u010dn\u00ed p\u0159\u00edstup \u2013 m\u011bn\u00edme jednu d\u016fle\u017eitou sou\u010d\u00e1st architektury a zav\u00e1d\u00edme ji do produkce.<\/p><\/blockquote>\n<p>Stup\u0148ujeme kroky, naslouch\u00e1me st\u00ed\u017enostem a n\u00e1vrh\u016fm. Pak m\u011bn\u00edme dal\u0161\u00ed komponentu. Tak, mal\u00fdmi inkrementy, radik\u00e1ln\u011b m\u011bn\u00edme celou architekturu na z\u00e1klad\u011b zp\u011btn\u00e9 vazby od u\u017eivatel\u016f a podpory.<\/p>\n<p>Transformace za\u010daly v roce 2013 s t\u00edm nejn\u00e1ro\u010dn\u011bj\u0161\u00edm \u2013 s\u00edt\u00ed. V <strong>C3<\/strong> instanc\u00edch byla ke standardn\u00ed s\u00ed\u0165ov\u00e9 kart\u011b p\u0159id\u00e1na speci\u00e1ln\u00ed karta Network Accelerator. Ta byla p\u0159ipojena doslova kr\u00e1tk\u00fdm loopback kabelem na p\u0159edn\u00edm panelu. Nen\u00ed to estetick\u00e9, ale v cloudu to nen\u00ed vid\u011bt. P\u0159\u00edm\u00e1 interakce s hardwarem z\u00e1sadn\u011b zlep\u0161ila jitter a propustnost s\u00edt\u011b.<\/p>\n<p>D\u00e1le jsme se rozhodli zlep\u0161it p\u0159\u00edstup k blokov\u00e9mu \u00falo\u017ei\u0161ti dat EBS \u2013 Elastic Block Storage. To je kombinace s\u00edt\u011b a \u00falo\u017ei\u0161t\u011b. Slo\u017eitost spo\u010d\u00edv\u00e1 v tom, \u017ee zat\u00edmco na trhu existovaly karty Network Accelerator, mo\u017enosti po\u0159\u00eddit hardware Storage Accelerator nebyly. Proto jsme se obr\u00e1tili na startup <strong>Annapurna Labs<\/strong>, kter\u00fd vyvinul speci\u00e1ln\u00ed \u010dipy ASIC pro n\u00e1s. Ty umo\u017enily p\u0159ipojit vzd\u00e1len\u00e9 objemy EBS jako za\u0159\u00edzen\u00ed NVMe.<\/p>\n<p>Ve instanc\u00edch <strong>C4<\/strong> jsme vy\u0159e\u0161ili dva probl\u00e9my. Prvn\u00ed \u2014 p\u0159ipravili jsme se na budoucnost perspektivn\u00ed, ale v t\u00e9 dob\u011b novou technologii NVMe. Druh\u00e1 \u2014 v\u00fdrazn\u011b jsme uvolnili centr\u00e1ln\u00ed procesor p\u0159esunut\u00edm zpracov\u00e1n\u00ed po\u017eadavk\u016f na EBS na novou kartu. Dopadlo to \u00fasp\u011b\u0161n\u011b, a proto je nyn\u00ed Annapurna Labs sou\u010d\u00e1st\u00ed Amazonu.<\/p>\n<p>Do listopadu 2017 jsme pochopili, \u017ee nastal \u010das zm\u011bnit i samotn\u00fd hypervizor.<\/p>\n<blockquote><p>Nov\u00fd hypervizor byl vyvinut na z\u00e1klad\u011b upraven\u00fdch modul\u016f j\u00e1dra KVM.<\/p><\/blockquote>\n<p>Umo\u017enil z\u00e1sadn\u011b sn\u00ed\u017eit re\u017eijn\u00ed n\u00e1klady na emulaci za\u0159\u00edzen\u00ed a pracovat p\u0159\u00edmo s nov\u00fdmi ASIC. Instance <strong>C5<\/strong> byly prvn\u00edmi virtu\u00e1lkami, pod kapotou kter\u00fdch b\u011b\u017e\u00ed nov\u00fd hypervizor. Pojmenovali jsme ho <strong>Nitro<\/strong>.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/f9ccbf867e405e88e36d7618375a9e73.jpg\" style=\"display:block;margin: 0 auto;\" \/><em>Evoluce instanc\u00ed na \u010dasov\u00e9 ose.<\/em><\/p>\n<p>V\u0161echny nov\u00e9 typy virtu\u00e1ln\u00edch stroj\u016f, kter\u00e9 vznikly od listopadu 2017, pracuj\u00ed na tomto hypervizoru.<strong> Bare Metal instance nemaj\u00ed hypervizor,<\/strong>, ale tak\u00e9 se naz\u00fdvaj\u00ed Nitro, proto\u017ee pou\u017e\u00edvaj\u00ed specializovan\u00e9 Nitro karty.<\/p>\n<p>B\u011bhem n\u00e1sleduj\u00edc\u00edch dvou let se po\u010det typ\u016f Nitro instanc\u00ed zv\u00fd\u0161il na v\u00edce ne\u017e dv\u011b des\u00edtky: A1, C5, M5, T3 a dal\u0161\u00ed.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/3342d335f54f28b3225c7c6d95f27744.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Typy instanc\u00ed.<\/em><\/p>\n<h3>Jak funguj\u00ed modern\u00ed Nitro stroje<\/h3>\n<p>\nMaj\u00ed t\u0159i hlavn\u00ed komponenty: Nitro hypervizor (o n\u011bm jsme hovo\u0159ili v\u00fd\u0161e), bezpe\u010dnostn\u00ed \u010dip a Nitro karty.<\/p>\n<p><strong>Bezpe\u010dnostn\u00ed \u010dip<\/strong> je integrov\u00e1n p\u0159\u00edmo na z\u00e1kladn\u00ed desku. Kontroluje \u0159adu d\u016fle\u017eit\u00fdch funkc\u00ed, nap\u0159\u00edklad kontrolu spu\u0161t\u011bn\u00ed hostitelsk\u00e9ho opera\u010dn\u00edho syst\u00e9mu.<\/p>\n<p><strong>Nitro karty<\/strong> existuj\u00ed ve \u010dty\u0159ech typech. V\u0161echny byly vyvinuty Annapurna Labs a jsou zalo\u017eeny na spole\u010dn\u00fdch ASIC. \u010c\u00e1st jejich firmwaru je tak\u00e9 spole\u010dn\u00e1.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/411947f770f82dead25f9fafad5814c6.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>\u010cty\u0159i typy Nitro karet.<\/em><\/p>\n<p>Jedna z karet je ur\u010dena pro pr\u00e1ci s <strong>s\u00ed\u0165ov\u00fdmi<\/strong><strong>VPC<\/strong>za\u0159\u00edzen\u00edmi. Ta je viditeln\u00e1 ve virtu\u00e1lk\u00e1ch jako s\u00ed\u0165ov\u00e1 karta <strong>ENA \u2014 Elastic Network Adaptor<\/strong>. Ta tak\u00e9 inkapskuluje provoz p\u0159i jeho p\u0159enosu p\u0159es fyzickou s\u00ed\u0165 (o tom si pov\u00edme ve druh\u00e9 \u010d\u00e1sti \u010dl\u00e1nku), kontroluje firewall Security Groups, zodpov\u00edd\u00e1 za routov\u00e1n\u00ed a dal\u0161\u00ed s\u00ed\u0165ov\u00e9 \u00fakoly.<\/p>\n<p>Samostatn\u00e9 karty pracuj\u00ed s blokov\u00fdm \u00falo\u017ei\u0161t\u011bm <strong>EBS<\/strong> a disky, kter\u00e9 jsou integrov\u00e1ny do serveru. Pro hostitelskou virtu\u00e1ln\u00ed ma\u0161inu jsou prezentov\u00e1ny jako <strong>NVMe adapt\u00e9ry<\/strong>. Tak\u00e9 se pod\u00edlej\u00ed na \u0161ifrov\u00e1n\u00ed dat a monitorov\u00e1n\u00ed disk\u016f.<\/p>\n<p>Syst\u00e9m Nitro karet, hypervizoru a bezpe\u010dnostn\u00edho \u010dipu je spojen do s\u00edt\u011b SDN nebo<strong> Software Defined Network<\/strong>. Za spr\u00e1vu t\u00e9to s\u00edt\u011b (Control Plane) odpov\u00edd\u00e1 <strong>karta-ovlada\u010d<\/strong>.<\/p>\n<p>Samoz\u0159ejm\u011b, pokra\u010dujeme ve v\u00fdvoji nov\u00fdch ASIC. Nap\u0159\u00edklad na konci roku 2018 jsme vydali \u010dip Inferentia, kter\u00fd umo\u017e\u0148uje efektivn\u011bj\u0161\u00ed zpracov\u00e1n\u00ed \u00faloh strojov\u00e9ho u\u010den\u00ed.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/2e20101688bc0b68bb54ea7cd1344f51.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>\u010cip Inferentia pro zpracov\u00e1n\u00ed strojov\u00e9ho u\u010den\u00ed.<\/em><\/p>\n<h2>\u0160k\u00e1lovateln\u00e1 datab\u00e1ze<\/h2>\n<p>\nTradi\u010dn\u00ed datab\u00e1ze m\u00e1 vrstevnatou strukturu. Pokud to zjednodu\u0161\u00edme, vymezujeme n\u00e1sleduj\u00edc\u00ed \u00farovn\u011b.<\/p>\n<ul>\n<li><strong>SQL<\/strong> \u2014 na n\u011bm pracuj\u00ed spr\u00e1vci klient\u016f a po\u017eadavk\u016f.<\/li>\n<li>Zaji\u0161t\u011bn\u00ed <strong>transakc\u00ed<\/strong> \u2014 tady je v\u0161e jasn\u00e9, ACID a to v\u0161e.<\/li>\n<li><strong>Cacheov\u00e1n\u00ed<\/strong>, kter\u00e9 je zaji\u0161t\u011bno pomoc\u00ed vyrovn\u00e1vac\u00edch pam\u011bt\u00ed.<\/li>\n<li><strong>Logov\u00e1n\u00ed<\/strong> \u2014 zaji\u0161\u0165uje pr\u00e1ci s redo-\u017eurn\u00e1ly. V MySQL se naz\u00fdvaj\u00ed Bin Logs, v PostgreSQL \u2014 Write Ahead Logs (WAL).<\/li>\n<li><strong>\u00dalo\u017ei\u0161t\u011b <\/strong>\u2013 p\u0159\u00edm\u00fd z\u00e1pis na disk.<\/li>\n<\/ul>\n<p>\n<img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/b6ddee7bd150d307049a95f943b15e4c.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Vrstven\u00e1 struktura datab\u00e1ze.<\/em><\/p>\n<p>Existuj\u00ed r\u016fzn\u00e9 zp\u016fsoby \u0161k\u00e1lov\u00e1n\u00ed datab\u00e1z\u00ed: shardov\u00e1n\u00ed, architektura Shared Nothing, sd\u00edlen\u00e9 disky.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/ec8c74c80f295018271326d20d36b08e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNicm\u00e9n\u011b, v\u0161echny tyto metody zachov\u00e1vaj\u00ed stejnou monolitickou strukturu datab\u00e1ze. To v\u00fdrazn\u011b omezuje \u0161k\u00e1lov\u00e1n\u00ed. Abychom tento probl\u00e9m vy\u0159e\u0161ili, vyvinuli jsme na\u0161i vlastn\u00ed datab\u00e1zi \u2014 <strong>Amazon Aurora<\/strong>. Je kompatibiln\u00ed s MySQL a PostgreSQL.<\/p>\n<h3>Amazon Aurora<\/h3>\n<p>\nHlavn\u00ed architektonick\u00e1 my\u0161lenka je odd\u011blit \u00farovn\u011b ukl\u00e1d\u00e1n\u00ed a logov\u00e1n\u00ed od samotn\u00e9 datab\u00e1ze.<\/p>\n<p>Mimochodem, \u00farove\u0148 cachov\u00e1n\u00ed jsme tak\u00e9 ud\u011blali nez\u00e1vislou. Architektura p\u0159est\u00e1v\u00e1 b\u00fdt monolitem a z\u00edsk\u00e1v\u00e1me dal\u0161\u00ed m\u00edry volnosti p\u0159i \u0161k\u00e1lov\u00e1n\u00ed jednotliv\u00fdch blok\u016f.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/dfe3f039fbcf5140aa1541802b51c1ec.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>\u00darovn\u011b logov\u00e1n\u00ed a ukl\u00e1d\u00e1n\u00ed jsou odd\u011bleny od datab\u00e1ze.<\/em><\/p>\n<p>Tradi\u010dn\u00ed DBMS zapisuje data na syst\u00e9m ukl\u00e1d\u00e1n\u00ed ve form\u011b blok\u016f. V Amazon Aurora jsme vytvo\u0159ili \u201einteligentn\u00ed\u201c \u00falo\u017ei\u0161t\u011b, kter\u00e9 m\u016f\u017ee komunikovat v jazyce <strong>redo-\u017eurn\u00e1l\u016f<\/strong>. Uvnit\u0159 se \u00falo\u017ei\u0161t\u011b m\u011bn\u00ed na bloky dat, sleduje jejich integritu a automaticky z\u00e1lohuje.<\/p>\n<p>Tento p\u0159\u00edstup umo\u017e\u0148uje realizovat zaj\u00edmav\u00e9 v\u011bci, jako je <strong>klonov\u00e1n\u00ed<\/strong>. Funguje podstatn\u011b rychleji a ekonomi\u010dt\u011bji, proto\u017ee nevy\u017eaduje vytv\u00e1\u0159en\u00ed \u00fapln\u00e9 kopie v\u0161ech dat.<\/p>\n<p>\u00darove\u0148 ukl\u00e1d\u00e1n\u00ed je realizov\u00e1na jako distribuovan\u00fd syst\u00e9m. Skl\u00e1d\u00e1 se z velk\u00e9ho mno\u017estv\u00ed fyzick\u00fdch server\u016f. Ka\u017ed\u00fd redo-\u017eurn\u00e1l je zpracov\u00e1v\u00e1n a ukl\u00e1d\u00e1n sou\u010dasn\u011b <strong>\u0161esti uzly<\/strong>. To zaji\u0161\u0165uje ochranu dat a rozlo\u017een\u00ed z\u00e1t\u011b\u017ee.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/9861d6e975b483cc5a20727af91b1a6b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u0160k\u00e1lov\u00e1n\u00ed pro \u010dten\u00ed lze zajistit pomoc\u00ed odpov\u00eddaj\u00edc\u00edch replik. Distribuovan\u00e9 \u00falo\u017ei\u0161t\u011b odstra\u0148uje pot\u0159ebu synchronizace mezi hlavn\u00edm instanc\u00ed datab\u00e1ze, p\u0159es kterou zapisujeme data, a ostatn\u00edmi replikami. Aktu\u00e1ln\u00ed data jsou zaru\u010den\u011b dostupn\u00e1 v\u0161em replik\u00e1m.<\/p>\n<p>Jedin\u00fdm probl\u00e9mem je cachov\u00e1n\u00ed star\u00fdch dat na replik\u00e1ch pro \u010dten\u00ed. Ale tento probl\u00e9m se d\u00e1 vy\u0159e\u0161it. <strong>p\u0159enosem v\u0161ech redo log\u016f<\/strong> na repliky po vnit\u0159n\u00ed s\u00edti. Pokud je log v cache, je ozna\u010den jako neplatn\u00fd a p\u0159eps\u00e1n. Pokud v cache nen\u00ed, jednodu\u0161e se zahod\u00ed.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/f87a140e401c49282d58ef65df5a4da2.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nS \u00falo\u017ei\u0161t\u011bm m\u00e1me jasno.<\/p>\n<h3>Jak \u0161k\u00e1lovat \u00farovn\u011b DBMS<\/h3>\n<p>\nZde je horizont\u00e1ln\u00ed \u0161k\u00e1lov\u00e1n\u00ed mnohem slo\u017eit\u011bj\u0161\u00ed. Proto se vyd\u00e1me osv\u011bd\u010denou cestou <strong>klasick\u00e9ho vertik\u00e1ln\u00edho \u0161k\u00e1lov\u00e1n\u00ed.<\/strong>.<\/p>\n<p>P\u0159edpokl\u00e1dejme, \u017ee m\u00e1me aplikaci, kter\u00e1 komunikuje s DBMS p\u0159es master node. <\/p>\n<p>P\u0159i vertik\u00e1ln\u00edm \u0161k\u00e1lov\u00e1n\u00ed vy\u010dlen\u00edme novou node, kter\u00e1 bude m\u00edt v\u00edce procesor\u016f a pam\u011bti.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/72f09bdc94584629fad0c40bf1a45bd9.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPak p\u0159epneme aplikaci ze star\u00e9 master node na novou. Objevuj\u00ed se probl\u00e9my.<\/p>\n<ul>\n<li>To si vy\u017e\u00e1d\u00e1 v\u00fdrazn\u00fd v\u00fdpadek aplikace.<\/li>\n<li>Nov\u00e1 master node bude m\u00edt studenou cache. V\u00fdkon DB bude maxim\u00e1ln\u00ed teprve po oh\u0159\u00e1t\u00ed cache.<\/li>\n<\/ul>\n<p>\n<img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/9820acd5597cb80bd7c63060ed13a37f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nJak zlep\u0161it situaci? Um\u00edstit proxy mezi aplikaci a master node.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/ba8265da6ef9b1c1f9ac27bccab73f5d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nCo n\u00e1m to p\u0159inese? Nyn\u00ed nen\u00ed t\u0159eba ru\u010dn\u011b p\u0159esm\u011brov\u00e1vat v\u0161echny aplikace na novou node. P\u0159epnut\u00ed lze prov\u00e9st pod proxy a t\u00edm p\u00e1dem podstatn\u011b rychleji.<\/p>\n<p>Zd\u00e1 se, \u017ee je probl\u00e9m vy\u0159e\u0161en. Ale ne, st\u00e1le trp\u00edme nutnost\u00ed oh\u0159\u00edvat cache. Krom\u011b toho se objevila nov\u00e1 ot\u00e1zka - nyn\u00ed je proxy potenci\u00e1ln\u00edm bodem selh\u00e1n\u00ed.<\/p>\n<h3>Kone\u010dn\u00e9 \u0159e\u0161en\u00ed s Amazon Aurora serverless<\/h3>\n<p>\nJak jsme vy\u0159e\u0161ili tyto probl\u00e9my?<\/p>\n<p><strong>Z\u016fstali jsme u proxy.<\/strong>Nen\u00ed to n\u011bjak\u00fd samostatn\u00fd instance, ale cel\u00fd distribuovan\u00fd flotila proxy, skrze kterou se aplikace p\u0159ipojuj\u00ed k DB. Jakoukoliv node lze v p\u0159\u00edpad\u011b selh\u00e1n\u00ed nahradit prakticky okam\u017eit\u011b.<\/p>\n<p><strong>P\u0159idali jsme pool tepl\u00fdch nod\u016f r\u016fzn\u00e9 velikosti.<\/strong>Proto nel\u00e9pe p\u0159i pot\u0159eb\u011b vy\u010dlen\u011bn\u00ed nov\u00e9 node v\u011bt\u0161\u00edho \u010di men\u0161\u00edho rozm\u011bru je ihned dostupn\u00e1. Nen\u00ed t\u0159eba \u010dekat, a\u017e se na\u010dte.<\/p>\n<p><strong>Cel\u00fd proces \u0161k\u00e1lov\u00e1n\u00ed je \u0159\u00edzen speci\u00e1ln\u00edm monitorovac\u00edm syst\u00e9mem. <\/strong>Monitorov\u00e1n\u00ed neust\u00e1le sleduje stav aktu\u00e1ln\u00ed master-nody. Pokud zjist\u00ed, \u017ee zat\u00ed\u017een\u00ed procesoru dos\u00e1hlo kritick\u00e9 hodnoty, informuje pool tepl\u00fdch instanc\u00ed o pot\u0159eb\u011b vy\u010dlenit novou nodu.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/b5693b64e3468a4b6bcafb4fd5732bd8.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>Distribuovan\u00e9 proxy, tepl\u00e9 instance a monitorov\u00e1n\u00ed.<\/em><\/p>\n<p>Noda po\u017eadovan\u00e9ho v\u00fdkonu je k dispozici. Na ni se kop\u00edruj\u00ed vyrovn\u00e1vac\u00ed pooly a syst\u00e9m za\u010dne o\u010dek\u00e1vat bezpe\u010dn\u00fd okam\u017eik pro p\u0159epnut\u00ed.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/fcbc5529352477b824cc969afd0a4fec.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nObvykle okam\u017eik pro p\u0159epnut\u00ed nast\u00e1v\u00e1 dost rychle. Pot\u00e9 je komunikace mezi proxy a starou master-nodou pozastavena, v\u0161echny relace jsou p\u0159epnuty na novou nodu.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/b3b4af9be2cdd28aaaecd97cae48621d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPr\u00e1ce s datab\u00e1z\u00ed pokra\u010duje.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/eeeae3ba3fc3ff014657f9786a25fd2f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNa grafu je vid\u011bt, \u017ee pozastaven\u00ed je skute\u010dn\u011b velmi kr\u00e1tk\u00e9. Na modr\u00e9m grafu je zat\u00ed\u017een\u00ed, a na \u010derven\u00fdch stupn\u00edch \u2014 okam\u017eiky \u0161k\u00e1lov\u00e1n\u00ed. Kr\u00e1tkodob\u00e9 poklesy na modr\u00e9m grafu jsou pr\u00e1v\u011b tou kr\u00e1tkou prodlevou.<\/p>\n<p><img decoding=\"async\" alt=\"Jak AWS &quot;va\u0159\u00ed&quot; sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed\" src=\"\/wp-content\/uploads\/2019\/10\/ac55eadb5f0b182b93fdd1617961a930.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nMimochodem, Amazon Aurora umo\u017e\u0148uje zna\u010dn\u011b u\u0161et\u0159it a vypnout datab\u00e1zi, kdy\u017e se nepou\u017e\u00edv\u00e1, nap\u0159\u00edklad o v\u00edkendech. Po zastaven\u00ed z\u00e1t\u011b\u017ee datab\u00e1ze postupn\u011b sni\u017euje sv\u016fj v\u00fdkon a na n\u011bjakou dobu se vypne. Kdy\u017e se z\u00e1t\u011b\u017e vr\u00e1t\u00ed, op\u011bt se hladce zv\u00fd\u0161\u00ed.<\/p>\n<blockquote><p>V dal\u0161\u00ed \u010d\u00e1sti p\u0159\u00edb\u011bhu o Amazonu se budeme zab\u00fdvat \u0161k\u00e1lov\u00e1n\u00edm s\u00edt\u011b. P\u0159ihlaste se <noindex><a rel=\"nofollow\" href=\"http:\/\/eepurl.com\/VYVaf\">k odb\u011bru novinek<\/a><\/noindex> a sledujte aktualizace, abyste nezme\u0161kali \u010dl\u00e1nek.<\/p>\n<p>Na <noindex><a rel=\"nofollow\" href=\"https:\/\/www.highload.ru\/moscow\/2019\">HighLoad++<\/a><\/noindex> Vasilij Pantjuchin vystoup\u00ed s p\u0159edn\u00e1\u0161kou \u201e<noindex><a rel=\"nofollow\" href=\"https:\/\/www.highload.ru\/moscow\/2019\/abstracts\/5977\">Houston, m\u00e1me probl\u00e9m. N\u00e1vrh syst\u00e9m\u016f odoln\u00fdch v\u016f\u010di chyb\u00e1m, vzory v\u00fdvoje intern\u00edch slu\u017eeb cloudu Amazon<\/a><\/noindex>\u2018. Jak\u00e9 vzory n\u00e1vrhu distribuovan\u00fdch syst\u00e9m\u016f pou\u017e\u00edvaj\u00ed v\u00fdvoj\u00e1\u0159i Amazonu, jak\u00e9 mohou b\u00fdt d\u016fvody selh\u00e1n\u00ed slu\u017eeb, co je Cell-based architecture, Constant Work, Shuffle Sharding \u2014 bude to zaj\u00edmav\u00e9. Do konference zb\u00fdv\u00e1 m\u00e9n\u011b ne\u017e m\u011bs\u00edc \u2014 <noindex><a rel=\"nofollow\" href=\"https:\/\/conf.ontico.ru\/conference\/join\/hl2019.html\">rezervujte si l\u00edstky<\/a><\/noindex>. 24. \u0159\u00edjna kone\u010dn\u00e9 zv\u00fd\u0161en\u00ed cen.<\/p><\/blockquote>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/oleg-bunin\/blog\/471686\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u0431\u043b\u0430\u043a\u0430 \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0448\u043a\u0430\u0442\u0443\u043b\u043a\u0435 \u2014 \u0437\u0430\u0434\u0430\u0435\u0448\u044c, \u0447\u0442\u043e \u0442\u0435\u0431\u0435 \u043d\u0443\u0436\u043d\u043e, \u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0438\u0437 \u043d\u0438\u043e\u0442\u043a\u0443\u0434\u0430. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b, \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u0441\u0435\u0442\u044c \u2014 \u0432\u0441\u0435 \u044d\u0442\u043e \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u0431\u0435. \u0421\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0442\u0435\u043d\u0430\u043d\u0442\u044b \u043e\u0431\u043b\u0430\u043a\u0430, \u043d\u043e \u0432 \u0441\u0432\u043e\u0435\u0439 \u0412\u0441\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0442\u044b \u0435\u0434\u0438\u043d\u043e\u043b\u0438\u0447\u043d\u044b\u0439 \u043f\u0440\u0430\u0432\u0438\u0442\u0435\u043b\u044c. \u0422\u044b \u0443\u0432\u0435\u0440\u0435\u043d, \u0447\u0442\u043e \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u043e\u043b\u0443\u0447\u0438\u0448\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u044b\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b, \u043d\u0438 \u0441 \u043a\u0435\u043c \u043d\u0435 \u0441\u0447\u0438\u0442\u0430\u0435\u0448\u044c\u0441\u044f \u0438 \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0448\u044c, \u043a\u0430\u043a\u043e\u0439 \u0431\u0443\u0434\u0435\u0442 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":39303,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-39302","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.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u0431\u043b\u0430\u043a\u0430 \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0448\u043a\u0430\u0442\u0443\u043b\u043a\u0435 \u2014 \u0437\u0430\u0434\u0430\u0435\u0448\u044c, \u0447\u0442\u043e \u0442\u0435\u0431\u0435 \u043d\u0443\u0436\u043d\u043e, \u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0438\u0437 \u043d\u0438\u043e\u0442\u043a\u0443\u0434\u0430. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b, \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u0441\u0435\u0442\u044c \u2014 \u0432\u0441\u0435 \u044d\u0442\u043e \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u0431\u0435.\" \/>\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\/cs\/blog\/administrirovanie\/kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\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\u041a\u0430\u043a AWS \u00ab\u0432\u0430\u0440\u0438\u0442\u00bb \u0441\u0432\u043e\u0438 \u044d\u043b\u0430\u0441\u0442\u0438\u0447\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b. \u041c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0438 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u0431\u043b\u0430\u043a\u0430 \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0448\u043a\u0430\u0442\u0443\u043b\u043a\u0435 \u2014 \u0437\u0430\u0434\u0430\u0435\u0448\u044c, \u0447\u0442\u043e \u0442\u0435\u0431\u0435 \u043d\u0443\u0436\u043d\u043e, \u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0438\u0437 \u043d\u0438\u043e\u0442\u043a\u0443\u0434\u0430. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b, \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u0441\u0435\u0442\u044c \u2014 \u0432\u0441\u0435 \u044d\u0442\u043e \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u0431\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh\" \/>\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:29:40+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:29:40+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\udd47Jak AWS \u201eva\u0159\u00ed\u201c sv\u00e9 elastick\u00e9 slu\u017eby. \u0160k\u00e1lov\u00e1n\u00ed server\u016f a datab\u00e1z\u00ed | ProHoster","description":"Cloudy jsou jako magick\u00e1 sk\u0159\u00ed\u0148ka \u2014 \u0159eknete, co pot\u0159ebujete, a zdroje se prost\u011b objev\u00ed z ni\u010deho. Virtu\u00e1ln\u00ed stroje, datab\u00e1ze, s\u00ed\u0165 \u2014 to v\u0161e pat\u0159\u00ed jen v\u00e1m.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","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\u041a\u0430\u043a AWS \u00ab\u0432\u0430\u0440\u0438\u0442\u00bb \u0441\u0432\u043e\u0438 \u044d\u043b\u0430\u0441\u0442\u0438\u0447\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b. \u041c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0438 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445 | ProHoster","og:description":"\u041e\u0431\u043b\u0430\u043a\u0430 \u043f\u043e\u0434\u043e\u0431\u043d\u044b \u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0448\u043a\u0430\u0442\u0443\u043b\u043a\u0435 \u2014 \u0437\u0430\u0434\u0430\u0435\u0448\u044c, \u0447\u0442\u043e \u0442\u0435\u0431\u0435 \u043d\u0443\u0436\u043d\u043e, \u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0438\u0437 \u043d\u0438\u043e\u0442\u043a\u0443\u0434\u0430. \u0412\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b, \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u0441\u0435\u0442\u044c \u2014 \u0432\u0441\u0435 \u044d\u0442\u043e \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u0435\u0431\u0435.","og:url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/kak-aws-varit-svoi-elastichnye-servisy-masshtabirovanie-serverov-i-bazy-dannyh","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:29:40+00:00","article:modified_time":"2019-10-31T19:29:40+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"39302","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-24 01:37:20","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:52:26","updated":"2026-01-24 01:37:20","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/39302","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=39302"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/39302\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media\/39303"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=39302"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=39302"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=39302"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}