Облачные объектные хранилища: от теории к практике



К 2025 году эксперты предсказывают увеличение мирового объема данных до 163 зеттабайт, что в 10 раз превзойдет объемы за 2016 год. Взрывной рост информации стал одной из причин развития хранения данных в облаке. Сегодня мы расскажем о возможностях объектных хранилищ данных и раскроем тайны нашего «Облачного хранилища».

Облачное хранилище — услуга хранения данных на серверах компании-провайдера, с помощью которой пользователи получают доступ к данным с различных устройств.

Хранилище для больших объемов данных
В объектном хранилище отсутствует иерархия: папки, директории и каталоги. Объекты расположены на одном уровне. Каждый объект состоит из данных, расширяемых метаданных и ID-объекта.
Схема объектного хранилища


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

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

Подробнее
blog.selectel.ru/oblachnye-xranilishha-teorii-praktike/

vSAN в облаке на базе VMware



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

Фундаментальной причиной возникновения этих проблем является традиционная архитектура, основанная на жесткой привязке к аппаратным характеристикам используемых устройств хранения данных. Большинство клиентов до сих пор выбирают способ хранения и доступа к данным с учетом характеристик физических интерфейсов (SAS / SATA / SCSI), а не реальных потребностей используемых приложений.

Еще десяток лет назад это было логичным решением. Системные администраторы тщательно выбирали накопители информации с требуемой спецификацией, например SATA/SAS, и рассчитывали на получение уровня производительности, исходя из аппаратных возможностей дисковых контроллеров. Борьба шла и за объемы кэшей RAID-контроллеров и за опции, предотвращающие потерю данных. Сейчас такой подход к решению проблемы не является оптимальным.

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

Виртуализация СХД
С развитием систем виртуализации требовалось найти инновационное решение для хранения и доступа к данным, одновременно обеспечивая отказоустойчивость. Это стало отправной точкой для создания SDS (Software-Defined Storage). Чтобы удовлетворять бизнес-потребностям, такие хранилища проектировались с разделением программного и аппаратного обеспечения.

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

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

Лишь немногие понимают, что необходимость в масштабировании и надежности хранения данных важнее, чем кажется на первый взгляд. Информация это ресурс, а следовательно, риск ее потери необходимо страховать. Что будет, когда традиционная СХД выйдет из строя? Потребуется воспользоваться гарантией либо купить новое оборудование. А если СХД снята с производства или у нее закончился «срок жизни» (так называемый EOL — End-of-Life)? Это может стать «черным днем» для любой организации, которая не сможет продолжать использовать привычные собственные сервисы.

Не существует систем, которые бы не имели ни одной точки отказа. Зато есть системы, которые способны без проблем пережить отказ одного или нескольких компонентов. И виртуальные, и традиционные СХД создавались с учетом того, что рано или поздно произойдет сбой. Вот только «лимит прочности» традиционных СХД заложен аппаратно, а вот в виртуальных СХД он определяется в программном слое.

Интеграция
Кардинальные перемены в IT-инфраструктуре всегда нежелательное явление, чреватое простоями и потерей средств. Только плавное внедрение новых решений дает возможность избежать негативных последствий и улучшить работу сервисов. Именно поэтому Selectel разработал и запустил облако на базе VMware, признанного лидера на рынке систем виртуализации. Созданная нами услуга позволит каждой компании решить весь комплекс инфраструктурных задач, в том числе и по хранению данных.

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

Еще на этапе проектирования к СХД предъявлялись следующие требования:
  • отказоустойчивость;
  • производительность;
  • масштабирование;
  • возможность гарантировать скорость работы;
  • корректная работа в экосистеме VMware.
Использование традиционных аппаратных решений не могло обеспечить требуемый уровень масштабирования, поскольку невозможно постоянно наращивать объем хранилища из-за ограничений архитектуры. Также большую сложность представляло резервирование на уровне целого дата-центра. Именно поэтому мы обратили внимание на SDS.

На рынке SDS присутствует несколько программных решений, которые бы подошли нам для построения облака на базе VMware vSphere. Среди этих решений можно отметить:
  • Dell EMC ScaleIO;
  • Datacore Hyper-converged Virtual SAN;
  • HPE StoreVirtual.
Указанные решения пригодны для использования c VMware vSphere, однако не встраиваются в гипервизор и запускаются отдельно. Поэтому выбор был сделан в пользу VMware vSAN. Рассмотрим детально, как выглядит виртуальная архитектура такого решения.

Архитектура


В отличие от традиционных СХД вся информация не хранится в какой-то одной точке. Данные виртуальных машин равномерно «размазаны» между всеми хостами, а масштабирование осуществляется добавлением хостов или установкой на них дополнительных дисковых накопителей. Поддерживается два варианта конфигурации:
  • AllFlash-конфигурация (только твердотельные накопители, как для хранения данных, так и для кэша);
  • Hybrid-конфигурация (магнитные накопители для хранения данных и твердотельные для кэша).
Процедура добавления дискового пространства не требует дополнительных настроек, например, создания LUN (Logical Unit Number, логических номеров дисков) и настройки доступа к ним. Как только хост добавлен в кластер, его дисковое пространство становится доступным для всех виртуальных машин. Такой подход имеет ряд существенных преимуществ:
  • отсутствие привязки к производителю оборудования;
  • повышенная отказоустойчивость;
  • обеспечение целостности данных в случае сбоя;
  • единый центр управления из консоли vSphere;
  • удобное горизонтальное и вертикальное масштабирование.
Однако эта архитектура предъявляет повышенные требования к сетевой инфраструктуре. Для обеспечения максимальной пропускной способности, в нашем облаке сеть построена по модели Spine-Leaf.

Сеть
Традиционная трехуровневая сетевая модель (ядро / агрегация / доступ) имеет ряд существенных недостатков. Ярким примером являются ограничения Spanning-Tree протоколов.

В модели Spine-Leaf используется только два уровня, что дает следующие преимущества:
  • предсказуемое расстояние между устройствами;
  • трафик идет по наилучшему маршруту;
  • легкость масштабирования;
  • исключение ограничений протоколов уровня L2.
Ключевой особенностью такой архитектуры является то, что она максимально оптимизирована для прохождения «горизонтального» трафика. Пакеты данных проходят только через один хоп, что позволяет четко оценивать задержки.

Физическое соединение обеспечивается с помощью нескольких 10GbE-линков на каждый сервер, пропускная способность которых объединяется с помощью протокола агрегации. Таким образом, каждый физический хост получает высокую скорость доступа ко всем объектам хранилища.

Обмен данными реализуется с помощью проприетарного протокола, созданного VMware, позволяющего обеспечить быструю и надежную работу сети хранения на Ethernet-транспорте (от 10GbE и выше).

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

Отказоустойчивость
  • 1. FTT (Failures To Tolerate). Обозначает количество отказов хостов, которые кластер способен обработать, не прерывая штатной работы.
  • 2. FTM (Failure Tolerance Method ). Метод обеспечения отказоустойчивости на уровне дисков.
Mirroring (зеркалирование)

Представляет собой полное дублирование объекта, причем реплики всегда находятся на разных физических хостах. Ближайшим аналогом такого метода является RAID-1. Его использование позволяет кластеру штатно обработать до трех отказов любых компонентов (диски, хосты, потеря сети и прочее). Этот параметр настраивается посредством задания опции FTT.

По-умолчанию эта опция имеет значение 1, при этом для объекта создается 1 реплика (всего 2 экземпляра на разных хостах). При увеличении значения, количество экземпляров будет составлять N+1. Таким образом, при максимальном значении FTT=3 на разных хостах будут находиться 4 экземпляра объекта.

Такой метод позволяет достичь максимальной производительности в ущерб эффективности использования дискового пространства. Допускается использование как в гибридной, так и в AllFlash-конфигурации.

Erasure Coding (аналог RAID 5/6)


Работа данного метода поддерживается исключительно на AllFlash-конфигурациях. В процессе записи каждого объекта вычисляются соответствующие блоки четности, позволяющие однозначно восстановить данные при возникновении сбоя. Такой подход существенно экономит дисковое пространство по сравнению с Mirroring.

Разумеется, работа подобного метода повышает накладные расходы, которые выражаются в снижении производительности. Тем не менее, с учетом производительности AllFlash-конфигурации, этот недостаток нивелируется, делая использование Erasure Coding приемлемым вариантом для большинства задач.

Кроме того, VMware vSAN вводит понятие «доменов отказа», представляющих собой логическое группирование серверных стоек или дисковых корзин. Как только необходимые элементы сгруппированы, это приводит к распределению данных по разным узлам с учетом доменов отказа. Это позволяет кластеру пережить потерю целого домена, поскольку все соответствующие реплики объектов будут располагаться на других хостах в другом домене отказа.

Минимальным доменом отказа является дисковая группа, представляющая собой логически связанные дисковые накопители. Каждая дисковая группа содержит в себе носители двух типов — cache и capacity. В качестве cache-носителей система позволяет использовать только твердотельные диски, а в качестве capacity-носителей могут выступать как магнитные, так и твердотельные диски. Кэширующие носители помогают ускорить работу магнитных дисков и уменьшить задержку при доступе к данным.

Реализация
Поговорим о том, какие ограничения существуют в архитектуре VMware vSAN и зачем они нужны. Вне зависимости от используемых аппаратных платформ, архитектура предусматривает следующие ограничения:
  • не более 5 дисковых групп на хост;
  • не более 7 capacity-носителей в дисковой группе;
  • не более 1 cache-носителя в дисковой группе;
  • не более 35 capacity-носителей на хост;
  • не более 9000 компонентов на хост (включая witness-компоненты);
  • не более 64 хостов в кластере;
  • не более 1 vSAN-datastore на кластер.
Зачем это нужно? Пока указанные лимиты не превышены, система будет функционировать с заявленной производительностью, поддерживая баланс между производительностью и объемом хранения. Это позволяет гарантировать корректную работу всей виртуальной СХД в целом.

Помимо указанных ограничений следует помнить одну важную особенность. Не рекомендуется заполнять более 70% общего объема хранилища. Дело в том, что при достижении 80% автоматически запускается механизм ребалансировки, и система хранения начинает перераспределять данные по всем хостам кластера. Процедура достаточно ресурсоемкая и может серьезно сказаться на производительности дисковой подсистемы.

Чтобы удовлетворить потребности самых разных клиентов, нами было реализовано три пула хранения данных для удобства использования в различных сценариях. Давайте рассмотрим каждый из них по порядку.

Пул с быстрыми дисками
Приоритетом для создания этого пула было получить хранилище, которое обеспечит максимальную производительность для размещения высоконагруженных систем. Серверы из этого пула используют пару Intel P4600 в качестве кэша и 10 Intel P3520 для хранения данных. Кэш в этом пуле используется таким образом, чтобы чтение данных происходило напрямую с носителей, а операции записи происходили через кэш.

Для увеличения полезной емкости и обеспечения отказоустойчивости используется модель хранения данных под названием Erasure Coding. Такая модель схожа с обычным массивом RAID 5/6, но на уровне объектного хранилища. Чтобы исключить вероятность повреждения данных, vSAN использует механизм вычисления контрольных сумм для каждого блока данных, размером 4К.

Проверка осуществляется в фоновом режиме во время операций чтения/записи, а также для «холодных» данных, доступ к которым не запрашивался в течение года. При выявлении несовпадения контрольных сумм, а следовательно, повреждения данных, vSAN автоматически восстановит файлы путем перезаписи.

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

Этот фактор и послужил причиной создания пула, который представляет собой гибрид из кэширующих твердотельных накопителей (как и в других пулах это Intel P4600) и жестких дисков корпоративного уровня, разработанные компанией HGST. Гибридная схема работы ускоряет доступ к часто запрашиваемым данным, за счет кэширования операций чтения и записи.

На логическом уровне данные зеркалируются для исключения потери в случае сбоя оборудования. Каждый объект разбивается на идентичные компоненты и система распределяет их по разным хостам.

Пул с Disaster Recovery


Основной задачей пула является достижение максимального уровня отказоустойчивости и производительности. Задействование технологии Stretched vSAN позволило нам разнести хранилище между дата-центрами Цветочная-2 в Санкт-Петербурге и Дубровка-3 в Ленинградской области. Каждый сервер из данного пула оснащен парой емких и высокоскоростных накопителей Intel® P4600 для работы кэша и по 6 штук Intel® P3520 для хранения данных. На логическом уровне это 2 дисковые группы на хост.

AllFlash-конфигурация лишена серьезного недостатка — резкого падения IOPS и увеличения очереди дисковых запросов при увеличенном объеме операций произвольного доступа к данным. Так же, как и в пуле с быстрыми дисками операции записи проходят через кэш, а чтение осуществляется напрямую.

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

Авария с полным отказом площадки — ситуация достаточно редкая, однако vSAN с честью может ее пережить, не потеряв данные. Гости проводимого нами мероприятия SelectelTechDay 2018 смогли собственными глазами увидеть, как кластер Stretched vSAN пережил полный отказ площадки. Виртуальные машины стали доступны уже через одну минуту после того, как все серверы на одной из площадок были выключены по питанию. Все механизмы сработали именно так, как было запланировано, а данные остались нетронутыми.

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

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

Чтобы определить, какая из них содержит актуальную информацию, используется механизм определения кворума. Каждый компонент обладает «правом голоса», и ему присваивается некоторое количество голосов (1 и более). Такое же «право голоса» имеют и witness-компоненты, играющие роль арбитров, при возникновении спорной ситуации.

Кворум достигается только в том случае, когда для объекта доступна полная реплика и количество текущих «голосов» составляет более 50%.

Заключение
Выбор VMware vSAN, как системы хранения данных, стал для нас достаточно важным решением. Этот вариант прошел нагрузочное тестирование и проверку отказоустойчивости, прежде чем был включен в проект нашего облака на базе VMware.

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

https://selectel.ru

На волне Selectel FM



Мы долго думали, чем интересным можно поделиться с коллегами в День системного администратора. Решили сделать подборку любимой музыки сисадминов Selectel — в нашей компании работают 44 специалиста этой замечательной профессии. Пока собирали статистику, послушали кучу хорошей музыки и выяснили про самих себя много интересного. Поэтому кроме десятки лучших композиций для работы от сисадминов Selectel расскажем самые любопытные музыкальные факты о нас в честь профессионального праздника.

Наши любимые жанры
Здесь, пожалуй, без сюрпризов — самые популярные направления: всевозможные разновидности метала (nu, melodic, death и прочие) и классический западный рок разной степени древности. Следом с небольшим отрывом блюз, джаз и электронная музыка (например, dark techno или trance).

Сюрпризы в списке
Некоторые композиции удивили. Встречаются они не больше одного раза, но среди Cradle of Filth и Children Of Bodom, которые мы вполне ожидали увидеть, в списке любимых притаились «Русский Ковчег» новомодной Монеточки, «Не верь слезам» древнемодного Шуры и композиция Show me the way от немецких диско-звезд Bad Boys Blue. Песни, кстати, отличные.

Музыканты среди нас
Ровно половина из тех, кто ответил на вопросы анкеты, умеют — или умели раньше — играть на каком-нибудь музыкальном инструменте. Самый популярный — конечно же, гитара. Хотя почти вровень с гитаристами идут те, кто делает электронную музыку. Впрочем, нашлись и пианисты с барабанщиками. Ни один из наших администраторов не играет на рабочем месте, хотя как минимум у одного есть гитара в офисе. Скромные сисадмины объясняют это тем, что на музицирование не хватает времени и тем, что они не хотят заставлять страдать уважаемых коллег.

Музыка для работы
Не будем лукавить, лучший аккомпанемент для работы администраторов Selectel — тишина. По крайней мере, это самый популярный ответ: «Отвлекает», «Мешает сосредоточиться». Однако, если говорить именно о музыке — на уверенном первом месте олдскульный рок: от The Rolling Stones и Scorpions до Сатриани и Pink Floyd. В остальных предпочтениях огромный разброс: и приятные ненавязчивые композиции (Echos), и сербская эстрада (Toma Zdravković), и deathcore-мясорубка (Defiler), и второй концерт Рахманинова (фортепиано с оркестром, до минор).

Несколько человек посоветовали сервисы с фоновой музыкой: сайт musicforprogramming.net, прямой эфир lofi hip hop radio на YouTube-канале ChilledCow и сервис asoftmurmur.com — вместо музыки тут звуки вроде треска костра или шума ливня.


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

In Extremo — Nur Ihr Allein
Задорные немецкие фолк-металисты.

Grimes — REALiTi
Канадская певица Граймс и её дрим-поп.

Blue Foundation — Eyes On Fire
Трек датской поп-рок группы, который использовали в «Сумерках», но вы на это не обращайте внимания — он классный.

Defiler — Cryomancer
Немного бодрящего живительного калифорнийского дэткора.

Poets Of The Fall — Sleep, sugar
Романтичный финский инди-рок.

Eric Dolphy — Naima
Приятный джаз от мультиинструменталиста Эрика Аллана Долфи.

Alex Adair — I Will
Успокаивающий трек британского диджея в стиле tropical house.

Klingande — Jubel
Мягкий house, на этот раз из Франции и с солирующим саксофоном.

New Order — Elegia
Спокойная инструментальная композиция от бывших участников Joy Division.

Manfred Mann’s Earth Band — For You
Классика рока из 70-х. Есть, и что послушать, и на что посмотреть.



Подбробнее blog.selectel.ru/na-volne-selectel-fm/

Пример программирования FPGA-ускорителя



Вместо предисловия
Вначале немного терминов. Вычислительная система с FPGA-ускорителем — как правило, это PCIe-адаптер c микросхемой FPGA в составе сервера х64. Ускоритель принимает на себя отдельную ресурсоемкую задачу, в которой можно задействовать параллельные вычисления и выполняет ее на многие порядки быстрее, чем процессор x64, разгружая его и повышая производительность всей вычислительной системы. К примеру, цикл расчета со 100 тысячами повторов может быть выполнен на FPGA всего за один проход вместо последовательного выполнения 100 тысяч раз на классическом процессоре х64. Логические элементы, аппаратные ресурсы коммуникационные связи микросхемы FPGA программируются пользователем непосредственно под саму задачу, что позволяет реализовать задачу как имплементацию алгоритма в кремнии — Algorithm in Silicon и достичь тем самым высокого быстродействия, причем при очень скромном энергопотреблении.

Сегодня порог вхождения в технологию FPGA вполне доступен даже стартапам — сервер с FPGA-ускорителем и всем необходимым ПО (SDK) можно арендовать в облаке Selectel за разумные деньги (так называемый «облачный FPGA»), а поддержка стандарта Open CL в FPGA ведет к тому, что программист, умеющий работать с языком С, в состоянии подготовить и запустить программу на FPGA.

Подробнее
blog.selectel.ru/primer-programmirovaniya-fpga/

Графические процессоры в решении современных IT-задач



Графические процессоры (graphics processing unit, GPU) — яркий пример того, как технология, спроектированная для задач графической обработки, распространилась на несвязанную область высокопроизводительных вычислений. Современные GPU являются сердцем множества сложнейших проектов в сфере машинного обучения и анализа данных. В нашей обзорной статье мы расскажем, как клиенты Selectel используют оборудование с GPU, и подумаем о будущем науки о данных и вычислительных устройств вместе с преподавателями Школы анализа данных Яндекс.

Графические процессоры за последние десять лет сильно изменились. Помимо колоссального прироста производительности, произошло разделение устройств по типу использования. Так, в отдельное направление выделяются видеокарты для домашних игровых систем и установок виртуальной реальности. Появляются мощные узкоспециализированные устройства: для серверных систем одним из ведущих ускорителей является NVIDIA Tesla P100, разработанный именно для промышленного использования в дата-центрах. Помимо GPU активно ведутся исследования в сфере создания нового типа процессоров, имитирующих работу головного мозга. Примером может служить однокристальная платформа Kirin 970 с собственным нейроморфным процессором для задач, связанных с нейронными сетями и распознаванием образов.

Подобная ситуация заставляет задуматься над следующими вопросами:
  • Почему сфера анализа данных и машинного обучения стала такой популярной?
  • Как графические процессоры стали доминировать на рынке оборудования для интенсивной работы с данными?
  • Какие исследования в области анализа данных будут наиболее перспективными в ближайшем будущем?

Попробуем разобраться с этими вопросами по порядку, начиная с первых простых видеопроцессоров и заканчивая современными высокопроизводительными устройствами.

Эпоха GPU
Для начала вспомним, что же такое GPU. Graphics Processing Unit — это графический процессор широко используемый в настольных и серверных системах. Отличительной особенностью этого устройства является ориентированность на массовые параллельные вычисления. В отличие от графических процессоров архитектура другого вычислительного модуля CPU (Central Processor Unit) предназначена для последовательной обработки данных. Если количество ядер в обычном CPU измеряется десятками, то в GPU их счет идет на тысячи, что накладывает ограничения на типы выполняемых команд, однако обеспечивает высокую вычислительную производительность в задачах, включающих параллелизм.

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

Следующим революционным событием стало появление нового класса более сложных и многофункциональных устройств — видеопроцессоров. В 1996 году компания 3dfx Interactive выпустила чипсет Voodoo Graphics, который быстро занял 85% рынка специализированных видеоустройств и стал лидером в области 3D графики того времени. После серии неудачных решений менеджмента компании, среди которых была покупка производителя видеокарт STB, 3dfx уступила первенство NVIDIA и ATI (позднее AMD), а в 2002 объявила о своем банкротстве.

Общие вычисления на GPU
В 2006 году NVIDIA объявила о выпуске линейки продуктов GeForce 8 series, которая положила начало новому классу устройств, предназначенных для общих вычислений на графических процессорах (GPGPU). В ходе разработки NVIDIA пришла к пониманию, что большее число ядер, работающих на меньшей частоте, более эффективны для параллельных нагрузок, чем малое число более производительных ядер. Видеопроцессоры нового поколения обеспечили поддержку параллельных вычислений не только для обработки видеопотоков, но также для проблем, связанных с машинным обучением, линейной алгеброй, статистикой и другими научными или коммерческими задачами.


Признанный лидер
Различия в изначальной постановке задач перед CPU и GPU привели к значительным расхождениям в архитектуре устройств — высокая частота против многоядерности. Для графических процессоров это заложило вычислительный потенциал, который в полной мере реализуется в настоящее время. Видеопроцессоры с внушительным количеством более слабых вычислительных ядер отлично справляются с параллельными вычислениями. Центральный же процессор, исторически спроектированный для работы с последовательными задачами, остается лучшим в своей области.

Для примера сравним значения в производительности центрального и графического процессора на выполнении распространенной задачи в нейронных сетях — перемножении матриц высокого порядка. Выберем следующие устройства для тестирования:
  • CPU. Intel Xeon E5-2680 v4 — 28 потоков с HyperThreading, 2.4 GHZ;
  • GPU. NVIDIA GTX 1080 — 2560 CUDA Cores, 1607 Mhz, 8GB GDDR5X.
Используем пример вычисления перемножения матриц на CPU и GPU в Jupyter Notebook:


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


Линия графика, выделенная оранжевым, показывает время, которое требуется для создания данных в обычном ОЗУ, передачу их в память GPU и последующие вычисления. Зеленая линия показывает время, которое требуется на вычисление данных, которые были сгенерированы уже в памяти видеокарты (без передачи из ОЗУ). Синяя отображает время подсчета на центральном процессоре. Матрицы порядка менее 1000 элементов перемножаются на GPU и CPU почти за одинаковое время. Разница в производительности хорошо проявляется с матрицами размерами более 2000 на 2000, когда время вычислений на CPU подскакивает до 1 секунды, а GPU остается близким к нулю.

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

Кому в Selectel жить хорошо с GPU?
Первый вариант, который сразу приходит на ум и оказывается правильной догадкой — это майнинг, однако любопытно отметить, что некоторые применяют его как вспомогательный способ загрузить оборудование на «максимум». В случае аренды выделенного сервера с видеокартами, время свободное от рабочих нагрузок используется для добычи криптовалют, не требующих специализированных установок (ферм) для своего получения.

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

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

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

Современный подход к работе с данными включает в себя несколько основных направлений:
  • Большие данные (Big Data). Основная проблема в данной сфере — колоссальный объем информации, который не может быть обработан на единственном сервере. С точки зрения инфраструктурного обеспечения, требуется решать задачи создания кластерных систем, масштабируемости, отказоустойчивости, и распределенного хранения данных;
  • Ресурсоемкие задачи (Машинное обучение, глубокое обучение и другие). В этом случае поднимается вопрос использования высокопроизводительных вычислений, требующих большого количества ОЗУ и процессорных ресурсов. В таких задачах активно используются системы с графическими ускорителями.
Граница между данными направления постепенно стирается: основные инструменты для работы с большими данным (Hadoop, Spark) внедряют поддержку вычислений на GPU, а задачи машинного обучения охватывают новые сферы и требуют бо́льших объемов данных. Разобраться подробнее нам помогут преподаватели и студенты Школы анализа данных.



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

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

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

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


Технологии анализа данных
За время обучения слушатели от основ (базовой высшей математики, алгоритмов и программирования) доходят до самых передовых областей машинного обучения. Мы собирали информацию по тем, в которых используются серверы с GPU:
  • Глубинное обучение;
  • Обучение с подкреплением;
  • Компьютерное зрение;
  • Автоматическая обработка текстов.
Студенты используют специализированные инструменты в своих учебных заданиях и исследованиях. Некоторые библиотеки предназначены для приведения данных к необходимому виду, другие предназначены для работы с конкретным типом информации, например, текстом или изображениями. Глубинное обучение — одна из самых сложных областей в анализе данных, которая активно использует нейронные сети. Мы решили узнать, какие именно фреймворки преподаватели и студенты применяют для работы с нейронными сетями.



Представленные инструменты обладают разной поддержкой от создателей, но тем не менее, продолжают активно использоваться в учебных и рабочих целях. Многие из них требуют производительного оборудования для обработки задач в адекватные сроки.

Дальнейшее развитие и проекты
Как и любая наука, направление анализа данных будет изменяться. Опыт, который получают студенты сегодня, несомненно войдет в основу будущих разработок. Поэтому отдельно стоит отметить высокую практическую направленность программы — некоторые студенты во время учебы или после начинают стажироваться в Яндексе и применять свои знания уже на реальных сервисах и службах (поиск, компьютерное зрение, распознавание речи и другие).

О будущем анализа данных мы поговорили с преподавателями Школы анализа данных, которые поделились с нами своим видением развития науки о данных.

По мнению Влада Шахуро, преподавателя курса «Анализ изображений и видео», самые интересные задачи в компьютерном зрении — обеспечение безопасности в местах массового скопления людей, управление беспилотным автомобилем и создание приложение с использованием дополненной реальности. Для решения этих задач необходимо уметь качественно анализировать видеоданные и развивать в первую очередь алгоритмы детектирования и слежения за объектами, распознавания человека по лицу и трехмерной реконструкции наблюдаемой сцены. Преподаватель Виктор Лемпицкий, ведущий курс «Глубинное обучение», отдельно выделяет в своем направлении автокодировщики, а также генеративные и состязательные сети.

Один из наставников Школы анализа данных делится своим мнением касательно распространения и начала массового использования машинного обучения:
Машинное обучение из удела немногих одержимых исследователей превращается в ещё один инструмент рядового разработчика. Раньше (например в 2012) люди писали низкоуровневый код для обучения сверточных сетей на паре видеокарт. Сейчас, кто угодно может за считанные часы
  • скачать веса уже обученной нейросети (например, в keras);
  • сделать с ее помощью решение для своей задачи (fine-tuning, zero-shot learning);
  • встроить её в свой веб-сайт или мобильное приложение (tensorflow / caffe 2).
Многие большие компании и стартапы уже выиграли на такой стратегии (например, Prisma), но еще больше задач только предстоит открыть и решить. И, быть может, вся эта история с машинным/глубинным обучением когда-нибудь станет такой же обыденностью, как сейчас python или excel»

Точно предсказать технологию будущего сегодня не сможет никто, но когда есть определенный вектор движения можно понимать, что следует изучать уже сейчас. А возможностей для этого в современном мире — огромное множество.

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

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

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

А опытным и искушенным в сфере машинного обучения, анализа данных и не только мы предлагаем посмотреть предложения от Selectel по аренде серверного оборудования с графическми ускорителями: от простых GTX 1080 до Tesla P100 и K80 для самых требовательных задач.

Резервное копирование c помощью инструментов Veeam



Используйте возможности Veeam Backup&Replication для резервного копирования и восстановления виртуальных машин VMware, а также храните бэкапы в «Облачном репозитории Veeam Cloud Connect».

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

С развитием технологий акцент сценариев использования резервного копирования сместился от обеспечения надежного хранения данных к обеспечению непрерывности бизнеса.

Пару месяцев назад мы рассказывали о запуске в Selectel публичного облака на базе VMware. В июне мы запустили две новые услуги, отлично его дополняющие:

Резервное копирование как сервис
Вместе с повышением требований к непрерывности работы растет и объем хранимых данных, что становится проблемой для IT-инфраструктуры бизнеса. Чем больше бизнес зависит от IT-систем, тем большие убытки он понесет в случае потери данных и простоя, пока идет восстановление работоспособности.

Раньше единственной страховкой от «несчастных случаев» потери данных было использование и поддержание СХД (систем хранения данных): от покупки актуальных версий ПО до расширения штата системных администраторов.

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

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

Для предотвращения потери данных рекомендуется придерживаться следующих правил:

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

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

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

Правило «3-2-1»
  1. Иметь по меньшей мере три копии данных.
  2. Хранить копии на двух разных носителях.
  3. Хранить одну резервную копию на удаленной площадке.
Подробно об этом правиле еще в 2013 году рассказывали наши партнеры из Veeam.

Veeam Backup для облака на базе VMware
Первым делом мы запустили услугу резервного копирования для нашего облака на базе VMware на базе инструментария Veeam — признанного пионера и лидера в сегменте резервного копирования для виртуальных сред.

Veeam интегрирован с VMware, что позволяет удобно и быстро делать резервные копии без установки дополнительных агентов.

Наше решение представлено на схеме:

Подробнее о работе с нашей услугой читайте в базе знаний.

Возможности
  • Создание заданий на резервное копирование и восстановление доступно из консоли Veeam Backup Enterprise Manager.
  • Резервное копирование на уровне образа виртуальных машин (далее ВМ) с учетом состояния приложений.
  • Упрощенное резервное копирование работающих ВМ для архивирования.
  • Быстрое инкрементное копирование отдельных ВМ с помощью уже существующего задания резервного копирования.
  • Восстановление ВМ или vApp целиком.
  • Восстановление файлов и отдельных дисков.
  • Восстановление объектов приложений (SQL Server, Oracle).


Преимущества
  • Снижение RTO и RPO (допустимое время простоя сервиса в случае сбоя и допустимый объем возможных потерь данных в случае сбоя) за счет обеспечения высокой скорости восстановления и минимизации потерь данных в случае сбоя.
  • Уменьшение капитальных затрат на оборудование и его эксплуатацию ― все данные хранятся в облаке.
  • Снижение затрат на ПО — оплачиваются только необходимые ресурсы.



Облачный репозиторий Veeam Cloud Connect
Для клиентов, использующих Veeam on-premise в своей инфраструктуре, подойдет услуга хранения бэкапов в Облачном репозитории Selectel.

Примечание: решение подходит для клиентов, использующих Veeam Backup & Replication версии 9.5 и выше и Veeam Agent 2.0 и выше.

Наше решение работает следующим образом:

Подробнее о работе с нашей услугой читайте в базе знаний.

Преимущества
  • Отсутствие капитальных затрат, связанных с созданием собственной удаленной площадки.
  • Безопасность — все данные шифруются на стороне клиента.
  • Высокая надежность — Veeam Cloud Connect согласуется с правилом «3-2-1».
Более того, мы храним каждый бэкап в трех копиях на разных физических дисках!



Дальнейшие планы
Конечно, услугой резервного копирования для VMware мы не ограничимся.

Veeam позволяет проводить множество полезных операций:
  • миграция инфраструктуры VMware,
  • DRaaS — сервис аварийного восстановления инфраструктуры клиента,
  • бэкапы физических машин.
Кстати, за последние пару лет в Veeam очень сильно продвинулись в сфере резервного копирования физической инфраструктуры, и мы уже работаем над запуском услуги резервного копирования для выделенных серверов. Следите за новостями!
selectel.ru/services/additional/veeam-backups/
my.selectel.ru/

Обновление VPC, гарантированное восстановление данных, интенсив по Kubernetes и другие новости



Новости компании
Selectel и Resello будут вместе развивать Azure Stack
В мае мы начали сотрудничать с Resello — международной платформой по автоматизации бизнеса. Обсуждаем несколько общих проектов, в частности, планируем вместе развивать облачный сервис Azure Stack Network в России. По ссылке — подробнее о сотрудничестве и о том, какие возможности оно дает.
Selectel получил статус Google Cloud Partner
Наша компания появилась в каталоге партнеров Google. Напомним, что теперь вы можете заказать офисные приложения Google G Suite — у нас есть три пакета на выбор от 380 рублей в месяц за пользователя.

Новости услуг
Гарантированное восстановление данных
Новая услуга для пользователей Selectel VMware Cloud — «Резервное копирование для Selectel VMware Cloud». Услуга сокращает капитальные затраты, позволяет восстанавливать только нужную часть системы и гарантирует быстрое и максимально полное восстановление данных. Узнать об этом больше и бесплатно протестировать услугу можно на нашем сайте.

«Виртуальное приватное облако» стало больше и удобнее
У «Виртуального приватного облака» две новости, и обе хорошие. Первая — мы запустили новый регион «Санкт-Петербург 2», зона ru-3a. Все серверы в этой зоне работают на базе процессоров нового поколения Intel Xeon Gold Skylake.
О второй — чуть подробнее. С момента появления услуги в мае 2015 года биллинг VPC осуществлялся с использованием механизма квот на ресурсы. Клиент устанавливал границы использования ядер, памяти и дисков на каждый проект, а мы брали плату за эти границы независимо от того, использовались ли ресурсы реально. Это вынуждало пользователей подгонять квоты под реальное потребление.

Такая механика затрудняла использование систем автоматизации развертывания инфраструктуры и не всегда была очевидна.

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

Надеемся, теперь работать с VPC станет еще удобнее.

Windows в облаке VMware
Появились готовые шаблоны и лицензии Windows Server 2012 R2 и 2016 Standard Edition в «Облаке Selectel VMware». Заказывайте услугу, чтобы нарастить мощности вашего дата-центра без капитальных и организационных затрат и платить только за потребляемые ресурсы.

Мероприятия
Интенсив по Kubernetes
3 августа начинается «Слёрм» — курс, который посвящен технологии Kubernetes Google. «Слёрм» — это 3 дня интенсива в Подмосковье и 5 вебинаров для тех, кто хорошо разбирается в Linux и хочет научиться создавать сверхнадежные серверы. Для подписчиков Selectel — скидка 5000 рублей на тарифы «Интроверт» и «Семья». Введите в заявке волшебное слово: Selectel.
Больше информации о курсе, преподавателях и технологии Kubernetes — на странице регистрации.
slurm.io


selectel.ru/careers/all/

Кластеры Kubernetes в сервисе VPC



Мы добавили возможность удобного запуска Kubernetes в сервисе Виртуальное приватное облако в режиме раннего beta-тестирования.

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

Так как сервис Виртуальное приватное облако построен на базе OpenStack, мы используем один из его компонентов — OpenStack Magnum. Он позволяет быстро создавать приватные кластеры Kubernetes с нужным количеством нод.

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

В этой статье мы расскажем про основные объекты кластера Kubernetes и на примерах рассмотрим процесс создания кластера при помощи OpenStack Magnum.

Подробнее blog.selectel.ru/klastery-kubernetes-v-vpc/

Как обеспечить непрерывную работу вашего бизнеса?



В апреле мы анонсировали новую услугу ― «Облако Selectel VMware». Это виртуальный отказоустойчивый и катастрофоустойчивый дата-центр на платформе VMware vSphere. Он позволяет нарастить мощности без капитальных или организационных затрат и оплачивать ресурсы по потреблению.

А теперь мы встречаем лето важным дополнением к «Облаку Selectel VMware» ― «Резервным копированием для Selectel VMware Cloud».

Что это и как работает
Резервное копирование или бэкапы ― регулярное создание копий данных и восстановление их в исходное состояние в случае сбоя. Если что-то пошло не так, всегда можно восстановить данные системы целиком или «достать» только нужный файл.

Услуга работает в паре с Selectel VMware Cloud. Данные виртуальных машин и приложений быстро копируются, надежно хранятся и восстанавливаются благодаря Veeam Backup & Replication.
Зачем делать бэкапы в облаке
  • Обеспечить высокую скорость восстановления и минимизировать потери данных в случае сбоя.
  • Уменьшить капитальные затраты на оборудование и его эксплуатацию ― все хранится в облаке.
  • Снизить риск простоя компании из-за потери доступа к значимым для бизнеса данным.

Для тех, кто хочет попробовать
Чтобы понять, подходит ли вам услуга, протестируйте ее в течение 2-х недель. В рамках тестового доступа можно создать бэкапы 10 виртуальных машин и занять до 1000 ГБ места в репозитории. Прежде чем оформлять заявку на бесплатный тест резервного копирования, создайте свой виртуальный дата-центр Selectel VMware Cloud.

selectel.ru/services/additional/veeam-backups/