2014-02-10 6 views
0

Недавно я прочитал несколько статей о настройке инфраструктуры AWS без включения SSH в экземплярах Ec2. Для моего веб-приложения требуется запустить двоичный файл. Итак, как я могу развернуть свое приложение в экземпляр ec2 без использования ssh?Внедрение AWS без использования SSH

Это была статья, о которой идет речь.

http://wblinks.com/notes/aws-tips-i-wish-id-known-before-i-started/

ответ

3

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

Как правило, вы можете выполнить это с помощью тянущей модели. Например, при загрузке вытащите свой код из репозитория git/mecurial и затем выполните сценарии для настройки вашего экземпляра. Сценарий настроит весь мониторинг, необходимый для определения того, правильно ли работает ваш сервер и приложение. Для этого вам все равно нужен SSH-клиент, если вы хотите вывести свой код с помощью ssh. (Хотя вы могли бы также сделать это через HTTPS)

Вы также можете использовать инструменты управления конфигурацией, которые не используют ssh вообще, как Puppet или Chef. По сути ваш узел/сервер вытащит всю конфигурацию вашего приложения и сервера из мастера Puppet или сервера Chef. Затем агент Puppet или клиент Chef выполнит все изменения конфигурации/развертывания/мониторинга для вашего приложения.

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

Надеюсь, это поможет.

+0

Определенно помогает, спасибо. В настоящее время я использую python-ткань, чтобы нажимать двоичные файлы на серверы ec2, используя эластичные ips .... Поэтому я предполагаю, что делаю это неавтоматизированным способом. Мне нравится идея каждого сервера при запуске вытягивать двоичный файл с сервера CI, но через HTTP. Это звучит очень хорошо. Я предполагаю, что ткань питона не так «зрелая», как марионетка или шеф-повар. Но это тоже не так сложно. –

+0

Ткань довольно зрелая, но она использует больше модели push, тогда как Puppet и Chef используют модель pull. Если вы посмотрите и на другие инструменты, Ansible и SaltStack используют больше модели push. Вы можете использовать тканью, чтобы делать из репозитория git, но если вы просто хотите использовать «клиентскую» часть ssh на своем сервере. – Rico

+0

Я вижу, поэтому я бы определил метод ткани для запуска на удаленном сервере, который вытаскивает бинарный файл с сервера CI. Это может сработать. В будущем мне нужно будет развернуть множество двоичных файлов через экземпляры ubuntu и windows, и автоматизированный способ сделать это будет очень приятным. Прямо сейчас я нажимаю w/fabric yes. Я думаю, что CI-сервер - это ответ. В этом случае мне не понадобится марионетка, шеф-повар или ткань. Я мог бы просто определить скрипт для вытаскивания двоичных файлов при запуске экземпляров ubuntu и windows. –

Смежные вопросы