云计算中虚拟化的意义
本文从个人角度上分析虚拟化的意义1. 虚拟化对成本的影响A. 节约采购成本: 提高PC的CPU,内存,硬盘和网络使用效率,同时降低了电力消耗B. 节约了维护的成本: i. PC少了,维护工作自然少了 ii. 集中化的管理,减轻维护人员工作压力 iii. 可以弹性的资源调配2. 虚拟化前的资源使用分析下面场景是最直观的资源闲置为了保证服务的持续性,很多应用要求有主备,所有
本文从个人角度上分析虚拟化的意义
1. 虚拟化对成本的影响
A. 节约采购成本:
提高 PC 的 CPU ,内存,硬盘和网络使用效率,同时降低了电力消耗
B. 节约了维护的成本:
i. PC 少了,维护工作自然少了
ii. 集中化的管理 , 减轻维护人员工作压力
iii. 可以弹性的资源调配
2. 虚拟化前的资源使用分析
下面场景是最直观的资源闲置
- 为了保证服务的持续性,很多应用要求有主备,所有的备机是闲置的
- 测试服和开发机,只有测试需要或者编译时会使用。
- 很多 IT 公司的服务器都是根据年初预算提前采购,如果项目进展或者用户需求不如预期,将产生很大一批机器资源浪费
- 测试客户机,只有测试的时候才需要
- 测试开发机,只有编译或者调试时使用
- 测试服务器,测试时候才有用
下面场景是利用率不高
- 接入机,网络占用高, CPU, 内存,磁盘低
- 工作 PC ,时高时低,特别是那些需要倒班的企业,换一批人,机器就闲置一批(或者不换,但是共享 PC 容易导致工作场景或文件丢失)
- 缓存服务器, IO 低
- 应用服务器,一般内存和 IO 都比较低
3. 如何部署虚拟化主机
3.1 水平划分
对大公司来说,云太大了,将会导致管理的混乱,所以我们要进行一定的水平划分。
水平划分有很多方法,比如按照业务的敏感度,或者部门,业务的开放性(对内还是对外等),轻重分离。如果划分后还是太大了,可以继续 2 级, 3 级划分。
3.2 资源的最大利用
划分完以后,我们可以部署我们的虚拟集群了。
针对 2 节中的分析, 可以对我们的场景进行分类和部署
| 场景 | CPU | MEN | NET | IO | 业务特点 | 部署 |
A | 主备功能 | M | M | M | M | 要求主备隔离 | 不同应用的主备混搭,可以把 A 进程的主和 B 进程的背搭在同一机器上的不同虚拟机上 |
B | UI 测试和工作 PC | M | M | L | L | 资源要求不高,大部分时间是闲置 | 通过 XEN 底层预销售尽量多的工作单元 |
C | 前端网络接入机 | L | L | H | L | 网络内外网资源占用高,其他低 | 可以跟一些网络要求不高的混搭,比如 D |
D | 应用 1 | L | L | H | H | 存储应用一般只对 IO 和 NET 要求高 | 混搭 |
E | 应用 2 | H | H | L | L | 后台运行应用,比如生成静态化报表等 |
|
F | 应用 3 | H | H | H | L | 如缓存或者主控应用 | 相对独立,可以部署那些不活跃的备份日志混搭 |
G | 应用 4 | L | L | L | H | 备份存储应用 |
|
H | 都高 | H | H | H | H | 如 DB 等, | 不适合虚拟化 |
通过虚拟化的资源池,我们可以对上表的场景 追求资源的最大化利用
下面是使用视图
上图显示,虚拟化起码可以帮我们节省 80% 以上 的 PC 资源,如果预销售越多,或者应用对资源要求越低,我们将会节省更多。
4. 虚拟化主机和多进程的区别
很多时候,做分布式应用时,感觉多虚拟机和多进程部署有一定的雷同
实际上还是差别非常大的:
- 虚拟机的隔离性更好,应用问题引起的拓机或者资源泄露不会影响其它应用
- 虚拟机部署更灵活,用户不需要知道具体哪个物理机,根据 IP 就可以了。而多进程必须指定 IP 和端口号
- 对使用者更灵活,用户可以随意在其计算单元上部署 crontab 等应用而不必怕影响到其它用户
更多推荐
所有评论(0)