如何优化数据中心虚拟机布局
当前已经有很多组织将服务器虚拟化技术引入到生产中,这么做是有道理的,特别是在当前经济并不景气的情况下,因为服务器虚拟化技术可以在服务器硬件,机架空间,电力消耗和制冷方面为组织节省开支。
但为了实现服务器虚拟化,许多组织发现他们必须采购新的服务器,因为最新的系统管理程序(hypervisor)要依赖于处理器支持虚拟化的64位硬件,在某种程度上,采购新服务器也有道理,因为它可以减少电力消耗和制冷需求,并可以减少数据中心的后续成本。
问题是很多组织都认为物理服务器的合并率要达到10:1才满意,你可以通过合理布局虚拟机的部署位置来提高物理服务器整合率,甚至可以超出10:1的比例,但要虚拟机和宿主主机同时达到高性能,难度是相当大的,说到底就是,既要提高物理资源的利用率,又要确保所有虚拟系统都保持最佳运行状态。
因此,现在应该仔细研究你在使用的虚拟服务产品,并应该开发一些资源分配规则,你也应该深入了解服务器虚拟平台的功能,否则在布局虚拟机时总是很保守,首先从现有服务和应用程序分类开始。
从现有服务和应用程序分类着手
改变虚拟机布局的最佳方法是从服务器工作负载分类开始,尽量将分类最小化,然后通过对资源的需求进行分组。例如,Web服务器和email服务器主要需要网络资源,数据库服务器主要需要存储,中间件服务器主要需要处理能力,这些都是生产中需要用到的系统,另外你可能还需要测试系统,培训系统和开发系统。
网络服务器通常有三种可能的放置位置:
- 局域网内
- 安全区域内——通常是非军事区(DMZ),对于大型组织,往往不止一个DMZ
- 企业外围网络
如果你规划得好,完全可以100%虚拟化你的工作负载,虚拟化技术发展到今天,虚拟基础设施几乎可以承担任何工作负载,据VMware公司2007年6月进行了一项调查显示,大部分接受调查的用户都在他们的虚拟化引擎中运行了高级工作负载,如图1所示。
图1 VMware用户常见的虚拟工作负载
更多的组织在虚拟机中运行SQL Server,Exchange Server和其它复杂的工作负载,与物理服务器相比,其性能远远超出了预期。因此,如果你说你不能虚拟化某个应用,那么你可能不好找理由,例如,你决定继续在老的32位系统上运行一些应用,因为你还没有准备好,这可能是唯一的借口。我们应该认真思考虚拟化的好处,比如可以在任何硬件系统上载入工作负载,此外,非常易于部署和保护,只需要将磁盘文件拷贝到另一个位置即可。
如果你仍然决定在数据中心保留32位服务器,那为什么不将它们也作为宿主系统呢?虽然微软的Hyper-V和思杰的XenServer的确只能运行在64位系统上,但还有微软的Virtual Server,Sun的xVM VirtualBox或VMware Server可用,这些产品都能运行在32位系统上,可以让旧服务器成为宿主主机,发挥其最大作用。
这样你所有的服务器,不管是32位还是64位,全部都是宿主主机了,你的所有服务都虚拟化了,但有一点务必记住,运行在32位硬件上的系统管理程序是不支持64位硬件的。同时也请记住,所有现代操作系统和应用程序厂商都在转向64位平台,意味着32位硬件的存在时间即将结束。将时间和精力花在这些老旧资源的配置上,与最后得到的结果相比,只不过是在浪费时间。
开发虚拟资源分配规则
当你把数据中心各种服务器工作负载分好类后,接下来就应该思考如何将它们分配给宿主主机,如果准备将20个虚拟机分配一台宿主服务器,那么这20个虚拟机之间不应该存在频繁的资源竞争。
为了优化虚拟机布局,你必须研究工作负载,确定它们需要的过程和资源,以及何时需要它们。例如,如果你的网络中运行了Windows服务,你可以预计它们的运转情况,如图2所示。
图2 比较不同工作负载时段的服务器资源需求
从上图我们可以看出:
- 域控制器在峰值时需要网络和处理器资源,如清晨或午饭后;
- 文件和打印服务器在非峰值期间需要处理器和网络资源,如上午11点左右或中午;
- Web服务器主要集中在网络资源,并需要一个稳定的资源流;
- SQL Server和Exchange Server全天需要稳定的资源,主要集中在磁盘和处理器资源;
- 企业应用程序通常有调度资源的需求,例如,工资单应用程序通常是两个月或两周运行一次。
因为服务器工作负载在不同时间需要不同的资源,因此应该仔细配置工作负载,让它们不要同时争用相同的物理资源 - CPU、内存、网络或存储。你应该在同一宿主服务器上配置不同的虚拟工作负载,应尽量避免配置相同的工作负载。这意味着可以在同一台宿主服务器上运行一个域控制器,一个网络基础设施服务器,一个文件服务器,一或多个Web服务器,甚至加上一个企业应用程序,关键是要保证在不同的时间工作负载需要不同的资源。
图3 给宿主主机分配不同的工作负载
与系统管理程序网络层一起工作
系统管理程序让你在每个宿主服务器上可以提供多个虚拟网络,实际上可以提供的网络类型有三种:公共,私有和仅主机。虚拟机可以以各种方式使用这些不同的网络。
每个为最终用户提供服务的虚拟机必须使用一个公共网络接口,因此这些虚拟机必须至少有一个连接,连接到你在宿主服务器上创建的公共虚拟网络接口。
公共网络也允许驻留在不同宿主服务器上的虚拟机相互通信,在每个宿主服务器上创建大量的公共网络为服务提供冗余是个不错的主意。
仅主机虚拟网络适配器用于支持虚拟机内部和虚拟机到主机的通信,如果你需要更新一个虚拟机,你可以通过仅主机通信通道来更新,避免给公共网络接口带来额外的流量,仅主机通信直接在宿主主机和虚拟机间完成,使用的是宿主主机的内部通信通道。
虚拟私有网络适配器也可以用于减少公共网络接口上的流量,当你需要完全隔离虚拟机之间的通信时,将虚拟机连上虚拟私有网络适配器即可。它允许虚拟机内部通信,但不支持和其它设备间的通信,包括和宿主服务器的通信,你可能想使用私有网络支持外围网络系统上的管理通信,以保护它们不受其它类型的通信影响。
作为一种最佳做法,你应该为每种网络类型准备每个宿主主机,然后将各种不同的虚拟机组件连接到适当的虚拟网络接口卡上。此外,你可以使用这些网络来实现同一宿主主机上虚拟机之间的相互隔离。
转载于:https://blog.51cto.com/puhua/573307
相关文章:

回归——同步更新github.io
回归 已经有好长时间没写博客了,可能我比较懒,不太乐于分享,我觉得这个是一个很不好的习惯。但我坚信:Sharing changes the world! 最近搭建了自己的个人独立博客,基于Github Pages的,所以打算以后同步更…
支持量子机器学习,王海峰发布最新百度飞桨全景图
出品 | AI科技大本营(ID:rgznai100)刚刚,WAVE SUMMIT 2020深度学习开发者峰会上,百度CTO王海峰开场即披露了一组飞桨数据:飞桨累计开发者数量已超过190万,服务企业数量达8.4万家,发布模型数量已…

NPOI读写Excel
1、整个Excel表格叫做工作表:WorkBook(工作薄),包含的叫页(工作表):Sheet;行:Row;单元格Cell。 2、NPOI是POI的C#版本,NPOI的行和列的index都是从…

我的vim捣鼓之路
2016-06-13 更新 绑定独立博客到域名rebootcat.com 2016-06-12 更新文中的几个链接错误,google search报错 前言 从大二的时候就开始接触Linux了,从而也接触了vi,对的,当时对这些还不太了解,不知道还有个vim,真的觉得…
代码写对了还挂了?程序媛小姐姐从 LRU Cache 带你看面试的本质
来源 | 码农田小齐责编 | Carol 前言在讲这道题之前,我想先聊聊「技术面试究竟是在考什么」这个问题。技术面试究竟在考什么在人人都知道刷题的今天,面试官也都知道大家会刷题准备面试,代码大家都会写,那面试为什么还在考这些题&…

广船国际股份有限公司OA项目
2003年的老案例: 背景 广船国际股份有限公司是由原中国船舶工业总公司属下国有企业广州造船厂在1993年改组、在上海和香港同期上市的股份有限公司,公司享有自营进出口权。 广船国际于2002年3月通过评标后选定采用iOffice.net信息管理平台作为信息化建设…

注册表----修改Win7登录界面
在进行操作前,需要准备好背景图片。对背景图片的要求有三点: (1)图片必须是JPG格式; (2)必须将图片命名为backgroundDefault; (3)图片的体积必须小于256KB。 按下【WinR】…

定义自己的rm command
rm 是一个很危险的命令,别人一直说,我并没有在意,直到有一天一个不小心,忘记当前目录的位置,手贱的使用了rm命令,结果花了半天也没有把那些重要资料给恢复过来。所以还是有必要给自己定义一个不那么危险的r…
出任 Twitter 独立董事,AI 女神李飞飞的传奇人生
作者 | 年素清责编 | 伍杏玲出品 | 程序人生(ID:coder_life) 近日,Twitter宣布任命斯坦福大学计算机科学教授、前谷歌副总裁李飞飞为董事会独立董事。李飞飞本人表示:“推特是科技连接世界的一个重要平台,…

apache ab压力测试
2019独角兽企业重金招聘Python工程师标准>>> ab的原理:ab命令会创建多个并发访问线程,模拟多个访问者同时对摸一个URL地址进行访问。它的测试目标是基于URL的,因此它既可以用来测试apache的负载压力,也可以测试nginx、…

我的个人博客搭建记录
6/13更新 绑定个人博客到域名 rebootcat.com 前言 本篇博客旨在备忘,并记录了自己折腾了3,4天后顺利搭建自己的个人博客过程中碰到的一部分问题。 搭建个人独立博客有很多种方法,我暂时采用的是基于github Pages的免费博客,博客框架采用he…

oracle中创建触发器
从csdn上面看到一个如何创建触发器的问题,感觉自己很有必要保存学习,特写下来:条件:现有A、B两张表A: 工号 姓名 密码 性别 年龄 。。。B: 工号 姓名 密码当对A表中的“密码”字段进行修改时,B表中的“密码…
量子计算与AI“双拳”出击,他们锁定38种潜在抗疫药物
作者 | Just出品 | AI科技大本营(ID:rgznai100)医药研发行业有一个“三个十”的说法,即一种药物的发现需要投入十年以上的时间,花费十多亿美元,最后获得10%的成功率。也就是说,医药研发需要花费很长时间&am…

Android官方开发文档Training系列课程中文版:OpenGL绘图之应用投影与相机视图
原文地址:http://android.xsoftlab.net/training/graphics/opengl/projection.html##transform 在OpenGL ES环境中,投影相机View可以将所绘制的图形模拟成现实中所看到的物理性状。这种物理模拟是通过改变对象的数字坐标实现的: 投影 - 这基于…
Python分析101位《创造营2020》小姐姐,谁才是你心中的颜值担当?
来源 | CDA 数据分析师责编 | Carol Show me data,用数据说话。今天我们聊一聊《创造营2020》各个小姐姐,点击下方视频,先睹为快: 最近可以追的综艺真是太多了,特别是女团选秀节目。之前我们刚聊过《青春有你2》&…

体验Remix——安卓电脑
第一次听说Android-X86 以前玩唱吧的时候接触过PC上的安卓模拟器,不过这个只是一个软件,效果毕竟不好,想要把电脑变成安卓手机,还差远了。 然后,前段时间一直纠结要不要换个手机,我现在的华为小6已经跟我…

重置 microsoft visual studio窗口
“工具”->“导入导出设置”—>“重置所有设置”,在这个向导中可以重置编译环境的!转载于:https://www.cnblogs.com/qiantuwuliang/archive/2011/05/31/2064825.html

排序算法总结之堆排序
一,堆排序介绍 堆是一个优先级队列,对于大顶堆而言,堆顶元素的权值最大。将 待排序的数组 建堆,然后不断地删除堆顶元素,就实现了排序。关于堆,参考:数据结构--堆的实现之深入分析 下面的堆排序…

Hessian通信案例(java)
个人博客: 戳我,戳我 前言 由于工作的原因,接触到了hessain,项目需要做hessain和xml之间的报文转换。但是对于hessian是个什么东西一头雾水。于是接下来的时间了解了hessain协议的序列化规则以及hessian协议进行通信的方式。这篇文章是在完成了这个模块…

VDI序曲二十一 APP-V 4.6 SP1服务器端部署
APP-V是微软应用程序虚拟化除RemoteApp以外非常棒的另一种应用程序虚拟化,此应用程序虚拟化是把搭开应用程序消耗的资源放在前端,应用程序虚拟化主要解决的还是软件兼容性问题和保护软件资产问题,同时让用户无需安装就可以绿色使用的手段&…
绝悟之后再超神,腾讯30篇论文入选AI顶会ACL
作者 | 马超责编 | Carol出品| AI科技大本营(ID:rgznai100)封图 | CSDN 付费下载于东方 IC近日,国际计算语言学协会年会ACL在官网(https://www.aclweb.org)公布了2020年度的论文收录名单,其中腾讯共有30篇论文入选&…

mac中用命令行运行mysql
1,安装mysql 在mysql的官方网站下载 mysql 5.5.23 http://www.mysql.com/downloads/mysql/,根据我的机器的配置情况选择了64bit版本。 2,命令行中启动mysql 安装的位置在/usr/local/mysql 于是做了一个别名: $alias mysql/usr/loc…

Hessian源码分析(java)
个人博客: 戳我,戳我 先扯一扯 前一篇博文Hessian通信案例(java)简单实现了Java版的Hessian客户端和服务端的通信,总体看来,实现起来比较简单,整个基于Hessian的远程调用过程也显得很方便。但是知其然还要知其所以然&…
必读!53个Python经典面试题详解
作者 | Chris翻译 | 苏本如,编辑 | 夕颜题图 | 视觉中国出品 | AI科技大本营(ID:rgznai100)本文列出53个Python面试问题,并且提供了答案,供数科学家和软件工程师们参考。不久前,我作为“数据科学家”开始担…

Microsoft Web 平台安装程序 (Web PI) Microsoft Web Platform Installer
Microsoft Web 平台安装程序 3.0 (Web PI) 是一款免费的工具,使用它可以获得 Microsoft Web 平台的最新组件(包括 Internet Information Services (IIS)、SQL Server Express、.NET Framework 和 Visual Web Developer)。Web PI 的内置Window…

Linux Shell 脚本限制ssh最大用户登录数
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://dgd2010.blog.51cto.com/1539422/1670233 我撰写本文原来的意图是想把“复制SSH渠道”和"copy SSH Session"这样的功能从远程s…

hessiancpp编译和使用(C++版)
个人博客:戳我,戳我 许下的承诺 前两篇博客Hessian通信案例(java)和Hessian源码分析(java)介绍了Java版的hessian的使用以及源码分析。当时也说过打算写一下C版的hessian的使用和源码分析,现在就是兑现承诺的时候了。其实我项目中实际用到的…
美国AI博士一针见血:Python这样学最容易成为高手!
我见过市面上很多的 Python 讲解教程和书籍,他们大都这样讲 Python 的:先从 Python 的发展历史开始,介绍 Python 的基本语法规则,Python 的 list, dict, tuple 等数据结构,然后再介绍字符串处理和正则表达式࿰…

win7操作系统在哪显示隐藏文件夹
win7操作系统在哪显示隐藏文件夹 打开计算机--组织--文件夹和搜索选项--查看--把 “隐藏受保护的操作系统文件”前面的钩去掉,选中“显示隐藏的文件、文件夹和驱动器”--确定

ASP.NET MVC4中调用WEB API的四个方法
当今的软件开发中,设计软件的服务并将其通过网络对外发布,让各种客户端去使用服务已经是十分普遍的做法。就.NET而言,目前提供了Remoting,WebService和WCF服务,这都能开发出功能十分强大的服务。然而,越来越多的互联网…