Amazon Web Services (AWS) – это публичная облачная платформа, предоставляемая
компанией Amazon.
AWS – относится к классу IaaS-решений и предоставляет широкий спектр облачных сервисов.
Список облачные сервисов 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 предоставляет возможность выбора вычислительной мощности развертываемого в облаке
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.