Wprowadzenie do szablonów AWS CloudFormation

AWS CloudFormation to usługa, która zarządza i ustawia różne zasoby AWS razem, dzięki czemu można poświęcić czas na ich wykonanie, a czas poświęcony na różne aplikacje w Amazon Web Services można zwiększyć. Aby to osiągnąć, używany jest szablon zawierający wszystkie zasoby, których potrzebuje użytkownik. Te szablony są znane jako szablony CloudFormation. Za pomocą tych szablonów AWS CloudFormation zajmuje się konfigurowaniem i udostępnianiem tych zasobów dla użytkownika. Struktura i działanie szablonu zostały opisane w następnej sekcji.

Szablony CloudFormation

Szablon Amazon CloudFormation to sformatowany plik tekstowy w języku YAML lub JSON. Szablony te można utworzyć za pomocą konsoli lub ręcznie pisząc skrypt. W konsoli zasoby zostaną przeciągnięte i upuszczone przez użytkownika. Po zakończeniu skrypt JSON lub YAML zostanie wygenerowany automatycznie, a użytkownik może go edytować, jeśli chce. Aby zmodyfikować lub edytować szablon, użytkownik może użyć dowolnego narzędzia do edycji tekstu lub projektanta AWS CloudFormation. Aby pisać, należy przestrzegać określonego formatu następujących obiektów. Główne obiekty szablonu CloudFormation opisano poniżej.

1. Format: tutaj zdefiniowano wersję szablonu AWS CloudFormation.

Przykład:

(
"AWSTemplateFormatVersion": "2019-09-09"
)

2. Opis: W tym obiekcie można zanotować wszelkie komentarze lub opisy dotyczące szablonu.

Przykład:

(
"Description": "An Amazon Redshift cluster is created within a Virtual Private Cloud”
)

3. Metadane: Dalsze informacje o szablonie są zdefiniowane w języku JSON lub YAML.

Przykład:

(
"Metadata":
(
"AWS::CloudFormation::Interface": ()
)

4. Parametry: Dostosowywanie szablonów można wykonać za pomocą parametrów. Odbywa się to poprzez podanie niestandardowych wartości do szablonu podczas tworzenia lub aktualizacji stosu.

Przykład:

"Parameters" :
(
"KeyName": ()
"InstanceType" : ()
"DBName" : ()
"DBUser" : ()
"DBPassword" : ()
)

5. Mapowania: Na podstawie wartości parametru warunkowego użytkownik będzie mógł zamapować na nim klucz. Ponadto z mapy użytkownicy mogą pobierać wartości za pomocą funkcji wewnętrznej „Fn :: FindInMap”.

Przykład:

(
"AWSInstanceType2Arch" :
(
"t1.micro" : ( "Arch" : "HVM64" ),
.
.
"t2.large" : ( "Arch" : "HVM64" ),
"m1.small" : ( "Arch" : "HVM64" ),
.
"m1.large" : ( "Arch" : "HVM64" )
)

6. Zasoby: W sekcji Zasoby w szablonie AWS CloudFormation można zadeklarować zasoby, takie jak segment AWS Simple Storage Services (S3), AWS Lambda. Te zasoby można również tworzyć i określać na stosie.

Przykład:

"Resources" :
(
"WebServerSecurityGroup" :
(
"Type" : " ",
"Properties" :
(
"GroupDescription" : "",
"SecurityGroupIngress" :() )
)
)

7. Dane wyjściowe: Sekcja danych wyjściowych zawiera wartości, które należy zaimportować do innych stosów lub te, które są zwracane podczas przeglądania własnych właściwości stosu.

Przykład:

"Outputs" :
(
"Description" : "”
“Value”: “”
)
)

Teraz połączmy wszystkie te sekcje i zobaczmy, jak będzie wyglądał szablon.

Przykładowy szablon

(
"AWSTemplateFormatVersion": "2019-09-09"
"Description": "An Amazon Redshift cluster is created within a Virtual Private Cloud”
"Metadata": (
"AWS::CloudFormation::Interface": ()
)
"Parameters" : (
"KeyName": ()
"InstanceType" : ()
"DBName" : ()
"DBUser" : ()
"DBPassword" : ()
)
"Mappings" :
(
"AWSInstanceType2Arch" :
(
"t1.micro" : ( "Arch" : "HVM64" ),
.
.
"t2.large" : ( "Arch" : "HVM64" ),
"m1.small" : ( "Arch" : "HVM64" ),
.
"m1.large" : ( "Arch" : "HVM64" )
)
"Resources" :
(
"WebServerSecurityGroup" :
(
"Type" : " ",
"Properties" :
(
"GroupDescription" : "",
"SecurityGroupIngress" :() )
)
)
"Outputs" :
(
"Description" : "”
“Value”: “”
)
)

Po utworzeniu szablonu użytkownik może załadować szablon do stosu.

Konfigurowanie stosu CloudFormation

Stos w AWS to zbiór zasobów, którymi może zarządzać jedna jednostka. Zasoby można tworzyć, usuwać i aktualizować, tworząc, usuwając i aktualizując stosy. Zobaczmy teraz, jak uruchamiamy ten stos i używamy w nim szablonu CloudFormation.

1. Zarejestruj konto AWS, jeśli go nie masz. Jeśli jest już obecny, zaloguj się przy użyciu poświadczeń.

2. Otwórz konsolę AWS CloudFormation, używając adresu URL https://console.aws.amazon.com/cloudformation.

3. Jeśli masz nowe konto CloudFormation, kliknij Utwórz nowy stos. W przeciwnym razie utwórz stos.

4. Wybierz opcję Prześlij szablon do Amazon S3 z Wybierz szablon. Prześlij szablon, wybierając Wybierz plik lub podając adres URL.

5. Należy pamiętać, że jeśli szablon CloudFormation jest przechowywany w segmencie S3, użytkownik musi mieć do niego dostęp, a regiony segmentu i stosu S3 powinny być takie same.

6. Podaj odpowiednią nazwę stosu w sekcji Określ szczegóły do ​​stosu CloudFormation.

7. Podaj nazwę EC2 Keypair w KeyName

8. Upewnij się, że para kluczy EC2 i stos znajdują się w tym samym regionie.

9. Kliknij przycisk Dalej.

10. Pojawi się strona z opcjonalnymi polami wprowadzania, takimi jak tag. Znaczniki pomagają w identyfikacji stosów, ponieważ zawierają pary klucz-wartość. Ale teraz nie tworzymy żadnych tagów.

11. Przejrzyj szczegóły i wybierz Utwórz.

12. Postęp tworzenia stosu można teraz zobaczyć w zakładce Zdarzenia. Jeśli trwa tworzenie stosu, zostanie wyświetlony stan CREATE_IN_PROGRESS, a jeśli tworzenie zostanie zakończone, pojawi się stan CREATE_COMPLETED.

13. Po utworzeniu stosu użytkownik może rozpocząć korzystanie z zasobów. Aby uniknąć dodatkowych opłat za niechciane usługi, zaleca się usunięcie stosów i ich zasobów.

Aby usunąć stos, można wykonać następujące kroki.

  • Przejdź do konsoli CloudFormation i wybierz utworzony stos.
  • Kliknij Usuń stos.
  • Kliknij Tak, Usuń, gdy pojawi się komunikat potwierdzający.

Wniosek

Szablony CloudFormation pomagają w udostępnianiu i konfigurowaniu zasobów dla użytkownika, dzięki czemu można skrócić czas wykonywania operacji na wielu zasobach i zwiększyć koncentrację na różnych aplikacjach w Amazon Web Services. Tworzenie i korzystanie z tych szablonów omówiono w powyższej sekcji.

Polecany artykuł

Jest to przewodnik po szablonach AWS CloudFormation. Tutaj omawiamy wprowadzenie i różne szablony CloudFormation wraz z przykładami. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -

  1. Architektura AWS
  2. Usługi AWS
  3. Co to jest AWS CloudFront
  4. Pytania do wywiadu AWS
  5. Usługi pamięci masowej AWS
  6. Konkurenci AWS | 7 najlepszych konkurentów AWS z funkcjami
  7. Chmura prywatna a chmura publiczna
  8. Co to jest Private Cloud?

Kategoria: