最近,我一直试图使我们在亚马逊EC2上的构建过程自动化,亚马逊的产品给我留下了深刻的印象。我的构建过程已经完成了90%。通过一次使用15个EC2实例,我们成功地将构建时间从90小时缩短到了4小时。只有两个缺失的环节。我试图找到答案,但没有结果。
背景
我从我的EC2应用程序中启动多个C#实例,每个EC2实例都做一些Matlab计算。要启动的实例数是用户定义的参数,代码负载相应地平衡构建过程。我在EC2上有一个执行Matlab命令的可执行文件。另外,我的EC2实例是一个定制的AMI,它安装了Windows 2008,并安装了自己的一组文件和二进制文件。
问题1)
启动EC2实例后,我必须等待大约15分钟才能使用远程桌面,但我发现在启动后2分钟内,该实例处于“运行”状态。有没有一种方法可以在没有远程日志记录的情况下从本地系统直接在EC2上启动我的可执行文件?这将节省我15分钟的时间,这样,我就可以完全自动化构建过程。不需要将RDP转换为EC2来触发可执行文件。我查看了PsExec和其他第三方工具来触发远程命令。我只是不知道如何在EC2中使用它们。我甚至尝试设置一个批处理文件,在Windows启动时调用可执行文件,但不幸的是,直到我将该批处理文件转换为EC2时才会调用该批文件。还有其他方法可以做到这一点吗?
问题2)
如何在构建过程中从EC2检索(流)日志文件到本地系统?该构建预计将花费大约12个小时(最坏的情况下,很少运行实例),我想要某种方式来监控构建。我正在考虑将日志文件从EC2流到S3,然后将它从S3流到本地系统,但这听起来不太可行。一定有更好的方法来做这件事。
如果这些问题以前已经被回答了,请原谅。如果有人能告诉我正确的来源或者在这里回答我的问题,那就太好了。
谢谢大家。
发布于 2012-01-12 01:22:41
user data就是您所需要的。下面是您的RightScale示例:什么是EC2用户数据字段,我如何使用它?你能切换到Linux吗?
https://stackoverflow.com/questions/8377899
复制相似问题