Ceph 版本

时间表

  Dumpling LTS Emperor Stable Firefly LTS Giant Stable Hammer LTS Infernalis Stable
First release August 2013 November 2013 May 2014 October 2014 April 2015 November 2015
Estimated retirement March 2015   January 2016   November 2016 June 2016
Actual retirement May 2015 May 2014   April 2015    
  Development Testing Dumpling LTS Emperor Stable Firefly LTS Giant Stable Hammer LTS Infernalis Stable
November 2015 10.0.0     0.80.11     9.2.0
October 2015 9.1.0         0.94.4  
          0.94.5  
August 2015 9.0.3         0.94.3  
July 2015 9.0.2     0.80.10      
June 2015 9.0.1         0.94.2  
May 2015 9.0.0            
April 2015         0.87.2 0.94.1  
          0.94  
March 2015       0.80.9      
February 2015 0.93       0.87.1    
0.92            
January 2015 0.91     0.80.8      
December 2014 0.90            
0.89            
November 2014 0.88            
October 2014 0.86     0.80.7 0.87    
      0.80.6      
September 2014 0.85 0.67.11          
August 2014 0.84 0.67.10          
July 2014 0.83     0.80.5      
      0.80.4      
      0.80.3      
      0.80.2      
June 2014 0.82            
0.81            
May 2014   0.67.9   0.80.1      
  0.67.8   0.80      
April 2014 0.79            
March 2014 0.78            
February 2014 0.77 0.67.7          
  0.67.6          
January 2014 0.76            
0.75            
December 2013 0.74 0.67.5 0.72.2        
0.73            
November 2013     0.72.1        
    0.72        
October 2013 0.71 0.67.4          
0.70            
September 2013 0.69            
0.68 0.67.3          
August 2013   0.67.2          
  0.67.1          
  0.67          

理解发布周期

开发版发布周期是二到四周,每个周期内都会冻结主开发分支、并进行集成和升级测试,然后才发布;与此同时,要冻结下一个版本的代码,开始对其测试。而且一旦发布,就不再给它移植修正补丁;开发者的精力会集中在下一个开发版上,通常只有几周而已。

每年大约会发布三到四个稳定版,每个稳定版都有个名字(如 ‘Firefly’ ),并且会一直提供缺陷修复,至少持续到下一个稳定版发布。

其它稳定版都是 LTS ( Long Term Stable ,长期稳定)的,而且会持续更新,直到发布了两个 LTS 。比如 Hammer 发布之后 Dumpling 才隐退, Jewel 发布之后 Firefly 才隐退,以此类推。基本原理就是,为了修复缺陷和移植某些重要功能,对 LTS (如 Dumpling )的移植会一直持续到下一个 LTS 发布( Firefly 就是 Dumpling 之后的一个 LTS )。下一个 LTS 发布后,还有可能移植缺陷修正,主要取决于这些问题是否会妨碍升级到下一个 LTS (这里有个实例, Firefly 发布后还在修复 Dumpling ,一直持续到 Hammer 发布,主要是确保 Dumpling 可以平滑地迁移到 Firefly )。

  • LTS (长期稳定):直到后续两个 LTS 发布
  • 稳定版:直到下一个稳定版发布
  • 开发、或测试版:不会给它移植

对各个稳定版:

在时间表中, LTS 版的生命是从首次发布的下一个月算起、共 18 个月。比如, Dumpling 是在 2013 年八月发布的,从 2013 年九月起、延后 18 个月就是 2015 年二月,因此到 2015 年三月 Dumpling 就该隐退了。某些版本的生命也许有所不同,因为它取决于稳定版发布得有多快;比如说,虽然 Dumpling 应该在 2015 年三月隐退,但是被延长到了 2015 年五月。

版本号约定

第一个 Ceph 版本是 0.1 ,要回溯到 2008 年 1 月。多年来,版本号方案一直没变,直到 2015 年 4 月 0.94.1 ( Hammer 的第一个修正版)发布后,为了避免 0.99 (以及 0.100 或 1.00 ?),我们制定了新策略。

  • x.0.z - 开发版(给早期测试者和勇士们)
  • x.1.z - 候选版(用于测试集群、高手们)
  • x.2.z - 稳定、修正版(给用户们)

x 将从 9 算起,它代表 Infernalis ( I 是第九个字母),这样我们第九个发布周期的第一个开发版就是 9.0.0 ;后续的开发版依次是 9.0.1 、 9.0.2 等等。

一两个月后我们会发布 9.1.0 (也可能是 9.1.1 )候选版。

之后几周,我们会发布 Infernalis 9.2.0 ,后续的缺陷修正版将是 9.2.1 、 9.2.2 等等;再后面的版本将是 Jewel (10.y.z) 。