亚马逊云非常受欢迎。DevOps在当今是个热点话题。然而,AWS把此两个特点结合起来运用进OpsWorks。

AWS Opsworks 在去年的一个极强大且富有趣味的新服务中体现,以自制主系统来自动操作full-stack DevOp。是在基于亚马逊2012年并购的Peritor’s Scalarium服务的基础上构建的,虽然带有挑战和不完全吻合整个AWS平台的思考方式,但这是一项简单并且令人兴奋的服务。

它看上去和很简单。创建一个完整的系统,添加菜单,比如负载平衡器,网络服务器,数据库,搜索等。每个菜单包含一个或多个具有相同性能、程序包、配置和Chef recipes的VMs。Opsworks提供许多构建前的方法,比如Nginx服务器和可以自建的定制的服务器。

VMs的配置的菜单相当的有限,例如没有静态IPs,没有真正的EBs选择或很多其它有用的选择。最后,这些大多都可以建立自己的AMIs,比如建立boot/root EBS大小是不可能的,除非在实例创建后黑客它。其后,可以被添加许多完全被格式化的xfs和安装好的EBS栏目,但是LVMs和名字/标签不能简单的被这些所控制。

OpsWorks还会管理很多的资源,比如将会有更多服务功能的EIPs、ELBs和RDS。基本上建立了OpsWorks的外部,然后和它们关联,OpsWorks代替并通过API管理它们。注意,不要用AWS操纵台来更改任何VM或其它OpsWorks正在管理的项目,除安全、密钥、VPC路由等外。

其原因之一,是必须要用OpsWorks安全系统和IAM集成,它是AWS系统的外部服务器,用来改变整个系统。同样的,VMs需要使用OpsWorks安全组来起到相互作用,并给OpsWorks报告,甚至报告给AWS(来自Github和VMs的recipes,需要可以连同其它几个项目一起接触到)。

需要注意的是,初始设置后,基本新的VMs需占用10分钟来做准备,系统速度不快。从根本上来说,VMs每钟查询,通过主系统,需要一段时间得出数据。很多需要几分钟来运作,尤其是当VM刚被创建时运作的安装项。

其它关键周期项目包括在新的VMs上运作的配置,在每个VM的boot和系统上每个其它VM的开/关。有很多项,但最要紧的是更新主机文件和其它主机文件,尤其是私有IPs,这样VM可以联系它们,比如寻找数据服务器。

你可以在任何项上添加自己的recipes且重载AWS,尽管这是容易破坏数据。但扩展项目添加用户、安装软件和开启数据是比较普遍的。

除了设备设置外,OpsWorks通过Recipes and hooks组来部署代码。它有部署项和非部署项等。可以在任何主机上运作,通常从其他控制系统上被APIs访问,比如Jenkins或其它recipes。

OpsWorks 内置自动缩放和自愈。缩放是通过负载和时间工作的,因此可以在繁忙时段被自动开启,并且在失败时重启/重建VM来愈合。

问题在于如何工作。即时我们在AWS平台有相当丰富的经验,但也需要花几个星期的时间来找出问题解决并测试所有选项、配件和操作的详情。我们正使OpsWorks和具有其它复杂性和要求的VPC结合。但只要您完全的了解所有项目、部件、规则和最佳做法,它们将可以很好的工作。

总的来说,AWS OpsWorks是相当简单且强大的系统,假如使用恰当,可以将DevOps用于实时系统。它将带有一些挑战性的迫使你小心的规划你的系统,但结果是有益的。

马上联系我们寻求帮助,我们将为你规划、创建和管理OpsWorks systems。