Вступ у шаблони формату AWS CloudFormation

AWS CloudFormation - це служба, яка управляє та встановлює різні ресурси AWS разом, щоб час їх виконання можна скоротити і час фокусування на різних додатках у веб-службах Amazon можна збільшити. Для досягнення цього використовується шаблон, який містить усі ресурси, необхідні користувачеві. Ці шаблони відомі як шаблони CloudFormation. За допомогою цих шаблонів AWS CloudFormation піклується про налаштування та надання цих ресурсів для користувача. Структура та робота шаблону описані в наступному розділі.

Шаблони формування Cloud Cloud

Шаблон Amazon CloudFormation - це форматований текстовий файл на мові YAML або JSON. Ці шаблони можна створити за допомогою консолі або записати сценарій вручну. У консолі користувач буде перетягувати та скидати ресурси. Після його завершення сценарій JSON або YAML буде створений автоматично, і користувач може редагувати його, якщо захоче. Для зміни або редагування шаблону користувач може використовувати будь-який інструмент редагування тексту або дизайнер AWS CloudFormation. Для того, щоб писати, слід дотримуватися певного формату з наступними об'єктами. Основні об'єкти шаблону CloudFormation описані нижче.

1. Формат: Тут визначена версія шаблону AWS CloudFormation.

Приклад:

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

2. Опис: Будь-які коментарі чи описи щодо шаблону можуть бути помічені в цьому об'єкті.

Приклад:

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

3. Метадані: Детальна інформація про шаблон визначається в JSON або YAML Мова.

Приклад:

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

4. Параметри: Налаштування шаблонів можна здійснити за допомогою параметрів. Це шляхом надання спеціальних значень шаблону, коли стек створюється або оновлюється.

Приклад:

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

5. Відображення: Виходячи зі значення умовного параметра, користувачеві буде дозволено відобразити ключ до нього. Крім того, з карти користувачі можуть отримати значення за допомогою внутрішньої функції "Fn :: FindInMap".

Приклад:

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

6. Ресурси: У розділі "Ресурси" в шаблоні AWS CloudFormation можна оголосити такі ресурси, як відро AWS Simple Storage Services (S3), AWS Lambda. Ці ресурси також можна створити і вказати в стеці.

Приклад:

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

7. Вихід: розділ виводу містить значення, які потрібно імпортувати в інші стеки або ті, які повертаються під час перегляду власних властивостей стека.

Приклад:

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

Тепер давайте поєднаємо всі ці розділи і подивимось, як виглядатиме шаблон.

Зразок шаблону

(
"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”: “”
)
)

Після створення шаблону користувач може завантажити шаблон у стек.

Налаштування CloudFormation Stack

Стек в AWS - це сукупність ресурсів, якими може управляти одне ціле. Ресурси можна створювати, видаляти та оновлювати, створюючи, видаляючи та оновлюючи стеки. Тепер давайте подивимося, як ми запускаємо цей стек і використовуємо шаблон CloudFormation всередині нього.

1. Зареєструйте акаунт AWS, якщо у вас його немає. Якщо це вже є, увійдіть за допомогою облікових даних.

2. Відкрийте консоль AWS CloudFormation за допомогою URL-адреси https://console.aws.amazon.com/cloudformation.

3. Якщо у вас є новий обліковий запис CloudFormation, натисніть Створити новий стек. Ще, Створити стек.

4. Виберіть Завантажити шаблон на Amazon S3 із пункту Вибрати шаблон. Завантажте шаблон, вибравши Вибрати файл або вказавши URL-адресу.

5. Зауважте, що якщо шаблон CloudFormation зберігається у відрі S3, користувач повинен мати доступ до цього, а регіони S3 Bucket і Stack повинні бути однаковими.

6. Укажіть відповідне ім'я стека в розділі «Вказати подробиці» до свого стека CloudFormation.

7. Укажіть ім'я Key2 EC2 у KeyName

8. Переконайтесь, що ключ ключа та стек EC2 розташовані в одному регіоні.

9. Клацніть Далі.

10. З'являється сторінка з деякими необов'язковими полями введення, як тег. Теги допомагають визначити стеки, оскільки вони містять пари ключ-значення. Але зараз ми не створюємо жодних тегів.

11. Перегляньте деталі та виберіть Створити.

12. Хід створення Стек тепер можна побачити на вкладці Події. Якщо створення стека триває, буде показано статус CREATE_IN_PROGRESS, а якщо створення завершено, буде показано статус CREATE_COMPLETED.

13. Після створення Стек користувач може почати використовувати ресурси. Щоб уникнути додаткових платежів за небажані послуги, рекомендується видалити стеки та її ресурси.

Щоб видалити стек, можна використовувати наступні кроки.

  • Перейдіть до консолі CloudFormation та виберіть створений стек.
  • Клацніть Видалити стек.
  • Натисніть Так, Видалити, коли з’явиться повідомлення про підтвердження.

Висновок

Шаблони CloudFormation допомагають забезпечити та налаштувати ресурси для користувача, щоб зменшити час, необхідний для виконання операцій на кількох ресурсах, а також зосередити увагу на різних програмах, які є в веб-службах Amazon. Створення та використання цих шаблонів обговорюється у вищевказаному розділі.

Рекомендована стаття

Це посібник із шаблонів AWS CloudFormation. Тут ми обговорюємо вступ та різні шаблони CloudFormation разом із прикладами. Ви також можете ознайомитися з іншими запропонованими нами статтями, щоб дізнатися більше -

  1. AWS Архітектура
  2. Послуги AWS
  3. Що таке AWS CloudFront
  4. Питання для інтерв'ю AWS
  5. Послуги зберігання AWS
  6. Конкуренти AWS | Топ-7 конкурентів AWS з особливостями
  7. Приватна хмара проти публічної хмари
  8. Що таке приватна хмара?

Категорія: