Шаблоны AWS CloudFormation - 7 лучших шаблонов CloudFormation

Содержание:

Anonim

Введение в шаблоны AWS CloudFormation

AWS CloudFormation - это сервис, который управляет и устанавливает различные ресурсы AWS вместе, так что время, затрачиваемое на их выполнение, может быть уменьшено, а время сосредоточения на различных приложениях в Amazon Web Services может быть увеличено. Для этого используется шаблон, который содержит все ресурсы, которые нужны пользователю. Эти шаблоны известны как шаблоны CloudFormation. С помощью этих шаблонов AWS CloudFormation заботится о настройке и предоставлении этих ресурсов для пользователя. Структура и работа шаблона описаны в следующем разделе.

Шаблоны CloudFormation

Шаблон 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

Стек в 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. Укажите имя пары ключей EC2 в KeyName.

8. Убедитесь, что пара ключей EC2 и стек находятся в одном регионе.

9. Нажмите Далее.

10. Появится страница с некоторыми необязательными полями ввода, такими как тег. Теги помогают идентифицировать стеки, поскольку они содержат пары ключ-значение. Но сейчас мы не создаем никаких тегов.

11. Просмотрите сведения и выберите «Создать».

12. Ход создания стека можно увидеть на вкладке «События». Если создание стека продолжается, будет показан статус CREATE_IN_PROGRESS, а если создание завершено, будет показан статус CREATE_COMPLETED.

13. После создания стека пользователь может начать использовать ресурсы. Чтобы избежать дополнительных расходов на нежелательные услуги, рекомендуется удалить стеки и их ресурсы.

Чтобы удалить стек, можно использовать следующие шаги.

  • Перейдите в консоль CloudFormation и выберите созданный вами стек.
  • Нажмите Удалить стек.
  • Нажмите Да, Удалить, когда появится подтверждающее сообщение.

Вывод

CloudFormation Templates помогает в предоставлении и настройке ресурсов для пользователя, так что время, затрачиваемое на выполнение операций с несколькими ресурсами, может быть уменьшено, а концентрация на различных приложениях в Amazon Web Services может быть увеличена. Создание и использование этих шаблонов обсуждаются в разделе выше.

Рекомендуемая статья

Это руководство по шаблонам AWS CloudFormation. Здесь мы обсуждаем введение и различные шаблоны CloudFormation вместе с примерами. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Архитектура AWS
  2. Сервисы AWS
  3. Что такое AWS CloudFront?
  4. Вопросы интервью AWS
  5. Сервисы хранения AWS
  6. Конкуренты AWS | 7 лучших конкурентов AWS с возможностями
  7. Частное Облако против Общественного Облака
  8. Что такое частное облако?