《AWS 云平台架构》再读后感

why_openstack

 

《云计算架构》这是AWS 2008年的一个文档,我记得以前读过不止两遍,今天再读依然有所收获。

在具体谈我收获了什么之前,容我先发会牢骚,可能有助于我的思考。云计算已经成功的普及到了寻常百姓家,不再是一个高深的概念了,因为连百度这样的公司都开始售卖IaaS了。嗯,这是公有云的功劳,那么再返回头来看的话,那么私有云还会有用户吗?

答案是当然有:谁家在没有钱的时候去租房子住,当有钱的时候,当然是自己搞块地按照自己的意愿来盖别墅或宫殿的。

问题来了,现实中我们经常遇到这样一些情况:

  • 原来使用VMware的用户,认为OpenStack可以以比较省钱的方式替代它。
  • 大家都在谈论云计算、开源、趋势。而其实自己的业务并没有达到这样的刚需。
  • 技术方案中,经常被双活这样的架构给绕进去。让OpenStack实现实例高可用。

近日,我又读了几则新闻,以及听同事分享的故事:

  1. 云极星创加入海航,海航自身是一个向数字转换,以IT/DT为中心的大型企业,对于灵活的计算/存储等基础设施资源有着天然的需求,如此一个团队,皆大欢喜。
  2. 红帽和爱立信达成战略合作伙伴,就OpenStack 与NFV进行多方面合作,其中一条:红帽帮助爱立信融入开源社区!
  3. 昨天在西班牙巴塞罗纳举办的OpenStack Summit上Keynote中对于OpenStack 应用场景的调查分析结果。如图所示:openstack_use_cases

然后,再回过头来看看Mirantis/UMcloud的客户,深证通、邮储银行、中国移动,买的不是OpenStack本身,而是战略合作伙伴,是利益、是服务。

以上为牢骚。

但是,逻辑不够清晰,难以说服人。最主要的原因在于,我的营销知识不够,对于某些人际的表达能够不足。此方面应该加强学习。

 

再回过头看这份2008年的云计算架构。(右边预览)

首先这份架构是讲给使用云计算平台所提供的资源(产品)的开发者或管理员的,而不是讲这个云平台如何实现的。那么,以一个应用开发者的思路来思考的话,我该如何设计我的应用?以下为几个Tips:

  1. Rule of thumb: Be a pessimist when using Cloud Architectures; assume things will fail. In other words, always design, implement and deploy for automated recovery from failure.
  2. Good cloud architectures should be impervious to reboots and re-launches.
  3. Ensure that your application is scalable by designing each component to be scalable on its own.
  4. For better manageability and high-availability, make sure that your components are loosely coupled.
  5. Implement parallelization for better use of the infrastructure and for performance.
  6. After designing the basic functionality, ask the question “What if this fails?” Use techniques and approaches that will ensure resilience.
  7. Don’t forget the cost factor. It’s wasteful to pay for infrastructure that is sitting idle.

实践策略:

  1. Have a coherent backup and restore strategy for your data
  2.  Build process threads that resume on reboot
  3. Allow the state of the system to re-sync by reloading messages from queues
  4. Keep pre-configured and pre-optimized virtual images to support (2) and (3) on launch/boot

嗯,按照逆向工程的思路,OpenStack 最终呈现给用户(A)的用户(B)就是这个样子的。作为一名售前在推销的过程中,遇到的颇为尴尬的情况是,我们面对的是用户(A),根本见不到用户(B)。而用户(A)有极少数能够理解用户(B)的,用户(B)是直接和业务打交道的,往往对于后端的基础设施没有过多的纠缠,除非是业务的变化太大,面临数字转换和访问压力,否则不会对用户A提交多少工单。

而用户(A)往往分为这么几类:

  1.  传统的精通Unix系统的资深管理员
  2.  认为VMware是这个世界上较好的虚拟化产品的系统管理员
  3.  没有独立思考能力,过去的工作完全是指挥厂家的白痴
  4. 渴望变革、学习上进、不希望被下一次变革浪潮干翻的奋斗者

 

现实中,我们遇到的前三种情况大约占80%,而且是不会成交的那种,而只有20%的用户会是第4种情况:明白世界变化越来越快、熵呈指数级的涨大、DevOps的实际需求来源于业务的更新、数据时代来临,移动互联网/终端设备的爆炸式增长,以及支付的方便性带来更多的便利。自己的知识需要做出调整,方能应对这样一个世界! 那么采用云计算的思路应该就是:

 

  • 渴望拥有优秀的人才,懂得开源,协作、参与才是未来。
  • 能采用公有云就采用公有云,和购买国家电网的电没有多大区别。
  • 私有、数据、安全、可控,那么就挑选能够采用上述云计算IaaS架构的应用先上。
  • 遗留的,慢慢淘汰,新业务加紧开发、变革
  • 尽量缩短上面两个的时间。

 

我只能看到我眼中的机会,或者是根据自己所搜集的信息来判断这样一个市场。但是生意不能脱离相应的政治环境、制度、文化、习俗等因素,但是,生意,能够取得信任就一切皆有可能。

发表评论

电子邮件地址不会被公开。 必填项已用*标注