Развертывание AWS не веб-приложений - PullRequest
4 голосов
/ 08 октября 2011

Я ищу лучшее, чтобы развернуть консольное приложение и, возможно, приложение службы Windows в AWS. Все, что я читал о CloudFormation, делает его похожим на ход, но все примеры, которые я вижу, относятся к веб-приложениям. Кто-нибудь знает, возможно ли использовать CloudFormation для не-веб-приложений? Если да, кто-нибудь знает пример шаблона, который показывает, как это делается?

Ответы [ 3 ]

2 голосов
/ 03 февраля 2013

У меня недавно была похожая проблема. На самом деле я пытался установить пакет-оболочку MSDeploy, который содержал несколько дочерних пакетов и команду runCommand для их установки.

Я обнаружил, что AWSDeploy не будет работать, если пакет MSDeploy, переданный в CloudFormation, сам не является пакетом iisApp. После расследования выясняется, что это происходит потому, что AWSDeploy выполняет сценарий MSDeploy с параметром -setParam: «Имя веб-приложения IIS» = «значение, заданное в конфигурации», и именно поэтому он завершился ошибкой.

Чтобы избежать этой ошибки и успешно установить не веб-сайт с AWSDeploy и CloudFormation, вам просто нужно упаковать файл параметров в пакет MSDeploy, который содержит этот параметр.

Вот пример файла.

<parameters>
  <parameter name="IIS Web Application Name" defaultValue="Default Web Site/" tags="isIisApp" />
</parameters>

Затем вы можете создать пакет MSDeploy с помощью manifest или contentPath, как показано ниже, передавая файл.

msdeploy -verb:sync -source:contentPath=C:\ConsoleApp\ -dest:package=deploy.zip -declareParamFile=parameters.xml

Затем вы можете успешно использовать это с вашим шаблоном CloudFormation. Не забудьте отключить мониторинг работоспособности для экземпляра, если сайт не запущен.

1 голос
/ 04 мая 2012

Да, вы можете использовать CloudFormation для любого приложения. Вы можете создавать экземпляры на основе любого AMI и (если вы используете экземпляры Linux, используйте cloud-init для установки и запуска программного обеспечения во время загрузки).

Также легко создать собственный AMI с предустановленным программным обеспечением и использовать CloudFormation для запуска экземпляров на основе этого AMI.

Нет ничего конкретного веб-приложения, специфичного для CloudFormation; это просто способ описать набор ресурсов AWS.

1 голос
/ 08 октября 2011

Почему бы не использовать Windows Server EC2 intance?CloudFormation - это просто способ управления облачными ресурсами, но вы все еще используете хороший старый экземпляр EC2 (который является одним из доступных ресурсов).

В одном экземпляре вы можете развернуть как консольное приложение, так иСлужба Windows.

ОБНОВЛЕНИЕ: вы можете использовать информацию в статье ЭТО для создания шаблона CloudFormation из ресурсов вашей текущей учетной записи.Таким образом, вы можете настроить его вручную, а затем сгенерировать шаблон.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...