Nowość – w pełni zarządzane wdrożenia Blue/Green w Amazon Aurora i Amazon RDS

8 grudnia 2022

Podczas aktualizowania baz danych korzystanie z blue/green techniki wdrażania jest atrakcyjną opcją dla użytkowników w celu zminimalizowania ryzyka i przestojów.

Ta metoda aktualizacji bazy danych wymaga dwóch środowisk bazy danych – bieżącego środowiska produkcyjnego (blue) oraz środowiska przejściowego (green). Następnie musisz zsynchronizować te dwa środowiska, aby móc bezpiecznie testować i aktualizować zmiany w środowisku produkcyjnym.

Klienci Amazon Aurora i Amazon Relational Database Service (Amazon RDS) mogą korzystać z klonowania baz danych i promowanych replik do odczytu, aby pomóc w samodzielnym zarządzaniu wdrożeniem blue/green. Jednak samozarządzanie takim wdrożeniem może być kosztowne i skomplikowane. W rezultacie klienci czasami opóźniają wdrażanie aktualizacji baz danych, przedkładając dostępność nad korzyści, jakie uzyskaliby z aktualizacji swoich baz danych.

Dzisiaj twórcy ogłaszają ogólną dostępność Amazon RDS Blue/Green Deployments, nowej funkcji dla Amazon Aurora z kompatybilnością z MySQL, Amazon RDS dla MySQL i Amazon RDS dla MariaDB, która umożliwia bezpieczniejsze, prostsze i szybsze aktualizacje baz danych.

W zaledwie kilku krokach możesz użyć Blue/Green Deployments do stworzenia osobnego, zsynchronizowanego, w pełni zarządzanego środowiska testowego, które odzwierciedla środowisko produkcyjne. Środowisko przejściowe klonuje podstawową bazę danych środowiska produkcyjnego i repliki do odczytu w regionie. Wdrożenia blue/green zapewniają synchronizację tych dwóch środowisk przy użyciu replikacji logicznej.

W zaledwie minutę możesz awansować środowisko pomostowe na nowe środowisko produkcyjne bez utraty danych. Podczas przełączania Blue/Green Deployments blokuje zapis w niebieskim i zielonym środowisku, dzięki czemu zielony dogania niebieski, co gwarantuje brak utraty danych. Następnie Blue/Green Deployments przekierowuje ruch produkcyjny do nowo promowanego środowiska pomostowego, a wszystko to bez żadnych zmian w kodzie aplikacji.

Dzięki Blue/Green Deployments możesz wprowadzać zmiany w środowisku przejściowym, takie jak aktualizacje wersji głównych i pomocniczych, modyfikacje schematu oraz aktualizacje systemu operacyjnego lub konserwacyjne, bez wpływu na obciążenie produkcyjne.

Pierwsze kroki z Blue/Green Deployments dla klastrów MySQL

Możesz rozpocząć aktualizację swoich baz danych kilkoma kliknięciami w AWS Management Console. Aby rozpocząć, po prostu wybierz w konsoli bazę danych, która ma zostać zaktualizowana, i kliknij opcję Create Blue/Green Deployment w menu rozwijanym Actions.

Nowość – w pełni zarządzane wdrożenia Blue/Green w Amazon Aurora i Amazon RDS

Możesz ustawić Blue/Green Deployment identifier wdrożenia i modyfikować atrybuty bazy danych, takie jak wersja silnika, grupa parametrów klastra DB i grupa parametrów DB dla zielonych baz danych. Aby użyć wdrożenia niebieskiego/zielonego w klastrze Aurora MySQL DB, należy włączyć rejestrowanie binarne, zmieniając wartość parametru binlog_format z OFF na MIXED w grupie parametrów klastra DB.

Blue/Green Deployment identifier

Wybranie opcji Create Blue/Green Deployment powoduje utworzenie nowego środowiska przejściowego i uruchomienie zautomatyzowanych zadań w celu przygotowania bazy danych do produkcji. Pamiętaj, że zostaniesz obciążony kosztem zielonej bazy danych, w tym replik do odczytu i instancji DB we wdrożeniach Multi-AZ oraz wszelkich innych funkcji, takich jak Amazon RDS Performance Insights, które mogłeś uaktywnić.

Możesz także wykonać tę samą pracę w interfejsie wiersza poleceń AWS (AWS CLI). Aby przeprowadzić aktualizację wersji silnika, po prostu dodaj parametr targetEngineVersion i określ wersję silnika, do której chcesz dokonać aktualizacji. Ten parametr działa zarówno z aktualizacjami wersji drugorzędnych, jak i głównych, i akceptuje krótkie wersje, takie jak 5.7 dla Amazon Aurora MySQL-Compatible.

$ aws rds create-blue-green-deployment \
--blue-green-deployment-name my-bg-deployment \
--source arn:aws:rds:us-west-2:1234567890:db:my-aurora-mysql \
--target-engine-version 5.7 \
--region us-west-2 \

Po zakończeniu tworzenia masz teraz przed sobą środowisko przejściowe, które jest gotowe do testowania i sprawdzania poprawności przed promowaniem go jako nowego środowiska produkcyjnego.

Po zakończeniu testowania i kwalifikacji zmian można wybrać opcję Switch over w menu rozwijanym Actions, aby wypromować środowisko przejściowe oznaczone jako zielone jako nowy system produkcyjny.

Create Blue/Green Deployment

Teraz jesteś prawie gotowy do przełączenia zielonych baz danych na produkcję. Sprawdź ustawienia swoich zielonych baz danych, aby upewnić się, że są gotowe do przejścia. Możesz także ustawić limit czasu, aby określić maksymalny limit czasu dla przełączenia. Jeśli blokady przełączania niebieskich/zielonych stanowisk wykryją, że zajmie to więcej czasu niż planowany, przełączenie zostanie anulowane, a środowiska nie zostaną zmienione. Zaleca się zidentyfikowanie okresów niskiego lub umiarkowanego ruchu produkcyjnego w celu zainicjowania przełączenia.

Nowość – w pełni zarządzane wdrożenia Blue/Green w Amazon Aurora i Amazon RDS

Już dostępne

Wdrożenia Amazon RDS Blue/Green są już dostępne na Amazon Aurora z kompatybilnością MySQL 5.6 lub nowszą, Amazon RDS for MySQL wersja 5.6 lub nowsza oraz Amazon RDS for MariaDB 10.2 we wszystkich komercyjnych regionach AWS, z wyjątkiem Chin, oraz w regionach AWS GovCloud.

Aby dowiedzieć się więcej, zapoznaj się z Using Amazon RDS Blue/Green Deployments for database updates w dokumentacji AWS.

źródło: AWS

 

Case Studies
Referencje

Pragniemy wyróżnić Hostersów za profesjonalizm, niezawodność, szczególnie podczas realizowanych przez Telepizzę intensywnych kampanii reklamowych w internecie, kiedy to naszą witrynę odwiedzało blisko 130 000 użytkowników miesięcznie.

Dariusz Bąk
Dyrektor Marketingu
W skrócie o nas
Specjalizujemy się w dostarczaniu rozwiązań IT w obszarach projektowania infrastruktury serwerowej, wdrażania chmury obliczeniowej, opieki administracyjnej i bezpieczeństwa danych.