Ключевой компонент IaC

Если вы погружаетесь в постоянно развивающийся мир облачных вычислений и инфраструктуры как кода (IaC), вы абсолютно не можете игнорировать один инструмент — это JSON, также известный как нотация объектов JavaScript.

На самом деле это не язык программирования, а облегченный формат обмена данными. По сравнению с другими языками программирования, его легко читать и писать для людей, а для машин он как родной язык.

Чтобы получить представление об облаке и IaC, вам понадобится прочная основа в JSON.

JSON: что, почему и как?

  • Что. JSON – это способ кодирования структур данных, которые не зависят ни от языка, ни от формата. Думайте об этом как о надежном посреднике, обеспечивающем беспрепятственную передачу данных между серверами и веб-приложениями.
  • Почему? Все дело в передаче данных. Облачные сервисы полагаются на передачу данных, и IaC нужен общий язык для определения и предоставления инфраструктуры. Вот где JSON вступает в игру.
  • Как: формат JSON является текстовым, что упрощает отправку данных между серверами и легко конвертируется в JavaScript (важный язык по многим причинам).

JSON в облаке

Почти все поставщики облачных услуг (AWS, Google Cloud, Azure и т. д.) в значительной степени полагаются на JSON для настройки своих служб.

Когда вы хотите запустить новый экземпляр или развернуть бессерверную функцию, вы будете обрабатывать файлы JSON.

Например, рассмотрим CloudFormation от AWS. Вы можете создать всю свою облачную настройку, от инстансов EC2 до баз данных RDS, в файлах шаблонов в формате JSON.

Это помогает поддерживать согласованные и предсказуемые среды благодаря удобочитаемой и общепонятной структуре JSON.

JSON и IaC

Когда мы добавляем IaC в уравнение, JSON становится более актуальным, чем когда-либо.

Такие инструменты, как Terraform, Ansible и Pulumi, используют JSON для определения и управления инфраструктурой, настраивая все, от сети до кластеров Kubernetes.

Вот базовый пример того, как выглядит JSON в конфигурации Terraform: