ceph版本號


概述

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM