现在您可能已经听说过 Cloud Foundry 了,这是 VMware 昨天宣布的开放 PaaS;如果还没有,请务必查看网络广播的录像。最终,您可能已经阅读了早先介绍 Cloud Foundry 的 Spring 支持、Spring Roo 附加组件和 Grails 插件的博客文章。
通过这篇文章,我想介绍基于 Eclipse 的 Cloud Foundry 支持,它允许您管理云部署,包括配置服务和服务绑定、应用程序扩缩容、访问文件资源等等。
在 Eclipse 和 STS 中安装 Cloud Foundry
有三种选项可以将 Cloud Foundry 插件安装到 SpringSource Tool Suite (STS) 和纯净的 Eclipse 中。我将逐步介绍这些选项,以帮助您快速入门。
通过 STS 扩展安装器安装
也许开始使用 Cloud Foundry 插件最简单的方法是将其安装到预装好的 STS 副本中。您至少应该安装 2.5.1.RELEASE 版本;2.6.1.SR1 更好。支持各种操作系统的 STS 可以在
下载页面找到。
在 STS 中,选择“Help > Dashboard”(帮助 > 控制面板),然后点击控制面板底部的“Extension”(扩展)选项卡。等待扩展列表加载,然后从“Server and Clouds”(服务器和云)类别中选择“Cloud Foundry Integration”(Cloud Foundry 集成);点击“Install”(安装)启动安装过程。

从这里开始,您只需按照安装向导的步骤操作即可。在此过程中,您需要审阅并接受许可协议,然后重启 STS 以完成安装。重启 STS 后,您就可以连接到 Cloud Foundry 了。
从 Eclipse Marketplace 安装
Cloud Foundry 插件可以很方便地安装到纯净的 Eclipse 安装中。为确保在安装过程中满足所有依赖项,您应该首先安装“Eclipse IDE for JEE Developers”软件包。该软件包可以从
Eclipse 下载页面或
SpringSource 会员分发页面下载。
通过选择“Help > Eclipse Marketplace”(帮助 > Eclipse Marketplace)启动 Eclipse Marketplace 客户端来开始安装。在搜索字段中输入“cloud foundry”,然后选择“Go”(前往)。这将找到“Cloud Foundry Integration”(Cloud Foundry 集成),您可以点击搜索结果列表中该项目旁边的“Install”(安装)按钮进行安装。

同样,现在您只需按照软件安装向导的步骤操作即可;接受许可条款,最终同意安装未签名内容,并在提示时重启 Eclipse。重启 Eclipse 后,您就可以连接到 Cloud Foundry 并从开发环境内部部署您的第一个应用程序了。
从更新站点手动安装
如果您不喜欢或无法使用 STS 扩展安装机制或 Eclipse Marketplace 客户端,您可以从以下更新站点手动安装集成插件:
http://dist.springsource.com/milestone/TOOLS/cloud/e3.6
请注意:该更新站点不支持目录索引。因此,当您使用网络浏览器访问该 URL 时,会收到“Access Denied”(访问被拒绝)错误消息。
连接到 Cloud Foundry
Cloud Foundry 集成插件将云紧密集成到 Web Tools Project (WTP) 服务器基础设施中。这是从 Eclipse 部署 Java Web 应用程序最常见的方法。您中的大多数人可能使用“Servers View”(服务器视图)部署到本地 Tomcat 或 tc Server 实例。
借助适用于 Eclipse 的 Cloud Foundry 集成,您将继续使用“Servers View”(服务器视图)将应用程序部署到云端。首先,我们需要创建一个新的 WTP 服务器。此服务器代表您的 Cloud Foundry 账户,您将能够连接到您的 Cloud Foundry 账户;就像从命令行使用“vmc target ; vmc login”一样。
以下步骤将指导您完成连接到 Cloud Foundry 的过程
- 从“Window > Show view … > Other … > Servers”(窗口 > 显示视图 … > 其他 … > 服务器)打开“Servers”(服务器)视图
- 在“Servers”(服务器)视图中右键单击,然后选择“New > Server”(新建 > 服务器)
- 从“VMware”类别中选择“Cloud Foundry”,然后点击“Next”(下一步)
- 输入您的账户信息并选择您要连接的云。如果您有 Cloud Foundry 账户,请从 URL 下拉框中选择“VMware Cloud Foundry – http://api.cloudfoundry.com”。您也可以将 Cloud Foundry 集成与本地安装的 Cloud Foundry 一起使用。最后,按“Validate Account”(验证账户)以检查连接是否能成功建立。
- 点击“Finish”(完成)关闭“New Server”(新建服务器)向导

完成“New Server”(新建服务器)向导后,您应该在“Servers”(服务器)视图中看到 Cloud Foundry 的新条目。与 Cloud Foundry 的连接将自动建立,您会在服务器视图的 Cloud Foundry 服务器节点下方看到您部署的应用程序。

您可能会注意到视图工具栏中的“Start”(启动)和“Stop”(停止)操作是禁用的。相反,当您右键单击 Cloud Foundry 服务器时,会在上下文菜单中找到“Connect”(连接)和“Disconnect”(断开连接)操作。
部署应用程序
现在将应用程序部署到 Cloud Foundry 只需将应用程序拖放到“Servers”(服务器)视图中的 Cloud Foundry 服务器上即可。或者,您可以使用服务器上下文菜单中的“Add and Remove …”(添加和移除 …)操作。
一旦应用程序被添加到 Cloud Foundry,就可以启动它:在“Servers”(服务器)视图中右键单击应用程序并选择“Start”(启动)。这将弹出应用程序部署向导,允许您指定应用程序名称、URL 和内存保留。未来我们将添加更多配置选项。
点击“Finish”(完成)后,插件将在 Cloud Foundry 上上传并启动应用程序。您可以通过双击“Servers”(服务器)视图中的应用程序来查看应用程序部署的状态。这将弹出已扩展以显示特定 Cloud Foundry 信息的“Server Editor”(服务器编辑器)。

服务供应和绑定
您想要部署的应用程序可能需要访问 Cloud Foundry 提供的服务。要最初供应服务,您可以使用“Server Editor”(服务器编辑器):在“Applications”(应用程序)选项卡上,点击“Services”(服务)部分的工具栏中的“Add service”(添加服务)操作。
一旦服务供应到您的 Cloud Foundry 账户,您可以将它们绑定到您的应用程序。为此,只需将要绑定到特定应用程序的服务拖放到“Server Editor”(服务器编辑器)右侧的“Application Services”(应用程序服务)表中即可。如果您的应用程序在启动期间需要访问服务,并且在服务不可用时会启动失败,请在启动应用程序之前绑定服务。
远程文件访问
适用于 Eclipse 的 Cloud Foundry 集成为远程文件资源提供访问,就像“vmc files ”和“vmc logs --all”一样。点击“Server Editor”(服务器编辑器)中应用程序详细信息窗格右下角的“Remote Systems View”(远程系统视图)链接。这将弹出“Remote Systems”(远程系统)视图,您可以在其中浏览文件树并直接从 Eclipse 内部打开文件,例如日志文件。

下一步是什么
在接下来的几周里,我们将继续改进对 Cloud Foundry Eclipse 的支持。一如既往,我们非常重视社区反馈。因此,请花一些时间试用该插件,并告诉我们您的想法。
如果您发现任何问题,请在STS 问题跟踪器中提交 JIRA。