02 сентября 2012

Облачная экосистема Amazon Web Services

Amazon Web Services (AWS) – это публичная облачная платформа, предоставляемая компанией Amazon. AWS – относится к классу IaaS-решений и предоставляет широкий спектр облачных сервисов.
Amazon Web Services. Ecosystem
Список облачные сервисов AWS на сентябрь 2012 года представлен в ниже.
Категория Имя сервиса Основная функция сервиса
AWS Core основные сервисы
Compute Services Amazon Elastic Compute Cloud (EC2) Виртуальные машины
  Amazon Elastic MapReduce Реализация MapReduce
  Auto Scaling Автоматическое масштабирование
  Elastic Load Balancing Балансировщик нагрузки
Storage Services Amazon Simple Storage Service (S3) Хранилище неструктурированных данных
  Amazon Elastic Block Store (EBS) Независимое хранилище
Databases Amazon Relational Database Service Реляционная БД
  Amazon DynamoDB NoSQL БД
  Amazon SimpleDB Key-Value хранилище
Interaction services сервисы взаимодействия
Integration AWS Storage Gateway Построение Hybrid-решений (cloud + on-premise)
  Amazon Virtual Private Cloud (VPC) Построение Hybrid-решений
  AWS Direct Connect Построение Hybrid-решений
Messaging Amazon Simple Queue Service (SQS) Построение очередей
  Simple Notification Service (SNS) Сервис push-уведомлений
  Amazon Simple Email Service (SES) Email рассылки
Caching Amazon ElastiCache In-Memory кэш
  Amazon CloudFront CDN
Managing Amazon CloudWatch Мониторинг ресурсов и сервисов AWS
Networking Amazon Route 53 DNS сервис
Security сервисы идентификации
Identity AWS Identity and Access Management (IAM) Контроль доступа к сервисам и ресурсам
Instrumentation вспомогательные сервисы
Deployment AWS Elastic Beanstalk  
  AWS CloudFormation  
Payments & Billing Amazon Flexible Payments Service  
  Amazon DevPay  
Workflows Amazon Simple Workflow Service  
Other Alexa Web Information Service  
  Alexa Top Sites  
  Amazon CloudSearch  
  Amazon Mechanical Turk  
Support AWS Premium Support  
Из приведенного выше списка видно, что Amazon Web Services имеет развитую инфраструктуру сервисов по управлению арендуемыми облачными ресурсами и настройке/контролю взаимодействия между этими ресурсами.

Вычислительные сервисы (Compute)

Amazon Elastic Compute Cloud (EC2) – центральный сервис инфраструктуры Amazon Web Services, предоставляющий виртуальные сервера (Amazon EC2 Instance) и другие вспомогательные возможности (такие как, балансировщик нагрузки), основной целью которых является конфигурирование и запуск вычислительных серверов.
Amazon EC2 позволяет создавать виртуальные машины (в терминологии Amazon – «instance») с любым из предустановленных образов ОС (Amazon Machine Image, AMI) или своим собственным образом ОС. Среди доступных AMI: Ubuntu, Windows Server 2003/2008 R2, Cent OS, Fedora, OpenSUSE и другие ОС.
Предустановленные образы ОС, доступные в AWS
AWS предоставляет возможность выбора вычислительной мощности развертываемого в облаке EC2-инстанса. Доступны следующие типы EC2-инстансов: Micro Instances, Standard Instances, High-Memory Instances, High-CPU Instances, Cluster Compute Instances, Cluster GPU Instances.
Кроме размера EC2-инстансов, AWS предоставляет возможность выбора географического региона, в котором EC2-инстанс запускается. Доступны следующие регионы: US East, US West (Oregon), US West (Northern California), EU, Asia Pacific (Singapore), Asia Pacific (Tokyo), South America.
Amazon Elastic MapReduce (EMR) – веб-сервис AWS, позволяющий развернуть программную платформу Hadoop на сервисах Amazon EC2 и Amazon S3.
В 2009 году компания Amazon анонсировала новый сервис в инфраструктуре Amazon Web Services – Amazon Elastic MapReduce. Сервис Amazon EMR предназначен для эффективного решения задач, относящихся к задачам параллельным по данным. Amazon EMR для своей работы использует программную платформу Hadoop, интегрированную в сервисы AWS.
Существенным отличием является то, что в «классической» инфраструктуре Hadoop, в общем случае, нужно было иметь административным доступ к некоторому набору аппаратных средств (кластер). Также необходимо было сконфигурировать кластер надлежащим образом и провести еще ряд операций (не относящихся к задачам программирования) по приготовлению к запуску map/reduce-задачи.
Появление возможности создавать Hadoop-кластер «по требованию» («on-demand») в облаке не только убрало значительную часть предварительных шагов по конфигурированию/запуску Hadoop-кластера, но и позволило значительно снизить стоимость разработки таких приложений, за счет отсутствия необходимости наличия аппаратных средств в собственности («on-premise») для запуска/выполнения приложения на платформе Hadoop.
Amazon EMR предоставляют эластичный, надежный сервис по запуску map/reduce-задач в облачной инфраструктуре AWS. Amazon EMR работает поверх сервисов Amazon EC2, Amazon S3.
Для Amazon EMR доступны следующие типы EC2-инстансов: Standard Amazon EC2 Instances, High-Memory Amazon EC2 Instances, High-Memory Amazon EC2 Instances, High Performance Computing Amazon EC2 Instances.
В сервисе Amazon EMR, также как и в Amazon EC2, есть возможность выбора географического региона. Доступные для Amazon EMR регионы идентичны регионам, которые доступны для Amazon EC2.

Сервисы хранения (Storage)

Amazon Simple Storage Service (S3) – веб-сервис AWS, предоставляющий высокодоступное, отказоустойчивое, избыточное хранилище для неограниченного (теоретически) количества данных.
Максимальный размер хранимого объекта (файла) соответствует 5 Пбайт. Файлы хранятся в специальных контейнерах (в терминологии, Amazon – «bucket»), которые должны иметь уникальное имя в пределах своего пространства имен.
Сервисы Amazon S3 поддерживают сохранение объектов в различных географических регионах. На май 2012 доступны следующие регионы: US Standard, US West (Oregon), US West (Northern California), EU, Asia Pacific (Singapore), Asia Pacific (Tokyo), South America, GovCloud (US).
Amazon S3 поддерживает следующие интерфейсы: REST, SOAP, BitTorrent. Заявленное время доступности данных в S3 – 99,99%. Заявленная гарантия целостности данных – 99.999999999%. [1][3]

Сервисы размещения баз данных (Database)

Amazon SimpleDB – веб-сервис AWS, представляющий собой нереляционную, распределенную, высокомасштабируемую базу данных.
Amazon DynamoDB – сервис AWS, представляющий собой высокопроизводительную NoSQL базу данных. Amazon DynamoDB отличается среди сервисов Amazon тем, что позволяет разработчиками приобретать сервис, основанный на производительности, а не на хранении. DynamoDB автоматически распределяет данные и трафик в подходящем числе серверов, использующие твердотельные накопители (SSD-диски), предоставляя заданную производительность. [2]

Сервисы обмена сообщениями (Messaging)

Amazon Simple Queue Service (SQS) – веб-сервис, представляющий собой высокомасштабируемую инфраструктуру обмена сообщениями. Сервис Amazon SQS реализован как очередь с надежной доставкой сообщений и безграничной емкостью.
Amazon SQS имеет следующие ограничения, применяемые к очереди:
  • количество очередей – неограниченно.
Amazon SQS имеет следующие ограничения, применяемые к сообщениям в очереди:
  • время существования сообщения – 14 дней;
  • размер сообщения – 64 Кбайт;
  • количество сообщений в очереди – неограниченно.

Заключение

Amazon Web Services предоставляет развитую инфраструктуру сервисов, обладающий высоким показателями доступности, надежности, отказоустойчивости в многочисленных географических зонах. В конечном счете эти характеристики определяют и степень масштабирования приложения, работающего в облаке, а также стоимость (для бизнеса) «присоединения» еще одного пользователя к приложению.
В статье была рассмотрена экосистема облачных сервисов Amazon, и сделан обзор ключевых сервисов AWS. Знание концепций и «тонкостей» работы этих сервисов является важным аспектом при разработке приложений, дружественных к развертыванию на облачной платформе от Amazon.

Список источников

  • [1] Amazon Web Services. Official Web Site // http://aws.amazon.com/products/
  • [2] Amazon DynamoDB. Wikipedia, the free encyclopedia // http://ru.wikipedia.org/wiki/Amazon_DynamoDB
  • [3] Amazon S3. Wikipedia, the free encyclopedia // http://en.wikipedia.org/wiki/Amazon_S3

Автор статьи

,
Machine Learning Preacher, Microsoft AI MVP && Coffee Addicted