Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Użyj szablonów Cloud Formation, aby uruchomić instancje MySQL na RDS

W tym artykule omówię, jak skonfigurować instancję MySQL na AWS RDS przy użyciu szablonów Cloud Formation. W moim poprzednim artykule, Jak skonfigurować środowisko Amazon RDS dla MySQL, przedstawiłem szczegółowy opis konfiguracji instancji MySQL w Amazon. Możesz użyć konsoli AWS, aby podać wszystkie informacje wymagane do skonfigurowania instancji, a następnie z niej skorzystać. Jednak w tym artykule omówimy zautomatyzowany sposób osiągnięcia tych samych funkcji przy użyciu szablonów Cloud Formation.

Co to jest szablon CloudFormation?

Aby zacząć pisać szablony, najpierw musimy zrozumieć, na czym polega tworzenie chmury. AWS oferuje Cloud Formation jako usługę w chmurze, która umożliwia klientom AWS zapisanie pożądanego stanu dowolnej infrastruktury jako kodu, a następnie wykorzystanie go do wdrażania zasobów w AWS. Pozwala nam stworzyć zasób lub grupę zasobów postępując zgodnie z prostymi szablonami konfiguracji. Na przykład, jeśli chcesz wdrożyć aplikację internetową na instancji EC2, która będzie również korzystać z bazy danych RDS, możesz po prostu połączyć oba zasoby w jeden stos i napisać kod konfiguracji instancji. Po uruchomieniu utworzy zarówno instancję EC2, jak i RDS, a także wdroży Twoją aplikację internetową.

Rysunek 1 – Szablon CloudFormation w konsoli AWS

Składniki szablonu tworzenia chmury są następujące:

  • JSON lub YAML plik, w którym zasoby zostaną zdefiniowane jako szablon
  • Stos może być kombinacją wielu zasobów, które należało skonfigurować jako część aplikacji. Na przykład EC2 i RDS
  • Zestaw zmian może być użyty do wyświetlenia listy operacji do wykonania przez stos
  • Zestaw stosów można również uznać za zarządzaną grupę stosów, które można powielać lub replikować

W tym artykule skupimy się głównie na szablonie JSON/YAML i stosie. Szablony obsługują szeroką gamę zasobów w AWS. Aby uzyskać pełną listę, kliknij ten link.

Pisanie pliku szablonu JSON lub YAML

Jednym z głównych wyzwań, przed jakim stajemy pisząc szablon po raz pierwszy, jest to, jakie treści powinny się w nim znaleźć. Aby to ułatwić, AWS udostępnia wiele próbek szablonów, które można łatwo znaleźć w oficjalnej dokumentacji. Po znalezieniu szablonu wymaganego do utworzenia niezbędnego zasobu możesz go użyć do stworzenia własnego szablonu. Szablon można utworzyć za pomocą JSON lub YAML i przekonwertować z jednego na drugi. Osobiście wolę pisać szablony za pomocą YAML, ponieważ pomaga mi to trzymać się z dala od nawiasów klamrowych i przecinków oraz utrzymuje czystszy dokument. Możesz jednak wybrać dowolną opcję między JSON i YAML.

W tym ćwiczeniu spróbujmy uruchomić instancję MySQL na RDS i napiszemy kod w YAML. Aby skonfigurować bazę danych MySQL przy użyciu tworzenia chmury, potrzebowalibyśmy następujących elementów.

  • Nazwa zasobu – Nazwa zasobu, który zamierzasz skonfigurować.
  • Typ zasobu – Rodzaj zasobu.
  • Właściwości zasobów – Nazwa bazy danych, nazwa użytkownika i hasło do połączenia.
  • Silnik bazy danych – MySQL, SQL Server, PostgreSQL itp.
  • Typ przechowywania – Stosowany typ przechowywania.
  • Ułatwienia dostępu publicznego – Czy baza danych powinna mieć publiczny dostęp, czy nie.
  • Przydzielona pamięć – Pamięć, która powinna być przydzielona do instancji bazy danych.
  • Region AWS – Region, w którym ma zostać utworzona instancja.

Teraz, gdy mamy już z sobą kilka punktów, zacznijmy od napisania pliku szablonu.

https://gist.github.com/aveek22/a188b02abde65479bbba2deba5ec90d6

Rysunek 2 – Plik szablonu do tworzenia instancji MySQL na RDS

Jak widać na powyższym rysunku, struktura pliku jest podzielona na dwie części. W pierwszej części zdefiniowaliśmy kilka parametrów, które będą wykorzystywane przez definicje zasobów w drugiej części podczas tworzenia zasobów na AWS. Możesz użyć tego samego skryptu na swoim komputerze, aby utworzyć instancję na swoim koncie AWS.

Konfigurowanie stosu na konsoli

Teraz, gdy stworzyliśmy nasz szablon dla MySQL, nadszedł czas, aby go skonfigurować, aby sprawdzić, czy wszystko działa dobrze. Udaj się do konsoli AWS i wyszukaj Cloud Formation na pasku wyszukiwania. Kliknij Utwórz stos i prześlij plik szablonu ze swojego lokalnego. Kliknij Dalej raz zrobione.

Rysunek 3 – Tworzenie stosu z szablonu

Na następnej stronie zostaniesz poproszony o podanie parametrów, które zostały zdefiniowane w szablonie tworzenia chmur. Śmiało, podaj niezbędne szczegóły i kliknij Dalej .

Rysunek 4 – Dostarczone parametry stosu

Sprawdź zmiany i parametry stosu i kliknij Utwórz stos na ostatniej stronie. Rozpocznie się tworzenie stosu. Utworzenie wszystkich zasobów, zanim będą one dostępne do użycia, może zająć trochę czasu. W międzyczasie możesz kliknąć przycisk Odśwież, aby sprawdzić, czy wszystkie wydarzenia zostały pomyślnie utworzone.

Rysunek 5 – Trwa tworzenie stosu

Jak widać na znacznikach czasu, zajęło mi to około 6 minut, po czym zasoby były dostępne i były również widoczne na konsoli. Przejdź do Zasobów i kliknij Identyfikator fizyczny zasobu. Spowoduje to przejście do konsoli RDS.

Ilustracja 6 – Pomyślnie utworzono stos

Podłączanie bazy danych MySQL

Gdy znajdziesz się w konsoli RDS, możesz uzyskać nazwę hosta dla instancji bazy danych i użyć jej do połączenia z bazą danych. Chwyć punkt końcowy z konsoli i użyj go do połączenia.

Rysunek 7 – Szczegóły instancji MySQL w RDS

Przejdźmy teraz do MySQL Workbench i spróbujmy połączyć się z nazwą hosta przy użyciu danych, które podaliśmy wcześniej. Użyj nazwy hosta, nazwy użytkownika i hasła, aby połączyć się z instancją.

Rysunek 8 – Łączenie się z instancją MySQL za pomocą MySQL Workbench

Jak widać na powyższym rysunku, pomyślnie połączyliśmy się z instancją bazy danych na RDS. Przeprowadźmy teraz kilka zapytań i zobaczmy, czy to działa.

Rysunek 9 – Wykonywanie skryptów w środowisku MySQL Workbench

Jak widać na powyższym rysunku, udało nam się połączyć z instancją bazy danych i wykonać zapytania. Dzięki temu możesz napisać własny szablon tworzenia chmury i uruchomić dowolne inne zasoby, takie jak baza danych SQL Server lub PostgreSQL.

Usuwanie zasobów

Jeśli wykonujesz to jako ćwiczenie, sugerowałbym usunięcie zasobów, które stworzyliśmy, ponieważ wiąże się to z pewnymi opłatami. Możesz przejść do konsoli RDS, a następnie wybrać instancję i kliknąć Usuń aby trwale usunąć zasoby.

Rysunek 10 – Usuwanie utworzonych zasobów

Po pomyślnym usunięciu zasobów możesz ponownie sprawdzić w konsoli, czy są uruchomione jakieś instancje, aby uniknąć dodawania niepotrzebnych kosztów rozliczeniowych.

Wniosek

W tym artykule szczegółowo omówiliśmy, jak skonfigurować instancję bazy danych MySQL w środowisku AWS RDS i zautomatyzować ją za pomocą szablonu Cloud Formation. W ten sposób, jeśli konfigurowanie zasobów w chmurze jest również znane jako usługa infrastruktury jako kodu, w której można skonfigurować całą infrastrukturę jako kod, a następnie używać jej w różnych środowiskach. Szablony te mogą być używane nie tylko do wdrażania instancji baz danych, ale także innych infrastruktur w ramach AWS, takich jak EC2, Lambda, RedShift itp. Aby dowiedzieć się więcej o szablonach tworzenia chmury, możesz wyświetlić przykładowe szablony dostępne na oficjalnej stronie internetowej.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL #1093 - W klauzuli FROM nie można określić tabeli docelowej „prezenty” do aktualizacji

  2. MySQL nie może dodać ograniczenia klucza obcego

  3. MySQL Wstawić do wielu tabel? (Normalizacja bazy danych?)

  4. Jak przekonwertować wszystkie tabele z MyISAM do InnoDB?

  5. Wstaw Mysql do 2 tabel