作者:范军 (Frank Fan) 新浪微博:@frankfan7

资源池是Cluster设计中的一个重要概念,本文介绍了为什么用资源池,怎么用好资源池,以及澄清了一些常见的误区。

概念

每个ESXi主机和Cluster缺省都有一个Root资源池。如果没有新的自由池创建的话,整个系统仅仅有一个资源池。

图中所示RP-Marketing和RP-QA是在Root资源池内新创建的资源池,他们和root资源池是父子关系,他们之间是兄弟关系。

RP-QA-UI是RP-QA下的子资源池。

为了简化管理,通常不建议在资源池内建好几级子资源池,2级资源池应该可以满足绝大多数的情况。

二 为什么使用资源池

授权管理

vCenter管理员可以为每个部门建立资源池,授权特定用户管理该部门的资源池。这样vCenter管理员就无需过多介入对各部门内部资源的控制。

统一策略:

对每个VM进行资源控制费时费力,把有共同需要的VM分配到相应的资源池,可以很便捷的实现资源控制。

资源分离:

对一个资源池的设置改变不会影响到其他资源池,

三基本设计原则

不要仅仅因为逻辑区分或者访问控制的原因,来使用资源池。其实文件夹可以更好的实现该目的。

为了简化管理和减少资源开销,建议资源池的深度不要超过2

不要把虚拟机和资源池分在同一级

不要过度分配资源。在建议资源池之前,检查上一级资源池可供分配的资源。

四 SeparateESXi Cluster vs Resource Pool

如果仅仅从资源分离的角度考虑,需要斟酌是建一个单独的Cluster,还是在Cluster内建资源池。

建议考虑下面的因素:

Cluster内的主机数目

如果一个Cluster有8个以上主机,可以考虑为管理功能的VM设置单独的Cluster。比如vcenter,vCloud,Database等等。 如果主机个数很少,而希望能充分利用资源,在Cluster内建立资源池是更好的选择。

安全

有的公司有非常严格的安全策略,某些特定应用不可以和其他应用共享硬件。为此需要单独设置Cluster,设置为该Cluster分配专属的存储资源。

性能

为了最大化性能的保障,考虑单独的Cluster,能保证充足资源的供给。毕竟资源池还是要共享资源的,在资源竞争很厉害的情况下,资源池的份额设置为High,仅仅是有优势抢到资源,但并不意味着就能满足应用的需要。

五 实例

假设一台主机由几台虚拟机,分别属于QA和Marketing部门。QA部分需要更多的资源。

设置如下

资源池

Share

Resource Allocation

RP-QA

High

4GHz, 2GB

RP-Marketing

Normal

2GHz, 1GB

这时候RP-QA内的两个虚拟机,一定比RP-Marketing内的虚拟机更容易在有竞争的情况下抢占到资源。

假如我们在RP-QA内再创建5个VM,那么情况就不一定了。即使RP-QA的share设置为High,但每个VM能抢占到的很有限。

虽然RP-Marketing的RP-Marketing的share设置为Normal,但仅有3个VM,可能每个VM可以抢占的资源比RP-QA内的VM要多。

所以资源池的设置不是一劳永逸,需要密切注意池内的VM数量,可以写一个脚本来根据优先级和VM的数量,自动计算该资源池应该设置的Share数值。

参考:

Resource Allocation Whitepaper

Expandable reservation on resource pools, howdoes it work?

http://www.vmware.com/pdf/vmware_drs_wp.pdf

【虚拟化实战】Cluster设计之一资源池的更多相关文章

  1. 【虚拟化实战】存储设计之六latency

    在[虚拟化实战]存储设计之五IOPS中我们讲了评估存储性能的三个关键指标.也就是Throughput,IOPs和latency.以及三者之间的关系.本文深入介绍Latency过高的原因和一些建议. L ...

  2. Windows Server 2012 虚拟化实战:网络(二)

    关于Windows Server的虚拟化网络,前文描述了在操作系统层面上的出现的配置变化.其中的一些配置通过Windows Server提供的小工具即可实现,如网卡组的配置,而有些需要安装Window ...

  3. Docker虚拟化实战学习——基础篇(转)

    Docker虚拟化实战学习——基础篇 2018年05月26日 02:17:24 北纬34度停留 阅读数:773更多 个人分类: Docker   Docker虚拟化实战和企业案例演练 深入剖析虚拟化技 ...

  4. 云课堂Android模块化实战--如何设计一个通用性的模块

    本文来自 网易云社区 . 如何设计一个通用性的模块 前言 每个开发者都会知道,随着项目的开发,会发现业务在不断壮大,产品线越来越丰富,而留给开发的时间却一直有限,在有限的时间,尽快完成某个功能的迭代. ...

  5. Python接口自动化测试框架实战 从设计到开发

    第1章 课程介绍(不要错过)本章主要讲解课程的详细安排.课程学习要求.课程面向用户等,让大家很直观的对课程有整体认知! 第2章 接口测试工具Fiddler的运用本章重点讲解如何抓app\web的htt ...

  6. 【虚拟化实战】容灾设计之三Stretched Cluster

    作者:范军 (Frank Fan) 新浪微博:@frankfan7 Stretched Cluster是一把双刃剑,会用的如行云流水,用不好反而受其限制. 传统的vSphere Cluster是指一个 ...

  7. 【虚拟化实战】VM设计之一vCPU

    作者:范军 (Frank Fan) 新浪微博:@frankfan7 虚拟机需要多少个vCPU呢?是不是个数越多性能越好呢?这方面存在着很多误区.给VM配置CPU资源的时候,要精打细算才能最大可能的利用 ...

  8. 【虚拟化实战】容灾设计之四VPLEX

    作者:范军 (Frank Fan) 新浪微博:@frankfan7 VPLEX等存储设备的出现,可以实现双活数据中心,最大程度的有效利用运算和存储资源. 在“容灾设计之三Stretched Clust ...

  9. 【虚拟化实战】容灾设计之一VR vs SRM

    作者:范军 (Frank Fan) 新浪微博:@frankfan7 从本文开始,我们将介绍一系列的关于容灾的解决方案.先探讨应用的场景,然后再深入介绍技术架构. 情景一: 某小型公司的虚拟化环境中,在 ...

随机推荐

  1. python标准库--functools.partial

        官方相关地址:https://docs.python.org/3.6/library/functools.html 一.简单介绍: functools模块用于高阶函数:作用于或返回其他函数的函 ...

  2. markdown编辑器使用指南

    欢迎使用Markdown编辑器写博客 本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接 ...

  3. mybatis学习笔记(六) -- maven+spring+mybatis从零开始搭建整合详细过程(下)

    继续 mybatis学习笔记(五) -- maven+spring+mybatis从零开始搭建整合详细过程(上) 五.使用监听器启动Spring容器 1.修改pom.xml文件,添加Spring-we ...

  4. Western Subregional of NEERC, Minsk, Wednesday, November 4, 2015 Problem F. Turning Grille 暴力

    Problem F. Turning Grille 题目连接: http://opentrains.snarknews.info/~ejudge/team.cgi?SID=c75360ed7f2c70 ...

  5. 利用dynamic简化数据库的访问

    今天写了一个数据库的帮助类,代码如下. public static class DbEx { public static dynamic ReadToObject(this IDataReader r ...

  6. 使用filezilla server搭建FTP服务器

    参考文献 http://www.pc6.com/infoview/Article_51961_all.html 背景 需要在内网环境下搭建一个FTP服务器,查阅相关资料发现使用filezilla se ...

  7. 调用WScript.Shell时产生Automation 服务器不能创建对象的错误

    我们经常需要通过生成ActiveXObject("WScript.Shell");来调某一exe文件, 如 //设置网页打印的页眉页脚为空 var HKEY_Root,HKEY_P ...

  8. datagrid在MVC中的运用01-基本属性并实现分页

    本文体验jQuery EasyUI的datagrid在MVC中的应用.主要涉及到: ※ datagrid的基本属性和方法 ※ datagrid分页在前后台的实现 最终效果: 与视图显示对应的view ...

  9. delphi 取得任意程序的命令行

    program GetCommandLineExDemo; uses Windows; constSystemHandleInformation = 16;ProcessBasicInformatio ...

  10. Spring Boot 2.0 + zipkin 分布式跟踪系统快速入门

    原文:https://www.jianshu.com/p/9bfe103418e2 注意 Spring Boot 2.0之后,使用EnableZipkinServer创建自定义的zipkin服务器已经 ...