写点什么

Engine Yard 继续推行公有云的本地化应用

2012 年 12 月 26 日

上个月,平台即服务(PaaS)提供商 Engine Yard 发布了“盒中云(cloud in a box)”,开发者可以使用它在把应用程序发布到公有云中之前进行本地测试。现在,已经有多家云提供商采用了这种部署模型,不仅可以加快开发速度,而且更易于在提交应用程序之前在特定的云中测试。

他们以一种虚拟机的形式提供了 Engine Yard Local ,其中包含了核心组件以及展现在 Engine Yard 公有云中的界面。据 Engine Yard 公司所说,它模拟了“与 Engine Yard Cloud 和 Engine Yard 托管实例相同的操作系统、系统结构、准备系统和软件包树。” 在声明发布产品的博客中,Engine Yard 还描述了产品的价值定位。

Engine Yard Local 是一种很棒的方式,能够让你不需要进行注册账户、配置、部署应用程序、为实例支付的繁琐过程,只需要找到出了问题的地方。使用 Engine Yard Local,你可以持续测试你的应用程序,就像它们真的在云上一样,唯一例外的就是这是免费的模拟,而且没有限制。

Engine Yard Local 的使用离不开 Vagrant ,那是一种开源的工具,用于在虚拟机中创建和分发开发环境。只要开发者安装了 Ruby 和 Oracle Virtual Box,那么就可以运行 Engine Yard Local,并从开发环境中向上面部署应用。一种叫做 Engine Yard Live 的相关产品(暂时还没有发布)使开发者能够通过公共互联网共享对 Engine Yard Local 实例的访问。

很多 PaaS 提供商现在都提供了这种类型的开发虚拟环境,帮助开发者在把软件发布到云中之前提前试验。微软的 Windows Azure SDK 会安装一台计算机和存储模拟设备,开发者可以使用它们在本地计算机上模拟 Microsoft 的云。然而,和 Engine Yard Local 不同,在模拟器中的权限和行为与公共的 Windows Azure 云有很大的区别。VMware 的Cloud Foundry PaaS 的模型和Engine Yard Local 非常类似。Micro Cloud Foundry 是作为完整的虚拟机发布的,它很好地模拟了任一种与Cloud Foundry 兼容的PaaS 提供商兼容的服务、行为和接口。

想要试用Engine Yard Local,你可以查看这篇知识库文章,其中描述了安装和测试产品的所有步骤。关于产品的问题可以在他们的Q&A 论坛上提问。InfoQ 想要了解更多关于这个版本的信息,所以我们向Engine Yard 提出了几个问题。

InfoQ:你们支持哪些操作系统和平台,是如何做出选择的?

Engine Yard:Engine Yard 持续评估了流行的技术,并听取了客户的反馈,了解对满足他们的业务和开发需求来说,哪些更重要。

Engine Yard Local 1.0 当前支持 Engine Yard 默认栈,其中包括 Gentoo 操作系统、Ruby 1.9.3、Nginx、Passenger 3 和 PostgreSQL。Engine Yard Local 将来的版本不仅会提供更多组件选择,还会提供更新的版本。Engine Yard Local 可以在 Windows、OSX 和 Linux 上运行。

Engine Yard PaaS 支持各种各样的操作系统、语言、中间件和数据库。我们的技术栈的完整列表可以在 https://support.cloud.engineyard.com/entries/21009842-engine-yard-technology-stack 找到。

InfoQ:你们认为,对于使用 Engine Yard Local 的用户来说,一般的工作流程(例如:创建、提交、构建、部署等等)是怎样的?

Engine Yard:Engine Yard Local 让开发者可以在本地计算机上拥有 Engine Yard Cloud 环境。开发者可以在 Engine Yard Local 虚拟机上开发和测试他们的 Rails 应用程序,当他们做好部署准备的时候,可以提交变更并部署到 Engine Yard Cloud 上。一般的工作流程是开发、测试、提交、部署。

一旦开发者安装了 Engine Yard Local,就可以从任意 Rails 应用程序的目录中使用它。例如,我们可以创建新的 Rails 应用,然后转到这个应用程序以启动它:

$ rails new myapp

$ cd myapp

$ ey-local up

这会启动运行 Engine Yard 栈的虚拟机,并启动你的应用程序。你可以转到 http://127.0.0.1:8080/ ,以看到运行在你本地计算机上的应用程序。你可以与应用程序交互,确保它满足了你的需求。

如果变更满足了你的需求,那么你就可以把它们提交到 Git repo 上,并推送给 GitHub(或者其他程序库):

$ git add -A && git commit “It works”

$ git push origin master

完成了这些之后,你可以触发其他任务,像你的持续集成工具,或者把变更后的代码部署到 Engine Yard Cloud 上。

InfoQ:你认为这会是对开发者当前如何构建本地或者云应用的逻辑扩展吗?

Engine Yard:开发者现在可以在本地测试他们的应用程序,并且(或者)在云提供商的开发环境中测试它们。Engine Yard Local 让开发者可以在本地开发和测试他们的应用程序,这使得过程更有效率。他们可以为内部或者云应用程序使用 Engine Yard Local。

InfoQ:哪些情况(例如:性能测试)不适合 Engine Yard Local 呢? 什么时候你需要在 Engine Yard 上运行你的应用程序,从而获得某些内容的完整效果?

Engine Yard:Engine Yard Local 现在还支持多个虚拟机。而且最好是针对运行在开发环境而不是生产环境中的应用程序。一旦一个应用程序准备扩展到多台虚拟机的生产环境,那么就应该部署到 Engine Yard Cloud 上了。

InfoQ:你认为这个工具会加快本地应用的迁移吗,因为它让潜在的客户能够在推送到云中之前先“试用”?

Engine Yard:的确如此。Engine Yard Local 会加快迁移到云中的过程。它会提供更容易的方式来排查部署中的故障。用户可以像在 Engine Yard Cloud 环境中一样支持拥有同样技术栈组件的实例。当他们准备好部署的时候,就可以点击按钮,然后他们的应用程序就会部署到云中。

查看英文原文: Engine Yard Continues Trend of Local Fabric for Public Clouds

2012 年 12 月 26 日 20:28708
用户头像

发布了 340 篇内容, 共 114.2 次阅读, 收获喜欢 4 次。

关注

评论

发布
暂无评论
发现更多内容

架构0期作业1

Nan Jiang

作业一:食堂就餐卡系统设计

飞翔的风

架构学习第一周总结

lwy

week01-学习心得

强哥

极客大学架构师训练营

食堂就餐卡系统设计

跨域刀

极客大学架构师训练营

极客时间-作业一-食堂就餐卡系统设计

刘柯

【架构课笔记-第一周】一般方法与设计文档

Nelson

架构师训练Week1 - 学习总结

伊利是个圈

学习 极客大学架构师训练营

读笔 | 为什么“杨丽萍”们的生活被指责

张鸱鸺

读书笔记 心灵圣经 生活方式

作业二:根据当周学习情况,完成一篇学习总结

飞翔的风

架构师训练营第一周学习总结

JUN

就餐卡系统架构设计文档

gen_jin

关于架构师的一点理解

石刻掌纹

架构训练营第一周-作业

无心水

week0-作业一

徐培

《架构师训练营》--第一周命题作业

极客大学架构师训练营

架构师0期第一周作业(就餐卡系统设计)

何伟敏

第一周作业(2)

佳明

「架构师训练营」学习笔记:第1周

Amy

学习 极客大学架构师训练营

食堂就餐卡系统设计

weijin

关于架构师的理解(第一周学习总结)

架构学习作业-食堂就餐卡系统架构

乐天

第一周作业

仪轩

食堂就餐卡系统设计

逍遥乐天

第一周作业(1)

佳明

架构师训练营 第1周总结

Lingjun

极客大学架构师训练营

第一周总结

gen_jin

【架构师训练营 - week1 -2】学习总结

早睡早起

食堂就餐卡系统设计

yupi

架构师训练营 第一周 作业

极客大学架构师训练营

就餐系统架构设计

草原上的奔跑

极客大学架构师训练营

Engine Yard继续推行公有云的本地化应用-InfoQ