来源: 架构师技术联盟

OpenStack发展到今天,可以说时时刻刻充斥着我们的视野,每天都有大量的技术和新闻稿产生。Pike版本发布更是如此,相关文章和消息已经刷爆了朋友圈。昨天看到文章还是由于升级问题和对业务影响,被称为是Stuck Stack(意为卡住的Openstack),今天看到的又是功能全面、全民参与的Openstack。但是关于升级,在OpenStack Pike版本做了更新和优化。

正如Gartner所言,每个技术都需要经过炒作周期(Hype Cycle),在这个周期内,技术相关的热点、话题、观点将应用而生。但是,我个人还是相信实践出真知,任何技术评论和观点如果能在实践后再发表,可能会对读者提供更贴合实践的参考价值。云计算和OpenStack是目前搞技术绕不过的坎,我也被迫关注OpenStack的相关进展,并转载此篇有营养的文章,其主要目的是方便学习和查阅。

2017年9月1日,OpenStack最新版本Pike正式发布,新版本的更新包括,提升OpenStack可组合性、帮助用户利用Kubernetes和Ansible这样的工具对多款OpenStack服务的生命周期进行管理等。

经过7年的打磨,Pike已经是OpenStack第16个版本,最新版本的全球代码贡献排名也新鲜出炉。截止到9月7日,在Pike代码贡献最终版本中,共有45家中国企业上榜;而上一个版本Ocata代码贡献的中国上榜企业是37家,环比增长高达21%。

上榜中国企业如下

那么,中国企业上榜情况如何?贡献代码的方向和意义如何?最新Pike版本都有哪些新的特性?现在,我们就来全面分析和解读一下。

一、中国企业社区贡献突出

OpenStack项目众多,关于项目的分类,社区在前段时间也在积极讨论,原来的大帐蓬“Big-Tent”模式不能很好地区别OpenStack官方项目和非官方项目,正在寻求新的名称来区别项目。目前官方认可的项目被明确记录(详情查看原文链接)。

在官方认可的项目中,TC-approved项目受OpenStack基金会技术委员会管理,采用率最为广泛,是OpenStack社区最为核心且重要的项目,目前有16个项目,包括nova(计算)、cinder(块存储)、neutron(网络)、horizon(仪表盘)、ironic(裸金属)、heat(编排)、swift(对象存储)、keystone(身份认证)、ceilometer(计量)、glance(镜像)、sahara(大数据即服务)、trove(数据库即服务),以及sahara-image-elements、sahara-dashboard、sahara-extra三个属于sahara项目中的子项目,一个属于neutron的子项目neutron-lib。

社区贡献指标有多种,其中commits代表了提交代码次数,意味着一次有意义且相对独立完整的代码贡献,这意味着每次代码的提交除了新功能/逻辑修改,往往也包括对应的单元测试,并对生产环境有最直接的影响。而其他指标往往是围绕着修改代码的需求而展开。所以,本次贡献统计从TC-approved项目的commits指标进行统计。

TC-approved项目中国公司贡献统计

在最新的排名(TOP10)中从贡献上看,中国的华为(TOP2)、EasyStack(TOP7)、烽火通信(TOP8)三家公司跻身OpenStack社区核心代码贡献世界前十。详细列表如下:

TC-approved项目中国公司贡献排名图(TOP后数字代表国际排名)

二、核心项目贡献排行、重要组件更新

我们对每一个TC-approved项目的中国公司贡献情况也做了统计。

1、Nova,OpenStack计算服务

Nova是OpenStack云平台中的计算组织控制器。OpenStack云中实例(instances)生命周期的所有活动都由Nova处理。

在Pike版本中的更新包括:

  • Cells v2 多Cell部署:部署将默认使用单Cell;从这个版本开始,你可以使用 Cells v2 API 创建多Cell 的环境了,尽管它还有一些局限。Cells v1 现在被标记为被弃用了。

  • 重写 Nova 配额系统,在资源被创建时计数:如果所申请的资源创建失败,你会得到错误;你不需要做任何改动就可以使用该功能。

  • 利用 PCIWeigher 来更高效地利用资源:PCI 设备是一种特殊硬件,因此你需要确保只有真正需要这些设备的负载会运行在带有 PCI设备的宿主机上。使用 [filter_scheduler]pci_weight_multiplier 配置项来防止非 PCI 负载被调度到带有 PCI 设备的节点上。

  • 节点在不能正常工作时会自动从服务列表中移除,利用 [compute] /consecutive_build_service_disable_threshold配置项。

  • 防止虚机占用宿主机上的所有物理CPU,通过使用 reserved_host_cpus 配置项来为hypervisor 预留部分CPU。

  • Placement API 现在可以查看各种资源的定性“特征”,以更好地服务请求。

Nova组件中国公司贡献统计表

在Nova组件的贡献上,有1家中国企业进入了全球TOP10,那就是华为TOP2。另有3家中国企业进入了全球TOP20——EasyStackTOP11、烽火通信TOP13、浪潮TOP19。

2、Cinder,OpenStack块存储服务

Cinder源自于Nova-Volume服务。其功能包括提供REST API使用户能够查询和管理 volume、volume snapshot 以及 volume type,提供scheduler调度 volume创建请求,合理优化存储资源的分配,通过driver架构支持多种back-end(后端)存储方式,包括LVM、NFS、Ceph和其他诸如EMC、IBM等商业存储产品和方案。

在Pike版本中的更新包括:

  • 添加了 “还原到快照” (revert to snapshot) 功能。

  • 支持对正在被使用的卷进行扩容。

  • 添加了backend_default 配置部分。

  • 添加卷组复制(replication)支持。

Cinder组件中国公司贡献统计表

在Cinder组件的贡献上,有3家中国企业进入了全球TOP10,分别是华为TOP1、烽火通信TOP4、联想TOP6。另有2家中国企业进入了全球TOP20——EasyStack与中兴。

3、Neutron,OpenStack网络服务

Neutron可提供云计算环境下的虚拟网络功能,帮助OpenStack云更灵活地划分物理网络,在多租户环境下提供给每个租户独立的网络环境。

在Pike版本中的更新包括:

  • 支持从Ocata 版本无缝升级到 Pike 版本

  • 使用haproxy 代替 neutron namespace proxy agent

  • QoS 改进

  • DVR 改进

  • 支持配额API 中的配额使用统计

  • 支持为每个Neutron 端口设置单独的 DNS 域

  • 支持为每个网络设置 MTU

  • 支持为所有标准 Neutron 资源设置用户自定义 tag

Neutron组件中国公司贡献统计表

在Neutron组件的贡献上,没有中国企业进入了全球TOP10,但有3家中国企业进入了全球TOP20,分别是烽火通信TOP13、海云捷迅TOP17、EasyStack TOP18。

4、Horizon,OpenStack仪表盘服务

Horizon是一个Web界面,使管理员和用户能管理各种OpenStack的资源和服务;为用户提供一个友好的界面。

在Pike版本中的更新包括:

  • 可以为os-client-config下载 clouds.yaml文件。

  • 在项目的网络详细信息表中,创建和删除网络中的端口。

  • 可以在添加安全组规则时指定“any”IP 协议和“any”端口号

  • 可以看到哪些安全组被应用到了哪些 Neutron 端口

Horizon组件中国公司贡献统计表

Horizon组件的贡献上,只有1家中国企业进入了全球TOP10,那就是EasyStackTOP4。另有6家中国企业进入了全球TOP20,分别是浪潮TOP10、中兴TOP13、九州云TOP14、云图腾TOP15、海云捷迅TOP17、烽火通信TOP19。

5、Ironic,OpenStack裸金属部署项目

Ironic可以实现物理机的添加、删除、电源管理和安装部署。Ironic最大的好处是提供了插件的机制让厂商可以开发自己的Driver,这让它支持几乎所有的硬件。

在Pike版本中的更新包括:

  • 从Cinder 卷启动

  • 物理网络感知

  • 无缝/滚动升级

Ironic组件中国公司贡献统计表

在Ironic组件的贡献上,只有1家中国企业进入了全球TOP10,那就是烽火通信TOP9。另有5家中国企业进入了全球TOP20,分别是中兴TOP12、浪潮 TOP15、华为TOP16、EasyStackTOP17、上海仪电TOP18。

6、Heat,OpenStack编排服务

Heat可以基于文本文件形式的模板启动多个复合云应用程序(这些文件可以被视为代码),为OpenStack用户提供了一种自动创建云组件(如网络、实例、存储设备等)的方法。

在Pike版本中的更新包括:

  • NeutronTrunk 资源支持

  • 支持新的Magnum Cluster 和 Cluster Template 资源

  • 由Mistral 工作流管理的自定义资源类型

  • 添加 ZunContainer 资源

Heat组件中国公司贡献统计表

在Heat组件的贡献上,有3家中国企业进入了全球TOP10,那就是华为TOP2、EasyStackTOP3、烽火通信TOP5。另有3家中国企业进入了全球TOP20,分别是中兴 TOP12、大唐高鸿数据 TOP13、海云捷迅TOP18。

7、Swift,OpenStack对象存储服务

Swift通过在软件层面引入一致性散列技术和数据冗余性,支持多租户模式、容器和对象读写操作,适用于互联网应用场景。

在Pike版本中的更新主要包括:

  • 通过复制对象的纠删码片段来实现全局纠删码

  • 支持“复合环”,实现全局擦除码

  • 添加基于每个策略覆盖 proxy 配置选项的功能

Swift组件中国公司贡献统计表

在Swift组件的贡献上,有1家中国企业进入了全球TOP10,那就是烽火通信 TOP6。另有3家中国企业进入了全球TOP20,分别是云宏TOP12、浪潮TOP13、中兴 TOP16。

8、Keystone,OpenStack身份认证服务

OpenStack所有组件都依赖于Keystone提供3A(Account,Authentication,Authorization)服务。除了3A之外,Keystone还对外提供服务目录服务,类似于UDDI服务的概念,用户都需要访问Keystone获取服务列表,以及每个服务的地址。

在Pike版本中的更新包括:

  • 注册默认策略可使运维更容易维护策略文件,特别是当大部分时候使用默认值时

  • 增强存储在SQL中的密码安全性以支持更安全的密码 hash 机制,更符合行业标准

Keystone组件中国公司贡献统计表

在Keystone组件的贡献上,有3家中国企业进入了全球TOP10,分别是华为 TOP2、中兴TOP4、烽火通信TOP9。另有4家中国企业进入了全球TOP20,分别是EasyStack TOP11、海云捷迅TOP12、中国移动TOP14、浪潮 TOP18。

9、Ceilometer,OpenStack计量服务

Ceilometer 的目标为上层的计费、结算或者监控应用提供统一的资源使用数据收集功能,可监控虚拟机性能数据、网络带宽、租户使用信息等。

在Pike版本中的更新包括:

  • 支持Manila

  • 支持多种SDN 控制器

Ceilometer组件中国公司贡献统计表

在Ceilometer组件的贡献上,有5家中国企业进入了全球TOP10,分别是华为 TOP2、EasyStack TOP3、烽火通信 TOP4、中兴 TOP6、九州云TOP9。另有4家中国企业进入了全球TOP20,分别是浪潮TOP13、有孚网络TOP14、云宏 TOP15、China Railway ITC TOP16。

10、Glance,OpenStack镜像服务

OpenStack用image创建以及重构虚拟机,所以为了使用方便,OpenStack允许用户上传一定数量的image供创建虚拟机使用。

在Pike版本中的更新包括:

  • 通过使用新的tasks_api_access策略,来避免将Tasks API 暴露给终端用户,让Glance使用普通用户凭据来管理那些交互式映像导入任务。

Glance组件中国公司贡献统计表

在Glance组件的贡献上,有2家中国企业进入了全球TOP10,分别是烽火通信 TOP5、 EasyStack TOP6。另有3家中国企业进入了全球TOP20,分别是华为 TOP12、云宏 TOP15、中兴TOP17。

11、Sahara,OpenStack大数据即服务

Sahara旨在为用户提供简单部署Hadoop、Storm、Spark集群的能力。在用户提供了集群版本、集群结构、节点硬件信息等这些参数后,Sahara可迅速把集群部署起来,同时也支持集群的扩容和减容。

在Pike版本中的更新包括:

  • Pike版本的一个主要功能是引入了新的镜像创建和验证系统,但是Pike版本引入了CDH,它允许用户使用libguestfs来创建镜像,而不再依赖于 DIB。

Sahara组件中国公司贡献统计表

Sahara组件的贡献上,有7家中国企业参与,分别是EasyStackTOP1、烽火通信TOP6、 华为TOP7、九州云TOP9、海云捷迅TOP11、上海仪电 TOP13、浪潮TOP14。

12、Trove,OpenStack数据库即服务的项目

Trove的定位不仅是关系型数据库,而且还涵盖非关系数据库的服务,利用已有的OpenStack组件功能,可以创建、删除数据库实例。

Trove的PLT Amrith Kumar表示,在OpenStack的P版本中,Trove专注于实现两大功能目标。一个是,将Trove的API server实现WSGI的功能框架,另一个是实现Trove对python3的支持。

Trove组件中国公司贡献统计表

Trove组件的贡献上,有8家中国企业参与,分别是EasyStackTOP6、中国移动TOP9、浪潮TOP10、新华三TOP12、云宏TOP13、烽火通信TOP14、华为TOP16、易云捷讯TOP17。

(下载iPhone或Android应用“经理人分享”,一个只为职业精英人群提供优质知识服务的分享平台。不做单纯的资讯推送,致力于成为你的私人智库。)