Андрей Чернышев (Delta Solutions)
Сегодня хотелось поговорить об интересном, как кажется. О том, что, наверное, больше пятидесяти процентов из нас не знают хорошо. Все мы знаем, что такое OpenSource-технологии в софте и, наверное, некоторым сюрпризом для многих из нас являются OpenSource-технологии в аппаратуре, в хардваре. Сегодня я попытаюсь не затратить на это много времени, но максимально информативно рассказать, какая революция происходит и как она вообще может влиять на нас с вами.
Законодателями мод во всей этой истории выступают наши большие гранды. Наши, не в смысле «российские», а в смысле «всем известные». Двигаются они в этом направлении не по своей воле. Это сейчас и обсудим.
Как известно, самые большие затраты у больших веб-проектов – это дата-центр-составляющая, та составляющая, которая в капитальных затратах больше всего им стоит. И в операционных затратах тоже. И новые движения в части серверной инфраструктуры подвигают всю индустрию ЦОД’о-строения и вообще всю индустрию инфраструктуры к изменениям. И эти изменения по большому счету революционные. Не будем греха таить, это действительно так.
И самое главное – то, с чем они борются. Те из вас, кто сталкивался внутри своих проектов с инфраструктурными задачками, все боятся и вообще все борются с неким вендор-локом, с неким локом на конкретного производителя оборудования. Это связано и с ценовой составляющей и не только с ценовой составляющей.
Суть всей этой революции-эволюции – попытаться упростить инфраструктуру. И гранды борются за упрощение каждого кусочка инфраструктуры дата-центра. А проще – понятно, что дешевле в конечном итоге, ну, и надежнее.
Этот вендор-лок пресловутый не просто держит всех за горло. В интернет-проектах зависимость несколько меньше, чем в энтерпрайзе, но она тоже существует. И, самое главное, почему мы с ним боремся – это стоимость инфраструктуры.
Конечно же, гранды задались целью и задались вопросом: как можно существенно, не на 3-5-10-15 процентов, а существенно повлиять на стоимость инфраструктуры.
Они организовались в некий консорциум, который называется Open Compute Project о котором сегодня, чуть позднее, хочется сказать пару слов. В нашей же действительности, в который мы сейчас живем, есть некая истерия по поводу импортозамещения, которое движется не только в умах наших чиновников, но, в принципе, патриотизм какой-то и в наших IT’шных телах возникает. Потому что в софте мы научились делать очень многое своими руками и, в принципе, мы гордимся этим. И сейчас движемся потихонечку к тому, что мы и в железе начнем делать своими руками что-то. Импортозамещать, наверное, на вот этих открытых стандартах – тех стандартах, которые грандами индустрии пишутся.
Что делать? Самое главное – что делать? Попытаться экономить на инфраструктуре совсем чуть-чуть? Тоже один выход. Но, как известно, все революционные прорывы драйвятся не улучшением на 1-2 процента, а каким-то существенным улучшением, либо переосмыслением того, что есть сейчас. То есть мы боремся с некими привычками и с некими устоями. И это рождает как раз революционные продукты.
Принципы, которые позволять побороться с вендор-локом, побороться с ценой и, в общем-то, побороться, самое главное, за эффективность тех ресурсов, которые в России дешево стоят, а именно: электричество в большей степени и, как считалось раньше, рабочая сила. Эти принципы позволяют немножко посмотреть по-другому на конструкцию всех информационных систем, которые мы с вами придумываем, делаем, разрабатываем. И некие постулаты, которые ложатся в тех. задания для новых открытых платформ они, вот, всем известны:
- Первое – это гиперконвергенция. То есть мы перестаем отделять storage и computing друг от друга. Для нас, software-девелоперов, это некое универсальное, и Амазон нас к этому приучил, некий ресурс.
- Дальше – важная вещь. Основная функциональность – ровно то, что нам нужно, как software-девелоперам, потому что все остальное мы можем написать сами.
- То есть минимальная реализация функционала внутри аппаратного обеспечения. Все остальное мы напишем сами.
- Хороший путь, хорошее понимание, куда же это все движется, тоже очень важно. И мы хотим сами влиять на то, куда будет двигаться эволюция аппаратного обеспечения, т.е. как сделать наши системы, наши платформы, которые мы разрабатываем, сделать абсолютно независимыми от тенденции мирового рынка развития аппаратного обеспечения. Мы хотим, чтобы, наоборот, аппаратное обеспечение развивалось под наши архитектурные решения.
- Ну и, конечно же, там совсем все открыто, и мы хотим убеждать не только тот Linux и другие операционные системы с открытым кодом, но, и, в принципе, хотели бы посмотреть на BIOS. Но это в большей степени влияет на некие спец. приложения.
Основные задачки сами формируются из идеологических направлений, озвученных ранее. Помимо всего прочего, важно сверхнизкое энергопотребление как следствие уплотняющейся инфраструктуры. В конце концов, электричество у нас тоже дорожает и это очень большая часть затрат на инфраструктуру.
Что родилось?
Схлестнулись два больших… Мы всегда любим говорить о том, что есть Microsoft и что-то еще. К сожалению, такого супер-большого гранда, который мог бы с ним столкнуться, в Linux-мире не случилось. Делят, можем сказать, этот большой ландшафт Canonical и RedHat между собой. Так вот, большими потребителями инфраструктурных решений, которые, в принципе, придумывают и решают сейчас пока за нас, куда двигаться индустрии в этом направлении, являются всеми нами любимый Facebook и, любимый, наверное, Microsoft.
И два гиганта в рамках одного проекта, как это случайно получилось, реализуют две новые интересные концепции. Все они взлетают под грибом OCP (Open Compute Project) и то, что принято называть у Facebook’а Pure OCP (сейчас расскажу чуть-чуть коротко о нем), и Microsoft двигают собственную инициативу – Open Cloud Server.
Взгляды отличаются очень сильно. Если коротко, то Facebook всегда строил инфраструктуру для себя сам, в том числе и дата-центры. И идея – дать внутренним разработчикам Facebook’а некие компоненты, некие брики (кирпичи) из которых можно собирать любое решение любой архитектуры. Совершенно любое. Это родило некую унификацию внутри компонентов, а также открыло возможность – в первую очередь это связано со структурой ценообразования – открыло возможность third party-производителям делать совместимые компоненты с этой инфраструктурой, с OCP.
Компоненты очень простые: это storage-модули, это computing-ноды, это микросерверы, это сетевые решения и системы управления питанием.
В рамках выделенного времени нет возможности говорить о деталях, о технической реализации, если кому-то будет интересно, можно будет поговорить об этом отдельно, но самый серьезный прорыв, который они совершили – это прорыв в эффективности использования электричества внутри рэка (серверной стойки). Если будет интересно, расскажу об этом дальше.
Самое главное, что эти все брики, все эти компоненты, они абсолютно независимы друг от дружки. Обслуживаются отдельно, апгрейдятся отдельно. Очень удобно.
Что у Microsoft’а? Microsoft двигал свой Open Computing Server как часть проекта по разворачиванию Azure во весь мир. Где-то, где они не верили до конца в рынки, они использовали стандартную 19-дюймовую инфраструктуру, либо арендовали существующие дата-центры, с существующими рэками и, как следствие, в стандарте есть некий след legacy, как приобретенный след, это именно использование стандартных 19-дюймовых рэков для серверного и storage’ового хозяйства.
Есть недостатки и достоинства у этого подхода. В большей степени плотность очень схожая с Facebook’ом, но не такая. Есть проблемы с тепловыделением – борется потихоньку. Есть проблемы с электричеством, но догоняют с использованием специальных блоков питания. В то же время с точки зрения cost-модели у них получилось не так все уж очень плохо.
На наш взгляд, рассматривать эту ветку, этот fork реального Open Computing-проекта интересно в том случае, если все же на Windows вы строите свои проекты и планируете развивать инфраструктуру на Windows.
Всего три компонента: compute-компоненты, storage-компоненты и mixed-компоненты. И это только одно отличие от Facebook’а. Сетевая инфраструктура в Microsoft’овском концепте – это не часть самого проекта.
Две интерпретации, два «Больших» борются. Это, вообще, техническая война или политическая? На самом деле это политическая война.
Кто-то из нас продолжает работать на большую компанию, кто-то из нас работает на себя, но иногда мы ловили себя на мысли, что мы хотим для своего руководства, для своей компании быть неким незаменимым, скажем так, важным звеном. Это очень серьезно влияет на те дела, которые мы делаем.
Кстати, мы выложили в открытый доступ видеозаписи последних пяти лет конференции разработчиков высоконагруженных систем HighLoad++. Смотрите, изучайте, делитесь и подписывайтесь на канал YouTube.
Возможно, это не правда в первой инстанции, но людьми, которые двигают два fork’а, движет в основном это действо. То есть они разрабатывают свои отдельные fork’и и концепции исключительно для того, чтобы иметь поле для деятельности. Потому что с точки зрения целей они одни.
Война это или не война?
Война! В первую очередь, война с Intel’ом. Она очень серьезная. Как бы мы его ни любили, но, к сожалению, у него сейчас нет конкурентов на рынке процессоров. Оговорюсь: практически нет конкурентов на рынке процессоров.
И самое главное: очень важно, что отсутствие конкуренции всегда, вы знаете, останавливает немножко прогресс.
Те же самые, если говорить про Microsoft, то они «out of the race», но тот же Facebook, заигрывая с ARM’ом какое-то время назад, родил новый проект в кулуарах Intel. И этот проект теперь всем известный, он уже не NDA’ный (NDA = Non Disclosure Agreement – соглашение о неразглашении). Это Broadwell-D – это новый процессор, который маркетинговое название имеет Xeon-D. Это single of chip процессор, который специально задизайнен под Facebook’овские нужды изначально.
Все время путаю: «хип-хоп» или «хард-рок» Virtual Machine в PHP используется J, но смысл такой, что все фронтенды Facebook’а работают на PHP, а, в принципе, это достаточно тяжелые фронтенды. И процессоров маленьких, мало-ядерных, с маломощными ядрами, было всегда недостаточно для того, чтобы крутить эту историю. А крутить ее на двухпроцессорных Xeon’ах достаточно дорого с точки зрения стоимости и эффективности. И таким образом в конкуренции с ARM’ом родился новый процессор, который Facebook, благодаря вот этой политической войне и борьбе стандартов, родил, в общем, для всего мира. И сейчас, я знаю, я сейчас разговаривал тут с несколькими ребятами, даже в проектах на фронтендах используется уже Xeon-D в полный рост, выросли из Atom’овских штанов уже давно.
Это те изменения, которые по факту действительно повлияли на нашу жизнь. И мы это видим, как сам Open Source Hardware Computing весь именно влияет на нашу жизнь.
Что происходит дальше? Какие, в конце концов, бенефиты? Рождаются новые продукты – что нам от этого? Мы как-нибудь можем это использовать? Конечно, можем.
Новые истории с Cavium’ом, с новыми процессорами, предназначенными, задизайненными в большей части для storage-приложений, которыми мы начинаем потихонечку пользоваться все. Это тот же SIF, например, либо файловые системы распределенные. Они требовательны к ядрам. И, в общем, это процессоры, и этот силикон, и это железо, которое разрабатывается, в том числе печатные платы, серверы и так далее, разрабатываются благодаря этим парням, которые воюют на самом деле между собой.
Какой сигнал у всего этого? Сигнал следующий: большой заказчик теперь в состоянии влиять на продуктовую линейку, из которой строится наша инфраструктура. На всю продуктовую линейку. Если раньше, будь то Hewlett-Packard, IBM, они предлагали рынку продукт, сформированный на базе каких-то их собственных мнений, что будет продаваться в тот или иной SMB, или в тот или иной интернет-проект, или у того или иного большого enterprise-заказчика. Сейчас ситуация, пару лет назад, начала разворачиваться совершенно в другую область. Большие заказчики определяют, как должна выглядеть инфраструктура, и это делается не без помощи коллег, занимающихся, собственно говоря, и софтверной инфраструктурой.
Надо ли нам за этим следить? Думаю, надо.
Откуда мы об этом обо всем знаем? В своей деятельности мы разрабатываем real-time платформу для телекоммуникационных операторов. В последнее время, когда рубль поделили пополам, либо доллар умножили на два – кто как любит называть – заказчики все в рублях хотят рассматривать. Хотят рассматривать в первую очередь в разрезе всего проекта: железо плюс софт, все в рублях. Рубль подешевел – это значит, что в комплексном проекте часть инфраструктуры увеличилась вдвое. То есть, денег на софт и работы, в общем-то, не осталось. И это заставило нас посмотреть на эту историю. Так как жизнь заставила писать софт, который, в принципе, не очень требовательный к инфраструктуре с точки зрения redundancy (избыточность, дублирование с целью повышения надежности). Наверное, это в большей степени то же самое, чем и вы занимаетесь, такая же история.
Взглянув на «борьбу титанов» детально, мы увидели, что новые стандарты дают возможность не только софт свой разрабатывать, но и железо.
Если будет минутка – посмотрите, у них интересно на сайте консорциума, выложены новые лицензии, с помощью которых, почитав их внимательно – там есть подводные камни – в рамках существующих конструктивов можно разрабатывать собственное железо. Я не говорю про какие-то процессоры «Байкал», то, что двигает наше государство, с поддержкой «Эльбруса» или что-то еще. Речь идет о конструктивах, необходимых для ваших приложений.
Не так давно мы с ребятами из MAIL.RU, обсуждая вопрос об оптимизации их почты, схлестнулись и пообщались на очень интересную тему – процессоры становятся все мощнее, ядра мощнее, а холодная storage, как была холодная, теперь становится еще более холодная. Потому что мы от Рождества Христова там все свои фотографии храним. И тем самым требование к количеству шпинделей, которые нужно добавить к тому же самому или чуть-чуть возросшему вычислительному ресурсу процессора, оно возрастает. И пока индустрия не очень-то бежит в эту сторону, так как этих custom-приложений не так много.
Ничего сложного: Inventor, Solid Works, пару хороших инженеров, которые умеют работать c металлом, часть материнских плат, которые разработаны грандами индустрии и обладают нормальными параметрами по надежности – и вот вам в вашем форм-факторе кастомизированное устройство.
«Большие», что они делают?
Формально все вступили в этот консорциум, для того чтобы вступить, быть где-то рядом. Но HP двигается, например, с FoxConn’ом, где FoxCоnn производит железяки, HP их пытается продавать под собственным брендом.
Cisco использует в коммутаторах Nexus тот же Brоadcom’овский Trident 2 чипсет, который используется в Bare-Metall-коммутаторах в Facebook, Amazon, Apple iCloud c Open Network Linux’ом. И, в принципе, это, наверное, мечта любого девелопера – попробовать load balancing сделать на коммутаторе, а не на серверах, и делать это ASIC’ами. Вот – пожалуйста! В то же время Cisco начал продавать свои коммутаторы без софта. Как вы думаете, стали ли они от этого дешевле? Конечно, нет.
Hitachi, Ericsson, Nokia и другие продолжают покупать готовые OCP-компоненты, но верят в эту инициативу, так как это увеличивает конкуренцию.
А в итоге-то, зачем затеял это дело Facebook? Цена! Убрать маркетинговую составляющую, убрать составляющую бренда из стоимости конечного аппаратного обеспечения. Потому что Intel везде один, чипсеты Broadcom везде одни, чипсеты Mellanox везде одни, память делают пять компаний в мире, производят чипы памяти.
Есть производители большие, вот, основной производитель для Facebook’а – QCT – весь range производит совместимого оборудования и, в принципе, не могу сказать, что на все случаи жизни, но покрывающий часть, в том числе вот этих хитрых MAIL.RU’шных задачек, я думаю, что не только у них там такие задачки. В общем, идея в том, чтобы найти хорошего поставщика, если уж пока не созрел на собственные решения.
Готовы обсудить, если кого-то заинтересует вся эта OCP’шная история, готовы обсудить это детально, рассказать, какие бенефиты это может дать вашему конкретному проекту, как бороться с cost’ом на инфраструктуру и как торговаться с вашим Cloud Service-провайдером о стоимости даже арендованной у него инфраструктуры. Приходите, можем отдельно обсудить.
У меня все.
Кстати, извините, эти машины с процессорами Xeon-D, которые называются проект «Yosemite», они прилетели к нам не так давно. У Facebook’а было эмбарго на продажу их на сторону, вот оно преодолено. Можно прийти, на стенде потрогать, посмотреть – достаточно забавная интересная вещь под фронтенд.
Спасибо!
ВОПРОСЫ И ОТВЕТЫ
Вопрос: Вы в основном про противостояние Microsoft’а и Facebook’а рассказывали, а в заголовке доклада Facebook – да, а вот есть Apple и Google. Как-то про них могли бы? Уж Apple, казалось бы, он proprietary-proprietary. И у Google какая роль?
Ответ: На самом деле в марте этого года (2016) случилось страшное. Google был сторонником неучастия во всех этих чудесных историях, но в марте они присоединились к проекту OCP, они уже там, подписаны документы. Сейчас происходит баталия, они борются с Facebook’овскими инженерами на тему питания. То есть, их устраивает и конструктив, устраивает и вообще весь подход.
Если углубиться чуть-чуть в технику, буквально на две минуты. Вся история OCP говорит о том, что блейд-корзины, куда вставляется инфраструктура (не только серверы, но и storage, и network-компоненты), блейд-корзина – это рэк. Т.е. рэк является блейд-корзиной и питание централизованное – на рэк. Вот, в фейсбучном варианте это 12 вольт, а у Google собственные проекты использовали 48 вольт, мотивируя это тем, что меньшее сечение медных проводников необходимо, для того чтобы передать один и тот же ток. И сейчас в новом консорциуме, я там участвую, вижу переписку – в новом стандарте рэка они добавляют возможность использовать 48 вольт в качестве питания.
Они же выступают инициатором добавить в рэк специальную шину, для того чтобы можно было осуществлять менеджмент компонентов между собой. Потому что сейчас в концепции каждый компонент являет из себя отдельный остров.
Google – там, никуда он не делся. Из этого мы косвенный делаем вывод, что Microsoft’овская история, наверное, «да», но тапки кладутся в корзину другую.
Вопрос: Хорошо, а Apple?
Ответ: Ребята из Apple – одни из серьезных участников этого консорциума и последний, самый большой дата-центр, который у них выстроен для Apple Music, он полностью OCP’шный, именно фейсбучное направление, он полностью OCP’шный. Они занимаются менеджментом, участвуют в менеджмент-части, и они скорее консьюмер, нежели контрибьютор.
Они являются самым серьезным сторонником втаскивания в борьбу ARM’овских процессоров, так как их история с Power PC, которая у них была раньше, c миграцией, соответственно, на Intel и поведение Intel’а, которое сейчас у них есть. Мы же понимаем, все завоевывают рынок с дешевой ценой, а потом-то должны рекаверить маржу. Они используют этот аргумент и достают его на стол, для того чтобы получать от ребят хорошие финансовые условия. Потому что реально у Intel’а нет конкуренции.
Есть OpenPOWER, который двигается потихоньку и, в принципе, Rack Space – один из больших контрибьюторов, единственный, кто использует OpenPOWER под KVM’ами. Они инвестируют в это очень много, но IBM хитер. Тот OpenPOWER, который доступен сейчас, он только с DDR3-памятью, она существенно проигрывает DDR4, мы знаем. Есть вопросы по производительности, но Rack Space верит в них.
Вопрос: А долгосрочная эта философия, она не подрубит сук, на котором Apple сидит? Потому что ведь речь о коммодитизации идет, а Apple продает те же железки в два раза дороже за какую-то уникальность бренда.
Ответ: Сейчас мы говорим не об Open Source Hardware на десктопе, не об Open Source Hardware в нашем кармане, а мы говорим об Open Source Hardware внутри серверного хозяйства.
Вопрос: Я говорю о долгосрочной философии. Если рынок куда-то разворачивается, то все это начинают принимать и вопросы про Макбуки тоже задавать, наверное.
Ответ: Это другой рынок – Макбуки. Если говорить про серверное хозяйство, конечно. Есть еще один идейный кусочек истории, на этом закрытом мероприятии один из вице-президентов Intel сказал важную вещь. Они прогнозируют в 2017 году 60% серверных процессоров продать в Cloud Service-провайдеров.
Вы представляете, что это такое? Это означает, а сейчас продается только 30%, это означает, что по их прогнозам, а они, в принципе, умные люди, по их прогнозам рынок серверных процессоров сильно упадет для всех остальных, кроме Cloud Service-провайдеров. Это ответ, там война будет сумасшедшая просто за этот рынок.
Этот доклад — расшифровка одного из лучших выступлений на профессиональной конференции разработчиков высоконагруженных систем Highload++, а конкретно — секции «Аппаратное обеспечение, инфраструктура».
Компания Delta Soultions, которой руководит Андрей, является партнёром фестиваля "Российской интернет-технологии" и привезёт для выставки новые железки, которые можно будет пощупать и изучить.
Автор: olegbunin