Журнал LinuxFormat - перейти на главную

LXF126:DrBrown3

Материал из Linuxformat
Перейти к: навигация, поиск

Содержание

В будущее на облаке

Узнаем, как арендовать кусочек облака Amazon.

LXF126 52 1.jpgНа первом шаге мастера создания виртуальных машин можно выбрать систему из образов, предложенных сообществом, или создать собственный. LXF126 52 2.jpg В финальном окне мастера можно выбрать тип экземпляра и указать их количество.

Под впечатлением от экспериментов с Xen я завел учетную запись на Amazon Web Services (AWS). Amazon предлагает множество сервисов, включающих:

  • EC2 (Elastic Computing Cloud) Предоставляет вычислительные мощности, размер которых способен меняться за счет быстрого создания экземпляров виртуальных машин. На выбор предлагается множество сконфигурированных образов виртуальных машин и несколько вариантов оборудования.
  • E3C (Simple Storage Service) Объектно-ориентированное интернет-хранилище.
  • EBS (Elastic Block Store) Предоставляет блочное устройство (в терминах ядра Linux) для размещения файловой системы, подключаемое к любой ВМ. Тома EBS не зависят от запущенных экземпляров ВМ.
  • Cloudwatch Служба мониторинга, который строит графики потребления процессора, трафика и дискового пространства экземпляром ВМ.
  • Cloudfront Сервис быстрой доставки web-содержимого через глобальную сеть узлов – выбирается ближайший к получателю.
  • Elastic IPs Позволяет иметь стабильные публичные IP-адреса и назначать их на любой экземпляр системы под вашей учетной записью.
  • SQS (Simple Queue Service) Предоставляет надежную, хорошо масштабируемую обслуживаемую очередь для хранения сообщений при передаче их между компьютерами.
  • FPS (Flexible Payment Service) Сервис позволяет коммерческим сайтам принимать платежи через существующие учетные записи Amazon.

Завести учетную запись на AWS нетрудно, особенно если у вас уже есть учетная запись на Amazon, потому что вы сможете платить за web-сервисы той же картой, с которой платите за книги и другие товары. Однако в процессе регистрации есть несколько необычный этап, когда вам звонит робот-автомат и просит набрать пин-код с экрана компьютера на клавишах телефона.

Покрыто облаками

Сразу после входа в систему мне не терпелось создать несколько виртуальных машин. Сначала я сгенерировал открытый и закрытый ключи для аутентификации по SSH на моих ВМ. Можно создать несколько пар или пользоваться одной и той же на всех машинах. Открытый ключ «встраивается» в создаваемые вами экземпляры ВМ, позволяя выполнять безопасный вход в систему по SSH с помощью закрытого ключа, который хранится в файле на локальном компьютере. Как и следовало ожидать, существует web-мастер для создания новых виртуальных машин, и состоит он из двух основных шагов: выбора системы и оборудования.

Чтобы упростить первый этап, Amazon предоставляет несколько образов ВМ для быстрого старта: базовая версия Fedora, Fedora с LAMP, различные конфигурации Windows 2003 и т. д. В качестве альтернативы можно выбрать один из более чем трех тысяч образов, предоставленных сообществом – множество систем на основе Fedora, Ubuntu, Debian, CentOS, SUSE, Solaris и Windows (зайдите на http://aws.amazon.com и кликните на Amazon Machine Images). Они могут стать отправной точкой для вашей собственной конфигурации – так как у вас есть права root, вы можете установить любое другое ПО, как и на обычном компьютере. Можно даже создавать и сохранять собственные образы Amazon Machine и запускать с их помощью дополнительные экземпляры ВМ.

Как насчет поддержки?

Базовая поддержка, которая предоставляется бесплатно после входа в систему, состоит из дюжины форумов, которые, похоже, отличаются активностью и хорошим соотношением «сигнал/шум». Есть также несколько FAQ. В качестве альтернативы можно заплатить за поддержку Silver или Gold, 100 или 400 долларов в месяц соответственно. Они предоставляют канал связи «один-на-один» и неограниченное число обращений.

Конфигурация оборудования выбирается из нескольких вариантов. Начальный уровень, Small, представляет собой 1,7 ГБ оперативной памяти, 160 ГБ на жестком диске и один вычислительный модуль с 32‑битным процессором. В вариантах Large и Extra Large объем ОЗУ, места на диске и число процессоров постепенно увеличиваются. Для этих вариантов есть версии с большим числом процессоров, предоставляющие до 20 вычислительных блоков (мощность одного вычислительного блока эквивалентна процессору 2007 Opteron или 2007 Xeon частотой 1–1,2 ГГц). В последнем окне мастера есть поле, в которое нужно ввести количество экземпляров – создать 99 не сложнее, чем один!

Консоль управления

Виртуальные машины создаются за сущие минуты. После этого они управляются с административной консоли AWM – web-интерфейса, где можно просматривать состояние ВМ, перезагружать, клонировать и останавливать (уничтожать) их. Можно создавать (виртуальные) диски в Elastic Block Store и подключать их к ВМ.

Все, что делается в консоли управления, допускается делать и с командной строки – с помощью набора утилит на Java, загружаемых в виде zip-файла. Так, команды

LXF126 53 1.jpg Cloudwatch позволяет построить график использования ресурсов компьютера за период времени до двух недель. LXF126 53 2.jpg Из консоли управления AWS легко создавать, просматривать и удалять виртуальные машины, управлять дисками EBS и делать многое другое.

$ ec2-run -instances ami-235fba4a -k gsg-keypair
RESERVATION r-7430c31d 924417782495 default
INSTANCE i-ae0bf0c7 ami-2bb65342 pending gsg-
keypair 0 m1.small 2008-03-21T16:19:25+0000 us-east-1a

запустят виртуальную машину ami-235fba4a. Команда

$ ec2-terminate-instances i-ae0bf0c7

остановит виртуальную машину.

Диск EBS (см. ниже) создается аналогично – командой ec2‑create-volume, а список всех образов выводится командой ec2‑describe-images. Также есть модули расширения для IDE Eclipse, которые позволяют, например, запустить кластер серверов Tomcat и одним щелчком загрузить туда ваши приложения.

У каждого запускаемого вами экземпляра ВМ будет публичный IP-адрес и публичная запись DNS, но вид у нее малосимпатичный: нечто вроде ec2‑79‑125‑4‑198.eu-west1.compute.amazonaws.com. Хотя можно создать в DNS псевдоним (запись CNAME) и связать с этим адресом ваше доменное имя. Альтернатива – арендовать эластичные IP-адреса (Elastic IPs, см. выше). Это постоянные публично доступные адреса; их можно подключить к любому экземпляру ВМ, а при желании перераспределить их среди своих ВМ – в консоли управления это сделать нетрудно.

Выключив ВМ, избежать почасовой оплаты не удастся (хотя ВМ можно перезагрузить). Оплачивается время от создания ВМ до ее удаления – виртуального эквивалента выбрасывания компьютера в окно. При этом подключенное к машине локальное хранилище удаляется. Однако можно создать диски EBS размером от 1 ГБ до 1 ТБ. Эти диски похожи на логические тома: ядро видит их как блочные устройства типа /dev/sdf; разместить файловую систему можно и на них. Можно даже создать несколько EBS-дисков, собрав из них RAID-массив. Диски EBS не зависят ни от одной из ВМ, и их можно подключить к любому экземпляру (хотя только к одному в каждый момент времени). Можно также делать снимки состояния дисков EBS, делиться ими с другими участниками сообщества и создавать из них новые диски. Для EBS автоматически выполняется резервное копирование (внутри облака), чтобы избежать проблем с «единственной точкой отказа».

Запустив мониторинг для виртуальных машин, вы получите графики использования ресурсов – процессора, чтения и записи на диск, входящий и исходящий сетевой трафик. Графики могут охватывать период времени от часа до двух недель.

Я не претендую на нечто большее, чем весьма поверхностный рассказ об облаке EC2. Я счел сайт Amazon весьма приятным и удобным, и с удовольствием обнаружил, что это также относится к консоли управления. И я изрядно повеселился – и все поцене кружки пива.

Обзорный тур

Прежде чем входить в систему, осмотритесь. Даже не имея учетной записи, можно получить хорошее представление о том, как выглядит консоль управления AWS, зайдя на http://aws.amazon.com/console и кликнув «Take The Tour».

Прайс-лист

А сколько же все это стоит? На этот вопрос нет простого ответа. Здесь нет минимальной платы и долговременных контрактов – вы платите за каждый час работы ВМ. Вариант начального уровня Small стоит 11 центов в час, самый продвинутый вариант с большим числом процессоров Extra Large – 88 центов в час. (Не ищите калькулятор: это 80 и 640 долларов в месяц соответственно.) Можно также арендовать зарезервированные ВМ, за которые платится ежегодный взнос и (гораздо меньшая) почасовая оплата. Например, приобретенный по запросу вариант Small обходится в 964 доллара в год, а в виде зарезервированной виртуальной машины – 577 долларов.

Elastic Block Store стоит 10 центов за ГБ в месяц плюс плата за обмен данными – 10 центов за миллион запросов ввода/вывода. (А вы знаете, сколько запросов ввода/вывода вы делаете? Я – нет.)

Также нужно платить за сервисы типа Amazon S3, мониторинг Cloudwatch и эластичные IP-адреса, и все это способно вылиться в немалую сумму. По ссылке http://calculator.s3.amazonaws.com/calc5.html вы найдете месячный калькулятор, который посчитает результат, но вам все равно придется вводить ожидаемые значения для жестких дисков и сетевого трафика, оценить которые может быть непросто.

Сравним эти цены с арендой выделенного сервера: примем, что ее можно приобрести долларов за 100 в месяц. Вы получаете компьютер, который вроде бы не сильно отличается от варианта Small. Но это «вроде бы» заслоняет от нас суть. «Эластичность» Amazon EC2 позволяет быстро нарастить (и уменьшить масштабы) вычислительных ресурсов в соответствии с вашими потребностями. Например, можно увеличить емкость своих вычислительных ресурсов на месяц, чтобы сайт отвечал требованиям, вызванным проведением рекламной кампании, и ликвидировать все по ее окончании.

Персональные инструменты
Яндекс.Метрика