2012-06-12 157 views
1

我是Azure的新手。我有一个脚本可以自动安装Apache,Ruby,并配置这两个脚本来运行基本的Ruby on Rails项目。此脚本当前在Windows Server上运行。Azure入门:工作角色

我现在试图让这个工作在Azure中。我已经注册了一个订阅,并在Visual Studio中打开了一个新的工作者角色项目。

虽然我现在有点卡住了。

1)我应该在哪里放置安装文件和项目文件(ruby,apache等)? 2)放剧本的最佳地点在哪里?

任何帮助,将不胜感激。感谢您的时间:)

回答

2

在Visual Studio项目中,有三个地方得到的东西和运行:

  • 启动脚本。这在您的workerrole.cs方法被调用之前运行。它非常适合安装需要提升权限的软件,调整注册表等。对于Apache,不需要提升权限 - 它只是xcopy加环境变量。
  • workerrole.cs OnStart() - 在将角色实例添加到负载平衡器之前调用此处理程序。您可以从blob存储下载您的apache zip,解压缩到本地文件夹,启动它。
  • workerrole.cs Run() - 与OnStart()相同,但您的角色实例现在位于负载均衡器中。我不建议在这里设置一个Web服务器。

从Eclipse设置tomcat时有点不同,因为没有workerrole.cs。相反,你有一个启动脚本。用于Eclipse的Windows Azure插件提供了几个示例脚本:一个用于tomcat,一个用于JBoss等。然后,您可以查看这些示例脚本如何设置环境并启动Web服务器。

一点指导:虽然你可以可以将tomcat,ruby和其他运行时位封装在你的部署中,这也增加了部署的大小。我通常会将第三方位放入blob存储中,然后在启动时将它们下载到我的角色实例中。这个下载是非常快。这也使我能够在不需要重新部署的情况下更新这些位(例如:自从几个月前推出部署以来,tomcat已经经历了六次增量更新;我只是上传了一个新的tomcat zip并回收了我的角色实例)。

+0

非常感谢。 – RobVious