PuppetOpenstack Newton Design Summit见闻
PS:技术博客已经好久没有来耕耘了,倒不是懒惰,而是最近一直在忙着写一本关于Openstack自动化部署的书籍,我觉得可能会比单独零散的技术文章更有价值一些。
作为重度拖延症患者,又把本来奥斯汀峰会期间就应该出稿的文章拖到了飞鱼大大来找我聊人生的时刻了。
这次Puppet-Openstack Design Summit和以往不同的地方是议题很多被分成了4场。第一场是Mitaka版本前情回顾,第二场是Newton版本重要需求讨论,第三场和第四场则是各个Topic的分组讨论和分工。
Mitaka版本追溯

▲ PTL在看表准备开始会议
第一场讲的是上个版本的回顾。Mitaka版本的主要工作可以归纳为4点:
1. CI方向的改进
- 更高的单元测试覆盖率,更多的测试场景,用户测试用例以及Fuel/TripleO相关测试作业;
- 切换到tempest-plugins的使用;
- 制作tarball;
- 和Openstack-health集成;
- 添加Puppet4的周期性测试作业;
- 使用RDO Trunk Repo做dailiybuild测试;
- 向UCA Packaging提供早期的测试反馈。
2. 发布了更多稳定版本的module
例如,mistral、zaqar等。
3. module有了更高的一致性
例如由UnitedStackDevops team贡献的puppet-oslo模块,以及puppet-openstack_spec_helper模块等的新引入,有效降低了module中的冗余代码,提高了module间的一致性。
4. Core team的稳定发展
Newton版本需求讨论
第二场便是讨论在接下来的Newton开发周期要做的事情了。
▲ Core member们正在讨论module的管理方式
第一点是Ubuntu 16.04 LTS版本的支持和测试工作,随着Ubuntu16.04 Xenial成为Openstack Mitaka版本及以后新版本的发行版本。因此接下来的重点工作将集中在以下三点:
第二点是对Puppet4测试工作的支持,随着Puppet4的持续迭代,在新一代的发行版上,Puppet3将逐渐地减少支持,因此将投入人力在测试Puppet4对于当前module,软件包以及Linux各发行版本的兼容性上。
第三点是值得一提的release管理方式,和openstack服务相关的puppet module的Release管理模型将发生变化,过去我们知道所有的项目的发布周期遵循在软件开发周期的接收时,也就是每6个月发布一个最终版本,例如Juno版本。
但是有些项目并没法做到在同一时间发布最终版本,因为它们的发布其实是依赖于其他项目何时发布最终版本,这类项目主要集中在packaging和deployment方向,此类项目会使用“release:cycle-trailing”来标记。Puppet-Openstack项目会从N版本开始从”release:independent“切换到”release:cycle-trailing“,并且在一个发布周期内,会设置对应的milestone。
第四点是改进puppet-openstack项目的使用指南文档和项目wiki,以降低有兴趣学习和参与的工程师的学习门槛。UnitedStack的DevOps团队正在精心编写《深入理解Openstack自动化部署》,详细讲述了如何使用Puppet-Openstack项目完成Openstack集群的部署和管理,更多细节将会在本月深圳Meetup上公布。
本文未提及,但是值得开发者关注的Topic还有:
- puppet-pacemaker的统一(https://review.openstack.org/#/c/296440/)
- puppet-horizon移除模板配置方式
- Docker集成
- Kubernetes支持
- 多节点部署工具
小结
Puppet-Openstack项目发展至今,已经有三年历史,在众多工程师的努力下,继续保持着Openstack社区中最成熟和最有影响力的部署项目,从Newton版本以及Mitaka版本的design summit来看,Puppet-openstack社区更多的重心在于如何继续提高代码和文档质量上,以及支持新发行版本以及和新技术的结合上(例如TripleO、Container、Orchestration)。
UnitedStack DevOps Team一直在深度使用Ansible和Puppet等开源软件和PuppetOpenstack项目,同时对于业界的新技术保持着持续关注。我们看到了新的容器部署技术和新生代配置管理和编排能力融合Ansible的崛起,未来Openstack的部署和管理必然是多种技术相融合的趋势,部署将向着更友好的用户界面,更完善的功能支持,更迅捷的执行速度的方向前进。
▲ 在2016年4月,由OpenStack基金会发起的第7次用户调查中,Puppet是排名第一的OpenStack集群部署与配置工具。
相关文档
http://docs.openstack.org/developer/puppet-openstack-guide/
https://github.com/cloudevelops/openstack_base
http://governance.openstack.org/reference/tags/release_cycle-trailing.html
https://etherpad.openstack.org/p/newton-puppet-project-status
PuppetOpenstack Newton Design Summit见闻的更多相关文章
- Puppet Openstack Mitaka Design Summit小结
Puppet Openstack Design Summit小结 经过Puppet Openstack社区的不断努力,Puppet Openstack社区目前提供的Official Modules已经 ...
- HK Openstack Summit 归来有感
4天的Icehouse openstack Summit终于结束,从香港又回到了北京,我们的产品反响相当不错,吸引了很多的注意力和商谈.可是实际上我最近过得很憋屈,心灰意冷,没有了当初那么拼命的动力. ...
- OpenStack Summit Paris 会议纪要 - 11-04-2014
前言: 来源:https://wiki.openstack.org/wiki/Summit/Kilo/Etherpads#Ops 不一定翻译准.由于是在summit上随手写的. 重点关注Ops Sum ...
- OpenStack Summit Paris 会议记录 - 11-05-2014
Ops/Design Summit - 2014-11-05 Record 1. Keystone Operators, Deployers, and DevOps 1. Icehouse中,SAML ...
- Solum入门知识(编辑中)
概要 参考:https://wiki.openstack.org/wiki/Solum An OpenStack project designed to make cloud services eas ...
- 从入门到精通Puppet的实践之路
本文有感于<精通Puppet配置管理工具>在豆瓣上的某些差评而顺手写的书评. 半路出家 故事要从12年初说起. 某天,部门老大让我所在team的老大调研一下当下业界的配置管理工具.于 ...
- Juno Puppet Opertaors Meetup小结
今年五月刚结束的Juno OpenStack Summit是半年一度的Openstack盛会,抛去那些迷花渐欲乱人眼的商业活动,我们来看一看本届summit puppet-openstack社区有哪些 ...
- Openstack配置文件管理的变迁之路
在管理一个Openstack集群时,如何维护配置文件无疑是其中最艰难和繁琐的任务之一.因为你不仅要面对众多的核心服务(nova,keystone,glance,cinder,etc)的配置文件,还需要 ...
- Openstack oslo.config【一】
OpenStack的项目貌似越来越多了,在Grizzly版之前,每个项目都得实现一套处理配置文件的代码.在每个项目的源码中基本上都可以找到openstack/common/cfg.py,inipars ...
随机推荐
- iOS中两个APP之间的跳转和通信
app间的跳转 一:在第一个app首先要做下面这些操作: 1.在info.plist文件中的Information Property List下添加一项:URL types. 2.点开URL type ...
- C#字段中加入list<类字段> 的两种写法
类1 public class NumCon { public string zsNum { get; set; } } 类2 public class RepeatMess //重复数据响应 { p ...
- ASP.NET访问网络映射盘&实现文件上传读取功能
最近在改Web的时候,遇到一个问题,要跨机器访问共享文件夹,以实现文件正常上传下载功能. 要实现该功能,可以采用HTTP的方式,也可以使用网络映射磁盘的方式,今天主要给大家分享一下使用网络映射磁盘的方 ...
- sql常用语法
--在表中添加字段if col_length('JX_DomesticStudy','XL') is null begin alter table JX_DomesticStudy add PXlev ...
- String 与 byte[]相互转换
1. 从byte[]转换成string string result = System.Text.Encoding.UTF8.GetString(byteArray); 2.从string 转换成byt ...
- Server Transfer()和Response.Redirect()的使用
一.Server Transfer() Server.Transfer:对于当前请求,终止当前页的执行,并使用指定的页url路径来开始执行一个新页. 1. Server.Transfer只能够转跳到本 ...
- hdu 1231
最大连续子序列 Time Limit: 1000MS Memory Limit: 32768KB 64bit IO Format: %I64d & %I64u Submit Statu ...
- VS 控件命名规范
基本数据类型 数据类型 数据类型简写 标准命名举例 Array arr arrShoppingList Boolean bln blnIsPostBac ...
- React Native填坑之旅--LayoutAnimation篇
比较精细的动画可以用Animated来控制.但是,在一些简单的界面切换.更新的时候所做的动画里再去计算开始值.结束值和插值器如何运作绝对是浪费时间. RN正好给我们提供了LayoutAnimation ...
- NOIP 2015 信息传递
kawayi 题目描述 有n个同学(编号为1到n)正在玩一个信息传递的游戏.在游戏里每人都有一个固定的信息传递对象,其中,编号为i的同学的信息传递对象是编号为Ti同学. 游戏开始时,每人都只知道自己的 ...