1. 程式人生 > >ceph 版本號命名規則

ceph 版本號命名規則

http://www.cnblogs.com/luxiaodai/p/10005700.html

概述

第一個 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 等等。

 

之前的版本號分別為:

 


 

Argonaut  0.48版本(LTS)     2012年6月3日

Bobtail   0.56版本(LTS)     2013年1月1日

Cuttlefish    0.61版本         2013年5月7日

Dumpling    0.67版本(LTS)     2013年8月14日

Emperor   0.72版本        2013年11月9日

Firefly    0.80版本(LTS)     2014年5月

Giant     Stable        October 2014 - April 2015

Hammer     LTS         April 2015 - November 2016

Infernalis    Stable        November 2015 - June 2016

Jewel               2016年4月

Kraken               2017年10月

Luminous                2017年10月

mimic                 2018年5月

 


 

 

Ceph v12.2 Luminous正式版本是Luminous v12.2.x長期穩定版本的第一個版本。在Kraken(v11.2.z)和Jewel(v10.2.z)後我們做了很多重大修改

 

在Kraken版本上進行的重要修改

  • 通用

    Ceph現在有一個內建的簡易DarshBoard,用於監控叢集狀態。

  • RADOS

    • Bluestore 
      • ceph-osd的新後端儲存BlueStore已經穩定,是新建立的OSD的預設設定。
        BlueStore通過直接管理物理HDD或SSD而不使用諸如XFS的中間檔案系統,來管理每個OSD儲存的資料,這提供了更大的效能和功能。
      • BlueStore支援Ceph儲存的所有的完整的資料和元資料校驗。
      • BlueStore內嵌支援使用zlib,snappy或LZ4進行壓縮。(Ceph還支援zstd進行RGW壓縮,但由於效能原因,不為BlueStore推薦使用zstd)。
    • EC池現在完全支援覆蓋,允許它們與RBD和CephFS一起使用。
    • ceph-mgr:
      • ceph-mgr是一個新的後臺程序,這是任何Ceph部署的必須部分。雖然當ceph-mgr停止時,IO可以繼續,
        但是度量不會重新整理,並且某些與度量相關的請求(例如,ceph df)可能會被阻止。我們建議您多部署ceph-mgr的幾個例項來實現可靠性。
      • ceph-mgr守護程序daemon包括基於REST的API管理。注:API仍然是實驗性質的,目前有一些限制,但未來會成為API管理的基礎。
      • ceph-mgr還包括一個Prometheus外掛。
      • ceph-mgr現在有一個Zabbix外掛。使用zabbix_sender,它可以將叢集故障事件傳送到Zabbix Server主機。
        這樣可以方便地監視Ceph群集的狀態,並在發生故障時傳送通知。
    • 叢集的總體可擴充套件性有所提高。我們已經成功測試了多達10,000個OSD的叢集。
    • 目前,每個OSD都具有與其相關聯的裝置類(例如,hdd或ssd),允許CRUSH規則將資料簡單地對映到系統中的裝置的子集。
      通常不需要手動編寫CRUSH規則或手動編輯CRUSH。可以優化CRUSH權重,以保持OSD之間資料的近乎完美的分佈。
    • 還有一個新的upmap異常處理機制,允許單個PG移動以實現完美的分發(這需要客戶端)。
    • 每個OSD目前可以根據後端裝置是HDD還是SSD來調整其預設配置。一般不需要手動調整。
    • 原型mclock QoS排隊演算法已經可用。
    • 新增一種退出機制,可以防止OSD出現對當前不能處理IO物件或PG的請求過載情況。
    • OSD更換過程簡化,變得更加強大了。
    • 您可以使用ceph功能來查詢所有連線的後臺程式和客戶端的支援功能和版本。
    • 通過ceph osd set-require-min-compat-client連線到叢集,您可以配置最舊的Ceph客戶端版本,但 Ceph將阻止您啟用會破壞與這些客戶端的相容性的功能。
    • 包括osd_recovery_sleep,osd_snap_trim_sleep和osd_scrub_sleep的幾個睡眠設定,已經被重新實現,並且可以有效地工作。(這些在某些情況下用於解決問題,限制後臺工作。)
    • 完成對Luminous的升級後,叢集將嘗試將現有池與已知應用(即CephFS,RBD和RGW)相關聯。未與應用程式關聯的使用池將生成健康警告,可以使用新命令手動關聯任何未關聯的池。ceph osd pool application enable
  • RGW

    • RGW支援終端使用者請求服務,通過ElasticSearch進行RGW元資料搜尋,並且還支援自定義元資料欄位。
      查詢語言是一組RESTful API,使用者可以通過其元資料來搜尋物件。還添加了允許自定義元資料欄位控制的新API。
    • RGW支援動態儲存桶索引分片。隨著桶中的物件數量的增加,RGW將自動重新構建桶索引。不需要使用者干預或桶大小容量規劃。
    • RGW引入了上傳物件的伺服器端加密,用於管理加密金鑰的三個選項有:自動加密(僅推薦用於測試設定),客戶提供的類似於Amazon SSE-C規範的金鑰,以及通過使用外部金鑰管理服務 OpenstackBarbician)類似於Amazon SSE-KMS規範。
    • RGW具有初步的類似AWS的儲存桶策略API支援。現在,策略是一種表達一系列新授權概念的方式。未來,這將成為附加身份驗證功能的基礎,例如STS和組策略等。
    • RGW通過使用rados名稱空間合併了幾個元資料索引池。
    • 新增S3物件標記API; 只支援GET / PUT / DELETE和PUT。
    • RGW多站點支援在桶級啟用或禁用同步。
  • RBD

    • RBD目前通過新的–data-pool選項來建立rbd,對EC池具有完整穩定的支援。
    • RBD映象的rbd-mirror後臺程序是可用的。我們建議您多部署幾個rbd映象來實現可靠性。
    • RBD映象的rbd-mirror守護程序使用每個例項的唯一Ceph使用者ID來支援新的Dashboard。
    • 在建立叢集期間,不再自動建立預設的’rbd’池。另外,當沒有指定池時,rbd CLI使用的預設池的名稱可以通過新的rbd default pool = <pool name>配置選項來覆蓋。
    • 通過新的rbd trash命令初始支援延遲映像刪除。映象,即使是由克隆主動使用的映象,也可以移動到垃圾桶,並在以後刪除。
    • 新的管理池級別的rbd mirror poolpromote和rbd mirror pool demote命令可以批量提升/降級池內所有的映象檔案。
    • 映象現在可以通過rbd mirroringreplay delay = <seconds>配置選項支援可配置的複製延遲。
    • 當物件對映功能啟用時,可改進丟棄處理功能。
    • RBD import 和 copy命令現在可以檢測稀疏並保留稀疏區域。
    • 快照可以包含建立時間戳。
    • 為RBD客戶端指定了使用者授權功能簡化。 使用RBD功能配置檔案的一般語法是“mon’profile rbd’osd’profile rbd [-read-only] [pool = {pool-name} [,…]]’”。
  • CephFS

    • 多MDS已經穩定,主MDS數量可以根據需求進行調整。
    • CephFS目錄分片已經穩定的,預設情況下在新的檔案系統上啟用。
      要使其在現有的檔案系統上啟動,要使用“ceph fs set<fs_name> allow_dirfrags”。大型或非常繁忙的目錄被分割並(可能)自動分佈在多個MDS後臺駐留程式中。
    • 在不需要自動負載均衡的情況下,目錄子樹可以明確固定到特定的MDS後臺程式。
    • 客戶端金鑰現在可以使用新的ceph fs authorize命令建立。
    • 當在具有CephFS的Pool上執行’df’命令時,結果顯示的內容是使用和可用的檔案儲存空間資料池(僅限fuse客戶端)。
  • Miscellaneous

    • Debian Stretch現在正在構建版本包。QA僅限於CentOS和Ubuntu(xenial and trusty),我們現在構建的發行版包括: 
      • CentOS 7 (x86_64 and aarch64)
      • Debian 8 Jessie (x86_64)
      • Debian 9 Stretch (x86_64)
      • Ubuntu 16.04 Xenial (x86_64 and aarch64)
      • Ubuntu 14.04 Trusty (x86_64)
    • FreeBSD的Ceph的第一個版本可用。通過常規FreeBSD埠和軟體包釋出系統,最新可用版本:net/ceph-devel。

 

 

在Jewel版本上進行的重要修改

    • RADOS

      • 現在預設為AsyncMessenger (ms type = async)的傳統SimpleMessenger。最明顯的區別是
        我們現在使用固定大小的執行緒池進行網路連線(而不是使用SimpleMessenger,一個socket兩個執行緒)。
      • 優化OSD故障檢測時間,而以前的心跳超時(預設為20秒)。
      • 優化OSDMaps的程式碼量。
      • 叢集在進行重平衡/資料恢復時,OSD會停止Scrub。
    • RGW

      • RGW現在支援S3多物件複製API。
      • 現在可以離線重塑現有的分支。離線目前,桶重塑要求所有IO(特別是寫入)到特定的桶是靜止的。(用於自動線上重塑Luminous的新功能。)
      • RGW現在支援物件的資料壓縮。
      • Civetweb版本已升級到1.8。
      • 現在支援Swift靜態網站API(前提支援S3)。
      • 添加了S3 bucket生命週期API。注意目前只支援物件到期。
      • 支援自定義搜尋過濾器已新增到LDAP認證中實現。
      • 對NFS版本3的支援已新增到RGW NFS閘道器。
    • RBD

      • image快照的數量可配置最大值。
      • rbd Python API現在支援非同步IO操作。