大咖说回顾 | 开源大牛讲解 OpenStack 部署与应用

【本文系9月27日,海云捷迅首席架构师,OpenStack技术大神 马力 在OSC大咖说视频直播中的主题分享】

OpenStack当今有许多的应用案例,利用它部署的大规模项目逐渐增多,同时,在发展过程中也存在一些问题,今天主要和大家谈谈自己的经历、入门OpenStack,以及解决技术问题的思考和看法。

初识OpenStack,为中国开源繁荣添砖加瓦

我早期参与了深度的虚拟化内核研究,后面开始做更加上层的云编排系统,遇到了OpenStack,在开源社区中,和朋友们的意见不一致就会争论,交流也随之越来越多,一开始是比较难受,后来懂得多了就会越来越顺。

国内的开源化目前还是处于起步阶段,技术共享氛围不够,中国的经济快速发展很快,企业从社会上挣到了钱,但共享的技术少一些,国外则是从社会获取一些,然后回报给社会一些技术,这样大大促进了开源技术的发展。

自从2013年参与OpenStack社区,自己对OpenStack的贡献越来越高,很多企业基于OpenStack快速崛起,开源文化一直在慢慢进化,开源中国顺应这样的环境建立了码云平台。所以说不单是OpenStack,其他比如Docker 、移动技术平台等也大大推进中国的开源化发展。

OpenStack开源云计算已经在全球如火如荼地商业化落地,越来越多的企业选用OpenStack解决方案,也有很多供应商用OpenStack来优化IT基础架构、降低成本。

对于开源技术,个人觉得越早参与对自己价值的提升作用越大,另一方面,OpenStack对于公司会有明显的贡献,OpenStack全球火爆,OpenStack是全球第二大开源社区,最重要的是它的共享氛围,你获取东西,把自己的东西反馈给社区,同时也跟好多国际化开发者讨论,他们的想法和你的想法有什么相同和不同,在交流的过程中同时提高了自己的技术能力。

入门OpenStack,懂得这些,总不会太难

学习OpenStack的要求都有哪些呢?

第一、有一个好的数学理论基础,其实对于编程也是如此;

第二、明晰云计算的基础架构比如IaaS、PaaS、SaaS等;

第三、懂得一些硬件的知识,因为云计算与物理硬件打交道,比如x86、内存、硬盘、网络,服务器,交换机的使用,存储比如SAN、NAS、分布式存储等;

第四、操作系统的使用,开源的Linux,闭源的如Windows,对系统本身有个了解,会基本的使用方法;

第五、虚拟化知识,OpenStack作为基础化的平台,计算资源虚拟化、网络虚拟化技术等相关知识储备必不可少。

渐入OpenStack,从部署环境步步深入

要进行OpenStack开发,首先要进行OpenStack环境的部署。首先要下载OpenStack,启用虚拟机,Ping通设备,刚开始需要不少时间,我开始接触OpenStack花了大概5天时间,OpenStack一共有二十多个组件,配置错一个文件都会出问题,OpenStack社区让你少走很多的弯路。

要不要自动化部署OpenStack这个问题要看对自己的定位,如果只是对OpenStack感兴趣去学习一下,完全可以通过社区的技术工具自动部署。而对于专业开发者,自动化部署对他们的意义不大,自动化部署工具隐藏了99%的设置,只把IP配置等基本的手动配置项显示在外面,手动部署,可以知道OpenStack的架构等一些东西,OpenStack的架构是很优秀的,而自动部署则看不到这些东西。

接着要浏览大量代码,不爱写文档是开发者的共性,在全球范围内都是这样,在程序员的世界里,代码就是文档,文档就是代码。而正是没有开发文档,所以很难迅速入手,过时的开发文档对新手也是一种限制。

OpenStack的社区有整套的OpenStack安装教程,如何去学习,去社区进行交流,看官方的说明,Step to Step的教程。然后进行Core Review,参与讨论,Review别人的代码,全球的开发者,提交,审核,你能不能接受别人的代码,你有什么好的解决方案。

Core Review需要做什么事情?

1、Keep Review,不间断地Review,不停参与Review;

2、参与代码讨论,社区有在线的聊天室,每周都有讨论,找到问题以及修复问题;

3、贡献核心代码,哪些功能需要但没有,可以去提出并做,并提交文档。

做到以上三点,差不多半年的时间经验就上去了。

OpenStack社区对贡献量有一套评判标准,做得很极端,它有一个全球排行榜StackAlytics,它通过以下几个方面评判:1、修复Bug的数量;2、新功能的提出;3、Review代码的多少;4、提的意见,反对的意见将更加有用;5、贡献代码行数。

公司排名意义比个人大,贡献量是多少是评判标准,但是要说一句,公司通过OpenStack全球排名来判定个人价值的意义不大,因为每个人都有专注的方向,项目开发难度不同,代码的优劣也不同,不应简单通过OpenStack全球排名来制订KPI。

进阶OpenStack,服务器架构的优化之道

大规模下的OpenStack的落地有很多问题,公有云、私有云,适合把企业的IT基础云化,部署可大可小,小企业四台服务器支撑整个IT架构,中型企业40多台,规模大点上千台,谷歌是几十万台,中国移动用到了万台的服务器,不同的架构面临很多的问题,微软Azure的工程师,表示500台是一个坎儿。

比如定义千台服务器的分布式数据中心的应用场景,比如某个欧洲的运营商案例,有50个数据中心,每个有50—100台物理服务器,大规模集群分布式运营,这样的话有很多的Site,OpenStack管理会遇到部署问题,50个数据中心就有50个Region,只能是资源隔离,不可共享,A和B网络通讯则需要走浮动IP,这样资源没有进行最大化的利用,运维成本也高。

改进OpenStack,部署一个OpenStack,计算网络平面集中在一起,他们在实验室中实验,发现很大的性能瓶颈,大规模的架构是一个Region,全部形成一个共享的资源池有很大的挑战。架构层面,开源中国有很多的架构案例,比如网络安全,防火墙,入侵的安全,Web方面的,Web缓存,负载均衡,虚拟化的负载调度,性能不是很苛刻则好,控制平面横向扩展,很多问题其实并不是OpenStack层面的问题。

RPC消息队列是OpenStack的核心点,但它不归OpenStack管,OpenStack只负责SDK封装。因为RPC集群的控制平面不可能那么大,都是带状态的,控制平面越大,那么产生问题的可能性越大,设计分布式集群的时候,不单OpenStack,其他的互联网系统也是会遇到这种问题,消息的一致性,消息队列产生的状态同步,会不会产生瓶颈、如何避免,可以优化架构,用其他语言编写,内部调优,可以,但是没法做持续优化;也可以修改消息队列的架构,比如基于ZeroMQ的分布式消息队列,非常优秀,采用点对点的通讯,性能好,时延小,可以在大规模环境中尝试使用。不然如果中央集群出问题,那么整个项目就会出问题。

数据库的性能问题,OpenStack社区有不规范的时候,在其他的开源社区的时候有,我参与一些社区的代码不够优化,最后对数据库系统带来较大压力,其中包括事务管理、包括对数据库建立索引等,都需要微调,不归OpenStack管理,但是人们都去开源社区会报怨,OpenStack不稳定、OpenStack不行,实际如果你了解部署,你就会发现你需要更多的其他知识。当然,你也可以将这些问题反馈给OpenStack社区,让大家参与进来,因为个人的相关领域知识还远远不的,越优秀的开发者就有能力做更多的优化,周边相关的专业开发者一起让OpenStack做得更好。

文章转载自 开源中国社区 [http://www.oschina.net]

时间: 2024-11-01 23:49:06

大咖说回顾 | 开源大牛讲解 OpenStack 部署与应用的相关文章

大咖直播第二期问答整理:游族李志勇讲解如何运维千台以上游戏云服务器

问答列表: 想了解下爆款游戏最高峰值是多少? 海外服务器是用到了云服务器, 还是自建机房的 请问日志服务如何工作的呢 游族私有云是用的OpenStack?本身组件很多.后续和公有云之间如何衔接的?刚才没听清楚. 一台服务器一个数据库还是很多区共用一台服务器,如果数据很多备份慢怎么办 想问下数据库的部分,是单DB多实例,有没有启用分布式DB的架构呢? 运维小白到总监的路径是多少? 请问使用了哪些阿里云的服务 后端是什么语言写的这种负载均衡 域名一块就已经开始结合负载均衡吧? RDS 横向扩展是怎么

大咖直播第八期问答整理:有货李健讲解六层混合云架构打造中国最潮生态圈

3月29日在线实时分享顺利结束,本次由有货CTO李健讲解六层混合云架构打造中国最潮生态圈.本次直播中现场观众提出了很多技术问题,我们把这些问题和答案整理好分享给大家. 问答列表: 不同网络设置不同的超时时间,给个例子?比如2G设置多少,3G设置多少,4G设置多少,WiFi设置多少? HttpDns的话,要是IP丢了的话怎么办 重构是和业务开发同时进行的吗?是同一批操作的吗? 为什么要异地双写,感觉带来的成本比较高 有货的架构怎么过度到混合云的?上云过程中遇到过什么问题吗? 而且要是用httpdn

大咖直播第三期问答整理:邵汉成讲解驴妈妈基于混合云的OTA行业数据分析、精准运营和大数据用户推荐

问答列表: 混合云 ,自建和阿里在网络上 如何优化 驴妈妈的标签系统是如何一步步建立起来的? 对于学生来说 能否简明说一下学习路线 推荐一些好的书籍 社区 一主多备,如何解决主从同步延迟的问题? web端使用什么框架,对于微服务有什么使用? 未来技术人员的必备技能 刚才邵老师提到多遇到问题,技术人才能成长.能讲讲您个人的发展经历吗?今天大部分内容都是大系统,如果要做架构师,需要什么知识储备? google AI 战胜李世石,您有什么看法 帮转:老师的微信.博客能发出来吗?:) 景区的IT系统都比

大咖直播第五期问答整理:小咖秀张华伟讲解千万级用户App服务端架构设计

3月18日在线实时分享顺利结束,本次由小咖秀技术总监张华伟讲解千万级用户App服务端架构设计.本次直播中现场观众提出了很多技术问题,我们把这些问题和答案整理好分享给大家. 问答列表: 负载均衡是怎么做的? 如果使用阿里云负载均衡,是如何做数据同步? 有用到反向代理吗?技术架构能说下吗? 程序怎么扩展 能说下服务器数量? 怎么上线? 上线版本怎么控制的? 初期搭建系统的时候,阿里云选择的基本配置是什么呢 请问功能模块之间的通信是怎么实现的?http接口?RPC?WS?还是其他? 缓存选择的方向是怎

通过黑客代号带你回顾九位世界顶尖的黑客大咖

黑客代号带着时代的印记.上世纪六十年代加利福尼亚的反文化大潮催生了现代黑客文化. 1973年,伯克利大学的程序员开发了名为伯克利操作系统的分时操作系统,它具有社区记忆(Community Memory)功能,是世界上第一个电子公告板.该项目的重要开拓者是别名为St.Jude(圣犹达)的琼德·米尔汉,她于2003年去世,生前广受尊敬.几年之后,苏珊·海德利卷入帮派团伙并协助入侵美国数字设备公司(DEC)时使用的假名则是Susy Thunder(苏西·奔雷). 天蝎公司(Scorpion)的奥布莱恩

精彩回顾:9月电商大咖系列直播

在9月份,由阿里云主办的电商大咖系列直播分享圆满结束,共有6期线上直播.参与本次直播的嘉宾有: 宁海元,袋鼠云CTO 熊晓东,网聚宝CEO 张宇,银泰网CTO 李帅,梦想旅行CTO 刘义,网店管家CTO 目前,本次直播回顾文章已经整理出炉,如下列表: 第六期:<弹性计算架构.容量性能数据库优化,让双11有惊无险> 第五期:<会员通.服务通.商品通.营销通,全域大数据解决方案有秘诀> 第三期:<架构分析.数据整合.负载均衡,梦想旅行解析云上实践> 第二期:<弹性升级

50位中外AI领袖论剑AI World,世界人工智能大会10大亮点全回顾

AI大片震撼开启AI World 2017 新智元AI World 2017世界人工智能大会开场视频:如果你没有亲临现场,一定要看,年度AI大片,不容错过! 2017年11月8日,由新智元主办的 AI World 2017 世界人工智能大会在北京国家会议中心隆重启幕,国内外上百位AI领袖作了覆盖技术.学术和产业最前沿的报告和讨论.超过2000名 AI 精英共襄盛会. 会上,新智元创始人兼CEO杨静与助理来也CTO胡一川发布了全球首个AI专家互动资讯平台"新智元V享圈",基于此打造百万级

大咖直播第九期问答整理:微博一亿访问量背后的分钟级服务器扩容

问答列表: Feed流目前貌似组成包括很多内容,比如最新.点赞.热门等,肯定涉及到大量排序计算,这个怎么处理的? 当初为什么选择基于Docker构建这套架构? 在使用阿里云产品过程中有什么经验心得? 为什么选择阿里云? 从零开始搭建容器云的技术选型 微博的整体架构中,拆分了哪些大的服务模块? 往期回顾贴: 大咖直播第二期问答整理:游族李志勇讲解如何运维千台以上游戏云服务器 https://yq.aliyun.com/articles/7919 大咖直播第三期问答整理:邵汉成讲解驴妈妈基于混合云的

大咖直播第四期问答整理:空格App亿元A轮融资背后,云上多场景技术架构实践与经验

问答列表: 空格是如何在垂直业务上拆分架构的 im聊天内容 索引,安全吗?对用户 如果用户不想再使用app了,里面的数据怎么处理,来提高正在使用者的使用效率 数据库 sqlserver 阿里云 还没有读写分离业务 每个系统用了多少服务器? 请问你们怎么应对用户快速增长,开发团队在程序和服务器所做的优化措施 先把系统架构情况介绍一下吧,然后再讨论细节 往期回顾: 大咖直播第二期问答整理:游族李志勇讲解如何运维千台以上游戏云服务器 https://yq.aliyun.com/articles/791