Развертывание на EC2 - PullRequest
12 голосов
/ 26 июня 2009

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

Похоже, я могу запустить в VirtualBox, настроить свой сервер, а затем экспортировать изображение, используя предоставленные ec2-инструменты.

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

У меня есть некоторый PHP-код, который мне нужно иметь для развертывания (и повторного развертывания) в системе, поэтому я подумал, что EBS будет хорошим выбором там.

У меня огромное количество данных, которые мне нужно хранить, но так получилось, что задержка не является проблемой, поэтому я подумал, что что-то вроде s3fs может сработать.

Итак, мой вопрос ... Что бы вы сделали? Как выглядит ваша конфигурация? Какие конкретно проблемы, возможно, вы не ожидали?

Ответы [ 8 ]

10 голосов
/ 20 июля 2009

Мы развернули крупномасштабное коммерческое приложение в среде AWS.

Существует три основных подхода к контролю ваших изменений после запуска сервера, каждый из которых мы используем в различных ситуациях:

  1. Сохранить изменения в системе контроля версий. Есть сценарий, который является частью вашего исходного изображения, который может снести последние и лучшие. Вы можете вытащить PHP-код, настройки Apache, все, что вам нужно. Если вам нужно перезапустить свой экземпляр из AMI (образ машины Amazon), просто запустите сценарий, чтобы получить последний код и конфигурацию, и все готово.
  2. Используйте EBS (Elastic Block Storage). EBS похож на большой внешний жесткий диск, который вы можете подключить к своему экземпляру. Даже если ваш экземпляр исчезнет, ​​EBS выживет. Если вам позже понадобятся два (или более) идентичных экземпляра, вы можете предоставить каждому из них доступ к тому, что вы сохраняете в EBS. Смотри https://stackoverflow.com/a/3630707/141172
  3. Записывайте новый AMI после каждого изменения. Есть инструмент для создания нового AMI из запущенного экземпляра. Если EBS похож на внешний жесткий диск, создание нового AMI похоже на DVD-R. Вы можете сохранить текущее состояние вашей машины к нему. В следующий раз вы должны запустить новый экземпляр, основав его на этом новом AMI. Хорошо идти.
7 голосов
/ 19 августа 2009

Я рекомендую хранить ваш PHP-код в репозитории, таком как SVN, и написать скрипт, который проверяет последний код из репозитория и повторно развертывает его, когда вы хотите выполнить обновление. Вы также можете запустить этот скрипт при запуске экземпляра, чтобы вы получали последний код при каждом запуске нового экземпляра; избавляет от необходимости каждый раз создавать новый AMI.

Основная проблема, с которой я не столкнулся в EC2, - это время запуска экземпляра, особенно в Windows. Запуск экземпляров Linux занимает от 5 до 10 минут, но я видел, что экземпляры Windows занимают до 40 минут; это может быть проблемой, если вы хотите выполнить динамическую балансировку нагрузки и запускать новые экземпляры при увеличении нагрузки.

3 голосов
/ 26 июня 2009

Я бы посоветовал лучше всего просто «попробовать». Плата за запуск небольшого экземпляра невелика, а скорость передачи данных очень низкая - я переместил довольно много ГБ, и мои сборы за передачу данных все еще меньше доллара (!) В мой первый месяц. Скорее всего, вы будете платить в основном за системное время, а не за данные, которые я подозреваю.

Я еще не развернул, но запустил экземпляр, перенес его с Ubuntu 8.04 на 8.10, пробовал разные настройки безопасности порта, видел, какие попытки доступа пытались неизвестные люди (в основном ищут phpadmin), провел некоторое тестирование против этого и вообще экспериментировал с конфигурацией и перезапуском компонентов, которые я развертываю. Это была хорошая прелюдия к моему окончательному развертыванию. Я не буду начинать с большой БД, поэтому сначала буду придерживаться стандартного пространства экземпляра EC2.

Единственный минус, который я слышал, это то, что некоторые спамеры сделали некоторые диапазоны IP-адресов подлежащими блокировке спама - но еще не подтвердили это.

2 голосов
/ 27 июня 2009

По словам Тимбо, я смог получить IP-адрес, который до сих пор не обнаружен ни в одном из списков спама. У вас будет несколько сбоев, так как многие черные списки являются технически белыми списками и будут иметь каждый IP-адрес в своем списке, пока в противном случае не будет сообщено, что на этом IP-адресе работает почтовый сервер. Это действительно легко удалить, большинство из них имеют автоматизированные формы запроса на удаление, и каждый, кто не очень помог мне в удалении из своих списков. Просто будьте профессионалом, спросите, могут ли они дать время и причину для блока и какие шаги вы должны предпринять, чтобы удалить свой IP. Все сервисы, которые я отправлял по электронной почте, никогда не просили меня прыгать через обручи, в течение двух или трех рабочих дней все они сообщали мне, что мой IP был удален.

Тем не менее, если вы планируете запустить почтовый сервер, я бы порекомендовал резервировать IP-адреса сейчас. Они получают 1 цент за каждый час, когда они не привязаны к экземпляру, поэтому получается около 7 долларов в месяц. Я пошел вперед и зарезервировал еще один, поскольку планирую запустить еще один экземпляр в ближайшее время.

2 голосов
/ 26 июня 2009

Ваш подход к виртуальной коробке Я предложу вам воспользоваться после того, как вы познакомитесь с инфраструктурой EC2. Я предлагаю вам перейти на EC2, открыть счет и следовать руководству по началу работы с EC2 от Amazon. Это руководство даст вам достаточный обзор всех вещей (EBS, IP, CONNECTIONS и др.), Чтобы начать работу. В настоящее время мы используем EC2 для производства, и способ, которым мы начали, был таким, как я объясняю здесь.

Надеюсь, вы скоро станете экспертом по облакам.

1 голос
/ 18 декабря 2011

Что касается проблем, связанных с занесением в черный список почтовых серверов, вы также можете использовать Amazon Simple Simple Service (SES), которая устраняет необходимость запуска почтового сервера на экземплярах EC2.

1 голос
/ 26 июня 2009

Я развернул некоторые простые вещи в экземплярах EC2 Win2k3. Вот мой совет:

Найдите учебник. Зарегистрируйтесь на сервис. Просто проведите день, настраивая свой первый сервер. Это чертовски легко, хотя будут препятствия, которые нужно преодолеть. Это не так уж сложно.

Когда я дурачился с EC2, я думал, что потратил около $ 2,00, настраивая сервер и играя с ним некоторое время.

Некоторые из ваших данных будут постоянными, но вы также можете подключить S3 к EC2.

Просто сделай это!

0 голосов
/ 15 ноября 2011

У меня тоже были проблемы с этим, но разместил заметку здесь на их форумах - https://forums.aws.amazon.com/thread.jspa?threadID=80158&tstart=0

...