Разница между инфраструктурой как кодом и автоматизацией инфраструктуры

#ansible #terraform #infrastructure #infrastructure-as-code

Вопрос:

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

Комментарии:

1. Инфраструктура как код-это управление и подготовка инфраструктуры с помощью кода, а не вручную. В соответствии с чем автоматизация заключается в использовании технологий для выполнения задач без участия человека.

Ответ №1:

Ключевое различие между IaC и «просто автоматизацией» заключается в полноте охвата инфраструктуры.

Если у вас время от времени возникают искры «роботы делают это», это автоматизация. Вам больше не нужно идти и делать это руками, хорошая автоматизация, спасибо.

Если чтение вашего репо позволяет полностью понять вашу инфраструктуру, это IaC. В принципе, при простой автоматизации наличие неавтоматизированного сервера нормально (если это не отнимает слишком много времени). В IaC это большая проблема, потому что у вас есть магический артефакт (неавтоматизированный сервер), и вы не можете понять, что это такое, просто прочитав git.

Вторая ключевая особенность заключается в том, что ваша инфраструктура полностью воспроизводима с помощью git. Вы переехали в новый DC (новый хостер, новый что угодно), запустили код и, бум, запустили свое производство.

В-третьих, это количество тестов вашего IaC. Можете ли вы обнаружить ошибку в своих сборниках пьес/кулинарных книгах/чем угодно, прежде чем они попадут в производство или нет?