说起来比较惭愧,整天吹API的重要性,其实我自己没怎么去调用过API,虽然我是知道web都是通过调用API来实现各种功能的。
测试API或者简单使用一下,可以用curl命令。下面就用这个来学习一下。
主要目的是修改网卡的port的属性,默认只是一个ip和mac地址可以访问,通过curl方法,添加多个IP和mac地址,通过一个port,访问网络。
说起来比较惭愧,整天吹API的重要性,其实我自己没怎么去调用过API,虽然我是知道web都是通过调用API来实现各种功能的。
测试API或者简单使用一下,可以用curl命令。下面就用这个来学习一下。
主要目的是修改网卡的port的属性,默认只是一个ip和mac地址可以访问,通过curl方法,添加多个IP和mac地址,通过一个port,访问网络。
其实这篇文章,是UnitedStack UOS安装多节点OpenStack延续,不过那篇文章太长了,所有就把heat的安装独立出来一篇文章。
必须强调,这几篇文档,都是翻译老外的文档完成https://github.com/MarouenMechtri/OpenStack-Heat-Installation/blob/master/Create-your-first-stack-with-Heat.rst
其实我是无比佩服他们,那么长的文档,我居然没发现一个错误。这要花费多少时间才能做到这种程度。
等我完全搞定在UOS下测试,一定联系这位朋友,告诉他的好消息,在OpenStack下安装OpenStack。
前段时间,有朋友微博发heat工程师招聘,2w的推荐费,看的真的很激动,牙痒痒,后悔怎么不早点让弟兄们开始研究这个呢?真的很后悔,所以今晚好好把heat安装整理一遍。
Heat,其实对于很多Openstack开发工程师,都是比较陌生的一个东西。不过Openstack的未来,很多故事都是需要Heat的完成,例如所谓的弹性扩展,没有Heat,是搞不定的。最热门的App Store,其实都是要考Heat去实现。这也就为啥大家都在下注Heat。当你的IaaS平台稳定后,你感觉还是无法满足你的需求,还是很麻烦,那么你就需要Heat,帮助你减轻负担。
平时大家IaaS圈聚会,大家都离不开的话题就是青云。那么青云到底对中国的IaaS做了多大的贡献,搞了那些创新呢?那么就整理一下,大家以后探讨。
如果说青云让中国IaaS发展,提前了至少2年,估计不会太过分。青云的产品是2013年7月份正式对外,明年现在,估计市场上也不见得有产品可以做到青云当时发布的时候的样子。
可以说,下面这些都是青云以前没人敢做,青云以后,必须做,好像也只能这样做的。
搞IaaS的,有一点是比较讽刺的,开发,测试都是用硬件,并且也饱受设备的痛苦。我们本来是为了帮助用户解决使用资源的各种问题,结果我们自己还饱受折磨。
这个问题其实由来已久。2007年的时候,我当时测试ESX3.0,其实这个东西真没多复杂,就是需要硬件,当年vmware workstation根本就不支持。当年的ESX的培训,都去美国实验室,够恶心了吧。后来解决了worstation安装ESX的问题后,vmware的ESX就真正在企业普及起来。普及的速度真的很快啊。
今天Openstack非常热,Openstack要很好推广,那么培训就是必要的。只有培训推广的好,企业才能有信心去使用Openstack。能不能用Openstack培训Openstack,真的很关键。
UnitedStack团队推出了共有云,UOS,这下子有机会大家都有一个相同的环境。说实话,以前所谓测试IaaS,基本都是点击几下,没真正变成用户,没真正帮助我解决问题。我希望日后可以用这个Openstack下培训Openstack,让大家能认识到IaaS,其实有很多好玩的玩法,可以帮助你改变以前很多无法解决的问题。当然需要大家一起想想。
我子所以那么关注培训,其实是因为我自己的IT的技能很大部分都是通过参加IT培训获得的,所以也算是比较了解这个行业。
这次安装Openstack,是参考国外文档:https://github.com/ChaimaGhribi/OpenStack-Icehouse-Installation/blob/master/OpenStack-Icehouse-Installation.rst
我已经把所有安装的配置文件放到github下,大家安装过程,如有一位,那么就直接参考一下
https://github.com/shake/Openstak-on-openstack
我希望任何人,都可以利用UOS,重复我文档的所有操作,可以实现下面的目标
看看UOS生成的网络拓扑图,应该可以改的更加好看,大家多去给他们提提意见。
上周六和10年前的同事一起吃饭,聊聊往事。朋友一直都还在一线媒体干活,真的比较佩服啊,还能有那么好的精力。头脑风暴,还是很有意义的,把那天晚上风暴的结果记录一下。
作为一个IaaS从业人员,整天想着除了技术,还天天想的就是什么场景下,最需要IaaS,IaaS最能体现他的价值。目前想到的就是IT培训行业。朋友所在的公司目前主要的盈利来源也是培养。
经过了那么多年的发展,国内的IaaS技术其实进步还是很大的。目前看到的很多方面,并不比国外同行差。
目前IaaS的最需要去解决的不是技术问题,而是如何让更多的行业用上,用好,真正体会到IaaS带来的革命。
这就让我想起15年前的旧事。
我是新东方的学员,不过我没在新东方学过英语,而是学计算机。我算是新东方第一期IT培训班的学员。当年的新东方投入去做IT培训,可以说学血本。1999年,给我们讲课的,都是CCIE,记得当时讲课的4个老师,其中3个都是博士。真的是很资深,负责的老师。
新东方做IT培训,我相信他是想对传统的IT培训进行革命。新东方搞IT培训,是希望利用自己的生源的优势,复制英语培训思路,请最好的老师,给最高的待遇,通过规模来降低成本。这招在英语培训中非常有效。不过在IT培训里,就遇到问题。
老师上课,50人和500人,其实是差不多的。不过IT有一个要求,所谓的上机练习。这对培训的效果,起到很重要的作用。导致IT培训里,有一个规矩,一个班,不能超过50人,否则你很难保证效果。所谓的多媒体教学,远程协助,其实解决不了太多问题。
其实你可以想象,老师的讲课,试验的过程,你可以通过视频,录像记录下来。但是学员操作的过程,就很难保证他不出现别的问题,当时我记得我学那些开发工具的时候,点几下,好像就和老师差异很大,再也不知道如何恢复到开始的状态,根本就无法完成老师讲课的试验过程。
这就导致新东方的IT培训,一直都无法做大。同时采购的上机设备,折旧很快,无法充分利用。我相信这些都是困惑当年新东方的IT培训班的管理者。
这几年虚拟化发展很快,有培训公司就想到提供虚拟机镜像让学员学习,提供视频来做IT培训。著名的WinOS社区就是通过这种方式来提供微软的培训。不过对学员的机器配置还是很高,能同时跑几个虚拟机,才能完成虚拟机的试验。并且学员下载镜像也是很费劲,也很难大规模推广。
目前国内的IT培训课程,线上视频已经很普及。不过还是很多人参加线下的培训,主要原因我想上机,没有人指导下,你很难完成老师讲课的内容。
假设一种很理想的场景
老师为了一个IT培训课程,精心准备视频,PPT,和一个镜像。参加学习的学员,可以反复看视频,PPT,同时可以很方便的上机,和老师的操作是同步的,完全相同,出现问题,可以很容易回滚回去。学员遇到无法解决的问题,可以请求老师的线上现场支持。
教程除了在线参加,也可以离线教程。学员选择自己合适时间去学习。有问题可以提问。这样一个课程,参与的学员,就没有任何数量的限制。这样也促进老师花费更多的心思去准备课程。
现在的IaaS都是按秒计费,都提供API接口。作为培训机构,你有很大的想象的空间,基本不需要太多的开发的工作量,就可以和你的在线教育平台结合起来。
传统IT培训机构的特点
如果能很好结合IaaS,那么上面的内容,基本都是不需要。老师也不需要去挂靠各个培训自己机构,自己就可以创业,或者把课程卖给大的机构,让他们帮忙招学员,你就等着分成就可以。
这个时候,老师的知名度,威望,决定他的学员的数量和收入。这个时候,媒体的擅长玩的东西就有的,培养几个明星讲师,这个应该是很自然的事情。
很多IT媒体其实都希望进入IT培训行业,利用自己在IT行业的优势。不过传统的IT培训的投入,规则,让很多媒体处于观望阶段。如果可以结合IaaS,利用自身的优势,那么其实是很容易把传统的IT培训干掉的。因为传统的IT培训机构,他们是很难抛弃自己已经投入的这一切。
这顿饭吃了两个多小时,最后朋友问一句,如果公司真的按照你的设想去做,你的利益如何体现呢?真的是自家兄弟。我说:如果IT的培训,都用IaaS,那么我的饭碗肯定就不是问题了。
如果这一切真的发生,那其实真的是革命,让IT的知识普及更快,吃老本的时间更短。把自己的命也给革了。
以前IT培训里,网络培训是比较昂贵,主要原因是因为设备,现在模拟设备已经做的很好,说不定哪天你可以在IaaS的虚拟机里,完成所有的CCIE的课程呢?
上个月参加Openstack的北京聚会,当时谈到Openstack的贡献,会场上有点争议,到底是Redhat第一,还是HP更多,由于Scope不同,所以得出的结论是不一样的。
Openstack所有的资料都是公开的,包括他们开会,代码提交,审核。那么如何评估那个公司贡献最大,那么这个应该是玩大数据的擅长的东西。我本人压根不懂什么大数据,不过如果你不熟悉开发项目的流程,不熟悉Openstack,仅仅是靠Hadoop,还是没戏的。
Openstack所有的资料都是公开,获取数据不是问题,如何去分析,那就是一大难题。不同的角度,不同的时期都会不一样,代码的贡献,影响力的贡献都是不同的,如何算出一个最大,估计没人可以回答这个问题。这就是说,大数据不是什么万能的药。
对Openstack的贡献,也不需要紧紧理解成代码的贡献,你推广的贡献,文档的贡献,都是必不可少的。中国对Openstack的贡献也不少,代码上不多,不过在Openstack使用上是很多的。你无法相信,Openstack官方网站,访问最多的是来自中国,有几个英文的网站会是这样的呢?
还有一点就是在Openstack讨论贡献最大,是一个比较残酷的事情。因为Openstack 1年2个版本,一直在不断更新,如果你不跟进,很快就会没有人能记住你。这样的故事已经不少了。当年Nebula拿到2500万美金,风光一时,现在基本已经没啥消息。
现在大家都在谈论Openstack,关注Openstack。那么哪家公司对这个贡献最大呢?
如果你说上面那家公司对Openstack影响最大呢?我个人观点,其实还是IBM。他体型庞大,对业界的影响是难以估量的。Openstack的基金会可以成功成立,IBM在作用的非常大的。
Redhat加入基金会,我个人相信都是受IBM影响。
目前每个月一次北京这边的Openstack聚会,都是IBM赞助,也是提高自己的影响力。
谈到代码贡献,那么你就肯定要看看http://stackalytics.com/ ,这是Mirantis维护的网站,也是Openstack的代码贡献的一个风向标。一个公司投入多少,基本可以通过这里获得。不过由于不同的维度,结论是不一样的,那个维度是最重要的,很多时候,需要你自己去判断。
Stackalytics的统计变化的过程是非常有意思的。这个统计是从Openstack基金会成立后搞的,印象中应该是G版本有的,大家都是通过这个,了解别家干了多少,我做了多少。
下面的图是我2014年8月11日截的,我个人感觉应该还是非常能代码当前Openstack代码贡献的排行榜。
HP和Redhat是一个级别
Mirantis,Rackspace,IBM是一个级别。后面的差距都已经有点大。
这是最开始的时候,评估一个项目的贡献指标。这个也比较直观。在Grizzly版本的时候,Openstack功能还是缺少很多的年代。当时Redhat刚刚加入,所以这个版本代码量衡量贡献,其实是没啥问题的。
不过很快就有人发现问题,移动一个目录,相当于删除和增加一堆代码,所以大家当时认为Redhat在灌水。不过我同事还是肯定的态度,经过Redhat的调整,目录是比以前清晰很多,效果还是很好的。
到了H版本,Openstack有大量的bug需要修复,如果你修改一个bug,可能就是几行代码。后来经过研究,默认的贡献是用commit次数来衡量。
这个时候,大家都比较关注排行榜,有的公司甚至通过这个榜单来做员工的质效考核。也就导致不少公司在刷榜。一个经典的案例就是:把openstack改成OpenStack,也是一个commit。不是不可以修改,而是不应该为了数量而去做这些修改,这些要让新手,第一次提交的人来做。
如果commit是为了获取一张门票,那其实还是可以理解,如果是为了刷榜,意义不大,群众的眼睛是雪亮,项目的PTL负责人其实心里都明白,知道那个是刷榜,那个是能干活的。
在Icehouse版本里,还是用commit次数作为指标,这个时候,已经显得不太符合Openstack现状。
Openstack的开发者都有点痛苦,提交的代码,很难找到人reviews,来回的修改,reviews,时间太漫长。一段代码需要2位core review,同意,才能merge。很多人因为坚持不下去,放弃。这个阶段是写代码的人太多,Review代码的人太少。
Mirantis肯定也注意到这个问题,在Juno版本里,把网站的贡献统计改为Reviews次数。鼓励大家去reviews代码。可以发现目前Juno版本的Review大大改善,BP merge的速度也大大提升。
比较一下,这是Icehouse发布后的review数量。
这是目前Juno版本,还有2个月的时间,才正式发布。
Juno正式发布的时候,review数量,应该会比Icehouse版本高出很多。大家可以重点关于Nova,Neutron,和Horizon。Juno版本的Neutron和Horizon的review数量,已经基本达到Icehose发布时候的数量级别。说明这两个项目的PTL很给力。Neutron的PTL刚换成思科的。
通过Reviews数量,其实你可以了解到更多信息
当然,Reviews数量,肯定也有人想到钻空子的办法,看到PTL+2,赶紧上去给一个+1,这个时候是没任何风险的,而且代码都不用看,哪家公司的就不说了,所以有时候大公司的,真的要管好,不然也挺丢人的。
目前Openstack的所谓核心项目大概有10个左右,每个项目都有一个负责技术的PTL,大概有10个左右的core。Neutron和nova,core数量相对多一点,达到15个左右。Openstack真正Core,在干活的,应该就100位左右,目前中国区应该在5到8个左右。
如果从代码贡献来说,尤其是Redhat把eNovance收购以后,我个人的观点目前排名应该是
目前HP投入很大,基本能和Redhat一个档次上。不过能持续多久,这个就不好说。
如果说Openstack是下一个linux,那么国内目前在代码贡献上,其实不算太落后。还没有产生项目的PTL,不过Core的数量,其实已经不算太少了。
目前国内IBM,Intel,Redhat,Ubuntu都是有中国区的员工在提交代码,Intel还有4位的Core(没记错,cinder 1位,Ceilometer 2位,Olso 1位)IBM中国区Core基本都已经流失了不少,认识的2个中国区core,都已经离开IBM
目前国内参与Openstack社区开发的不少。要多说的是以前华为一直都是给自己产品增加驱动,对Openstack贡献不大在Icehouse版本里没有完成一个BP。在Juno版本里,目前已经完成了18个BP,在这真的是一个非常大的进步。在Juno版本完成18个BP和以前的版本完成是不一样的概念,现在Openstack的组件的功能,已经相对完善,要去完成一个BP的难度其实很大,我相信下面很多BP,不少应该都是已经搞了1年。华为在没有自己项目的Core的支持下,完成那么多BP,是非常难得的。
上图是华为完成的BP,和以前已经很大不一样了,例如Cinder完成的BP,并不是加自己的存储的驱动,而且真的在做东西,给社区做东西。都是很有价值的东西。
下面就是华为完成的Cinder的BP介绍,至少我感觉是很有价值。
对Openstack项目有真正有点影响力的是Horizon,Ceilometer,Heat。至少项目的负责人记住你,你真的是对项目做过贡献。对于开源社区来讲,都是个人,不看你公司。
整体来说,我想中国区对Openstack的代码贡献,应该在5%左右,华为应该3%,超过一大半以上。这也是完全是自己个人感觉的结论。