Мотивация
Для чего это может быть нужно?- поднять свой прототип сайта, проскейлить его если вырастет нагрузка
- повесить себе прокси
- хостить блог, картинки итп
- просто держать бэкапы в облаке (S3)
- создать софтовый RAID поверх S3 хранилища
- сделать примерный образ желаемой машины, и расклонировать ее на 100 нодов, причем за некоторые можно платить как за обязательные, а другие будут запускаться только при определенной нагрузке
Тарифы
У amazon'a есть различные типы инстансов. Бесплатен Micro:Micro Instance -------------- 613 MB memory Up to 2 EC2 Compute Units (for short periodic bursts) EBS storage only 32-bit or 64-bit platform I/O Performance: Low API name: t1.microНа него действуют следующие ограничения:
AWS Free Usage Tier (Per Month): -------------- 750 hours of Amazon EC2 Linux Micro Instance usage (613 MB of memory and 32-bit and 64-bit platform support) – enough hours to run continuously each month* 750 hours of an Elastic Load Balancer plus 15 GB data processing* 10 GB of Amazon Elastic Block Storage, plus 1 million I/Os and 1 GB of snapshot storage* 5 GB of Amazon S3 standard storage, 20,000 Get Requests, and 2,000 Put Requests* 15 GB of bandwidth out aggregated across all AWS services* 25 Amazon SimpleDB Machine Hours and 1 GB of Storage** 100,000 Requests of Amazon Simple Queue Service** 100,000 Requests, 100,000 HTTP notifications 1,000 email notifications for Amazon Simple Notification Service** 10 Amazon Cloudwatch metrics, 10 alarms, and 1,000,000 API requests**На более серьезный setup можно прикинуть расходы в этом калькуляторе.
Если очень грубо, то за 60$ в мес можно получить 1.7Ghz x 1Core, 2Gb ram, 100Gb места и копеечный траффик.
Настройка
Ставим putty и puttygen отсюдаСоздаем аккаунт в amazon через admin console. Для этого понадобится действующая кредитка VISA или MasterCard. Как и многие другие магазины они ее проверяют списывая 1 USD.
Далее
Выбираем регион (самый ближайший - IRELAND) Жмем кнопку Launch instance Выбираем ОС, по умолчанию предлагают Basic 32-bit Amazon Linux AMI (бесплатный - только linux). При желании поставить LAMP сразу можно ткнуть вкладку Community AMIs и найти там что-то из этого списка готовых образов. Также можно и windows но это дороже. На вкладке Instance details проверяем что мы делаем Micro инстанс (t1.micro); вводим имя хоста. Создаем пару ключей для авторизации чз Putty. Скачиваем pem-файлик. Создаем новую группу безопасности: в поле type = ssh, source = 0.0.0.0/0, жмем add rule. Идем на вкладку Instances, как только сервер запущен мы сможем залезть в консоль по ssh. Ура.. Теперь у нас есть свой сервер :].
Теперь цепляемся по ssh к нему.
Запускаем Puttygen, открываем в нем скачанный pem-файл, жмем кнопку import. Находим dns - имя хоста в админ консоли. Запускаем путти, коннектится будем под именем ec2-user, поэтому коннект лучше называть ec2-user@dns-host-name. В свойствах соединения, в Connection -> SSH -> Auth добавляем *.ppk файл сгенеренный нами ранее с помощью puttygen. Жмем save. Потом соединяемся (user = ec2-user, пароль не нужен.. он в публичном ppk ключе). А вот и шелл..