Облачные сервисы AWS, Azure, GCP
В последние годы возможность использования облачных инфраструктур все прочнее укрепляется в сознании владельцев корпоративных бизнес-решений (ИТ-решений). Даже если предприятие не делает крупных ставок на вычисления в публичных облаках, использование облачных решений в той или иной форме является неотъемлемой частью стратегии и планов развития инфраструктуры большинства предприятий в силу доступности, экономической эффективности и достаточного уровня надежности. Для предприятий, которые собираются вступить в это путешествие, становятся актуальными следующие вопросы: «Какую облачную платформу мне выбрать?», «Какая облачная платформа будет наиболее экономически эффективна для моих задач?» и «Как спланировать миграцию сервисов в облако?» В этой заметке обсуждаются первые два вопроса.
В России, как мы знаем, начинает работать Yandex Cloud, но здесь мы сравним основные инфраструктурные сервисы самых популярных облачных провайдеров, таких как Amazon Web Services (AWS), Microsoft Azure и Google Cloud Platform (GCP). В дополнение к основной инфраструктуре каждый поставщик облачных услуг предоставляет свои уникальные проприетарные предложения в NoSQL, Big Data, Analytics, ML и других подобных областях, которые могут влиять на выбор облака для предприятия в зависимости от его конкретных бизнес-требований и технических требований.
Amazon Web Services (AWS)
AWS является наиболее популярным провайдером общедоступных облаков с самым широким спектром продуктов, опций для вычислений и хранения данных, а также услуг, которые клиент может передать под управление. AWS Marketplace также является крупнейшей торговой площадкой для приложений и устройств сторонних производителей. Товары и услуги на таком рынке и сам AWS часто обновляются, чтобы постоянно добавлять функции продуктов для своих клиентов. Благодаря отзывам клиентов новые сервисы обеспечивают тесную интеграцию с основными Web сервисами и работа клиентов становится еще удобнее. AWS уделяют большое внимание рекомендациям по безопасности и архитектуре. Корпоративные инфраструктуры, такие как Well-Architected Framework и Cloud Adoption Framework, были разработаны на основе опыта работы с крупными корпоративными клиентами. Помимо основных услуг, они также выпускают нетрадиционные сервисы, такие как SnowMobile (устройство передачи данных из автомобиля), RoboMaker (фреймворк для робототехники) и «наземная станция как услуга» (для управляемой загрузки данных со спутника). Это поддерживает интерес клиентов и может открыть целые отрасли. Доля рынка AWS в 51% является доказательством этих утверждений. Тем не менее, AWS не самое дешевое облако на рынке. Кроме того, AWS не сильно беспокоятся о предоставлении контейнерных предложений — их EKS (управляемый Kubernetes) сервис был запущен сравнительно поздно. Вместо этого AWS, делают ставки на MicroVM (Firecracker) и управляемые функции.
В последнее время AWS, похоже, переориентировали свое внимание на гибридное облако и объявили о таких предложениях, как Outposts (в партнерстве с VMware), которые позволят заказчикам использовать хорошо известные сервисы AWS и API-интерфейсы в своих частных центрах обработки данных.
В каких случаях выбирать AWS
AWS — отличный выбор как для стартапов, так и для предприятий. AWS предоставляет широкий спектр услуг, которые могут использовать клиенты — от небольших web сервисов до масштабных миграций центров обработки данных в облако. Чтобы помочь клиентам всех форм и размеров начать работу на платформе, AWS выпустила якобы нишевые сервисы, такие как RoboMaker, с одной стороны, и одновременно создала такие сервисы, как LightSail (виртуальный частный сервер), чтобы помочь даже самым маленьким рабочим нагрузкам с одним сервером.
В настоящее время AWS также предлагает самые высокие на рынке варианты осуществления вычислений и средства хранения данных. Широкий диапазон типов виртуальных машин (136 типов виртуальных машин в 26 семействах виртуальных машин) позволяет заказчикам запускать практически все — от небольших web-систем до самых больших рабочих нагрузок HPC (High Performance Computing) и SAP.
Для машинного обучения и искусственного интеллекта AWS также предоставляет самые высокие конфигурации типов виртуальных машин с поддержкой графического процессора GPU. Для нагрузок, требующих аренды физического сервера в соответствии с нормативными требованиями, AWS теперь также предоставляет Bare-Metal-as-a-Service (аппаратный сервер в аренду). Для виртуализированных нагрузок, в случае необходимости, AWS предоставляет такие функции, как «группы размещения», чтобы обеспечить выполнение вычислений и хранения на указанном аппаратном оборудовании.
AWS надеется, что различные размеры виртуальных машин будут соответствовать вашим требованиям. Поэтому он не поддерживает создание пользовательских размеров виртуальных машин (vCPU, RAM). В отличие от других облачных провайдеров (CSP), AWS предоставляет только определенный набор семейств виртуальных машин, с графическими процессорами. AWS не позволяет подключать графические процессоры к любому или всем типам виртуальных машин в своем портфеле.
Облачное хранилище данных поставляется AWS с различными вариантами, такими как динамическое изменение размера, различные типы дисков (традиционный и SSD). В отличие от других CSP, AWS не ограничивает количество операций ввода-вывода в секунду (IOPS) по размеру раздела. Вы можете получить больше IOPS за дополнительную плату даже для небольших дисков.
В области предоставляемых как сервис обслуживаемых реляционных баз данных AWS поддерживает управляемые базы данных для MySQL, PostgreSQL, MariaDB, Oracle и MS SQL в рамках своего предложения RDS. Кроме того, AWS имеют свои собственные базы данных, совместимые с MySQL и PostgreSQL, которые могут похвастаться производительностью, подобной Oracle, но доступны за небольшую плату. AWS вкладывают в это значительные средства, а также анонсировали версии баз данных Multi-Master и Serverless.
Для баз данных NoSQL AWS выпускает свой продукт DynamoDB уже около пяти лет. Это развитие их базы данных SimpleDB. AWS является сторонником и предоставляет ряд специализированных NoSQL СУБД. К ним относятся DynamoDB (ключ-значение), Neptune (граф) и Elasticache (кэширование для данных ключ-значение).
За последнее десятилетие AWS улучшил свой портфель сетевых услуг. Началось с VPC (Virtual Private Cloud) и связанных сетевых функций, таких как группы безопасности, сетевые списки контроля доступа и шлюзы доступа. В то время пользователям все еще приходилось настраивать свои собственные серверы трансляции сетевых адресов (NAT), файрволы и подобные узлы. AWS прислушивалась к отзывам клиентов и постепенно добавляла всё необходимое в качестве предоставляемых сетевых услуг в свой портфель. Теперь AWS предоставляет управляемый NAT-шлюз, VPN-шлюз, Transit-шлюз, шлюз прямого доступа и т.д. Недавно AWS также объявили об предоставлении услуги VPN-клиента. Это устраняет необходимость для клиентов развертывать серверы OpenVPN для управления доступом к облачным виртуальным машинам.
Для обеспечения безопасности сети AWS запустила управляемые сервисы для защиты от распределенных сетевых атак DDoS (AWS Shield) и брандмауэра веб-приложений (WAF), а также AWS Inspector, AWS Config и CloudTrail для управления запасами производительности, политиками и аудитом. Сервис GuardDuty обеспечивает обнаружение угроз.
В целях безопасности данных AWS обеспечивает шифрование в состоянии ожидания для большинства своих служб хранения. AWS также имеет сервисы KMS и CloudHSM для управления ключами. Macie предоставляет услугу предотвращения потери данных (DLP), управляемую искусственным интеллектом.
В области организации очередей, обмена сообщениями и уведомлений AWS предоставляет управляемую AMQP-совместимую службу очередей (Amazon MQ) в дополнение к своему предложению SQS. Для публикаций и подписок AWS предложил Kinesis и недавно добавил предложение Kafka. SNS предоставляет многоканальные интегрированные сервисы уведомлений, которые позволяют получать уведомления клиентов по SMS, мобильным, SMS и по электронной почте. Внутренне он также соединяется со своими другими службами, что позволяет использовать слабосвязанные архитектуры, управляемые событиями.
AWS обслуживает работу правительства США в отдельных регионах GovCloud в США. Клиенты, которым необходимо предоставлять услуги клиентам в Китае, могут рассчитывать на китайский регион AWS, который предоставляется в партнерстве со сторонними поставщиками.
В целом AWS предоставляет широкий спектр услуг и функций, которые подходят для значительного числа предприятий.
Microsoft Azure
Microsoft пришел позже с заметным отставанием от AWS в предоставлении публичных облачных сервисов и сначала сосредоточился на предложениях SaaS и PaaS (программное обеспечение как услуга и платформа как услуга), поскольку ее сильные стороны лежат как в корпоративном, так и в потребительском ПО. Первоначально Microsoft ориентировалась на службы PaaS для Azure и были сфокусированы на существующей базе разработчиков использующих технологии Microsoft. Со временем Microsoft расширила свое внимание и на сервисы Linux, и на предоставлении IaaS (инфраструктура как услуга). Это также отражено в ребрендинге Windows Azure на Microsoft Azure, и на Microsoft Loves Linux. Со временем Microsoft также сделала Azure более удобной и встроила поддержку API для различных сервисов. Однако, несмотря на широкий спектр услуг, Microsoft существенно отстает от AWS в корпоративном внедрении. Крупные предприятия, в которых уже существуют отношения с Microsoft, остаются значительной частью пользовательской базы, хотя в Azure наблюдается устойчивый рост годового дохода.
Когда выбирать Azure
Azure — это зрелая облачная платформа с широким набором функций, которая может быть предпочтительной платформой для клиентов, которые каким-то образом уже используют продукты Microsoft. Хотя Azure поддерживает ряд сервисов на основе продуктов с открытым исходным кодом, портфолио Microsoft в облаке — это то, что выделяет его среди конкурентов.
Azure предоставляет более 151 типов виртуальных машин и более 26 семейств виртуальных машин, которые поддерживают все — от небольших web-систем до нагрузок HPC, Oracle и SAP. Azure имеет как Windows, так и несколько версий Linux (RHEL, CentOS, SUSE, Ubuntu). У Azure есть отдельное семейство экземпляров для работы с машинным обучением и искусственным интеллектом (ML/AI).
Если вам нужны высокопроизводительные вычисления, требующие до 128 виртуальных процессоров и 3,5Tb оперативной памяти, то Azure хороший выбор. Если у вас есть существующие лицензии для операционной системы Windows или MSSQL, то перенос этих активов в облако (BYOL) с помощью программы Microsoft License Mobility Program хороший выбор и возможность. Стоимость лицензий составляет значительную часть расходов на инфраструктуру и будет основным фактором для клиентов, которые используют большие развертывания СУБД MSSQL и других продуктов.
Azure также был первым облачным игроком, распознавшим тенденцию к созданию гибридного облака, и предложил одно из первых гибридных облачных решений и облачного центра обработки данных (стек Azure). Клиенты, которым нужен интерфейс Azure, но которые хотят запускать службы в своих собственных центрах обработки данных, могут использовать Azure Stack. Другие облачные игроки только догоняют Azure в этом смысле. Azure также предоставил поддержку гибридных устройств хранения данных, таких как StorSimple, которая была уникальной в публичном облачном пространстве.
Если у вас есть центр обработки данных с преобладающими нагрузками Microsoft, и вам нужно выполнить масштабную миграцию центра обработки данных в облако, используя преимущества знакомых инструментов, Azure предоставляет инструменты и службы, такие как Azure Site Recovery.
Когда речь заходит о базах данных SQL и NoSQL, в Azure имеется довольно неплохой набор сервисов. Azure обеспечивает MSSQL Server и SQL Datawarehouse как сервис. Azure также предоставляет базы данных MySQL, PostgreSQL и MariaDB. Azure Table представляет собой управляемое хранилище значений ключей, тогда как CosmosDB предоставляет многомодельную глобально распределенную базу данных NoSQL с несколькими моделями согласованности. Он предоставляет API, совместимый с MongoDB, Cassandra, Gremlin (Graph) и хранилищем таблиц Azure. Если вам нужно запустить несколько моделей управляемых данных, в том числе модели данных документа, графа, ключа-значения, таблицы и семейства столбцов в одном облаке, то Cosmos может быть подходящим вариантом. Кэш Azure для Redis дополняет предложения управляемым кешем.
В дополнение к модели выставления счетов PAYG (Pay as You Grow) с кредитными картами и режимами выставления счетов клиенты с существующими корпоративными учетными записями могут предварительно приобрести подписки Azure в рамках своего ежегодного продления. Это полезно для клиентов, которые хотят иметь возможность заранее планировать ежегодные расходы на облако. Это предотвращает неопределенность и дополнительные утверждения бюджета на середину года, которые обычно связаны с моделями PAYG. При этом предприятия должны с некоторой точностью определять размер своих прогнозируемых рабочих нагрузок, чтобы в конце года не были потрачены предоплаченные кредиты.
Мобильность лицензий в облаке для продуктов Microsoft также относительно проста для клиентов с несколькими продуктами Microsoft, работающими на месте.
Google Cloud Platform (GCP)
Облачная платформа Google (GCP), несмотря на запоздалый выход и имеющую наименьшую долю рынка среди поставщиков общедоступных облачных вычислений по сравнению с конкурентами (текущая доля рынка около 4%), демонстрирует устойчивый процентный рост. GCP может похвастаться несколькими функциями, которые ставят его впереди своих конкурентов в определенных областях. Еще один аспект в том, что GCP пользуется популярностью не только у клиентов, которые уже являются частью экосистемы, но также и пользователей облачных технологий, которые стремятся расширить свой ландшафт на Google в рамках стратегии использования нескольких облачных платформ. Google также начал с PaaS-сервисов, но неуклонно расширяет свой портфель продуктов.
Наряду с инновационными функциями Google может похвастаться самой низкой ценой на инфраструктуру по сравнению со всеми другими облачными провайдерами. Конечно, общие расходы для любого предприятия зависят от используемых услуг и действующих мер по управлению затратами.
В каких случаях выбрать GCP
С точки зрения вычислений, Google имеет наименьшее количество типов виртуальных машин (28 типов экземпляров по 4 категориям), но тем не менее, GCP имеет одну особенность, которая делает эти цифры не такими важными. Google позволяет пользователям создавать свои собственные нестандартные размеры (процессор, память), чтобы клиенты могли сопоставить размеры своих облачных нагрузок с их размерами на предварительном этапе. GCP также выставляют счета клиентам, основываясь на общем используемом процессорном времени и памяти, а не на отдельных виртуальных машинах. Это уменьшает для клиентов потери оплаченной неиспользованной емкости.
Еще одна уникальная особенность заключается в том, что GCP позволяет подключать графические процессоры практически ко всем типам экземпляров виртуальных машин. Это позволяет превратить любой стандартный или пользовательский экземпляр в виртуальную машину, готовую к машинному обучению и искусственном интеллекту. Google также является лидером в посекундной тарификации, что заставляет других поставщиков облачных вычислений (CSP) следовать их примеру. По сравнению с нормой почасовой оплаты, посекундная тарификация значительно снижает потерю оплаченной мощности. Это позволяет клиентам сэкономить до 40% средств по сравнению со стандартными размерами виртуальных машин и выставлением счетов за час.
Время запуска виртуальной машины в GCP феноменально выше, и другие CSP остаются в пыли. Это делает масштабирование особенно отзывчивым. GCP также позволяет динамически изменять размеры дисков, чтобы вам не приходилось делать акробатику системного администрирования при заполнении дисков. Производительность операций ввода-вывода (IOPS) назначаются на основе размеров диска и не могут быть предоставлены отдельно. Это может быть проблематично для клиентов, которым требуется высокий IOPS для небольшого набора данных, и приводит к трате средств на ненужное хранение.
Google также создал или приобрел для своих клиентов сторонние инструменты облачной миграции. Такие инструменты как CloudEndure, Velostrata и CloudPhysics, помогают клиентам бесплатно оценивать, планировать и переносить виртуальные машины в GCP. В других облачных провайдерах некоторые из этих инструментов стоят несколько сотен долларов за виртуальную машину. Google явно делает для своих клиентов переход на GCP максимально простым.
Сетевые возможности — это то, где GCP сияет. У Google есть глобальная сеть доступа к ресурсам с низкой задержкой. Даже с точки зрения клиента сеть VPC (Virtual Private Cloud) охватывает все их регионы. Другие CSP (поставщики облачных услуг) ограничивают сети VPC в отдельном регионе. Это позволяет клиентам GCP создавать приложения, которые обслуживают клиентов по всему миру, без создания сложных межрегиональных инфраструктурных механизмов и механизмов репликации данных.
Хранилище объектов также поддерживает многорегиональный режим, когда данные автоматически реплицируются по регионам. Для клиентов, рассматривающих возможность перехода с AWS или использование набора облачных стратегий, GCP поддерживает импорт хранилища объектов из AWS.
Для реляционных баз данных GCP обеспечивает поддержку СУБД MySQL и PostgreSQL. Для клиентов, которым нужна глобально распределенная база данных, которая по-прежнему поддерживает немедленную согласованность и свойства ACID ((Atomicity, Consistency, Isolation, Durability — Атомарность, Согласованность, Изолированность и Долговечность), GCP создала Spanner. Spanner использует согласованные алгоритмы и атомные часы для синхронизации транзакций между узлами. Это предложение является уникальным для GCP и делает Spanner очень привлекательным для крупных корпоративных клиентов, которые предъявляют эти требования из своего хранилища реляционных данных. Другая СУБД с открытым исходным кодом — CockroachDB, основана на описании Spanner, опубликованной Google.
С точки зрения NoSQL, у GCP есть продукт под названием BigTable. BigTable — это управляемая база данных NoSQL с широким столбцом в петабайтном масштабе, которая используется Google в собственных продуктах, таких как Gmail.
С точки зрения выставления счетов, Google предоставляет автоматические скидки, такие как скидки на постоянное использование, которые снижают цену по требованию, если виртуальная машина работает более определенного количества часов в месяц. Если вам нужен самый эффективный облачный провайдер на рынке сегодня, то GCP — хороший выбор.
Несмотря на то, что GCP может не обладать достаточной глубиной возможностей некоторых других поставщиков облачных услуг, в его портфеле есть несколько уникальных продуктов, и он является привлекательным вариантом, являясь лидером цен на рынке.
Заключение и перспективы
Как подробно описано выше, каждое облако имеет особенности и преимущества, которые соответствуют конкретным потребностям клиентов. В то время как все облачные провайдеры будут продолжать предоставлять определенные общие услуги (такие как управляемая база данных MySQL), каждый CSP будет продолжать создавать уникальные, дифференцированные услуги (например, Aurora, Cosmos, Spanner), которые специально предназначены для решения весьма специфических потребностей клиентов. CSP надеются, что это увеличит приверженность клиентов их услугам и создаст барьер для перехода к конкуренту.
С точки зрения клиента, эти сервисы также станут движущей силой для принятия мультиоблачной стратегии. Например, клиент, возможно, захочет использовать GCP для одного приложения, которому требуются функции Spanner, в то время как он использует AWS для своих служб AI и Azure для определенных задач Windows.
Даже для таких перспективных услуг, как компьютерное зрение и распознавание речи, потребности клиентов могут подтолкнуть их к смешиванию и сопоставлению сервисов на облачных платформах для удовлетворения требований их приложений. Клиент, скорее всего, будет использовать одно облако в качестве своей основной платформы, а службы других будут использоваться для конкретных приложений.
Перевел и дополнил К. Михайлов
Исходный материал:
https://medium.com/globallogic-cloud-and-devops-blogs/clouds-compared-aws-vs-azure-vs-gcp-c59519b9d5e4