Рубрики
Uncategorized

Как мы используем инфраструктуру как код в облаке Harperdb

Почему инфраструктура как код? Ранее в этом году мы запустили облако Harperdb, полностью управляемого … Помечено DevOps, AWS, IAC, CloudFormation.

Почему инфраструктура как код?

Ранее в этом году мы запустили Harperdb. Облако , полностью управляемая облачная размещенная версия Harperdb. Мы хотели, чтобы Облако Харпердб быть быстрым и низким образом, чтобы стать Харпердб. Зарегистрироваться , ответьте на пару вопросов, и через несколько минут у вас есть рабочий экземпляр Harperdb. Чтобы это произошло, мы поняли, что все аспекты развертывания инфраструктуры для размещения рабочей нагрузки клиентов должны быть автоматизированы. Другими словами, нам нужно использовать инфраструктуру в качестве кода (IAC)

Что такое инфраструктура как код?

Традиционно развертывание ИТ-инфраструктуры (создание виртуальных машин и установка приложений, обеспечение хранения и сетей и т. Д.) Была в основном ручная работа. Значение, IT-администраторы будут использовать серию инструментов CLI и GUI, может быть, некоторые скрипты, чтобы построить и настроить каждую часть инфраструктуры. Этот способ строительной инфраструктуры очень неэффективно и склонен к ошибке. IAC — это ответ на эти проблемы.

IAC — это способ определения набора компонентов инфраструктуры в одной или нескольких файлах конфигурации (обычно в форме YAML, JSON или аналогичного формата), которые затем передаются в инструмент программного обеспечения IAC (например, Hashicorp Terraporm или AWS Облачная информация ) Это обеспечит эти компоненты на облачной платформе. IAC позволяет строить инфраструктуру быстрой, последовательной и повторяющейся моды!

Как и почему мы используем облачность

Облако Харпердб состоит из:

  1. Harperdb Studio, наше размещенное приложение для управления вашими экземплярами Harperdb.
  2. AWS LAMBDA Функции, которые строят ресурсы AWS для запуска рабочих нагрузок клиентов (функции также делают различные другие вещи, такие как обновление наших платформ оплаты и CRM.)
  3. Ресурсы AWS, которые запускают рабочие нагрузки клиентов, такие как VPCS, EC2 экземпляры, объемы EBS, упругие балансировки нагрузки и т. Д.

Функции лямбда используют облачность для создания ресурсов AWS. Конечно, мы могли бы назвать индивидуальные AWS APIS для VPC, EC2, Route53 и т. Д. Для создания каждой из этих ресурсов, но нам придется создать логику для решения зависимостей ресурсов (ждать, чтобы построить это до тех пор, пока это будет построен) и откат Когда ресурс не может построить (экземпляр EC2 не делает никакого хорошего, если нет связанного правила ELB.) Инструмент IAC, как облака, заботится обо всем этом, и больше, для нас! 😁

Как насчет террафора?

Есть много отличных инструментов IAC, помимо облака. В настоящее время мы размещаем только рабочие нагрузки клиентов Harperdb Cloud на AWS, и мы уже используем Услуги AWS для других бэкэндских частей Harperdb Cloud ( David имеет отличную статью для большего количества об этом), поэтому используя AW Нативный инструмент IAC имел смысл. Не волнуйтесь все, что вы любите любители, мы используем и люблю инструменты Hashicorp (мы используем Упаковщик Чтобы автоматизировать сборку всех наших изображений Amazon Machine), поэтому, конечно, мы рассмотрели с использованием террафора! Облакоформация и террафору у каждого есть разные сильные стороны, но либо работает или IAC-инструмент.

С небольшим количеством помощи от системного менеджера автоматизации

Хотя облачность является потрясающим при обеспечении и прекращении ресурсов AWS, руководство существующей инфраструктуры, в частности, гостевой ОС и приложения экземпляра, часто требует другого инструмента. Нужно исправить Linux, затем обновить Harprdb и сделать изменение конфигурации, чтобы сотни экземпляров EC2 всего за несколько минут? AWS Автоматизация Systems Manager (SSM) может сделать это! Да, есть другие отличные инструменты для выполнения этой работы ( кашель! Аналим. Кашель! ), но автоматизация SSM отлично работает для нас.

Что дальше?

Этот технологический стек отлично работает для нас, но что дальше? Много! Вы, наверное, заметили, что я сказал несколько тиховых слов, таких как «экземпляр EC2» и «патч», но я не упомянул «контейнеры» или «неизменную инфраструктуру». » Ну, не волнуйтесь, мы зарабатываем планы. Кроме того, теперь, кажется, вероятно, у нас будет требование клиентов в размещении Harperdb Облачные рабочие нагрузки на облачных платформах, кроме AWS. Хм, об этом террафоре … 😅

Если вы заинтересованы, Марго имеет Отличная статья о том, что делает Harperdb разным и особенным. Кроме того, вы можете попробуй harprdb , бесплатно!

Оригинал: «https://dev.to/harperdb/how-we-use-infrastructure-as-code-in-harperdb-cloud-41mh»