Облака из неведомой страны. FAQ по облачным технологиям
Прям над ними плыло легкое облако.
— Слушай, давай поедем в Тили-мили-трямдию! — предложил Медвежонок. — Говорить по-ихнему мы умеем. Смотри, какое хорошее слово: «Трям»!
— Трям? Очень хорошее слово, — сказал Ёжик. — А что оно означает?
— Трям — по-тили-мили-трямски значит «здравствуйте!»
Специалисты в облачных технологиях используют многочисленные термины, описывающие особенности виртуализированных решений. Эти термины входили в лексикон постепенно и для описания технической или маркетинговой специфики. При этом изначально описывался их смысл, а затем им присваивались имена. Спустя десятилетие с начала бурного развития «облаков» профессиональный сленг затрудняет понимание сути облачных продуктов для бизнеса и людей, которые ранее не знали или воспринимали облачные технологии как новостной фон, не вникая в содержание.
В статье мы постараемся выступить в роли переводчика с маркетингово-технического языка облачного провайдера на более общепонятный, ограничивая использование слов, находящихся на периферии словарного состава языка и не обладающих качеством коммуникативной общезначимости.
Почему вычисления облачные?
В 1993 году Эрик Шмидт пришел к выводу о родственности сети и компьютера, эта мысль стала широко известна позже из девиза Sun Microsystems «Сеть — это компьютер». «Когда сеть станет такой быстродействующей, как процессор, компьютер как таковой перестанет существовать, он распространится по сети», — говорил Шмидт около 25 лет назад. В августе 2006 года Шмидт первым использовал в интервью по окончании конференции Search Engine Strategies Conference термин cloud computing:
«У нас на глазах рождается новая модель компьютерных систем, и мне кажется, что насчитывается не так много людей, которые способны понять открывающуюся перспективу. Суть ее в том, что сервисы, поддерживающие данные и архитектуру, размещены на удаленных серверах. Данные находятся на этих серверах, на них же выполняются необходимые вычисления… И если в вашем распоряжении соответствующий браузер и соответствующие права доступа, то вы можете получить доступ к этому облаку независимо от используемого устройства».
Еще в 1959 году писатель-фантаст Курт Воннегут упоминает об облаке, которое «думает обо всем и за всех вместе» в книге «Сирены Титана».
Также существует мнение, что интернет в схемах компьютерных сетей и систем часто обозначали изображением облака, и так название стало народным для использования компьютеров через Интернет. Но мы считаем, что именно комментарий Эрика Шмидта, можно принять за начало использования термина «облако» в том узком смысле, в котором его употребляют в IT, так как именно удаленность серверов, доступ к которым пользователь получает через Интернет, характеризует облачную модель потребления.
Дадим наше определение:
Облако — это пул ресурсов, из которого пользователь, взаимодействуя через Интернет, может получить нужный ему объем и состав IT-услуг и при необходимости самостоятельно изменять эти характеристики потребления.
Everything as a Service или что можно получить от облака
Многое зависит от ответственности и прав, которые вы хотите оставить себе при использовании облака. Начальным уровнем является модель программа-как-услуга (saas — software as a service). При такой бизнес-модели провайдер сам создает и настраивает инфраструктуру, предоставляя клиенту доступ к готовой программе/приложению, например, корпоративной почте или антивирусу. Этот тип облачного сервиса хорошо известен даже людям далеким от IT благодаря решениям для облачного хранения фотографий и документов. Однако, стоит понимать, что это не единственное применение модели и функционал и назначение программы в облаке может быть любым.
Для клиентов, которые хотят самостоятельно настраивать «облачные серверы», устанавливать на них необходимое программное обеспечение и, что важно, связывать их по сети, услуги предоставляются по модели Infrastructure-as-a-Service (IaaS — Инфраструктура как услуга).
Так как облако, это только модель потребления при которой можно получить любой IT-ресурс с доступом к нему через Интернет, маркетологи придумали бесконечное количество аббревиатур типа Everything as a Service (XaaS), соответствующих каждому типу услуги.
Как это работает?
Сеть стала достаточно быстродействующей, чтобы полноценное взаимодействие с компьютером стало возможным через Интернет. Это создало перспективы для нового бизнеса. Так появились облачные провайдеры. Для предоставления своих услуг они используют физические серверы, ресурсы которых объединяются в пул, а затем он с помощью программы (гипервизора) «нарезается» на виртуальные машины (облачные серверы, vds/vps). Этот процесс эмуляции виртуальных машин лежит в основе и описывает суть технологии виртуализации. В Cloud4Y используется платформа виртуализации от VMware и описывать работу облака будем на нашем примере.
Ниже, на первых двух фото примеры серверов, которые мы используем. Это блейд-серверы HP ProLiant BL460c Gen8. Каждое лезвие (блейд) объединяется с помощью шасси, которое отвечает за электропитание, соединение по сети и прочие процессы.
Арендатор инфраструктуры провайдера может создавать виртуальные машины с нужными ему характеристиками (CPU, RAM и т.д.) и оперативно менять их. Конечно, для этого не нужно каждый раз подбирать соответствующий физический сервер и «переезжать» на него. Физические ресурсы серверов дата-центра, такие как вычислительные мощности, диски и сети, объединяются в большие пулы виртуальных ресурсов. В дальнейшем части этих ресурсов предоставляются в виде «сборных» виртуальных ЦОДов (центров обработки данных), которые выделяются для арендаторов. Это обеспечивает гибкость и масштабируемость, которые являются преимуществами облачной инфраструктуры.
Для поддержки большого количества виртуальных машин на одном физическом сервере требуется больше памяти, больше подключений для хранилищ данных и больше сетевых подключений, поэтому мы выбрали серверы HP, сертифицированные для VMware и построенные «with virtualization in mind». Сертификация VMware даёт возможность стабильного использования всеми кластерными опциями платформы виртуализации VMware, которые значительно повышают эффективность и надёжность работы всего облака:
Что такое кластер на VMware и как он устроен?
В начале обозначим, что в рамках данной статьи мы будем понимать под кластером группу хостов (физических серверов) под управлением единого сервиса для совместного выполнения определенных функций как целостная система, связывающаяся через сеть.
На платформе виртуализации VMware vSphere можно построить 2 разновидности кластеров: High-availability кластер (HA) и Distributed Resource Scheduler кластер (DRS).
HA-кластер будет означать, что определенное количество физических серверов объединяется в кластер и на них запускаются виртуальные машины. В случае выхода из строя одного из хостов, виртуальные машины запускаются на других серверах из группы, на которых предварительно было выделено для этого место. В итоге время простоя равно времени загрузки операционной системы «виртуалки».
Если необходимо сократить время простоя до минимального времени рекомендуется использовать технологию VMware Fault Tolerance. Основную идею опции можно описать как создание синхронно работающей реплики виртуальной машины на другом сервере и мгновенное переключение на неё при выходе из строя основного хоста.
Fault Tolerance
Технология VMware DRS используется для выравнивания нагрузки в кластере. Для этого на первоначальном этапе ресурсы кластера объединяются в пул и затем происходит балансировка нагрузки между хостами путем перемещения виртуальных машин. DRS может рекомендовать перемещение с необходимым подтверждением от администратора или делать это в автоматическом режиме. Происходит это с использованием утилиты «живой миграции» vMotion, благодаря которой миграция не требует остановки ВМ. Пользователи продолжают работать с одним экземпляром ВМ до тех пор, пока данные не будут перенесены на другой хост. В последний момент копируются последние изменения из оперативной памяти, пользователь видит незначительное кратковременное снижение быстродействие системы и через мгновение уже работает с той же ВМ, которая по факту уже находится на другом физическом сервере.
Принцип работы VMware HA + DRS
vMotion
В случае с кластером VMware группа из 2-х и более серверов ESXi находится под централизованным управлением VMware vCenter Server. Собственно, создавать виртуальные машины можно и на одном хосте с установленным гипервизором VMware ESXi, но возможностей HA, DRS и прочих не будет. Вы просто сможете «нарезать» ваш физический сервер на несколько виртуальных, а его неработоспособность будет означать простой всех ВМ.
Чтобы пользоваться всеми кластерными возможностями необходимо использовать платформу VMware vSphere, которая включает в себя сервер управления ESXi-хостами и СХД, так называемый, vCenter Server. Также для построения кластера потребуется подключение системы хранения данных. В ней в особенной кластерной файловой системе VMFS хранятся разделы с файлами виртуальных машин, которые доступны для чтения и записи всем ESXi-хостам кластера. По причине хранения в одном месте и независимости виртуальной машины от физической платформы достигается быстрое перемещение и восстановление при помощи HA, DRS, FT, vMotion.
Платформа VMware vSphere
VMware vCenter Server, если говорить упрощенно, является набором служб и базой данных. Каждая из служб занимается своим конкретным списком задач и взаимодействует с другими службами и/или хостами ESXi. vCenter Server — это некий командный пункт, которому подчиняются гипервизоры ESXi на хостах. Общение между ними происходит через хостовых агентов VPXA. Из панели управления vCenter Server можно делать даже больше, чем подключившись напрямую к ESXi. Если в ESXi вы сможете создавать/удалять виртуальные машины, то с помощью vCenter Server вы можете дополнительно создать и настроить для них кластер и все необходимые кластерные опции, часть из которых описана выше. VMware vCenter Server может работать как на отдельной физическом сервере, так и внутри виртуальной машины на том же хосте, которым сам же и управляет.
Тема безусловно интересная и обширная, однако для развертывания подобных инфраструктур требуются большие материальные затраты. Если хочется пользоваться всеми возможностями, которые повышают отказоустойчивость и надежность системы, необходимо приобрести минимум два сервера и СХД, а также купить лицензию на платформу VMware vSphere у одного из дистрибьюторов. Установка, настройка и администрирование кластера VMware также потребует временных и финансовых вложений.
В случаях если от IT-инфраструктуры требуется высокая надежность, которую предоставляет платформа VMware vSphere, но нет возможности или смысла нести значительные капитальные вложения, многие корпоративные клиенты выбирают услугу аренды инфраструктуры (IaaS).
Клиенты не используют VMware vCenter Server. За управление кластерами и физическим оборудованием отвечает провайдер. Клиенты получают значительное количество возможностей управления своим виртуальным ЦОДом с помощью удобного портала самообслуживания VMware vCloud Director, о котором мы писали отдельную статью. Создание vЦОДа для клиента происходит в кратчайшие сроки, при этом может быть создано необходимое количество виртуальных машин с нужными характеристиками и операционными системами, маршрутизируемые и изолированные сети с любой топологией, настроены гибкие правила Firewall и многое другое.
Можно ли построить свое облако? Основные различия публичных, гибридных и частных облаков?
Публичное облако — это бизнес-модель предоставления услуг, при которой все физические ресурсы дата-центра, такие как вычислительные мощности, диски и сети, объединяются в большие пулы виртуальных ресурсов, в дальнейшем части этих ресурсов предоставляются в виде «сборных» vЦОДов, которые выделяются арендаторам. Виртуальные машины разных арендаторов изолированы друг от друга, поэтому не стоит понимать публичность такого облака как отсутствие защищенности данных. Публичность облака означает, что данные физически могут храниться на одном физическом сервере с данными других компаний, но доступа к вашим данным при этом у них нет. Нельзя однозначно сказать на каком именно физическом оборудовании будут находится ваши виртуальные машины, так как при хранении в кластере виртуальные машины перемещаются между серверами для балансировки нагрузки и повышения отказоустойчивости. Именно выделение «частных» ресурсов из общего «публичного» пула делает облако публичным, но данные пользователей при этом находятся под защитой современных организационно-технических и программных средств и решений.
Частное или приватное облако — это противоположность публичного облака, а значит пул физических ресурсов (физический сервер) будет предоставляться только одному арендатору/организации. При этом где именно располагается оборудование частного облака не имеет значения. Облако будет считаться частным не только в случае, если оборудование расположено на территории компании, но также возможны варианты, когда оборудование располагается в ЦОДе и соседствует с оборудованием других заказчиков. Частное облако также может предоставить и облачный провайдер. Например, у Cloud4Y существует решение «Частное облако 2.0».
Плюсы Частного облака:
- высокий уровень безопасности;
- полная изолированность инфраструктуры;
- контроль оборудования;
- возможность размещения на площадке заказчика.
Подводя итог, можно отметить, что в обоих случаях модель является облачной, а значит нет привязки оборудования к месту, все ресурсы доступны через Интернет или сеть там, где это необходимо. Однако, в частном облаке заказчик получает полностью изолированное оборудование, а в публичном изолируются только его виртуальные ресурсы. Зачастую при помещении оборудования в ЦОДе, заказчики, которые особенно трепетно относятся к безопасности своих данных или выполняют требования определенных стандартов, заказывают серверные стойки с ограждающим конструктивом периметра, так называемую «клетку». В этом случае частное облако является, возможно, единственным решением, однако даже без отдельной «клетки» оборудование в современном дата-центре TIER III находится в безопасности и под круглосуточным наблюдением, включающим видеозапись.
Гибридное облако — это модель потребления IT-ресурсов, при которой организация часть системы размещается в публичном «облаке», на базе оборудования облачного провайдера, а часть — в приватном «облаке», на серверах, принадлежащих самой компании или взятых в аренду целиком. Концепция гибридного «облака» (hybrid cloud) позволяет объединить в единое облачное пространство внутреннее (onsite) корпоративное облако и внешнее (offsite) облако сервис-провайдера. Основная идея «гибридного облака» заключается в том, что, когда собственных мощностей не хватает, можно воспользоваться внешними ресурсами. Гибридные облака используются как возможность выхода за пределы облачных мощностей компании в случае пиковых нагрузок или с целью отказа от капитальных затрат в пользу операционных расходов.
Облако — это не роскошь
Облако на платформе VMware имеет три типа моделей, с помощью которых выделяются ресурсы.
- ALLOCATION POOL — гарантируется % ресурса, а в пуле ресурсов установлен максимально возможный лимит.
- PAY-AS-YOU-GO — нет гарантированных ресурсов и максимальных лимитов, установленных в пуле резервирования. Ограничения ресурсов установлены на уровне виртуальной машины.
- RESERVATION POOL- гарантированные ресурсы и максимальные лимиты равны, все ресурсы выделены. На уровне виртуальной машины не заданы ресурсные параметры, однако, пользователь может изменять ограничения и резервировать ресурсы на виртуальную машину.
Клиент, которому требуется фиксированный набор ресурсов, может работать с гарантированными ресурсами, или выбрать PAY-AS-YOU-GO, когда нет данных о том, сколько ресурсов они будут потреблять в облаке. Провайдер, благодаря эластичности пула может избежать избыточности физических ЦОДов и сократить расходы на капитальные затраты, добавив физические хосты только по мере необходимости без остановки работы. Для клиента оплата может происходить по факту потребления в конце месяца, что позволяет также отказаться от капитальных затрат в пользу операционных расходов.
Соглашение с провайдером должно предусматривать уровень доступности услуг — SLA. В случае с Cloud4Y, SLA равен 99,982%. Кроме того, мы устанавливаем минимально допустимые показатели производительности CPU и RAM системы. Количество MIPS на одно vCPU составляет не менее 2900, что гарантирует клиентам заявленное быстродействие процессора. Также не допускается «переподписка» физической оперативной памяти. Это означает, что выделенная при создании виртуальной машины Configured Virtual RAM, которую будет видеть гостевая ОС, является 100% выделенной физической памятью, которая доступна виртуальной машине в любой момент времени. Такой подход на практике позволяет избегать снижения производительности облачных серверов в случаях, когда операционная система обращается к блокам в оперативной памяти и ожидает быстрого ответа, но эти блоки из-за нагрузки других клиентов считываются и записываются на жесткий диск, значительно уступающий по скорости.
Это создает условия, при которых облачные серверы по производительности в любой момент времени могут полноценно заменить для клиентов физический сервер с соответствующими характеристиками, а благодаря надежному оборудованию в сети дата-центров TIER III, виртуализации в кластере и круглосуточной техподдержке обеспечивается должное качество услуг и отказоустойчивость.