Запросить демо
Я подтверждаю свое согласие на обработку компанией КРОК моих персональных данных, указанных в форме, в целях и пределах, установленных законодательством РФ о персональных данных в рамках проводимых мероприятий в течение неопределенного срока
Дополнительные услуги
Узнать стоимость
Я подтверждаю свое согласие на обработку компанией КРОК моих персональных данных, указанных в форме, в целях и пределах, установленных законодательством РФ о персональных данных в рамках проводимых мероприятий в течение неопределенного срока
Дополнительные услуги
Попробовать бесплатно
Я подтверждаю свое согласие на обработку компанией КРОК моих персональных данных, указанных в форме, в целях и пределах, установленных законодательством РФ о персональных данных в рамках проводимых мероприятий в течение неопределенного срока
Дополнительные услуги
Быть в теме

Как получить от облака максимум: ключевые инструменты управления ресурсами

09.11.2018 7 минут 217

Облачные ресурсы отличаются гибкостью и возможностями масштабирования. При динамичных нагрузках это помогает серьезно экономить на инфраструктуре, чем активно пользуются многие российские заказчики. Чтобы выжать максимум из облака, компания КРОК Облачные сервисы рекомендует пользоваться инструментами автоматизации, которые позволяют уменьшить количество рутинных операций и сократить общий чек за облачные услуги.

Используя облако, вы можете в любой момент создать виртуальную машину. запустить или остановить сервис, изменить количество потребляемых ресурсов. Некоторые организации используют ручное управление своими вычислительными мощностями через веб-интерфейс или создают простые скрипты для развертывания виртуальных машин. Такой подход имеет право на жизнь в том случае, если используемые облачные ресурсы невелики. По мере роста инфраструктуры и усложнения систем ручное управление приводит к различным инцидентам из-за человеческого фактора, несвоевременного обнаружения ошибок. В результате становится сложнее создавать действительно гибкие и автоматизированные среды, которыми можно управлять в один клик или настроить применение изменений «на лету».


Клиенты КРОК Облачные сервисы — это ИТ-профессионалы, они хорошо разбираются в услугах, предлагаемых провайдерами, и знают, что хотят получить в результате.

«Многие из них ведут в облаке разработки, для этого необходимо запускать большое количество виртуальных машин. Это трудозатратный процесс, если осуществлять его вручную. И, как правило, такие заказчики применяют встроенные средства автоматизации, с помощью которых управление облачными ресурсами упрощается, уменьшается время, затрачиваемое на их запуск», — подтверждает Максим Березин, директор по развитию КРОК Облачные сервисы.


Иногда виртуальные машины можно отключать на ночное время или переводить на меньшую мощность для поддержки исключительно фоновых процессов. Например, один из клиентов КРОК Облачные сервисы — автомобильный дилер Swed-Mobil — в целях экономии после окончания рабочего дня отключает виртуальные машины, отвечающие за терминальные серверы, файловые службы и серверы приложений, и экономит порядка 50% на аренде вычислительных мощностей для бэк-офисных задач.


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


К счастью, разработчики программных продуктов предлагают достаточно много инструментов, которые могут самостоятельно применять политики, отслеживать изменение потребностей приложений и сервисов, контролировать наличие ресурсов и так далее. Большинство из этих систем совместимы с основными типами облаков и могут использоваться в облаке КРОК, имеющем API, совместимый с Amazon.


«Мы используем в облаке самые востребованные заказчиками утилиты, и готовы постоянно расширять их список, если есть такая потребность со стороны наших клиентов. На текущий момент никто из наших конкурентов не может похвастаться столь же большим предложением в части инструментов управления. Об этом говорится, в частности, в исследовании портала Tadviser, который присудил КРОК Облачные сервисы первое место рейтинга «Самые зрелые облачные провайдеры России», — отметил Максим Березин.

Используемые средства автоматизации

Ansible

Одна из популярных и достаточно простых систем управления конфигурациями в облаке называется Ansible. Она прекрасно подходит для начальной настройки виртуальных машин. Для этого в системе используется специальный язык упрощенной разметки YAML. Он позволяет декларировать необходимое ПО, которое нужно установить на каждую виртуальную машину или группу машин. Инструмент позволяет упростить работу с виртуальными средами и подходит для работы пользователей, не имеющих глубоких технических навыков.


Отличительной чертой Ansible также можно считать ориентацию не на конкретную настройку всей инфраструктуры, а на описание взаимодействия систем друг с другом. Таким образом, вызвав всего одну команду (активировав так называемый Ansible Playbook), вы можете получить необходимые вам виртуальные машины с нужными характеристиками, включая технические параметры и набор ПО.

Vagrant

Инструментарий Vagrant от компании HashiCorp изначально использовался при автоматизации запуска большого количества виртуальных машин для задач разработки ПО. Однако по мере обрастания дополнительными модулями и расширениями, Vagrant стал функциональной системой управления облачными средами. Возможности этого решения в своем большинстве похожи на Ansible, но использование Vagrant будет предпочтительнее для тех, кто работает с языком программирования Ruby. В отличие от декларативного YAML (который еще нужно выучить, если вы с ним не знакомы), сценарии автоматизации Vagrant применяются стандартные конструкции на Ruby.

Exapark

Если же вам не нужны лишние сложности, в арсенале современных облачных сред также есть простые и эффективные решения, такие как Exapark. Специальный web-ресурс поддерживает возможности простого включения и выключения виртуальных машин по расписанию. Однако иногда и этого бывает вполне достаточно. Например, в облаке КРОК работает одна медицинская организация, которая частично останавливают ночью свои виртуальные машины, поддерживающие работу электронной регистратуры. Просто перезапуская их на более дешевых и медленных дисках, а потом возвращая утром на высокопроизводительные системы, организация одновременно обеспечивает высокую скорость работы клиентских медицинских систем и экономит на облачных услугах значительные средства.

Terraform

Полноценный аналог описанному выше инструменту обеспечивает утилита с открытым кодом Terraform от компании HashiCorp, которая является одним из самых популярных средств для управления облаком среди российских заказчиков. Terraform отличается адаптивной архитектурой и поддерживает самые разные процессы — от ИТ-разработки до обеспечения работы требовательных к производительности сервисов.


Популярность Terraform объясняется совместимостью решения с большинством форматов облаков, в том числе с распространенным API AWS, который на сегодняшний день является стандартом де-факто для многих проектов. Например, портал Туту.ру использует средства автоматизированного управления развертыванием инфраструктур, чтобы упростить и ускорить процессы разработки.


Настройки Terraform задаются конфигурационными файлами, где в простой форме указываются необходимые параметры — как для запуска отдельных приложений, так и для работы целого центра обработки данных. Движок Terraform формирует свой план исполнения (execution plan), согласно которому в файлах конфигурации формирует задачи, а потом реализуют их, создавая необходимую виртуальную инфраструктуру. В случае изменения конфигурации Terraform в автоматическом режиме обнаруживает изменения и создает новые планы для поддержания заданных параметров.


В рамках создаваемой инфраструктуры Terraform может управлять низкоуровневыми компонентами, такими как вычислительные инстансы, хранилища данных и сетевые устройства, а также компонентами верхнего уровня, например, DNS, возможностями сервисов SaaS и так далее. Но одной из основных особенностей Terraform, которая делает эту утилиту популярной — разделение стадии планирования и применения изменений. То есть у пользователя появляется возможность проанализировать результаты и выловить возможные ошибки на этапе планирования и только после тщательной проверки применить запланированные изменения.

Puppet и Chef

Готовые комплекты Puppet или Chef позволяют автоматизировать выполнение повторяющихся задач, развертывать приложения, а также проактивно управлять изменениями, как для физических серверов, так и для виртуальных машин или bare-metal облачных конфигураций, например, с использованием контейнеров.


Chef представляет собой высокоуровневый инструмент управления конфигурациями в облаке и использует принцип «поваренных книг» (cookbooks). Эти книги позволяют определить желаемое конечное состояние всей инфраструктуры, включая настройки виртуальных или физических машин и применение различных политик. Использование Chef подразумевает распространение клиентской части ПО на всех серверах, чтобы они автоматически получали новые cookbooks с главного сервера и применяли конфигурации на нужных участках инфраструктуры в зависимости от роли, нагрузки, местоположения.


Для задач разработки многие участники сообщества OpenSource рекомендуют использовать Puppet. Этот инструмент управления конфигурацией помогает автоматизировать процессы тестирования и непрерывной доставки новых версий приложений за счет формализации параметров на специальном языке Puppet DSL. Puppet позволяет тестировать изменения как в самих приложениях, так и в инфраструктуре, подготавливая релизы облачных приложений к развертыванию на базе готовой облачной среды

AWS-Cli и Awless

Впрочем, когда инфраструктура уже развернута и вы не планируете создавать ее заново, для управления существующими машинами, инстансами, хранилищами и другими объектами можно использовать утилиты, нацеленные именно на управление состоянием работающих сред. Так, уже имеющие опыт взаимодействия с облаками Amazon пользователи в своем большинстве знакомы с консольной утилитой AWS-Cli, которая позволяет простыми командами задать различные параметры облачной среды. Однако практика показала, что эта утилита понятна далеко не всем и не так уж удобна. По этой причине на рынке появились такие инструменты, как AWless от компании WALLIX. Эта система написана на современном языке Go! и распространяется как открытое ПО, обеспечивая более удобное управление и мониторинг состояния ресурсов.


AWless работает с такими сервисами AWS, как EC2, IAM, S3, RDS, Auto Scaling, SNS, SQS, Route53, CloudWatch, уже упомянутым CloudFormation и даже новейшим сервисом Lambda для запуска срез serverless computing. Вместе с AWless вы можете получить готовые таблицы для машинной обработки или отчеты в формате, который можно читать даже не подготовленному человеку.

Автоматизация - только один уровень работы с инфраструктурой

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


В реальных проектах практически всегда приходится применять дополнительную экспертизу, чтобы выбранное решение обеспечивало удовлетворение запросов заказчика. Например, при использовании Terraform нередко приходится считаться с неоднозначной архитектурой синтаксиса языка HCL. Такие инструменты, как Ansible, использующие почти «человеческий» язык для определения параметров, требуют предварительной настройки. Конечно, это не значит, что внедрение системы облачного управления и автоматизации — слишком сложная задача.


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

Сервисы упоминаемые в статье

  1. Публичное облако КРОК

Не пропустите самые важные, интересные и полезные статьи недели

Ваш e-mail успешно подписан.

Смотрите так же