Tworzenie bazy danych RDS za pomocą AWS CLI

Tworzenie bazy danych RDS za pomocą AWS CLI
Amazon RDS to relacyjna baza danych i usługa internetowa. To, co odróżnia od tradycyjnych baz danych, jest to, że jest bardzo proste do konfigurowania, zarządzania, a co najważniejsze, jest skalowalne i zapewnia wysoką dostępność. Amazon zapewnia wiele opcji silnika bazy danych do korzystania z RDS. Na przykład można wybrać z baz danych Amazon Aurora, PostgreSQL, MySQL, Mariadb, Oracle i SQL Server. To dobra rzecz dla ludzi myślących o migracji do chmury z oryginalnymi aplikacjami. Amazon RDS ma na celu zapewnienie tego samego środowiska pracy w chmurze, co w środowisku lokalnym. Oznacza to, że jeśli masz aplikację uruchamiającą oprogramowanie MySQL, ta sama aplikacja będzie działać płynnie po migracji do bazy danych MySQL opartej na RDS.

Rodzaje AWS RDS

Amazon ma różne typy instancji DB lub instancji bazy danych do uruchamiania RDS. Jak wspomniano wcześniej, baza danych RDS działająca w tych instancjach DB jest wspierana przez silniki bazy danych, takie jak PostgreSQL, MySQL i MARIADB. Można użyć konsoli zarządzania AWS, interfejsów API Amazon RDS lub wersji AWS CLI, aby utworzyć instancję RDS. Będziemy używać podejścia wiersza polecenia do tworzenia instancji RDS.

Co tu zbadamy?

W tym przewodniku pokażemy, jak utworzyć instancję DB MySQL RDS za pomocą AWS CLI. Będziemy używać konta użytkownika IAM z ograniczonymi uprawnieniami. Idźmy teraz do przodu z użytkownikiem AWS IAM.

Tworzenie użytkownika IAM

Dostawcy usług w chmurze zwykle oferują funkcję IAM lub tożsamość i zarządzanie dostępem, aby zapewnić dodatkowe bezpieczeństwo konto użytkownika. W środowisku pracy, zapewnienie każdemu użytkownikowi dostępu do konta głównego lub zarządzanie usługami bezpośrednio z konta głównego sprawia, że ​​jest podatne na zagrożenia bezpieczeństwa. Zamiast tego możemy tworzyć użytkowników z określonymi uprawnieniami, aby uniknąć problemów eskalacji uprawnień. Jest to podobne do tworzenia użytkowników w Linux z ograniczonym dostępem do plików systemowych i innych zasobów. Tak więc w tym praktycznym laboratorium utworzymy użytkownika IAM z minimalnymi prawami dostępu wymaganymi tylko do wykonywania operacji tworzenia bazy danych RDS.

Notatka: Ten użytkownik IAM nie będzie w stanie wykonywać następujących operacji ze względu na zasady dotyczące najmniejszych uprawnień:

  1. Usuń bazę danych
  2. Rozpocznij bazę danych
  3. Zatrzymaj bazę danych

Aby utworzyć poprzedniego użytkownika IAM, postępuj zgodnie z poniższymi instrukcjami:

Krok 1. Przejdź do konsoli AWS IAM i kliknij przycisk „Dodaj użytkowników”:

Krok 2. Podaj odpowiednią nazwę użytkownikowi i przypisz hasło. Ponieważ wchodzimy w interakcje z użytkownikiem za pomocą AWS CLI, sprawdziliśmy pole tyknięcia „Klucza dostępu”. Ponadto daliśmy również dostęp do konsoli zarządzania tego użytkownika:

Krok 3. Możemy również dodać tego użytkownika do grupy, ale pominęliśmy to. Teraz kliknij „Dalej: Tagi”, aby kontynuować:

Krok 4. (Opcjonalnie) Możemy dodać tagi (para wartości kluczowej), aby zorganizować naszych użytkowników:

Krok 5. Na następnym ekranie przejrzyj ustawienia użytkownika:

Krok 6. Po kliknięciu przycisku „Utwórz użytkownika”, zostaniesz poproszony o pobranie klawiszy dostępu. Zachowaj te klucze w tajemnicy i umieść je w bezpiecznym miejscu, ponieważ są one dostępne do pobrania tylko raz. Twój użytkownik będzie teraz dostępny w sekcji użytkowników IAM:

Krok 7. Teraz dodamy zasady wbudowanej dla tego użytkownika, aby wykonać wyżej określoną operację bazy danych. W sekcji użytkowników IAM kliknij nazwę użytkownika. Kliknij etykietę „Dodaj zasady inline” na karcie „Uprawnienia” na nowym ekranie:

Pojawi się nowy kreator o nazwie „Utwórz zasady”, w którym musisz wybrać kartę JSON i wkleić tam następujący kod:


„Wersja”: „2012-10-17”,
"Oświadczenie": [

„SID”: „Visuleditor0”,
„Efekt”: „Pozwól”,
"Działanie": [
„EC2: opisywaniePCAttribute”,
„EC2: opisy BurityGroups”,
„EC2:,
„EC2: opisywane stowarzyszone”,
„EC2: opisywaniaSEVPC”,
„EC2: opisuje się,
„EC2: opisowe”,
„RDS: Opisz*”,
„RDS: ListtagsForresource”,
„RDS: CreatedBinstance”,
„RDS: CreatlebsubNetGroup”
],
„Zasób”: „*”

]

Notatka: Możesz zmodyfikować te zasady, aby umożliwić użytkownikowi wykonywanie innych operacji opartych na RDS.

Krok 8. Teraz kliknij przycisk „Polityka recenzji” u dołu:

Krok 9. Podaj odpowiednią nazwę zasad i kliknij przycisk „Utwórz zasady”:

Poprzednie zasady inline można teraz zobaczyć w poprzedniej konsoli użytkownika IAM:

Rozpoczęcie pracy z AWS CLI

Teraz, gdy stworzyliśmy użytkownika IAM, możemy kontynuować AWS CLI. Interfejs AWS CLI może być zainstalowany na lokalnym komputerze. Zainstalowaliśmy AWS CLI na naszym Ubuntu 20.04 Maszyna. Połączymy się teraz z naszym kontem AWS IAM, korzystając z poświadczeń użytkowników, które pobraliśmy wcześniej podczas tworzenia użytkownika. Plik poświadczeń, nazwany „new_user_credentials.CSV ”, zawiera„ Identyfikator klucza dostępu ”,„ Klucz tajnego dostępu ”,„ link logowania konsoli ”, jak pokazano poniżej:

Teraz skonfigurujemy nasz lokalny terminal maszyny do używania go z AWS. Otwórz nowy terminal i wpisz:

$ AWS konfiguruj

Poprosi o identyfikator klucza dostępu, tajny klucz dostępu, nazwę preferowanego regionu i format wyjściowy (JSON, YAML, tekst lub tabela). Wprowadź tutaj swoje poświadczenia i preferencje. Na poniższym zdjęciu możesz zobaczyć, jakie wartości wybraliśmy dla tych parametrów:

To jest proces konfigurowania AWS CLI dla naszego użytkownika IAM.

Możesz zobaczyć z poniższego zrzutu ekranu konsoli zarządzania użytkownika IAM, którego do tej pory nie utworzyliśmy żadnej instancji bazy danych:

Okej, przed próbą utworzenia nowej instancji RDS DB, musimy znać nasze wymagania. Na przykład, którego silnik bazy danych do użycia, jaki powinien być procesor, pojemność pamięci i rozmiar pamięci, którego szablon do użycia i tak dalej. Wszystkie te wspomniane cechy są zdobywane za pomocą ich konkretnych poleceń. Dokument AWS ma pełną listę parametrów, których możesz użyć. Do tego przewodnika użyjemy następujących parametrów:

-DB-instance-identifier: Określ nazwę do użycia dla instancji DB.

-DB-instance Class: Określ konfigurację instancji DB pod względem pamięci. Liczba VCPU, pojemność I/O itp.

-Silnik: Podaj silnik bazy danych do użycia z instancją DB.

-Master-Username: Podaj nazwę użytkownika głównego dla klastra DB.

-Master-User-Password: Podaj hasło dla użytkownika głównego.

-Alokated-Storage: Określ pojemność magazynowania w Gibibytes (GIB) dla instancji DB.

-Period kopii zapasowej: Określ czas (w liczbie dni), dla którego zostanie zachowana automatyczna kopia zapasowa instancji DB.

Teraz, gdy znamy wszystkie parametry, których chcemy używać z naszym instancją RDS DB, utwórzmy instancję RDS DB z następującą konfiguracją:

silnik = mysql

DB-instance-identyfier = db-linuxhint

db-instance-klasa = db.T2.mikro

alokowany storage = 20

Master-Username = demo

Master-User-Password = 12345678

Akwencja kopii zapasowej-retencyjna = 0

Następnie utworzyliśmy użytkownika IAM, dołączyliśmy go do niezbędnych zasad, skonfigurowaliśmy AWS CLI i wybraliśmy nasze parametry bazy danych. Teraz nadszedł czas, aby stworzyć naszą instancję RDS DB. Na lokalnym terminalu maszyny wprowadź następujące polecenie:

$ AWS RDS Create-DB-instance--DB-instance-identifier DB-Linuxhint-DB-instance-klasy DB.T2.Micro-Engine MySQL-Master-User-Password 12345678-Demo-Master-Username-Allokated-Storage 20-Backup-Retention-Aeriod 0

Po wprowadzeniu poprzedniego polecenia wyjście formatu JSON zacznie pojawiać się na terminalu:

W konsoli Amazon RDS użytkownika możesz zobaczyć, jak dodano nową instancję DB:

W pełni utworzenie instancji DB zajmie około 1-2 min. Po kliknięciu etykiety „Instancje DB” możesz zobaczyć utworzony DB. Wykonaj Stop, Rwiecuj i usuń działanie stąd:

Ostateczna uwaga: Nie zapomnij oczyszczyć zasobów, które nie są używane, aby uniknąć nieoczekiwanych opłat.

Wniosek

Gratulacje, pomyślnie stworzyliśmy instancję MySQL RDS BD za pomocą AWS CLI. Wiele osób i samouczków online korzysta z konta użytkownika głównego do zarządzania zasobami AWS, takimi jak RDS, EC2 itp. Ale nie użyliśmy konta głównego. Zamiast tego użyliśmy konta użytkownika IAM, aby uruchomić tę instancję DB, która jest dość dobrą praktyką z punktu widzenia bezpieczeństwa. Dodatkowo zapewniliśmy temu użytkownikowi IAM minimalne uprawnienia wymagane dla użytkownika do utworzenia instancji RDS DB. Mamy nadzieję, że ten artykuł jest pomocny. Sprawdź inne artykuły z Linux, aby uzyskać więcej wskazówek i informacji.