Я думаю, что никто не будет спорить с наличием в IT-сообществе трендов на понижение стоимости решений и повышение их эффективности. Под стоимостью при этом понимается как стоимость инфраструктуры и оборудования, так и стоимость обслуживания решения. Мощности — в аренду! Админ — на аутсорс! Решения — только типовые!

Вершиной этого «развития» стало «приватное виртуальное облако», — масштабный кластер виртуализации с централизованным управлением, где клиенты могут сами управлять своими виртуальными машинами, их количеством, выделением вычислительных ресурсов под них. А тарифицируется только то, что клиент распределил под свои машины. Почти что фактическое использование ресурсов.

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

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

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

О дивный новый мир? Решение всех наших проблем? Всем срочно нужны блейд-сервера и VMware/OpenStack? Нет, нас надули, быстро уходим…

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

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

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

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

Более того, если мы знаем, что сервис кушать будет много, но не предусматриваем возможности горизонтального масштабирования, то… Плохо всё значит у нас. Ни один здравомыслящий проектировщик нагруженного сервиса не будет закладываться на то, что сервису хватит одной машины. А теперь вопрос, какая нам радость от наращивания мощностей в виртуальной машине, если нам проще иметь их пять штук, и быть морально готовыми, что придётся и десять, и двадцать использовать?

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

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

Вы помните, что изначально аббревиатура RAID разворачивалась как «Redundant Array of Inexpensive Disks»? И лишь позже это стало «Redundant Array of Independent Disks»? А почему мы не делаем то же для «вычислительных модулей»? Мы уже, в рамках создания виртуальных кластеров, научились тасовать хранилища виртуальных машин между хост-системами, где они исполняются. Теперь нам осталось просто сменить в этой идеологии виртуальные машины на вычислительные модули, и всё…

И таки да, вычислительные модули тоже уже есть: множество плат формата Raspberry Pi B+. Вот есть Pine64, построенная на базе SoC Allwinner A64 (четырёхъядерный 64х-битный ARM), нативно поддерживаемая U-Boot’ом и Linux’ом, которая обойдётся всего в 29$ за версию с 2ГБ ОЗУ и гигабитным Ethernet’ом. Ну или есть платы MinnowBoard MAX и MinnowBoard Turbot, построенные на двухъядерных и четырёхъядерных SoC Intel® Atom™ E38xx, которые поддерживаются Coreboot и Linux, которые обойдутся в 139$ и 190$ соответственно. Это мало того, что компактные (очень-очень компактные) вычислительные модули, доступные по низкой цене (некоторые по экстремально низкой), так они ещё и работают под открытыми прошивками. Никаких UEFI и Intel ME! Вы понимаете, что эти платы, сами по себе, пролазят под большинство современных требований по отсутствию недекларированных возможностей?

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

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

98 − 94 =