Развертывание экземпляра WordPress Amazon Lightsail с помощью Terraform

В последнее время я изучаю Terraform и приобретаю привычку развертывать инфраструктуру как код у различных поставщиков облачных услуг, уже давно я не находил случая использования инфраструктуры на AWS.

Вдохновением для этой статьи послужило путешествие по дорогам памяти примерно в конце 2021 года, когда я проходил этап изучения WordPress и сначала использовал Amazon Lightsail для хостинга WordPress, по какой-то причине я использовал графический интерфейс для предоставления экземпляра Amazon Lightsail.

Ранее я изучал документацию по использованию CloudFormation, но так и не решился использовать этот способ для Lightsail. Теперь, когда все это в прошлом, я обрел уверенность и понимание использования инфраструктуры как кода и, в частности, Terraform, пришло время решить эту прошлогоднюю мини-задачу.

HashiCorp Terraform — это инструмент инфраструктуры как кода, позволяющий определять облачные и локальные ресурсы в человекочитаемых конфигурационных файлах, которые можно редактировать, повторно использовать и совместно использовать.

Если вы новичок в Terraform, возможно, стоит прочитать официальную документацию или посмотреть потрясающее вводное видео от Наны Джанашиа:

Что такое Terraform | Terraform by HashiCorp

Terraform объясняется за 15 минут | Terraform Tutorial for Beginners

Предварительные условия:

— Учетная запись AWS
— Настроен именованный профиль
— Terraform должен быть установлен
— Visual Studio Code
— Расширение AWS Toolkit для VS Code

Весь код в этом блоге можно найти в репозитории:

Amazon-Lightsail-Terraform .

После клонирования репозитория вам нужно будет запустить команду terraform init, эта команда используется для инициализации рабочей директории, содержащей наши конфигурационные файлы Terraform.

Я включил файл variables.tf, чтобы уйти от как можно большего количества жестко закодированных значений в файле main.tf.

Это обеспечит универсальность и сделает шаблон многократно используемым для различных типов чертежей Lightsail, например, LAMP, Node.js, Joomla, GitLab и т.д.

Официальную документацию AWS по блюпринтам можно найти здесь.

Чтобы найти доступные идентификаторы чертежей, введите следующую команду в AWS CLI:

aws lightsail get-blueprints

После того, как вы ввели нужные параметры в файл variables.tf, вы можете применить конфигурацию с помощью terraform apply, и экземпляр Amazon Lightsail будет инициализирован.

Полезные ресурсы:

Ресурс: aws_lightsail_instance

Регионы и зоны доступности в Amazon Lightsail

Оцените статью
Procodings.ru
Добавить комментарий