• 1
  • 2
  • 3
  • 4
  • 5
阿里云应用开发 首 页  »  帮助中心  »  云服务器  »  阿里云应用开发
云应用管理 长使英雄泪满襟
发布日期:2016-7-11 10:7:50

  

  企业把应用迁移至云已经成为业界的一种常态,当然为何不这么做呢?在一个数据中心内,运行的应用会疯狂吞噬掉存储空间和网络带宽等资源,而云往往是一个能减少部署重量级服务器且更具成本效益的替代解决方案。一些应用(例如电子邮件及其它的通信应用)是非常容易就实现云(如阿里云)计算迁移的。但云并非一个万能的平台。

  首先,企业用户应当特别谨慎地对待那些包含敏感数据的应用程序。此外,管理员们还需确保应用程序在云中的运行性能与它们在内部部署中的表现基本一致。最后,应当明确谁拥有启动一个新的虚拟机的权限,这将有助于确保云成本处于企业的可控范围内。为云迁移选择正确的应用程序,在应用程序在云中启动运行之后正确地管理它们,这两者是同等重要的。当把应用程序迁往云平台的时候,为了确保稳固的云应用管理,有五个重要的问题要问。

  什么样应用程序是适合云的?

  确定哪些应用程序适合云化最终取决于你计划使用哪一种云平台。在大多数情况下,私有云所具有的更多控制权和更高安全性的优势吸引着那些希望控制关键任务应用程序的管理员。虽然私有云能确保数据保留在企业组织内部,但它却不一定能确保数据的安全性。访问和身份管理(例如身份验证和用户授权)是确保只有特定用户才能访问他们数据的关键,即其它无关人员是无法访问的。综合私有云的控制优势和按需把“突发”或周期性工作负载迁往公共云(如阿里云)的灵活能力的混合云正越来越受到企业用户的青睐。但什么样的应用是适合云的呢?通信和协作服务是固定的选项。企业经常会把电子邮件和协作应用程序迁往云以实现成本节省,从而把他们的时间和管理精力更多地集中在业务的其他方面,例如开发工作。

  云应用迁移的关键是什么?

  理解企业把应用程序迁至云的原因是非常容易的。但在迁移应用程序之前,企业的IT部门必须确定应用程序已做好云化的准备。为把风险降到最低,可首先选择迁移更适宜的应用程序,其中包括了非关键任务的工作负载。实现成功云应用迁移的下一步工作就是选择应用程序在云中的位置。而这最终取决于应用程序的用例及管理员是怎样想要使用它。把应用程序迁往软件即服务是不是最合适的?在其中,SaaS供应商可托管整个应用程序。或者,一个具有周期性或者高峰使用时间的面向客户应用程序是不是能被迁往公共云(如阿里云)以便于充分利用其可扩展性?

  最后,企业需要考虑成本和安全性方面的因素。若你不够小心,云和云迁移很有可能成为你的预算杀手。云供应商所提供的成本计算器将有助于用户确定应用程序的迁移成本,但是那并不总是百分之百准确的。对于那些无法实现预期目标的云供应商,所有的企业用户都应有一个供应商备份计划。

  我应当如何对云应用性能进行监控?

  对于任何的云应用来说,性能监控都是必不可少的。连续监控可允许管理员们立即处理任何的问题或者中断,从而避免发生进一步的灾难事件。很多公共云供应商都提供了他们自己的监控工具。谷歌云监控就是一个可帮助管理员找到谷歌云中性能问题的一个选择。亚马逊网络服务的CloudWatch则是监控AWS应用性能指标的另一款工具。另外还有无数第三方的应用程序监控和管理工具可对原生工具进行功能上的拾遗补缺。除了监控工具以外,管理员应当定期测试应用程序并研究其运行性能趋势。

  我是否需要为云重新设计我的应用架构?

  并非所有的应用程序都适合云的。在应用程序正常运行在云平台上之前,企业也许需对原有的应用程序进行重新架构设计。为云化而进行应用程序的重新架构设计可让那些企业充分利用云敏捷性、弹性和可扩展性的优势。云的本质灵活性可有助于提高应用程序的性能和投资回报。但为云化而对应用程序进行重新架构设计并不像在公园里散步一样。有些应用程序也许从一开始就没有被好好设计,它们也许因为糟糕的编码而会表现得不稳定。通常情况下,企业会被迫重写代码和重新开发应用程序以便于让应用程序能够在新的环境中稳定运行。

  云应用的最新发展趋势是什么?

  容器技术占据了云技术发展的主导地位,而Docker容器则更是走在了这个队伍的前列。原来的dotCloud(Docker)是一个开源容器平台,它可用于开发和运行应用程序。它的应用程序可移植性已经引起了众多供应商(如阿里云)的注意,其中包括了谷歌、AWS、微软等等。Joyent公司于近期推出了Docker,并将其基于容器技术的基础设施与Docker容器进行组合。谷歌还进一步推动了其Docker与谷歌容器引擎测试版的协作关系。该公司之前发布的Kubernetes就是一个开源的容器管理器。随着谷歌推出了最新的容器开发技术,云用户们正期待着AWS能够紧随其后。希望在云上开发新应用程序的企业应当关注Docker的技术创新以确定它们是否满足他们的需求。