LXF171:AWS: Знакомимся с Облаком
|
|
|
Содержание |
Осваиваем и применяем Amazon Web Services
Роб Добози излагает все, что нужно знать об облачных вычислениях, и приглашает ознакомиться с ними, не потратив ни гроша.
Облачные сервисы — один из самых громких терминов в мире ИТ. Для тех, кто не вполне представляет себе, что это и как ими пользоваться, мы и подготовили этот учебник. Осознанно или нет, облачные сервисы в какой-либо форме применяют многие. Вы пользовались Ubuntu One, Dropbox, Netflix, Google Docs или Apple iCloud? Все это — облачные сервисы. Что же делает сервис облачным? Национальный институт стандартов и технологии [National Institute of Standards and Technology, NIST] полагает, что он должен иметь такие характеристики:
» Самообслуживание по требованию Позволяет предоставлять потребителю такие ресурсы, как время работы сервера или место на диске, без человеческого участия — например, через браузер или программный интерфейс приложения [Application Programming Interface, API]. Это означает, что вы можете приобрести место для хранения данных через удобный для вас браузер.
» Универсальный интерфейс Делает ресурсы доступными через сеть и независимыми от оборудования. Поэтому не должно иметь значения, используете ли вы Linux или Windows, ПК, планшет или телефон. Практически каждый, кто предоставляет облачный сервис, предлагает на выбор клиенты для Windows (некоторые для Linux), Android или iOS.
» Объединение [pooling] ресурсов Позволяет провайдеру обслуживать множество клиентов с помощью многопользовательской модели и виртуализации, где ресурсы динамически распределяются по запросу. Провайдеры используют мощные серверы, работая с программами виртуализации (например, KVM или vSphere), которые позволяют запускать несколько виртуальных систем, используемых разными клиентами.
» Эластичность Предоставляет возможность быстро изменять объем ресурсов по требованию. Это может увеличить производительность и повысить надежность (благодаря запасным мощностям).
» Учет потребления Означает, что облако автоматически измеряет, отслеживает, контролирует и сообщает о потреблении ресурсов, обеспечивая прозрачность этих данных как для провайдера, так и для клиента.
Облачные сервисы предоставляются по трем моделям:
» Инфраструктура как услуга [Infrastructure as a Service, IaaS] — базовая модель сервиса. IaaS предоставляет по требованию такие виртуальные ресурсы, как CPU, диск или сеть. За управление ресурсами, операционные системы и любые приложения отвечают пользователи. Среди примеров IaaS — Amazon EC2, Rackspace Cloud Servers или Google Compute Engine.
» Платформа как услуга [Platform as a Service, PaaS] предоставляет пользователям платформу для разработки, обычно включающую операционную систему, среду исполнения (например, PHP или Python), базу данных и web-сервер. Вы разрабатываете и применяете приложения к облаку, и вам не надо беспокоиться о лежащих в основе компонентах. Примерами PaaS являются Amazon Elastic Beanstalk, Microsoft Azure, Google App Engine и Force.com.
» ПО как услуга [Software as a Service, SaaS] — самая продвинутая модель сервиса; с ее помощью пользователям предоставляются приложения. Обычно пользователи не могут влиять на выбор платформы или базы данных, а в некоторых случаях даже на настройки приложения, но они получают рабочее приложение, которое выполняет их требования, и при этом им не надо беспокоиться об инфраструктуре. Оплата приложений производится за каждого пользователя или за каждую транзакцию. Среди примеров — Google Apps, Salesforce.com и Netflix.
Последнее, о чем стоит сказать — это способы развертывания, определяющие, как облако создается и предлагается пользователю. Общественное облако доступно широкой публике. Частные облака используются исключительно одной организацией (лицом). Гибридные облака — комбинация общественных и частных.
Представляем Amazon Web Services (AWS)
AWS — это платформа, предлагающая гибкие сервисы ИТ-структуры в виде web-сервисов. Звучит красиво, но что это значит? По сути, Amazon предоставляет набор сервисов, доступных через стандартизованный интерфейс. В разных языках программирования интерфейсы разные, но на нашем уроке мы рассмотрим сетевую консоль управления AWS. Следующий вопрос, который у вас, вероятно, возник: какие это сервисы? Ну, когда я заходил туда в прошлый раз, на сайте AWS было перечислено 36 продуктов, или сервисов. Они варьировались начиная с сервера, включая базы данных и хранение, и заканчивая размещением и сетевыми сервисами. Все это довольно сложно и запутанно, поэтому мы рассмотрим некоторые из них более подробно.
Эластичные облачные вычисления (Elastic Cloud Computing, EC2)
Именно их имеют в виду большинство людей, говоря “Amazon cloud”. Они позволяют без особых проблем занимать мощности Amazon. Эти мощности расположены в разных регионах: на Востоке США (Северная Вирджиния), на Западе США (Орегон и Северная Калифорния), в ЕС (Ирландия), Азиатско-Тихоокеанском регионе (Сингапур, Токио и Сидней), Южная Америка (Сан-Паулу) и облако правительства США (GovCloud). Для нас в ЕС наиболее подходящим регионом выглядит Ирландия — особенно если вы планируете обработку личных данных, поскольку вам придется выполнять требования Закона о защите данных [Data Protection Act] от 1998 года. Каждый регион разделен на несколько зон Доступности [Availability]. Каждая зона является физически независимой инфраструктурой и разработана с целью создания высокой степени доступности.
Указав регион и зону, которую вы хотите использовать, выбирайте оптимальную для себя опцию оплаты. Есть три возможности: On-Demand [По запросу], Reserved [Зарезервированная] и Spot [Немедленный платеж]. Если выбрать On-Demand, то начисляется почасовая оплата, без долгосрочных соглашений или предоплат. Вариант Reserved требует одноразовой предоплаты, которая резервирует один или три часа, со значительно более низкой почасовой ставкой, чем в варианте On-Demand. Вариант Spot позволяет клиентам конкурировать в борьбе за свободные мощности (прямо как на eBay). Теперь поговорим о типах EC2. Именно здесь кроется некая сложность. Есть типы M1, M3, Micro, High-Memory, High-CPU, Cluster Compute, Cluster GPU и High I/O. Большинство из них могут иметь варианты Small [Малый], Medium [Средний], Large [Крупный], Extra Large [Экстра-крупный] и Double/Quadruple Extra Large [Дважды/Четырежды экстра-крупный]. Разница в том, сколько ресурсов отводится каждому варианту. Например, M1 Large Instance имеет 7,5 GiB памяти; 2 ядра с 4 EC2 Compute Units (ECUs) в общей сложности и 850 ГБ места для хранения данных.
Ваш выбор зависит от ваших потребностей в памяти, месте на диске и мощности процессора.
Последнее, что нужно выбрать — операционная система. Есть различные версии Linux и Windows. Все они предоставлены и запакованы в образ, именуемый Amazon Machine Image, или AMI. AMI могут содержать просто голую ОС — например, Ubuntu, или содержать также и приложения — например, MySQL или Oracle. Одни AMI бесплатны, а за другие надо платить ежемесячно или на почасовой основе. Выбирайте с умом! Все AMI можно найти на рынке AWS, и вы сами можете создать свой собственный.
Хранение
Amazon на данный момент предлагает четыре разных вида хранения, которыми можно пользоваться с экземпляром EC2 или без него. Вероятно, лучше всего известен Simple Storage Service (S3). S3 — это интернет-хранение данных, предназначенное для web-приложений. Среди множества пользователей S3 — такие известные имена, как Dropbox, Ubuntu One и Minecraft. Новейшее дополнение к арсеналу сервисов хранения AWS — это Glacier, недорогой сервис хранения для архивных данных и резервных копий. Он оптимизирован для данных, доступ к которым требуется нечасто, и время загрузки у него несколько часов (как у ленточного накопителя). Ни S3, ни Glacier не могут напрямую использоваться экземпляром EC2, поэтому мы обратим более пристальное внимание на два оставшихся сервиса. Первый — это хранилище для экземпляров виртуальных машин, которое автоматически распределяется при их запуске. Размер хранилища зависит от типа экземпляра (микроэкземпляр, который мы используем на данном уроке, вообще не имеет хранилища).
Важнейшее, что надо запомнить о хранилище экземпляра — то, что оно существует, только пока работает виртуальная машина. Если в силу каких-либо причин она выключится, то и хранилище экземпляра будет удалено. А значит, его следует использовать только для чтения или для временных данных, например, /tmp. Самый важный и разносторонний тип хранилища — это Elastic Block Store (EBS), который предоставляет объемы хранения на уровне блочного устройства, виртуального диска. В отличие от хранилища экземпляра, EBS существует независимо от экземпляра EC2. Хотя объемы хранения EBS автоматически воссоздаются в Availability Zone, они не вполне надежны. Amazon заявляет о ежегодной потере данных в размере 0,1 – 0,5 %. Это намного лучше, чем обычный жесткий диск на ПК у вас дома, но все же это не 100 %. Чтобы решить эту проблему и чтобы включить резервное копирование, EBS имеет способность создавать моментальные снимки данных, хранящихся в S3. Эти моментальные снимки инкрементны, то есть сохраняются только изменения, сделанные после последнего моментального снимка. Это экономит время, требуемое для создания моментального снимка, и необходимый ему объем хранилища.
Почем?
Со всеми этими сервисами и опциями вам, вероятно, будет любопытно узнать, во сколько они вам обойдутся. Хороший вопрос. Политика ценообразования AWS состоит из целого ряда элементов — что делает ее гибкой, сложной и запутанной. Во-первых, есть стоимость экземпляра, которая складывается из стоимости AMI (если только вы не используете бесплатную AMI), предоплаты для зарезервированных вариантов и почасовой стоимости для зарезервированных вариантов и вариантов по запросу. Затем нужно накинуть стоимость хранилища для вашего объема и моментальных снимков EBS. Также начисляется небольшая оплата за каждый миллион запросов I/O по каждому объему EBS. Мы не коснулись ни одного из сетевых сервисов, но вам придется платить за сетевую передачу данных между Availability Zones
и за весь исходящий интернет-трафик (входящий трафик бесплатный). И, наконец, нужно оплатить добавочные расходы — например, на мониторинг или балансировку нагрузки. Может показаться, что Amazon заставляет платить абсолютно за все, однако стоимость весьма разумная. Например, вышеупомянутый вариант M1 Large с 20-ГБ хранилищем EBS, 10 ГБ на моментальные снимки, 130 миллионами запросов I/O в месяц и 30 ГБ интернет-трафика будет стоить примерно $ 182 в месяц, если вы будете работать с ним по 12 часов в день. Круглосуточная работа без выходных обойдется в $ 306. Это может показаться слишком дорого, если вы просто хотите попробовать облачные вычисления. Но не отчаивайтесь! Amazon предлагает новым пользователям бесплатное пользование сроком на 12 месяцев. Он предлагает вам один вариант Micro, 30-ГБ хранилище EBS, 2 миллиона запросов I/O и 1-ГБ хранилище моментальных снимков. Наш урок использует бесплатный экземпляр, так что можете спокойно изучать основные функции AWS и совершенно ничего не тратить.
- Метамодернизм в позднем творчестве В.Г. Сорокина
- ЛитРПГ - последняя отрыжка постмодерна
- "Ричард III и семиотика"
- 3D-визуализация обложки Ridero создаем обложку книги при работе над самиздатом.
- Архитектура метамодерна - говоря о современном искусстве, невозможно не поговорить об архитектуре. В данной статье будет отмечено несколько интересных принципов, характерных для построек "новой волны", столь притягательных и скандальных.
- Литература
- Метамодерн
- Рокер-Прометей против изначального зла в «Песне про советскую милицию» Вени Дркина, Автор: Нина Ищенко, к.ф.н, член Союза Писателей ЛНР - перепубликация из журнала "Топос".
- Как избавиться от комаров? Лучшие типы ловушек.
- Что делать если роблокс вылетает на windows
- Что делать, если ребенок смотрит порно?
- Почему собака прыгает на людей при встрече?
- Какое масло лить в Задний дифференциал (мост) Visco diff 38434AA050
- О чем может рассказать хвост вашей кошки?
- Верветки
- Отчетность бюджетных учреждений при закупках по Закону № 223-ФЗ
- Срок исковой давности как правильно рассчитать
- Дмитрий Патрушев минсельхоз будет ли преемником Путина
- Кто такой Владислав Поздняков? Что такое "Мужское Государство" и почему его признали экстремистским в России?
- Как правильно выбрать машинное масло в Димитровграде?
- Как стать богатым и знаменитым в России?
- Почему фильм "Пипец" (Kick-Ass) стал популярен по всему миру?
- Как стать мудрецом?
- Как правильно установить FreeBSD
- Как стать таким как Путин?
- Где лучше жить - в Димитровграде или в Ульяновске?
- Почему город Димитровград так называется?
- Что такое метамодерн?
- ВАЖНО! Временное ограничение движения автотранспортных средств в Димитровграде
- Тарифы на электроэнергию для майнеров предложено повысить
Курс на облако
Ну вот, мы рассмотрели все кирпичи, из которых складывается основа; сложим же их вместе — и перейдем к их использованию.
Для первого запуска экземпляра EC2 вам придется использовать AMI. Большинство экземпляров имеют локальное кратковременное хранилище, исчезающее по выключении экземпляра. Тома EBS могут прилагаться к экземпляру, и любой сделанный моментальный снимок хранится в S3. Приложение, работающее внутри экземпляра, может также использовать S3 API для хранения любых данных в блоках памяти S3. С точки зрения расходов важно помнить, что вы платите за место, отведенное под тома EBS, моментальные снимки и блоки памяти S3 независимо от того, используете ли вы их или нет (отмечены значком $ на рисунке).
Хорошая новость в том, что если у вас не интенсивно используемый зарезервированный экземпляр, вы платите только за время, когда ваш экземпляр находится в рабочем состоянии.
Давайте начнем с регистрации на сайте AWS. На https://aws.amazon.com щелкните по кнопке Sign Up наверху страницы. Если вы делаете покупки в Amazon, то большая часть вашей информации там уже имеется. Вам придется указать данные своей кредитной карты, но не волнуйтесь — Amazon не заставит вас ни за что платить, пока не истечет срок бесплатного пользования. По завершении проверки по номеру телефона и оставшихся шагов регистрации откройте консоль на https://console.aws.amazon.com. Это главный интерфейс управления всеми сервисами AWS. Теперь щелкните по EC2 Service, чтобы запустить EC2 Dashboard.
Прежде чем что-либо делать, измените регион в верхней правой части с региона по умолчанию (N. Virginia) на Ирландию (Ireland), поскольку все экземпляры EC2 будут созданы в выбранном на текущий момент регионе.
За шесть шагов, описанных на следующей странице, мы создадим новый экземпляр и убедимся, что он работает.
Когда экземпляр заработает, вы должны суметь соединиться с ним через SSH на его публичное имя DNS. Не паникуйте, если вам не удастся соединиться с ним сразу после запуска: у DNS может уйти одна-две минуты на обновление. Щелкните правой кнопкой по варианту и в меню выберите Connect. Есть две опции соединения. Вторая позволяет напрямую соединяться из браузера, если у вас установлена Java. Первая, которую мы собираемся испробовать, предназначена для соединения из командной строки. Следуйте инструкциям на экране. Единственное отличие в том, что в системах на базе Ubuntu надо заменить root на ubuntu:
cd Downloads
chmod 400 MyKeyPair.pem
ssh -i MyKeyPair.pem ubuntu@<public_DNS_of_your_instance>
Теперь можете исследовать свой экземпляр. Попробуйте проверить память (free) и место на диске (df -h). Чтобы попробовать сделать что-то поинтереснее, давайте установим web-сервер Apache и соединимся с ним:
apt-get install apache2
service apache2 start
Как только вы увидите сообщение, подтверждающее, что сервер работает, попробуйте соединиться с ним с помощью своего web-браузера. Чтобы убедиться, что это ваш сервер, измените файл /var/www/index.html с помощью своего любимого редактора, например, Vi или nano, и перезагрузите страницу в своем браузере. Если вы не видите сделанных вами изменений, проверьте, сохранили ли вы файл в редакторе, и попробуйте снова. Если у вас получилось — отлично! Используйте свой облачный сервер для какого-нибудь крутого проекта. Помните, что пределы скрыты далеко за облаками!
1 Запустите Instance Wizard>
Сначала щелкните по кнопке Launch Instance [Запустить экземпляр]. По умолчанию будет выбран классический Wizard [Мастер]. Нажмите на Continue [Продолжить]. На стадии AMI можете выбрать, с помощью какого AMI вы хотите запустить свой экземпляр. В этом руководстве мы будем использовать Ubuntu Server 12.04.1 LTS.
2 Данные об экземпляре>
На шаге Details [Подробнее] может выбрать количество экземпляров, которые вы хотите запустить (мы остановились на одном) и тип экземпляра (мы будем использовать T1 Micro, поскольку он бесплатный). Здесь вы можете решить, в какой Availability zone [Зоне доступности] вам нужно запустить свой экземпляр. На данный момент можете выбрать No Preference [Без предпочтений].
3 Расширенная информация по экземпляру>
В первом окне Options [Варианты] щелкните по опции Termination Protection [Защита от прерывания] и нажмите на Continue, чтобы перейти к настройке хранилища. Здесь вы можете изменить тома EBS, прилагаемые к экземпляру, но сейчас просто нажмите Continue. Третье окно позволит вам добавлять тэги к экземпляру, чтобы вы смогли распознать его впоследствии.
4 Создание пары ключей>
Пара публичный/приватный ключ требуется для того, чтобы открыть SSH-соединение, поскольку варианты EC2 не используют пароль по умолчанию. Выберите имя для вашей пары ключей (вы можете иметь разные имена для разных систем) и нажмите Create & Download your Key Pair [Создать и загрузить вашу пару ключей]. Сохраните файл, когда этого потребует ваш браузер.
5 Настройки брандмауэра
Группы безопасности определяют то, к чему может быть получен доступ в вашем экземпляре. По умолчанию разрешен только SSH (порт 22). Давайте добавим HTTP из выпадающего меню. Не забудьте нажать Add Rule [Добавить правило], чтобы и 22, и 80 появились в списке портов.
6 Обзор и запуск
Проверьте настройки и запустите экземпляр. На странице Instance Overview [Обзор экземпляра] вы можете увидеть подробную информацию по экземпляру и его статусу. Запуск займет у вас не более одной-двух минут. Щелкнув правой кнопкой по экземпляру, вы сможете выполнять основные действия, такие как запуск/остановка или изменение настроек экземпляра. |