Разработка провайдера виртуальной инфраструктуры: опыт 1cloud
/ Оборудование в Ahost / 1cloud
Кто мы такие?
Прежде чем погрузиться в детали, пройдемся по основным форматам предоставления услуг в облаке. Несмотря на то что сейчас на рынке есть игроки с «приставками» DB (database), DR (disaster recovery) и AI (artificial intelligence) и др., основная доля провайдеров облачных услуг относится к одной из трех связанных друг с другом категорий: SaaS, PaaS, IaaS.
Software-as-a-Service (SaaS) — самая высокоуровневая модель из трех. По сути, клиент пользуется приложением поставщика, размещенным в облаке. Причем это приложение «заточено» под выполнение определенных функций, например, доставку почты, обработку звука или видео. Социальные сети также можно рассматривать как SaaS.
SaaS предлагает минимальные возможности для кастомизации, поскольку за все отвечает провайдер услуги — за настройку и поддержание серверов в рабочем состоянии, мониторинг, резервное копирование и так далее. Поэтому такая модель работы не требует наличия технического специалиста в команде или ИТ-отдела в компании.
На следующем уровне стоит решение Platform-as-a-Service, которое упрощает управление приложениями: предлагается автоматическое развертывание, тестирование кода, масштабирование в зависимости от нагрузки. За работу с серверами, балансировку нагрузки, DNS и другие функции отвечает провайдер. Поэтому клиенты могут сконцентрироваться на разработке.
Третий уровень называется Infrastructure-as-a-service (IaaS). В этом случае клиент получает серверы, сетевые ресурсы и системы хранения данных в качестве подключаемой услуги. Таким образом, компания может не покупать собственное «железо» и обслуживать его — она арендует у провайдера виртуальные машины и связывает их по сети в нужную инфраструктуру.
Компания 1cloud занимается предоставлением именно IaaS-решений. Мы уделяем внимание автоматизации развертывания и настройки виртуальной инфраструктуры. Клиенты получают инструменты, с помощью которых они могут увеличивать или уменьшать количество используемых вычислительных мощностей, самостоятельно следить за нагрузкой и выбирать гибкие модели оплаты.
Что нужно для работы в сфере IaaS-решений
Мы руководствуемся несколькими простыми принципами. Во многом они формируются исходя из особенностей продукта, который мы делаем.
Принцип первый — знать своих клиентов. Мы понимаем, какие у клиентов ценности и задачи (что нужно разработчикам, веб-студиям, компаниям-интеграторам), учитываем их желания и постоянно совершенствуем сервисы. Например, большинство наших клиентов — юридические лица, поэтому мы автоматизировали работу с договорами и другими документами, необходимыми для бухгалтерии.
Мы также работаем над визуальным оформлением и архитектурой наших решений. Причем все решения об изменениях принимаются на основании отзывов пользователей. Так, мы поменяли дизайн сайта, разработали калькулятор стоимости инфраструктуры и автоматизировали часть служебных задач. Причем речь идет не о задачах формата «поменять цвет кнопки» — на основе отзывов от пользователей мы обновляем функциональность, что иногда требует масштабной переработки всей архитектуры сервиса. Например, на создание клиентских публичных сетей потребовалось примерно 2 месяца работы — в проект были вовлечены и разработчики, и администраторы, и даже маркетологи, которые совместно с дизайнерами участвовали в процессе доработки интерфейсов.
Принцип второй — IaaS-провайдер должен быть гибким. Гибкость и масштабируемость — главные ценности концепции облачных технологий и IaaS-продуктов. Услуга «Частное облако» хорошо иллюстрирует этот принцип. Автоматизированная панель управления облачного решения позволяет быстро развернуть парк виртуальных серверов, объединить их в сеть и при необходимости гибко изменять параметры.
При этом мы даем клиенту предварительно протестировать виртуальную инфраструктуру, чтобы он мог сам составить мнение о качестве сервиса. Записаться на тест можно несколькими способами: заполнив форму на сайте, отправив письмо на электронный ящик support@1cloud.ru или позвонив в техподдержку.
Другой пример — процедура работы с высокопроизводительным пулом серверов. С резким ростом числа запросов может возникнуть ситуация, когда сервер перестает справляться с нагрузкой, что приводит к зависаниям сервисов. Поэтому мы создали механизм, который позволяет перевести инфраструктуру в более мощный пул в любой момент, без потери продуктивности.
А чтобы клиент мог сам решить, когда стоит «поддать газу», мы реализовали систему мониторинга в панели управления.
Принцип третий — не усложнять. Мы всегда стараемся сделать сложные вещи простыми для пользователей. Среди наших клиентов есть независимые разработчики, которые не хотят тратить время на настройку хостинга. Для таких клиентов мы реализовали наш калькулятор, который позволяет заказывать виртуальные серверы в пару кликов. Он стал частью редизайна внешнего вида сайта.
Руководствуясь этим принципом, мы разработали шаблоны виртуальных серверов, когда пользователь может выбрать уже сконфигурированные копии виртуальных машин. Мы хотели, чтобы клиентам с разным бэкграундом было одинаково удобно работать с нашим продуктом.
Принцип четвертый — обеспечить безопасность. С облачной инфраструктурой до сих пор связано множество опасений и страхов. Однако многие из них сильно преувеличены, а некоторые — надуманы. IaaS-провайдер, на плечи которого ложится обязанность по обеспечению безопасности, способен в лучшей степени защитить инфраструктуру благодаря актуальным решениям и специализации.
Например, чтобы помочь клиентам избежать потерь данных, мы реализовали услугу резервного копирования, с помощью которой пользователи могут быстро восстановить информацию. В конфигураторе можно настроить регулярность автоматического создания резервных копий.
В случае аварийной ситуации у пользователя всегда будут под рукой данные, которые позволят оперативно восстановить работу сервера. За сохранностью данных клиентов также следят системы мониторинга, которые предупреждают о чрезмерных нагрузках на сеть и диски.
Что касается физической защиты серверов и данных, то и за это отвечает IaaS-провайдер, размещая оборудование в надежных дата-центрах. Например, системы 1cloud располагаются в санкт-петербургском ЦОД SDN и московском Dataspace. Здание дата-центра огорожено металлическим забором, на входе установлен пост охраны, а на всей территории комплекса расположены камеры видеонаблюдения. Защитные системы этих дата-центров формируют еще один «рубеж», который надежно хранит данные. Такие решения позволяют достигать высокого уровня безопасности, чтобы клиенту не приходилось об этом беспокоиться.