说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

基于OpenStack的私有云开发部署实践

HTML文档下载 WORD文档下载 PDF文档下载
OpenStack作为目前十分主流的私有云平台,已经被很多组织应用于其内部。本文邀请了来自五八同城公司的高级云计算工程师赵龙,分享了他在企业内部设计、构建以及运维整个OpenStack系统的经验。

【编者按】OpenStack作为目前十分主流的私有云平台,已经被很多组织应用于其内部,提升其内部 IT 基础架构运行和管理的效率。对于很多入门的OpenStack 初学者来说,官方的标准文档已经很难满足他们在学习和实验过程中遇到的问题。本文是来自五八同城公司的高级云计算工程师赵龙,分享了他在企业内部设计、构建以及运维整个OpenStack 系统的经验,让更多希望能够了解和使用这个优秀的云计算平台的技术人员可以更有效地获得最有实用价值的信息。

文中简要介绍了OpenStack 在私有云平台中的一个应用,基于OpenStack 实现了企业内部的虚拟机资源分配管理平台。同时给出了一个OpenStack 企业级的云平台部署方案,在存储和网络上的探索和性能优化使得OpenStack 较好地满足了企业对外提供Web服务的需要。(阅读原文)


随着互联网技术的飞速发展和广泛应用,互联网公司对于产品迭代和技术升级的要求都更为迫切。相应地,研发测试人员对于机器的使用需求量也上了一个台阶。传统的虚拟化解决方案存在大量的问题和弊端,已经无法满足企业内部用户按需取用虚拟机资源的需求,运维人员和开发测试人员在虚拟机的使用管理上存在着很大的耦合性和关联性。探索更为自动化、快捷的虚拟资源使用分配方式已经成为无法回避的问题。

经过充分调研需求,我们在企业内部实现了一套基于 OpenStack 的虚拟机资源管理平台(VMMS),能够动态、实时地响应全公司开发测试人员申请、续借和其他日常使用虚拟机的请求。系统的架构设计如下所示:

图 1.系统架构图

用户通过客户端请求虚拟机时,VMMS 虚拟机资源管理系统会立即响应用户的请求,按照用户的具体需求分配一台配置合理的虚拟机。通过维护一个动态变化的虚拟机资源池空间,对于虚拟机资源的各种请求做到了秒级响应。而且,为了保证虚拟机资源的动态伸缩,系统中还加入了时间管理模块;另外,虚拟机的正常运行工作通过状态管理模块来负责。全部的虚拟机资源都是通过底层的 OpenStack 云平台提供,VMMS Server 以一定频率和 OpenStack 云平台进行通信,保证资源的可用性和请求的及时响应。

VMMS的设计哲学是在平台硬件资源有限的前提下,优先满足用户对虚拟机的各种操作需求,保证虚拟机资源平台的可用性和稳定性,对用户的申请操作和虚拟机资源配额、资源池大小都做了强限制。具体来说,VMMS 的开发管理策略主要体现在以下几方面:

虚拟机配置策略

58 同城是为用户提供本地生活信息的平台,主要提供覆盖广泛、定位精准的各类 Web 服务。使用虚拟资源的用户因为业务和具体场景的不同,对虚拟机的需求也不尽相同。应对普通的 Web 服务开发测试,例如快速接口调整、嵌入新的管理推广模块、页面样式变更等灵动项目的调整与测试,使用接近 PC 机配置的虚拟机就可以达到较好的响应效果,必要时可以通过横向增加机器数量的方法应对业务大规模推广测试和版本迭代;应对核心业务线的优化和部分基础服务就需要使用高配置的机器,这类业务大都具有 CPU 密集型和内存密集型的特点。典型的场景有信息管理中心索引重建、Redis 集群测试等,都需要分配多核 CPU 高内存配置的虚拟机。我们将虚拟机用户的潜在需求大致分为几类,并为之相应准备了配置适宜的虚拟机镜像和云主机类型。用户在申请时,只需要在用途和欲申请虚拟机配置标注,提单后系统就会匹配相应的虚拟机给用户使用。另外,还在部分镜像加入了集中配置和测试部署环境打通的相关配置,有利于减少用户重复配置安装的工作量。

请求响应策略

为了从根本上改善过去虚拟化服务资源分配效率低下的问题,VMMS 系统会在用户操作请求提交后瞬间响应用户的申请。这是基于一个自适应变化的虚拟机资源池实现的。系统初始化时会创建 n 台虚拟机作为原始虚拟机资源池,用户申请后资源分配模块会从已有资源中匹配然后响应用户,系统在后台会根据虚拟机申请周期和频率从全局上调整补全虚拟机资源的速度。VMMS 系统在平台总虚拟机数量 m 和当前维持可用的虚拟机数量 n 都做了一定的限制,为的是保证对虚拟机资源分配平台负载的有效控制。在局部时间内如果用户申请虚拟机操作的并发量超过了设定的阈值,系统会根据并发量调整 m 至 1.5 倍或 2 倍不等。相应地,资源池虚拟机数量 n 也得到了提升,优先保证用户正常进行各种虚拟机请求操作。在用户申请虚拟机操作请求频率回落后,VMMS 会再次将 m 和 n 的值收敛到正常范围。

资源控制策略

私有云平台受限于规模,所能够使用的硬件资源比较有限。为了及时有效地回收不在使用状态的虚拟机,VMMS 系统的时间管理模块会根据每台虚拟机的初始申请周期对在用虚拟机列表中机器进行定时扫描。查找到虚拟机使用周期已到而用户并没有后续的续借行为,系统会自动回收该虚拟机,释放物理资源。用户在申请虚拟机时有虚拟机重要性的可选字段,可根据业务和场景的具体情况给出重要性数值。针对工作数据和日志信息比较关键的虚拟机实例,如果到达指定时间还未收到续借请求,VMMS 会首先对虚拟机做停机处理,告知用户需要续借,没有后续操作的话虚拟机会在三天内回收。

虚拟机稳定性策略

状态管理模块会定时扫描每台在用虚拟机的状态,对不处于可工作状态的虚拟机首先尝试恢复,不成功则启用虚拟机重建和迁移策略来保证虚拟机的可用性。

虚拟机生成策略

为了减少人为干预,虚拟机的生成采用了完全自动化的策略。虚拟机从启动到划分所属网络、绑定浮动 IP、修改初始密码到进行业务上的初始化部署做到了完全借助系统本身流程进行。

借助 VMMS 虚拟机资源管理平台,开发测试人员能够自由便捷地按需取用虚拟机,在业务开发与测试环境的准备工作上提高了效率。VMMS 响应用户的各类虚拟机请求操作达到了每天上百次,简化了传统虚拟化解决方案下用户提单、运维审批,创建虚拟机再交付用户使用的流程,在无需人干预的情况下取得了较过去投入大量运维人力更好的体验;虚拟机的使用迭代周期相比过去大大缩短,每隔 10-15 天虚拟机资源池中的机器就会完整更新一遍,用户随用随取、不用归还,避免了资源的长期占有和浪费;在相同的硬件资源条件下能够管理和提供的虚拟机数量也较过去有了大幅提升。

OpenStack 云平台部署方案介绍

在实现了公司内部供开发测试人员使用的私有云平台后,需要将目光转向公司 Web 服务的虚拟化实现上来。与之对应,就需要部署一套企业级的 OpenStack 云平台环境。

网络方面根据平台需要,分别采用了 vlan 和 flatDHCP 模式,以项目为单位作为租户,进行网络的规划和设计;实现了多网络节点的 OpenStack 环境,保证了网络服务的高可用性。

存储上针对业务的访问特点,实现了基于本地存储、NFS 共享存储和 glusterfs 分布式文件系统共享存储的混合存储方案。将虚拟机的 disk 文件存储在宿主机本地硬盘上,数据盘即工作区间挂载分布式共享存储的卷。

方案上针对企业级生产环境可能遇到的问题实现了虚拟机在线迁移和物理机宕机迁移等功能。虚拟机在线迁移做到对用户基本透明,迁移过程不影响业务运行;物理机宕机迁移做到了虚拟机所在宿主机宕机后(硬盘损毁,网络不通,电源中断)能够在分钟级内迅速恢复虚拟机的正常使用,将由环境问题导致的事故风险降到最低。

经过实践和线上环境的使用统计,基于 OpenStack 的虚拟化解决方案相对于传统的虚拟化解决方案在主要性能上有了明显提升,下图是性能对比:


图 2.性能对比

高可用配置与平台性能优化

OpenStack 云管理平台部署后,在存储和扩展性上还存在诸多问题。例如,虚拟机的操作系统永久损毁或者宕机后,如何快速恢复虚拟机运行对外提供服务,业务负载高了以后如何在很短的时间内添加物理节点均衡线上压力,如何保证存储的 I/O 性能,避免操作系统 I/O 和数据业务 I/O 争夺资源。针对以上问题,做了以下几方面的高可用配置和优化工作:

  • 虚拟机在线迁移和物理机宕机迁移实现;
  • glusterfs 支持的分布式块存储功能实现;
  • OpenStack 本地仓库的搭建。

虚拟机在线迁移和物理机宕机迁移

基于NFS 共享存储的配置部署

  • 在存储集群上安装 NFS 服务;
  • 计算节点挂载 NFS 服务器的目录;
  • 配置计算节点使其能够免密码 ssh 登录;
  • 修改 nova.conf 文件;
  • 配置 libvirt 的相关文件;
  • 添加 iptables 的相关规则。

部署过程中需要注意一些细节:

1. 挂载点是有要求的,一定要挂载在 nova.conf 配置文件中指向的 instances 创建目录下。各计算节点上,这个路径要完全一样,通常情况下可以使用默认路径/var/lib/nova/instances。如果 NFS 的客户端即计算节点没有选择这个挂载点,也可以顺利创建虚拟机,但是迁移时会发生错误。

2. 确保计算节点有挂载目录的执行和查找权限。

chmod o+x /var/lib/nova/instances

3. 修改 nova 和 libvirt 的配置,使 vncserver 监听 0.0.0.0 而不是计算节点的 IP;同时设置 libvirt 监听 tcp。

更改以下配置项的值:

listen_tls=0listen_tcp=1auth_tcp="none"

4. 在计算节点添加 iptables 规则,确保试图途径 16509 端口的 TCP 连接可以顺利通过。16509 端口是 libvirt 专门用于虚拟机迁移的端口,在线迁移依赖于共享存储和 libvirt 工具在线迁移的配置。在各宿主机上添加如下的 iptables 规则:

iptables -I INPUT 3 -p tcp --dport 16509 -j ACCEPTiptables -I OUTPUT 3 -p tcp --dport 16509 -j ACCEPT

未完>>>关于OpenStack本地仓库搭建方法的更多精彩内容,请移步 IBM developerworks 查看

(责编/夏梦竹)

Facebook在移动路上走过的那些弯路 曙光聂华:推动数据融合 CloudStack Committer李学辉:2013年社区将爆发 继续霸权:美众院否决联合国掌控互联网 墨迹天气创始人金犁:巧用细分市场的力量 Windows 8的IE10在浏览器安全测试中独占鳌头 程序员如何做出“不难看”的设计 JDK6明年2月停止更新,甲骨文呼吁尽快升级至7 《时代》评选年度十大视频游戏,激战2居首 《时代》评选年度十大科技产品,iPhone 5居首 Loopjoy:让开发者在移动游戏里贩售真货 iPhone 5S真机照片泄露 明年初上市 Beeline:从“蓝精灵村庄”到“捉鬼敢死队” Windows Server 2012域服务的六大改进 如何编写出优美的JavaScript代码? Unity CEO:不会因赌博游戏谋取金钱利益 云领域:且看亚马逊、Rackspace、微软及谷歌四国争霸 十一位EMC高管读2013技术趋势 你准备好了吗? Yahoo:拥抱Hadoop和HTML5 苹果聘女黑客为系统安全员 曾让Vista推迟发布 移动游戏定价之谜:0.99美金行不通 9.99美金和19.99美金才是王道 2012末日年:《时代》评选年度十大App 使用HTML5 Web存储实现离线工作 紧跟亚马逊、谷歌步伐 微软下调Azure云服务价格 云计算一周热点回顾:Hadoop专家分享大数据技术工具与最佳实践 Python之父Guido Van Rossum离开谷歌 一月加盟Dropbox 图灵奖获得者Butler Lanpson:计算机在做些什么 华为高级技术经理Anoop Sam John:HBase的二级索引 秦令今:技术是竞争的核心,形成自己的特色! 兰旭:拒绝同质化,做自己的真材实料! Cloud Foundry直面PaaS对手 初具商用能力 如何得到以前安装 SQL SERVER 的密码 如何把一个字符串中所有指定的字符删除? 那里有delphi深度历险下载,我怎么也搜不到 各位大虾帮帮忙 如何在LINUX下如何安装配置JSDK? 如何挂载usb硬盘?? 使用TrackBar控件的问题 挑战高手, 巨难问题. 有关不同系统(ACCESS, MSSQLSERVER) 的SQL语句兼容问题 奇怪问题:我的光驱,有的光盘能读,有的不能读(比如自己刻录的) SQL Server 安装时的密码,忘了,如何取得,在线等待 挑战高手, 巨难问题. 有关不同系统(ACCESS, MSSQLSERVER) 的SQL语句兼容问题 谁能告诉我,汇编论坛在哪?谢谢 调色板问题 挑战高手, 巨难问题. 有关不同系统(ACCESS, MSSQLSERVER) 的SQL语句兼容问题 如何在WLS7中部署一个Servlet和一个JSP? 挑战高手, 巨难问题. 有关不同系统(ACCESS, MSSQLSERVER) 的SQL语句兼容问题 新手问题: 一个简单的js效果实现问题 吐血送分!关于datagrid的数据更新问题! 为什么不能进大富翁论坛 谁有KV3000啊,传个给我行吗,我下载了好几个都不行, 我有原版盘坏了,谢 VB 怎么调入并执行写好的SQL文件. 今天我生日,郁闷散分 吐血送分!关于datagrid的数据更新问题! 请问powerdesigner生成.sql时,如何在.sql中包含Comment信息 DBGrid改变行的颜色 下载英文Windows的地址 我要在一個按鈕點擊后,開啟另外一個頁面,並且這個頁面自動處於打印預覽狀態,怎麼寫? 正在上升中,公司给自己加薪了,自己却突然心灰意冷. 我想问什么是temporary object?请高手指教 那位大哥在HP-UX下配置过PHP和ORACLE? 宝丽金120首金曲 Dialogs(wdDialogFileOpen)提示ActiveX不能创建对象? 那位朋友知道如何在网络上截取一个信息(数据包) 大家看过dvdrip的片子吗?有一个问题请问 (winform)我想编写一个简单的浏览器,问题1 在LINUX下如何安装软件啊? 苏州的朋友可以进来看看吗? 关于游标类型的问题 如何比较两幅近似图像并得出偏移的距离? 怎样处理鼠标拖动事件。 绘制图形时的自动滚屏问题 请教怎么去掉字符串后面带的空格? 请教关于双机通讯的问题,谢谢 播放问题 如何使用jsp显示数据库中的数据? 请问什么叫模态窗口啊? Win32标准dll,VB下调用问题 挑战:对手机短信文字自动解析? 推荐一个linux下的杀毒软件. 关于oicq? 二手笔记本多小钱? 看到你写的关于介词的用法.我想问,介词可以直接用在句尾吗?比如she never use ashe never use a preposition to end a sentence with.可以这样用吗?还有一句是,tell my son what field he will be a big success in.这个最 Is that a backpack in English?Yes,it is .___ __. 背诵英语句子有用吗?//还有怎么提高英语的阅读和完型分数?我要升高二了 我想在这两年内多背诵些英语句子 是比较简单的那种 就是新概念的一些句子 这样有用吗?我英语最差的是阅读和完 she has gone to live abroad.中to是介词还是动词标志? 谁知道( 尛 )这个字怎么拼啊?有的人说这是繁体 知道的请用拼音说一下 还有一个字两个大在一起的知道的请说一下 怎样在短时间内记忆英语句子早读时间很短 但是要背的东西好多 特别是句子 我语法神马的都不懂 上了高中之后被老师打击的没有信心了 一看到句子就不太敢背 怕背错 怎么才能准又快的记 我所支付的钱包括这项吗 英语怎么说 -______?-yes,it is. a.what isthis in english. b.is it a comuter How did the Silk Road influence the development of Ancient China? it's raining h____ outside首字母填空 “尛”这个字繁体是怎么拼的 How do you think of the current development of China?关于一个方面就行 12题的过程给全喔〜 Yes,it is.的意思 英语翻译Sports have developed fast in our country these years.In 1974,our country first came to the Asian Games.In 1978,in the 8th Asian Games,our country won the second place.Our country has won the largest number of gold medals in the past six 12〜13题, "尛"这个字怎么读的?RT The number of Chinese speakers in the world ______ with the development of China is much larger than ever before.A.grows B.grown C.growing D.grow 原因? These policemen are famous for 'always getting their man'.怎么翻译?Get their man 貌似不是抓住人的意思 句型转换 The coat is expensive.(变为同义句) The coat ( ) ( ) . No problem,Do you think it is necessary? There are always incompetent people who are willing to give advice.Their advice,if acted upon,frequently leads to disaster.If a person is to give good advice,he must know all the aspects of the problem.When you seek advice ,be sure that your adviser my favorite coat in the shop is too expensive.转换为同义句the____of my favorite coat in the shop is too _____. 1-the development of modern cities,both in population size and in functionality,necessitates the r1-the development of modern cities,both in population size and in functionality,necessitates the removal of certain existing structures whose history ca there are always lots of people buying things therethings不是事情的意思吗?为什么buying things there可以解释成在哪里买东西? Do you know what he is _________ over there? It plays an important part__the development of the modern world.A.at B.on C.of D.in原因? 好词好句有哪些? Toomy's math book is on the floor(对划线部分提问)on the floor是划线部分 英语翻译着急中ing——, 向夏宝贝的英语怎么说? “Do you want to sell sugar water for the rest of your life,or do you want to change the world?” 现有0.270kg质量分数为10%的氯化铜溶液.计算:(1)溶液中的氯化铜的 物质的量是多少?(2)溶液中的铜离子和氯离子的物质的量是多少? 中间一个子字外面一个框框,这个字念什么,拼音拼出来WiL 请问Your life can be what you want it to be... 氯化铜溶液中c(Cu2+)与c(Cl-)的关系? 有什么好的古诗词吧 is this your eraser? ( ).it's my sharpenis this your eraser? ( ).it's my sharpener.a.no,it isn't.b.yes,it is. 英语翻译甲方违约责任补充约定:甲方连续3期或累计6期未按约定的金额偿还贷款本息,甲方被视为违反本借款合同,本贷款合同项下全部借款立即到期,如甲方以定期存单出质,该质押的定期存 请问大家一下英语书写体怎么练?有人了解的告诉下哟,好在线等了, Come to the Hilltop Language School and change your life.全篇课文翻译, 英语翻译10.This Contract as written in English shall be interpreted and the rights of the parties thereunder shall be determined by the English text only the effect of which shall not be varied or affected in any way by any other characters writt 怎么写,写对的人一定好评 英语翻译.我感激不尽啊...我有急用的这是一篇文章的题目来的.硪想要整篇文章的翻译.而卟是单单一句话 小学生作文关于我最熟悉的一个人急400~500字 怎么写一定好评 Come to the hilltop language School and change your life的丛句和动词不定式 作文我熟悉的一个人,要500字以上的,我要开头和结尾, 怎么写一定给好评 要理由---May I speak to Lucy?---This is ___________ speaking.A.her B.she C.she’s D.hers the man sitting in the car is my uncle.为什么用sitting. What is the p___________of the coat?20yuan. 土屋安娜 Change your life 怎么翻译?Change your life Did I say that I want you? Did I say I need you? Did I kiss you that night? I don't remember who was next to me Boy you'd better watch your mouth You always lied to me I'm not gonna tr 赞美路灯的词和句子有哪些? 尛 这个字怎么拼? Is this----------eraser A、he is B、he C、her D、she THE ORIGINS OF TOTALITARIANISM怎么样 尛这个字怎么拼? 这两题要怎么做 连词成句:uncle motorbike man on my the the is
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘