IaaS 云的应用场景思考

云计算 IaaS
前几天,通过笔者与一家企业里的 IT 经理聊天中的一问一答,引发了笔者对不同企业需求下构建IaaS云的应用场景,以及建设流程,在本文中与大家分享。

[[124177]]

有这么一个需求,一家企业里的 IT 经理,由于最近几年云计算炒的非常火爆,老板一直让他弄一个云计算,问我有什么好的想法没有?

我问:你们有多少物理资源?主营业务是什么?

他问:我们只有不到 20 台物理服务器(机架式),主营业务是汽车配件,还有一个他们的电子商务网站。

我问:这个网站用户量怎么样?服务器是否可以支撑这些高峰期的用户,服务器上还部署着什么其它的软件么?

他说:现在服务器资源足够用,网站用户量也不是太多,偶尔搞搞什么活动,就把其它两个服务器也部署一套网站应付一下,平时轻闲的很,其它几个服务器部署了一些类似于 ERP 的软件,但是平时用的不是很多,又跟我说,部门就他们两三个人,但是他们还有一个不到十人的团队,在做一个汽车配件类的移动 APP。

我问:你们用虚拟化了么?

他说:用了,有两台 VMWare,平时也会试试 KVM。

我问:你们的网站有涉密数据么?

他说:没有。

我问:你们那个开发团队在需要申请资源的时候,都是走什么样的流程,走完整个流程大概需要多长时间?

他说:先在邮件上提出资源配置要求,邮件回复结果。如果有可用的资源配备,在从 OA 上申请,整个周期快的话需要大概 2 天,慢的话估计得 3 到 4 天,如果需要资源(物理服务器)被其他人占用的话,就需要购买,这个周期就长了。

我问:那些被占用的资源,使用率怎么样?

他说:就跑服务器端程序,开发类的居多,占用的资源很少。

通过以上一问一答的聊天,我给出了以下结论,来分享给大家:

1、这位朋友现有的资源,足以满足他们企业的需求,而且还有大部分资源没有利用起来,我建议除了数据库外的资源全部虚一下,先将资源整合,把资源池化,提升资源的利用率;

2、完成以上资源池化以后,就是要做一个集中管理,如果以 VMWare 为主,可以用 vCenter 来做管理,KVM 的话也有一些开源的管理工具。这样就可以做一些简化的管理操作;

3、根据企业的业务属性,再将多虚拟化环境管理起来,类似的工具有 CloudStack、OpenStack 等,这样就形成了一个小的 IaaS 私有云;

4、通过对 CloudStack、OpenStack 等工具的功能扩展,可以实现对资源申请、回收等流程的统一管理,大大提高交付资源的质量;

5、对于网站和移动 APP类的应用,如果高峰期来临,本地的资源抗不住,也可以通过对 CloudStack、OpenStack 的扩展,借用一部分外部资源,比如 AWS、阿里云等,这样就可以在需要的时候申请外部资源,空闲的时候就释放外资源,按需使用、按量计费,维护成本也大大降低了,这样就又打造了一个企业的混合云环境。

通过以上结论,又帮着这位朋友简单的梳理了一下建设流程。

一阶段(资源整合阶段):

1、将物理资源按物理配置进行分类;

2、先将空闲的物理资源池化;

3、对公司业务进行再分类,梳理流程;

4、根据资源和业务分类,将网络资源和存储资源进行池化;

5、对资源池进行统一的集中管理。

二阶段(IaaS 实施阶段):

1、 IaaS 工具选型,根据企业的特性选择一个合适的 IaaS 工具。方便灵活、又偏交付质量,且稳定的可以选择 CloudStack;公司即有Python开发能力,对虚拟化又有较深的技术能力,且有独特的企业业务特性,自主能力比较强的可以选择 OpenStack;

2、把虚拟化集中管理工具接入到选好的 IaaS 工具中;

3、初始化 IaaS 工具;

三阶段(己有资源迁移阶段):

1、将现有资源中的数据向私有云环境进行迁移,可选的方式有 V2V(虚机到虚机)、P2V(物理资源到虚机)、D2V(数据到虚机)等;

2、迁移后的一致性校验和试运行;

3、试运行无问题后,将原有设备进行初始化,然后加入到 IaaS 环境。

四阶段(开发阶段):

1、根据企业的性质,对业务进行梳理;

2、收集最终(其它部门)用户需求,整理预开发的功能列表;

3、对将要开发的功能进行优先级划分,分阶段进行开发;

4、研发完毕,联调测试;

5、BUG 修证;

6、上线。

五阶段(混合云开发阶段):

1、整理业务需求和对公有云服务进行选型,比如阿里云、AWS 等;

2、在现在的 IaaS 工具上接入公有云服务,以支持业务的需要;

3、研发完毕,联调测试;

4、BUG 修证;

5、上线。

当然也要注意以下问题:

1、技术方面:云计算是一个架构,包含很多种技术的组合;应用方面:云计算是一个优秀的商业模式;要用云计算,就要先清楚他的定义。

2、虚拟化不是云计算,充其量也就是云计算中的一个模块,一种实现技术。没有了传统的虚拟化技术,我们还有基于容器的技术,同样可以实现类似功能,比如:Docker、LXC、OpenVZ 等;

3、由于一些商业限制和一些稳定性的原因,传统或开源的云计算工具 CloudStack、OpenStack 等无法百分百的支持流行的商业虚拟化技术,会对一些商业限制的功能和一些在云环境下不稳定的因素阉割掉,大家一定要注意;

4、一些物理服务器数量未达到某个量级时,又或者相应的业务不符合云计算的定义时,使用云计算反而会带来更多的问题,比如使用习惯上、某些虚拟化特性上等等。所以资源少的情况下,只做到虚拟化的集中管理就可以了;

5、在资源(当然更多的还是物质上)充足的情况下,可以采用一些商业的 IaaS 工具。

以上是一个比较典型的IaaS私有云和基于IaaS企业私云之上的混合云应用场景,希望对大家有一个比较好的引导。

本文出自:http://blog.csdn.net/eriloan/article/details/41820097

责任编辑:Ophira 来源: 史丙利的博客
相关推荐

2016-10-21 15:07:11

2018-05-28 08:28:24

云计算应用场景

2021-08-06 22:53:20

微服务开发前端

2012-10-23 09:32:07

2013-07-01 17:21:21

百度云推送免费云推送移动开发

2019-12-06 13:55:28

人社部大数据应用场景

2011-05-17 15:24:18

Shibboleth认证

2015-06-15 16:24:50

2016-04-11 15:49:40

人工智能大数据应用IBM

2022-09-05 14:46:01

元宇宙区块链人工智能

2015-03-11 13:54:25

云技术云应用云存储

2014-03-28 16:50:05

微软Office 365云计算

2018-09-13 17:24:53

华为云

2011-06-28 07:45:00

开发测试云微软研究院云计算案例

2021-06-04 15:45:43

XR虚拟现实虚拟经济

2015-10-15 14:32:34

2021-12-24 10:24:10

零信任

2019-04-10 15:43:12

SDN场景网络架构

2010-08-31 19:45:26

DHCP server

2024-03-12 10:36:06

函数指针代码
点赞
收藏

51CTO技术栈公众号