Úvod do AWS CloudFormation šablon

AWS CloudFormation je služba, která spravuje a nastavuje různé zdroje AWS dohromady, takže čas potřebný k jejich provedení může být zkrácen a může být zvýšeno časové zaměření na různé aplikace v Amazon Web Services. K dosažení tohoto cíle se používá šablona, ​​která obsahuje všechny zdroje, které uživatel potřebuje. Tyto šablony jsou známé jako šablony CloudFormation. S pomocí těchto šablon se AWS CloudFormation stará o konfiguraci a zajištění těchto zdrojů pro uživatele. Struktura a fungování šablony jsou popsány v následující části.

Šablony CloudFormation

Šablona Amazon CloudFormation je formátovaný textový soubor v jazyce YAML nebo JSON. Tyto šablony lze vytvořit buď pomocí konzoly, nebo ručně psát skript. V konzole budou prostředky přetaženy uživatelem. Po dokončení bude automaticky vygenerován skript JSON nebo YAML a uživatel jej může upravit, pokud chce. K úpravě nebo úpravě šablony může uživatel použít jakýkoli textový editor nebo návrháře AWS CloudFormation. Aby bylo možné psát, musí být dodržen určitý formát s následujícími objekty. Hlavní objekty šablony CloudFormation jsou popsány níže.

1. Formát: Zde je definována verze šablony AWS CloudFormation.

Příklad:

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

2. Popis: V tomto objektu lze zaznamenat jakékoli komentáře nebo popisy šablony.

Příklad:

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

3. Metadata: Další informace o šabloně jsou definovány v jazyce JSON nebo YAML.

Příklad:

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

4. Parametry: Šablony lze přizpůsobit pomocí parametrů. Je to tím, že šabloně při vytváření nebo aktualizaci zásobníku přidáváte vlastní hodnoty.

Příklad:

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

5. Mapování: Na základě hodnoty v podmíněném parametru bude uživateli umožněno mapovat klíč na něj. Navíc mohou uživatelé z mapy načítat hodnoty pomocí vlastní funkce „Fn :: FindInMap“.

Příklad:

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

6. Zdroje: V části Zdroje v šabloně AWS CloudFormation je možné deklarovat zdroje, jako je kbelík AWS Simple Storage Services (S3), AWS Lambda. Tyto prostředky lze také vytvořit a specifikovat v zásobníku.

Příklad:

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

7. Výstup: Výstupní sekce obsahuje hodnoty, které je třeba importovat do jiných zásobníků nebo těch, které jsou vráceny při prohlížení vlastních vlastností zásobníku.

Příklad:

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

Nyní spojme všechny tyto oddíly a uvidíme, jak bude šablona vypadat.

Ukázka šablony

(
"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 vytvoření šablony může uživatel nahrát šablonu do zásobníku.

Konfigurace CloudFormation Stack

Zásobník v AWS je kolekce prostředků, které může spravovat jedna jednotka. Prostředky lze vytvořit, odstranit a aktualizovat vytvořením, odstraněním a aktualizací zásobníků. Nyní se podívejme, jak spustíme tento zásobník a v něm použijeme šablonu CloudFormation.

1. Pokud účet AWS nemáte, zaregistrujte se. Pokud již existuje, přihlaste se pomocí přihlašovacích údajů.

2. Otevřete konzolu AWS CloudFormation pomocí adresy URL https://console.aws.amazon.com/cloudformation.

3. Pokud máte nový účet CloudFormation, klikněte na Create New Stack. Jinak, vytvořte zásobník.

4. Z nabídky Vyberte šablonu vyberte Nahrát šablonu do Amazonu S3. Nahrajte svou šablonu výběrem možnosti Vybrat soubor nebo zadáním adresy URL.

5. Vezměte prosím na vědomí, že pokud je šablona CloudFormation uložena v kbelíku S3, musí mít uživatel přístup k tomuto a oblasti S3 kbelíku a zásobníku by měly být stejné.

6. Do pole CloudFormation Stack zadejte příslušný název zásobníku v části Zadat podrobnosti.

7. Zadejte název EC2 Keypair v KeyName

8. Ujistěte se, že klíčenka EC2 a zásobník jsou ve stejné oblasti.

9. Klepněte na tlačítko Další.

10. Zobrazí se stránka s některými volitelnými vstupními poli, jako je tag. Značky pomáhají při určování zásobníků, protože obsahují páry klíč-hodnota. Nyní ale nevytváříme žádné značky.

11. Zkontrolujte podrobnosti a vyberte Vytvořit.

12. Průběh vytváření zásobníku lze nyní vidět na kartě Události. Pokud vytváření zásobníku probíhá, zobrazí se stav CREATE_IN_PROGRESS a pokud je vytvoření dokončeno, zobrazí se stav CREATE_COMPLETED.

13. Po vytvoření zásobníku může uživatel začít používat zdroje. Aby nedocházelo k dodatečným poplatkům za nežádoucí služby, doporučuje se odstranit hromádky a jejich zdroje.

K odstranění zásobníku lze použít následující kroky.

  • Přejděte do konzole CloudFormation a vyberte zásobník, který jste vytvořili.
  • Klikněte na Odstranit zásobník.
  • Po zobrazení potvrzovací zprávy klikněte na Ano, Odstranit.

Závěr

CloudFormation Templates pomáhá při zajišťování a konfiguraci zdrojů pro uživatele, takže se může zkrátit čas potřebný k provedení operací na více prostředcích a může se zvýšit zaměření na různé aplikace, které jsou v Amazon Web Services. Vytváření a používání těchto šablon je popsáno ve výše uvedené části.

Doporučený článek

Toto je průvodce šablonami AWS CloudFormation. Zde diskutujeme úvod a různé šablony CloudFormation spolu s příklady. Další informace naleznete také v dalších navrhovaných článcích -

  1. Architektura AWS
  2. Služby AWS
  3. Co je AWS CloudFront
  4. Interview Otázky AWS
  5. AWS Storage Services
  6. Konkurenti AWS | Top 7 konkurentů AWS s funkcemi
  7. Soukromý cloud vs. veřejný cloud
  8. Co je Private Cloud?

Kategorie: