Amazon EC2 (Amazon Elastic Compute Cloud) to wspaniała platforma do przetwarzania w chmurze. Większość internetu działa na Amazon AWS – kiedy użytkownicy odnoszą się do „przetwarzania w chmurze”, mają na myśli Amazon AWS. Moja firma od kilku lat prowadzi i zarządza bazami danych w AWS i wiele się nauczyliśmy z naszych doświadczeń. Chociaż AWS jest platformą łatwą do uruchomienia, niezwykle trudno jest uruchamiać duże obciążenia dyskowe w AWS. Nie mówię, że nie da się tego zrobić – jednak wymagany czas i wiedza ekspercka przekracza możliwości większości użytkowników. Oto kilka rzeczy, które chciałbym zobaczyć w Amazon EC2, aby ułatwić uruchamianie baz danych w AWS.
-
Nieefemeryczne dyski lokalne
System EBS oparty na sieci jest wygodny w przypadku większości obciążeń, ale wydajność jest fatalna w przypadku obciążeń wymagających dużego zapisu. Wprowadzenie obsługiwanych operacji IOPS nieco łagodzi ten problem. Jednak aprowizowane IOPS są dość drogie, a koszty się sumują, zwłaszcza gdy używasz dużego klastra z 10-20 maszynami. Alternatywnie byłoby świetnie, gdyby duże obciążenia dysku, takie jak bazy danych, mogły zostać usunięte z dysku lokalnego. Dzisiaj nie wchodzi to w grę, ponieważ dyski lokalne są „efemeryczne”. Jeśli zatrzymasz i ponownie uruchomisz komputer, może on zostać przeniesiony na inny host i utracisz dane lokalne. Nie jest to dopuszczalne ryzyko, nawet jeśli istnieje wiele kopii danych.
-
Niedrogi dysk SSD
Byłoby wspaniale, gdyby Amazon mógł wziąć kartkę z książki DigitalOcean i wprowadzić tanie dyski SSD do swoich serwerów. Przetwarzanie po stronie serwera powoli przechodzi na SSD, a za kilka lat serwery SSD staną się faktyczną pamięcią masową dla obciążeń serwerów. Amazon oferuje dziś dyski SSD, ale są one dość drogie i nie są opcją dla większości obciążeń. Ponadto oferta dysków SSD ma ten sam „efemeryczny” problem, co dyski lokalne.
-
Międzyregionalne grupy zabezpieczeń
Geo-rozproszone klastry to rzeczywistość naszych czasów. Wielu klientów musi wdrażać serwery w różnych regionach z wielu powodów, od dostępności po partycjonowanie. Obecnie jedynym sposobem zabezpieczenia tych wdrożeń jest użycie białej listy adresów IP, która jest niezwykle trudna w utrzymaniu. Międzyregionalne grupy zabezpieczeń znacznie zmniejszą obciążenie klientów wdrażających w wielu regionach. dziś Amazon ma bardzo mało funkcji, które działają w różnych regionach. Niedawno wprowadzili możliwość kopiowania szablonów między regionami, co jest bardzo przydatne i mam nadzieję, że nadal będą dodawać więcej funkcji obejmujących wiele regionów.
-
Zsynchronizowane migawki w wielu tomach
W niektórych z naszych większych klastrów baz danych musimy tworzyć kopie zapasowe wielu serwerów jednocześnie. Na przykład w klastrze MongoDB podzielonego na fragmenty należy wykonać kopię zapasową spójnej kopii wszystkich fragmentów. Chociaż istnieją dziś techniki, aby to zrobić, wszystkie są dość owłosione i podatne na niepowodzenie. Idealnym sposobem tworzenia kopii zapasowych tych serwerów jest uruchomienie zsynchronizowanej migawki na kilku woluminach. Zapewni to spójną migawkę we wszystkich woluminach.
-
Lepsze zarządzanie VPC
Osobiście nie podoba mi się pomysł udostępnienia produkcyjnych baz danych w Internecie. Dlatego jestem wielkim fanem wirtualnych chmur prywatnych (VPC). Technologia jest świetna, ale interfejs zarządzania jest dość żmudny. VPC i klasyczny EC2 są bardzo podobne, dopóki nie są. W efekcie przełączasz się między konsolą EC2 a konsolą VPC. Gdy zarządzasz ponad 10 serwerami, obecny paradygmat zarządzania nakłada na użytkownika duże obciążenie. Myślę, że jest miejsce na uproszczenie koncepcji i ułatwienie zarządzania.
Jak zawsze, jeśli masz pytania, skontaktuj się z nami [email protected].