6. Код Terraform промышленного уровня
Построение инфраструктуры промышленного уровня — сложный и напряженный процесс, который отнимает много времени. Под
Я имел возможность работать с сотнями компаний. Исходя из этого опыта, при оценке времени, которое может уйти на разработку проекта промышленного уровня, нужно учитывать следующее.
• Если вы хотите развернуть сервис, который будет полностью управляться третьим лицом (например, запустить MySQL в AWS Relational Database Service (RDS)), на его подготовку к промышленному использованию может уйти от одной до двух недель.
• Если вы хотите сами запускать свое распределенное приложение, которое не хранит состояние, как в случае с кластером Node.js без каких-либо локальных данных (например, данные могут храниться в RDS), запущенным поверх группы автомасштабирования AWS (ASG), для его подготовки к промышленному использованию понадобится где-то вдвое больше времени, или около четырех недель.
• Если вы хотите сами запускать свое распределенное приложение с сохранением состояния, как в случае с кластером Amazon Elasticsearch (Amazon ES) поверх ASG, который хранит данные на локальных дисках, вам потребуется на порядок больше времени — от двух до четырех месяцев.
• Если вы хотите разработать целую архитектуру, включая все свои приложения, хранилища данных, балансировщики нагрузки, мониторинг, механизм оповещения, безопасность и т. д., необходимое время увеличивается еще на 1–2 порядка — примерно от 6 до 36 месяцев работы. В случае с мелкими компаниями этот срок приближается к шести месяцам, а у крупных организаций на это обычно уходят годы.
Эти данные собраны в табл. 6.1.
Таблица 6.1. Сколько займет построение инфраструктуры промышленного уровня с нуля
Тип инфраструктуры
Пример
Примерные сроки
Управляемый сервис
Amazon RDS
1–2 недели
Распределенная система с самостоятельным размещением (без состояния)
Кластер приложений Node.js
2–4 недели
Распределенная система с самостоятельным размещением (с состоянием)
Amazon ES
2–4 месяца
Целая архитектура
Приложения, хранилища данных, балансировщики нагрузки, мониторинг и т. д.
6–36 месяцев
Если вы еще не проходили через процесс построения инфраструктуры промышленного уровня, эти цифры могут вас удивить. Я часто встречаю реакции наподобие следующих.
• «Так долго? Как такое возможно?»
• «Я могу развернуть сервер на <облако> за пару минут. На то, чтобы сделать все остальное, точно не могут уйти месяцы!»
• И повсеместно от слишком самоуверенных инженеров: «Не сомневаюсь, что эти цифры справедливы для других людей, но я смогу сделать это за несколько дней».
Тем не менее человек с опытом большой облачной миграции или построения совершенно новой инфраструктуры с нуля знает, что эти цифры не то что реальные, но еще и оптимистичные, — на самом деле это идеальный случай. Если в вашей команде нет людей с глубокими знаниями в области построения инфраструктуры промышленного уровня или вам приходится заниматься сразу десятком разных направлений и вы не успеваете сосредоточиться на каждом из них, этот процесс может затянуться еще сильнее.
В этой главе я объясню, почему построение инфраструктуры промышленного уровня занимает столько времени, что собой представляет этот промышленный уровень и какие методики лучше всего подходят для создания универсальных модулей, готовых к использованию в реальных условиях.
• Почему построение инфраструктуры промышленного уровня требует так много времени.
• В чем состоят требования к инфраструктуре промышленного уровня.
Мы также рассмотрим инфраструктурные модули промышленного уровня:
• мелкие модули;
• компонуемые модули;
• тестируемые модули;
• модули, готовые к выпуску;
• модули вне Terraform.
Примеры кода
Напоминаю: все примеры кода для этой книги можно найти по адресу github.com/brikis98/terraform-up-and-running-code.
Почему построение инфраструктуры промышленного уровня требует так много времени
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии