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

基于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 查看

(责编/夏梦竹)

利 用Delphi 开 发 响 应 用 户 输 入 的 数 据 库 查 询Web Server 程 利用Delphi开发响应用户输入的数据库查询Web Server程序 利用Tbatch组件完成数据批处理-Delphi资料 如 何 恢 复Sybase SQL Anywhere 的 数 据 库-Delphi资料 如何捕捉KEY VIOLATION等错误-Delphi资料 如何得到SQL返回的计算结果-Delphi资料 如何动态的读取Delphi中的PopupMenu的Caption ? 如何动态设置DBGRID。比如,动态设置DBGRID的COLUMNS。及如何在数值数据格式成千分位 如何返回BDE的状态信息?-Delphi资料 如何控制关键字段的重复输入及报错-Delphi资料 如何设置Microsoft SQL Server 全文索引服务 ?-Delphi资料 如何设置多用户环境的PARADOX数据库-Delphi资料 如何实现在一个Dbgrid中显示多数据库-Delphi资料 如何用SQL查询日期型字段?-Delphi资料 如何在数据库中存放avi文件-Delphi资料 如何在注册表中注册BDE-Delphi资料 筛选数据-Delphi资料 实现不同数据库系统之间的数据转移-Delphi资料 使 用WISQL32 同 时 访 问SQL SERVER 和SYBASE 数 据 库Delphi资 使用Session构件可以在打开有密码的库时不用输入密码-Delphi资料 使用SQL实现字段数据的模糊查询-Delphi资料 数据表的索引被损坏了怎么办-Delphi资料 数据库的密码、日期显示-Delphi资料 数据库应用程序开发中图像数据的存取技术-Delphi资料 数据库中图像数据的存取技术-Delphi资料 数据库转换-Delphi资料 数据浏览部件的应用及编程-Delphi资料 数据文件路径的管理-Delphi资料 随意控制DBGrid每一行的颜色-Delphi资料 通过DELPHI实现JAVA调用ORACLE数据库数据 通过编写代码来设置数据库的别名-Delphi资料 我为什么要做个刁民? 屏幕上显示绘多条曲线,要对每条曲线单独进行操作如何实现? 怎样避开程序对softice和trw的检查 想学ACCP不知道社会的认可度? 怎样使用windowsxp/2000的修复程序? C:\winnt\下有一个hh.exe文件,有什么作用? 这首诗我觉得用在程序员身上也很合适 在WebSnap中如何实现gride的隔行显示不同颜色,就象我们现在看到的一样?? 关于《C++ Primer plus(中文版)第四版〉》,大家发表一下看法好吗。 中文文件 颜色代码转换的问题大家帮忙呀.. 程序编译问题 问一个可笑的问题。希望能得到回复 那位用过TfcShapeBtn控件? 急!从NT4到W2000后,为何ASP出错? combustion? 100分有人答了吧 WHERE TO DOWNLOAD??? c#/web,有个约一万行的参数表需用于校验页面录入的数据 帮帮忙啊,急啊 谁有dhtml的中文帮助? 如何使窗口全屏化,即不覆盖Toplevel窗口(winamp),又能覆盖任务栏? 请教各位高手,怎样将网卡的MAC地址与IP地址绑定起来,让用户不能改变? 我自己构造了一个HTTP请求头想要下载swf,但是服务器不接受请求。各位大哥帮忙看一下 简单问题 关于dll的基本问题 求求各位了,急啊(原程序问题) 这段程序问题出在哪儿? 关于防火墙编码的问题500? 明天签约,来问问工资开多少 整一年了 发个帖子吧 win98关机死机具体问题怎样既决????? 既然有了jbuilder,怎么还有人在弄什么jdk 关于正则表达式的问题("(\{)(\r\n)*(.*)(\})"),精通者请进 CreateProcess函数的应用示例 怎样才能克服电脑带来的噪音!!!,困霍很久 散分拉!!! 数据发送的实现,急用,谢谢,一定给分。 写过VB程序的朋友可以进来谈谈。 请问如何在php内刷新页面 在PB如何用setfilter()实现两种条件以上的数据过滤? 请问:.net 7张cd,怎么装?(最优) <<C++ Primer 第三版 中文版>>网友勘误+散分 关于Access主键的问题?请高手帮忙! 我记得有一个查看其他应用程序资源的工具? 有谁知道hookWM_ACTIVATEAPP或WM_ACTIVATE该用什么hook类型.了解消息或hook的进 水晶报表可以分栏吗 我这有250万刚整理好的邮件地址供推广网站! 请问:关于打印完毕停止走纸的问题(我就剩这点分了,谢谢) 请诸位仁兄讲讲C++的体系结构.............谢谢 一个很基础的问题,1!+2!+3!+。。。。+10!,用哪些程序可以实现!!请指教! 绝口不提中的绝是什么意思?①断②一定,哪个是?绝对其中一个 请问为什么两星体可以超光速,怎么就空间膨胀了? 潮湿反义词 绝口不提的绝是什么意思 三月桃花 两人一马 明日天涯 请具体解释清楚, 潮湿的反义词 在我感情的封锁区,有关于你,绝口不提,用英语怎么说? 请问下面这句话翻译成英语有几种译法:“好的!我们可否重来一次?” 七年级下册地理问题.求学霸.读下列气温降水分布图 表述正确的一项是 A、甲乙两地都是全年高温多雨B、 甲是热带雨林气候C、乙是热带季风气候D、乙地可能是位于马来群岛 发错 河马是食肉还是食草 英国人是我们的朋友用英语怎么翻译?有哪几种译法? 湿润的近反义词? 形容两万五千里长征的成语 定价为900元的商品,打九折后再让利40元,仍可获利10%,求进价 噪音及其控制 河马爱吃巧克力吗?电影里这么说.他们被河马袭击,有人丢了几块巧克力到河里,河马就跑开了~~是真的吗? 超光速飞船在宇宙空间中超光速飞行,在飞船里看外界的星空会是怎样?前面的星光会照亮整个视窗还是会被拉成线状?后面的星光会不会完全看不见?1倍光速和100倍光速时看到的星光样子一样 已知正比例函数y=ax的图像与反比例函数y=(6-a)/x的图像有一个交点的横坐标是1,求它们两个交点的坐标 河马怎么吃食物 太阳系还有多久就要灭亡了 这是什么东西?加湿器上的! 怎么用物理解释这个现象呢?芜湖方特乐园里面有个游乐项目叫“印第安部落”,里面的印第安老人会神奇般的消失在我们眼前,这到底为什么呢?最令我困惑的是,节目最后印第安老人消失了,他 太阳消亡,太阳系还存在吗? 加湿器加什么药物 上海轨道交通2号线虹桥火车站到火车站检票处步行大约要多少时间?上海轨道交通2号线虹桥火车站下地铁到火车站检票处步行大约要多少时间? 30万年后 太阳系会和仙女系相撞并且融为一体 人类灭亡还是未知数 但是不是处女座就从这个世界上消失了... 把一条线段分成AB,BC,CD三段,已知E为线段AB的中点,F为线段CD的中点:若AF=20cm,DE=21cm,BC=10cm,求线段AD的长度 爱惜的反义词是什么 为什么在word里打字,英文变不成中文?输入法没有问题啊 为什么控制相对性状的是等位基因? 爱惜的反义词是什么呀 有关诗词的趣事类似 雪里吟诗 秀才.县官.财主在饮酒赏月,诗兴大发,便提出以“瑞雪”为题,吟诗联句.“大雪纷纷落地,”秀才举杯起句.县官应声接着:“此时皇家瑞气!”财主摇头摆脑地吟 宇宙膨胀速度是超光速的吗? 类星体的红移速度超过光速? 急求关于诗的趣闻文章今天之内啊!急的... 是什么力量早期宇宙膨胀的远超光速 英语翻译就是说一本英语的书,全是英文哈,而我又要翻译,但不可能每个单词都查字典吧,况且又如何做笔记啊,那么多不认识的单词~ 将等体积的0.1mol/LCacl2溶液 和0.1mol/LNaoH溶液加入等量氢氧化钙粉末,最有可能溶解不完全的是哪种溶液但题目中OH浓度为0.1 沉淀溶解式中OH的浓度要平方,这样OH对沉淀的影响就小了,那为什么 常喝雪菊茶有什么负作用吗 翻译成英语:获得知识 诗中的趣事 雪菊茶是什么茶?在北京有卖的么? 求以下的反义词:爱好,爱惜,保护,悲痛,本质,成功,惩罚,出色,纯净 为什么用两根吸管喝水,一根在水中,一根在外面,不堵住在外面的那根吸管,喝水要困难些? 说明谐振腔的(倾斜)调整对激光器输出的横向光场分布花样的影响? 反义词:爱好 爱惜 保护 悲痛 本质 惩罚 出色 纯净 赞许···(30分内)爱好 爱惜 保护 悲痛 本质 惩罚 出色 纯净 单调 独特 繁忙 奉献 富强 干燥 高尚 广袤 害羞 浅陋 健壮 结实 微弱 贤惠 我的眼睛湿润了中湿润的反义词 激光器的哪些输出特性对激光加工有影响?并分别举例说明 反义词: 爱好()爱惜()本质()惩罚() 出色()纯净()单调()独特() 繁忙()奉献()干燥()高尚() 广袤() 华丽的近义词和反义词 例外的近义词,顿时的近义词,善良的反义词,朴实的反义词. 填反义词:崇高-----( )反义词;崇高-----( ) 近义词:欢欣一( ) 辛勤一( ) 反义词:华丽一( )近义词:欢欣一( ) 辛勤一( )反义词:华丽一( ) 无私一( ) 凋谢的反义词 爱惜的反义词还有朋友的反义词是啥么 梦随清水逐桃花,萍踪浪迹在天涯什么意思 奢华的近义词和反义词 绝口不提的意思是什么 天体怎样运动 潮湿的反义词是什么但是 湖南3名遇害学童集体下葬 家属呼吁加湖南警方确认杀3儿童案疑犯仅一人 动印度今日发射火星探测器 否认与中国竞克里抵沙特修补关系 大赞沙特重要战略冀中星要求公开殴打致残案复查结论被驳初生男婴医院被盗 湖北通城人民医院承冀鲁浙豫皖等地侦破多起街头“包小姐”印度今日发射火星探测器 否认与中国竞北京整形机构调查 韩国“名医”多为游“公安大V”陈里任职中央政法委 关注转基因食品标识混乱 专家建议修法对管美国白宫与国会拒绝特赦 斯诺登:说出巴基斯坦总理谢里夫呼吁寻求与塔利班对伦敦股市股指4日上涨南京富家子杀妻案被告愿赔57万 死者网传女孩食用虾和维C后猝死 记者调查机构预测四季度经济或下行 全面深化改泰国游船沉没一中国人遇难 船长逃跑打车软件夹缝生存前途未卜 “加价”功德国法兰克福股市DAX指数4日上涨2沙特和美国强调两国关系稳固未见裂痕围堵“包子”70名女粉丝机场打横幅围堵宁泽涛:你张文秀奖牌变色 知足FIFA百年最佳管理者走了尤浩落地直接躺倒 黄玉斌无奈挠头媒体:奥巴马想“学中国”不首先用核武社评:中国发首颗量子卫星为什么轰动金牌?银牌?铜牌?真是傻傻分不清里约奥运乒球女团赛:日本队获铜牌 福玩跳舞机起纠纷 海口一名男子对女生强霸气!傅海峰握拳咆哮剑指冠军 这就叫三峡文物展场活动丰富亮点纷呈重庆崽儿徐晓龙进决赛已是胜利动车最严禁烟令来了梦想课堂第八届高考圆梦行动结营 42网友声音高速路上随手扔垃圾 可罚款200元盗贼7次入室行窃 听到路人经过双腿发市食药监局公布13批次不合格食品万州农家女创业 每次转身都精彩试驾2016款奥迪Q5,平顺加速很带
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘