Облачное хранилище: нужна 100% совместимость с Amazon S3 API



    Всем привет! Сегодня решили поднять тему уже полностью вошедших в нашу жизнь облаков, а в частности – облачного хранилища именно в бизнесе. Тема не нова, но мы решили поговорить об этом, поскольку сами не далее как в прошлом году выпустили собственную облачную платформу, а пару дней назад начали официально предоставлять на ней услугу хранилища. Почему мы решили запустить именно эту услугу, что она несет для клиента, на что ориентировались при ее создании, на кого из конкурентов ровнялись и, что за хранилище в итоге у нас получилось? Welcome ниже.



    Мысли вслух, или предпосылки создания нашего хранилища


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


    Традиционные облачные хранилища, такие как Dropbox, Google Drive, Microsoft OneDrive, в международной терминологии относятся к классу «Enterprise File Sync & Share (EFSS)» — сервисы синхронизации и обмена файлами. Обычно они служат для персонального использования: файлы на компьютере синхронизируются с облаком, ими можно поделиться.
    Разработчикам также известны такие сервисы как объектные хранилища – Amazon S3, Google Cloud Storage, Microsoft Blobs Storage. Высоконадежные объектные хранилища, доступные через интернет, предназначены для хранения огромного количества файлов (миллиарды и триллионы), они масштабируются до сотен петабайт.


    Именно в объектных хранилищах держат свои файлы сервисы синхронизации и обмена файлами. В объектных хранилищах хранится половина контента в интернете (картинки, видео, файлы для скачивания). К классу объектных хранилищ относится и созданное нами облачное хранилище Техносерв Cloud, но о нем чуть позже.


    Объектные хранилища


    Основной протокол доступа к объектному хранилищу – это протокол, созданный Amazon Web Services для сервиса AWS S3 (Simple Storage Service). S3 API — набор команд, которые «понимает» хранилище и выполняет в ответ некие действия. Полнота поддержки S3 API и определяет функциональность объектного хранилища по сравнение с Amazon S3.
    Фактически, половина сервисов в интернете хранят данные в Amazon S3. В России пока представлено не так много сервисов объектного хранения (см. Таблицу 1).


    Таблица 1. Сервисы синхронизации и обмена файлами и объектные хранилища.


    Сервисы синхронизации и обмена файлами Объектные хранилища
    Google Диск Google Cloud Storage
    Amazon Cloud Drive Amazon S3
    Dropbox Amazon S3 (до 2014 г) как место хранения файлов Dropbox. Затем Dropbox создал свое объектное хранилище
    MS One Drive MS Blobs Storage
    Крок Диск Файловое хранилище Крок как место хранения файлов сервиса Крок Диск
    Selectel, Ростелеком, объектное хранилище Mail.ru

    Оба вида сервисов пользуются растущим спросом.


    Публичные сервисы хранения


    Публичные сервисы хранения привлекают сегодня внимание не только малого и среднего бизнеса, но и крупных предприятий и организаций, внедряющих модель гибридного облака. Этому способствует и динамика развития российского облачного рынка в целом. По данным Forrester к 2020 году объем облаков в РФ достигнет 48 млрд. руб. По прогнозу iKS Consulting, темпы его роста будут значительно опережать рост отечественного ИТ-рынка (см. Рис. 1).



    Рис. 1. Российский облачный рынок развивается опережающими темпами.


    О требованиях и выгодах облачного хранилища для клиентов


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


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


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




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


    Результат – наше облачное хранилище Техносерв Cloud


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


    Как многие подобные сервисы, он тарифицируется по принципу фактического использования или доступной емкости хранения. Чем можем похвастаться, чего удалось достичь — цена хранения данных здесь ниже, чем у российских аналогов, а их скачивание обходится в разы выгоднее предложений зарубежных поставщиков. Использовать нужные ресурсы можно через интернет, выделенный канал связи или из виртуального дата-центра Техносерв Cloud.



    Рис. 2. Услуга работает на базе облачной платформы Техносерв Cloud, доступна через интернет, выделенные каналы связи или из виртуального дата-центра Техносерв Cloud.

    Наше хранилище можно использовать, например, в следующих сценариях:


    ● Хранение резервных копий.
    ● Размещение контента веб-сайтов и писем (фото, видео, файлы для скачивания).
    ● Хранение записей систем видеонаблюдения.
    ● Хранение архивов (для соблюдения требований закона).
    ● Хранение и распространение медиа-контента (видео, музыка).
    ● Хранилище для систем документооборота.


    А также для любых задач, для которых компании обычно выбирают сервисы Amazon S3 (см. Рис. 3).



    Рис. 3. Типовые задачи для облачного хранилища Техносерв Cloud.


    Уникальность решения — 100% гарантия совместимости с Amazon S3 API


    Представленные в России объектные хранилища, как правило, создаются на базе решений Ceph или Swift с коннекторами для S3 API и не обеспечивают полной поддержки S3 API. Для пользователей это может означать:


    1. Проблема совместимости приложений (приложение написано с учетом полного набора команд S3, а хранилище, например, поддерживает половину).
    2. Ограниченную функциональность.

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


    Полная совместимость с Amazon Simple Storage Service (S3) API — одна из главных особенностей облачного решения для хранения данных Техносерв Cloud. Поддержка стандартов подключения к облачным хранилищам (API облака) значительно упрощает интеграцию систем заказчика с облачной платформой (см. Рис. 4).


    Полнофункциональная поддержка S3 API гарантирует совместимость с различным программным обеспечением. S3 API поддерживается большим количеством приложений, в частности, практически всеми системами резервного копирования (кроме Veeam) и системами управления контентом (например, 1С-Битрикс или Wordpress). Доступен также комплекс средств разработки приложений для любых платформ и на любых языках.


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



    Рис. 4. Поскольку хранилище Техносерв Cloud на 100% совместимо по протоколам с AWS S3, «переезд» из S3 на эту платформу очень прост. Достаточно в приложении заменить адрес сервера и ввести новый ключ.


    Ядро облачного хранилища Техносерв Cloud не только построено с использованием технологий S3, но и поддерживает полный спектр команд S3 API, включая расширенные, такие как управление ACL (правами доступа), аутентификация V4SIG (современный протокол авторизации Amazon), полноценное управление версиями, многопоточная загрузка и др.


    Так, если решения на базе CEPH предлагают ограниченную поддержку команд S3 API, то решение от «Техносерв» поддерживает практически весь «корпоративный набор». Это означает минимум проблем для заказчика при организации резервного копирования или развертывании других приложений, высокую совместимость с облаком Amazon сейчас и в будущем.


    Шлюз для подключения к хранилищу из любых приложений


    Для доступа к облачному хранилищу используется интернет или защищенный VPN-канал L2, соединяющий облако Техносерв Cloud с офисом или дата-центром клиента. Другой проработанными нами вариант — подключение к хранилищу из виртуального дата-центра Техносерв Cloud.


    Для подключения к хранилищу приложений, которые не поддерживают S3, например, Veeam Backup & Replication, мы предоставляем шлюзы. Через шлюз можно подключаться к облаку по протоколам NFS, CIFS (SMB) или FTP. Шлюз представляет собой размещенную в сети заказчика виртуальную машину (VMware или Microsoft Hyper-V), которая выглядит как сетевая папка/FTP-сервер и транслирует NFS/CIFS/SFTP в протокол S3.


    Процедура подключения к нашему облачному хранилищу не требует также долгих и сложных настроек межсетевого экрана на стороне клиента. Для этого используется стандартный 443 TCP-порт HTTPS.


    Интеграция с любыми системами резервного копирования, управление файлами и хранение версий


    Популярный сегодня сервис – резервное копирование в облако. Большинство систем резервного копирования можно подключать к нашему облачному хранилищу по S3 API (см. Рис. 5), для остальных используется NFS-шлюз. Поддерживается и работа со встроенными средствами резервного копирования приложений. Облако в этом случае выступает как альтернатива ленточным хранилищам, но с быстрым доступом к информации.



    Рис. 5. Облачное хранилище Техносерв Cloud поддерживает системы резервного копирования Acronis Backup, Arcserve Backup, CommVault Simpana, IBM Spectrum Protect, Rubric, Veeam Backup & Replication, Veritas/Symantec NetBackup и Backup Exec и др. При этом для продуктов Acronis и Veeam предоставляется бесплатный NFS\CIFS-шлюз.


    S3 API для резервного копирования поддерживают и популярные системы управления контентом (CMS), например, 1С-Битрикс и Wordpress. Даже если система явно не поддерживает S3, как правило, для резервирования можно использовать утилиту curl.


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


    Версионность можно использовать для сохранения, извлечения и восстановления предыдущих версий объектов, хранящихся в облаке. «Глубина» хранения версий определяется заказчиком. Это отличная страховка от ошибок пользователей. Можно расшарить объекты или даже целые «корзины» для других пользователей. С помощью ACL настраиваются права доступа.


    Портал управления позволяет администратору создавать аккаунты пользователей и назначать права, управлять квотами пользователей, просматривать статистику, а пользователям — управлять файлами через интернет, создавать/отменять применяемые в приложениях ключи S3 API, предоставлять права доступа/публиковать свои корзины и файлы.


    О надежности и безопасности нашего облака


    Мы долго и упорно прорабатывали эту важную тему. Отличительные черты Техносерв Cloud – высокая надежность и безопасность. Надежность хранения данных составляет «восемь девяток» (99,999999%), что примерно в 100 раз выше, чем при классической системе хранения с RAID 6 (см. Рис. 6).



    Рис. 6. В основе облачного решения «Техносерв» — программно-определяемое хранилище (SDS), в котором отсутствует единая точка отказа и предусматривается полное резервирование всех компонентов.


    Чтобы обеспечить избыточность при хранении, каждый файл разбивается на определенное количество частей. По умолчанию используется Erasure Coding 5+3. Это означает, что любой объект (файл) распределяется на восемь узлов (серверов), причем для сохранения целостности файла достаточно любых пяти частей (см. Рис. 7). Таким образом, данные остаются доступными даже при полной одновременной потере любых трех серверов. EC 5+3 обеспечивает надежность 99,999999% (8 девяток). Возможны также варианты EC 4+4 или любой репликации от 2 до N.



    Рис. 7. Использование Erasure Coding для повышения надежности хранения.


    Наконец, размещается облачное хранилище Техносерв Cloud на площадке с высоким уровнем доступности — в дата-центре Tier III компании DataPro. Этот ЦОД имеет два сертификата Uptime Institute – «Desing» и «Constructed Facility». В России только четыре дата-центра имеют подобную сертификацию.


    Уровень Tier III дает возможность проведения ремонтных работ (включая замену компонентов системы, добавление и удаление вышедшего из строя оборудования) без остановки дата-центра. Инженерные системы однократно зарезервированы, есть несколько каналов распределения электропитания и охлаждения, два независимых ввода электропитания от разных подстанций, собственная трансформаторная подстанция, два независимых маршрута ВОЛС.


    Гарантированный SLA предусматривает доступность услуги на уровне 99,95 %, то есть не более 21 мин простоя в месяц. Плюс, круглосуточная линия технической поддержки с квалифицированными инженерами.


    Предусматривается также резервирование сетевой архитектуры (см. Рис. 8) и компонентов серверов. Резервируются блоки питания, процессоры, сетевые интерфейсы, диски ОС, устройства хранения (согласно архитектуре SDS).



    Рис. 8. Резервирование сетевой архитектуры для обеспечения высокой доступности.


    Безопасности облачного хранилища мы также уделили особое внимание. Шифрование при передаче и хранении данных (с возможностью шифрования на стороне хранилища ключом клиента), детальная настройка прав доступа, занесение в журнал всех операций с файлами обеспечивают надежную защиту информации клиентов. Кроме того, в целях информационной безопасности проводится регулярный кадровый мониторинг. Сотрудники службы эксплуатации облачной платформы Техносерв Cloud проходят тщательную проверку перед приемом на работу (включая проверку на полиграфе). Такой сервис можно использовать для самых ответственных задач.


    Сценарии использования


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


    Amazon S3 представляет собой объектное хранилище неограниченной емкости с простым веб-интерфейсом. Для чего его обычно используют? Задачи могут быть самые разные. Например, как основное хранилище для облачных приложений, хранилище больших данных, как репозиторий данных для аналитики и, конечно, для резервного копирования и аварийного восстановления.


    Логично возникает вопрос: «Так почему бы не воспользоваться «настоящим» Amazon S3? В чем преимущества хранилища Техносерв Cloud?» Существуют требования хранения данных на территории России. В соответствии с 152-ФЗ «О персональных данных» некоторые данные должны храниться внутри страны. Кроме того, есть приложения, где необходима низкая задержка при доступе к данным. Наше хранилище располагается ближе к российскому клиенту, что позволяет получить более низкую задержку. И этим выгоды не исчерпываются (см. Таблицу 3).



    Еще одна типовая задача — хостинг статического контента веб-сайта. Движок и тексты сайта можно разместить у хостинг-провайдера, а фото, видео, файлы для скачивания – в объектном облачном хранилище. Это позволяет снизить нагрузку на сайт, ускорить загрузку статического контента и справиться с пиковыми нагрузками. Отметим, что многие CMS изначально поддерживают S3, например, популярные 1С-Битрикс и Wordpress. Но это вовсе не обязательное требование, так как файлы из хранилища «Техносерв» доступны по обычным гиперссылкам.


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


    Например, вещательным и медиа-компаниям необходимы большие хранилища для медиа-материалов. Объем материалов растет экспоненциально, традиционные решения становятся слишком затратными и недостаточно масштабируемыми. Для вещательных компаний, студий, рекламных агентств, постпродакшен-компаний, новые форматы, такие как 4K, панорамные фото, видео высокого разрешения 60 кадров/сек, представляют серьезные вызовы, и ответом на которые может стать облачное хранение.


    Подводя итог


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

    Техносерв
    79,00
    Компания
    Поделиться публикацией

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

      +3
      Таблицы текста в JPG с дичайшими артефактами. Мои глазааа…
        +3
        Всего два ебучих шакала.
          0
          Шакальность для текста растёт быстрее
        +2
        Лучше расскажите на чем все построено и как. Что-то свое?
          0

          Cудя по выдаче гугла на "техносерв openstack" рискну предположить, что сделано на swift.
          К сожалению вся статья выполнена в стиле marketing bullshit — она написана для того, чтобы продавать, а не для того, чтобы объяснить как сделано. А для продаж вредно писать, как устроено. Зато полезно написать "EC 5+3 обеспечивает надежность(чего?) 99,999999% (8 девяток)"

            0

            UPD а вот и не угадал :(
            Cloudian — они сами свою реализацию S3 пилили? или с amazon сотрудничали?

              0
              Точно ответить сложно. Известно, что они с ними плотно сотрудничают. Но показателен тот факт, что их Amazon предлагает как on-premise вынос S3 с тарификацией по факту использования по метрикам Amazon (хранение/скачивание/запросы) через Amazon.
              0
              «Техносерв» предоставляет IaaS на базе OpenStack. В этом случае используется Ceph для блочного хранения. Облачное хранилище построено на отдельной физической платформе. А восемь девяток обеспечивают надёжность хранения.
                0

                Можно таки чуть подробнее про восемь девяток? Обычно таким образом измеряют доступность, вы говорите о "надежности хранения". Обычно надежность измеряют единичными показателями (типа наработки на отказ) или комплексными (коэффициент готовности, например). Скажите, вот эти 8 девяток — это какой именно показатель надежности?

                  0

                  @aaaler, простите за задержку с ответом. В данном случае восемь девяток надежности хранения объектов за год соответствует ожидаемой среднегодовой потере 0,000001% объектов. Например, если вы храните 10 000 объектов, вы можете, в среднем, ожидать потерю одного объекта раз в 10 000 лет. Оценка сделана производителем ПО хранения данных на основании используемых алгоритмов распределения и защиты данных.

                    0

                    Восемь девяток при размещении всей системы в одном дата-центре? Оценка надежности от производителя ПО? Вы это серьезно?

                  0

                  Ну, то есть, поддержка S3 — это всего лишь заслуга RADOS Gateway, который поставляется в комплекте с Ceph.

                    +1
                    GamePad64, позвольте не согласиться). Да, Ceph с Rados — это типичная реализация у ряда провайдеров, при которой могут возникать и возникают вопросы совместимости из-за ограниченной поддержки S3. Однако, облачное объектное хранилище Техносерв Cloud — это отдельные физические сервера, на которых развернут SDS на базе вендора Cloudian, который создавался с фокусом на S3. А Ceph мы используем только как блочное хранилище в OpenStack.
                0
                Добрый день, iPrime! Спасибо за комментарий! Для хранилища используется выделенный кластер физических серверов, из которых построено программно-определяемое объектное хранилище. Хранилище построено с запасом для высоконадежного хранения — любой входящий объект по умолчанию записывается с избыточностью +3 сервера, что обеспечивает надежность хранения 8 девяток. Хранилище построено на ПО Cloudian, которое работает поверх CentOS и интегрировано с системами управления, мониторинга и биллинга Техносерв Cloud.
                Cloudian является одним из лидеров мирового рынка объектных хранилищ и безусловным лидеров в плане поддержки S3. Представителем Cloudian в России является «Техносерв».
                  0
                  Настраивал я месяца 3 назад Cloudian, в чём мне пытался помогать Lenovo, но в итоге общался с вендором на прямую :) На мой взгляд не самое удобнее решение
                0
                Тарифы хорошие, Селектел дерёт в 2-3 раза больше AWS и Azure, даже Softlayer выходит в 1.5 раза дешевле.

                IBM Spectrum Protect

                А вы запускали их тулкит для сертификации хранилища? А у Veeam поддержку добавят в версии 10.
                  0

                  @navion, спасибо за похвалу в адрес наших тарифов! Им приятно :) Проверили Soflayer: хранение чуть дороже, скачивание- в разы. Про IBM Spectrum Protect — совместимость тестировал вендор, ссылка на Whitepaper — https://cloudian.com/wp-content/uploads/2016/08/SolutionBrief_TSM.pdf), про Veeam — это здорово, можно будет делать бекапы в S3 проще)

                  0
                  Расскажите как гарантируется безопасность хранящихся у вас данных энтерпрайс компаний, где данные это основа бизнеса?
                    0
                    Безопасность обеспечиваем шифрованием при передаче и хранении данных (с возможностью шифрования на стороне хранилища ключом клиента), детальной настройкой прав доступа, занесением в журнал всех операций с файлами, кадровым мониторингом.
                    А вообще у нас данные хранятся не в чистом виде, а в обработанном, и доступ к ним задает сам клиент, при этом сам доступ происходит по логину, паролю и секретному ключу. Данные остаются доступны даже при полной потере 3/8 инфраструктуры хранения.
                    0
                    Ваши цены указаны без НДС, а счета клиентам вы выставляете с НДС или без?
                      0
                      CrazyNiger, все счета выставляем с НДС
                        +2
                        Так, если решения на базе CEPH предлагают ограниченную поддержку команд S3 API, то решение от «Техносерв» поддерживает практически весь «корпоративный набор».

                        Вот здесь интересуют подробности. Какие именно реализаций команд S3 API отсутствуют в Ceph RGW и имеются у Вас? Спасибо за ответ.
                          0
                          kataklysm, спасибо за интересный вопрос! Чтобы на него ответить, пришлось немного покопаться в документах (здесь и здесь). Вот что выяснилось: в Rados GW не поддерживаются Response Headers: Server, x-amz-delete-marker, x-amz-version-id. Есть также операции, явно заявленные как «неподдерживаемые»: GET Bucket policy, PUT Bucket policy, DELETE Bucket policy. Нашли операции, для которых поддержка не заявлена в принципе: GET Bucket logging, PUT Bucket logging, GET bucket replication, PUT bucket replication, DELETE bucket replication, GET Bucket tagging, PUT Bucket tagging, DELETE Bucket tagging, OPTIONS object, POST Object restore, GET Bucket cors, PUT Bucket cors, DELETE Bucket cors.
                          Все перечисленные команды и операции поддерживаются нашим хранилищем.
                          Если найдете неточности или захотите добавить в список что-то, что из S3 недостаточно хорошо поддерживается в RGW, дайте, пожалуйста, знать – мы будем благодарны за корректировки.
                          0

                          А поддержка lifecycle rules есть? Интересуют и на transition и на expiration.

                            0
                            onyxmaster, да, поддержка lifecycle есть, и transition и expiration. Transition можно делать во внешнее S3 хранилище или Glacier

                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                          Самое читаемое