Бесплатная библиотека
Читайте книгу на сайте или телефоне
READ-E-BOOK » Прочая компьютерная литература » Terraform: инфраструктура на уровне кода [Terraform: Up & Running: Writing Infrastructure as Code 2nd Edition]
Terraform: инфраструктура на уровне кода [Terraform: Up & Running: Writing Infrastructure as Code 2nd Edition] - Читать Любимую Русскую Полную Книгу 👉 Read-E-Book.com

Terraform: инфраструктура на уровне кода [Terraform: Up & Running: Writing Infrastructure as Code 2nd Edition]

Электронная книга - «Terraform: инфраструктура на уровне кода [Terraform: Up & Running: Writing Infrastructure as Code 2nd Edition]». Краткое содержание книги:

Terraform является настоящей звездой в мире DevOps. Это технология, позволяющая конфигурировать, запускать и управлять облачной инфраструктурой. «Инфраструктура как код» (IaC) позволяет оптимально использовать виртуализированные платформы таких технологических гигантов, как AWS, Google Cloud, Azure и другие. Евгений Брикман приводит простотые и лаконичные примеры кода, который используется в Terraform для развертывания инфраструктуры и управления ею. Бывалые сисадмины, DevOps-инженеры и разработчики-новички быстро перейдут от основ Terraform к работе с полным стеком, способным поддерживать большие объемы трафика и гарантируют стабильные условия для работы большой команды специалистов.
1 2 3 4 5 6 7 8 9 10 ... 20
Перейти на страницу:

• Переработанные механизмы хранения состояния. В Terraform 0.9 появилась концепция внутренних хранилищ. Это полноценный механизм хранения и разделения состояния Terraform со встроенной поддержкой блокирования. В Terraform 0.9 также были представлены окружения состояния, которые позволяют управлять развертываниями в разных средах; но уже в версии 0.10 им на смену пришли рабочие области. Все эти темы рассматриваются в главе 3.

• Вынос провайдеров из ядра Terraform. В Terraform 0.10 из ядра был вынесен код для всех провайдеров (то есть код для AWS, GCP, Azure и т. д.). Благодаря этому разработка провайдеров теперь ведется в отдельных репозиториях, в своем собственном темпе и с выпуском независимых версий. Однако теперь придется загружать код провайдера с помощью команды terraforminit каждый раз, когда вы начинаете работать с новым модулем. Об этом пойдет речь в главах 2 и 7.

• Большое количество новых провайдеров. В 2016 году проект Terraform официально поддерживал лишь несколько основных облачных провайдеров (AWS, GCP и Azure). Сейчас же их количество превысило 100, а провайдеров, разрабатываемых сообществом, и того больше2. Благодаря этому вы можете использовать код для работы не только с множеством разных облаков (например, теперь существуют провайдеры для Alicloud, Oracle Cloud Infrastructure, VMware vSphere и др.), но и с другими аспектами окружающего мира, включая системы управления версиями (GitHub, GitLab или BitBucket), хранилища данных (MySQL, PostreSQL или InfluxDB), системы мониторинга и оповещения (включая DataDog, New Relic или Grafana), платформы наподобие Kubernetes, Helm, Heroku, Rundeck или Rightscale и многое другое. Более того, сейчас у каждого провайдера намного лучше покрытие: скажем, провайдер для AWS охватывает большинство сервисов этой платформы, а поддержка новых сервисов часто появляется даже раньше, чем у CloudFormation!

• Реестр модулей Terraform. В 2017 году компания HashiCorp представила реестр модулей Terraform (registry.terraform.io) — пользовательский интерфейс, который облегчает просмотр и загрузку открытых универсальных модулей Terraform, разрабатываемых сообществом. В 2018 году была добавлена возможность запускать внутри своей организации закрытый реестр. В Terraform 0.11 появился полноценный синтаксис для загрузки модулей из реестра. Подробнее об этом читайте в разделе «Управление версиями» на с. 153.

• Улучшенная обработка ошибок. В Terraform 0.9 обновилась обработка ошибок состояния: если при записи состояния в удаленное хранилище обнаруживается ошибка, это состояние сохраняется локально, в файле errored.tfstate. В Terraform 0.12 механизм был полностью переработан. Теперь ошибки перехватываются раньше, а сообщения о них стали более понятными и содержат путь к файлу, номер строчки и фрагмент кода.

• Много других мелких изменений. Было сделано много менее значительных изменений, включая появление локальных переменных (см. раздел «Локальные переменные модулей» на с. 144), новые «аварийные люки» для взаимодействия с внешним миром с помощью скриптов (например, подраздел «Модули вне Terraform» на с. 242), выполнение plan в рамках команды apply (см. раздел «Развертывание одного сервера» на с. 64), исправление циклических проблем с create_before_destroy, значительное улучшение параметра count, которое позволяет ссылаться в нем на источники данных и ресурсы (см. раздел «Циклы» на с. 160), десятки новых встроенных функций, обновленное наследование provider и многое другое.

Чего нет в этой книге

Книга не задумывалась как исчерпывающее руководство по Terraform. Она не ­охватывает все облачные провайдеры, все ресурсы, которые поддерживаются каждым из них, или каждую команду, доступную в этой системе. За этими подробностями я отсылаю вас к документации по адресу https://www.terraform.io/docs/index.html.

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

1 2 3 4 5 6 7 8 9 10 ... 20
Перейти на страницу:
0
Сюжет
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
0
Атмосфера
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
0
Главный герой
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
0
Общее впечатление
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Итоговая оценка: 0.0 из 10 (голосов: 0 / История оценок)