UMCloud存儲團隊 UMCloud優雲數智 昨天
git
本篇爲 2018 年度《Ceph 開發者月報》專欄的第七篇,在《Ceph 開發者月報》中,咱們 UMCloud 存儲團隊將以月度爲單位,爲你們分享當月 Ceph 社區的有趣的提交和重要的變動,方便你們即刻掌握一手 Ceph 社區開發資料。github
每篇將以對象存儲、塊存儲、統一存儲層、集羣管理、基礎庫等模塊組織,爲你們一一介紹。緩存
本月看點:工具
Ceph 對象存儲認證支持 CNCF項目 OPA 實現細粒度的訪問控制oop
對象存儲post
完善 radosgw-admin sync error trim 命令spa
radosgw-admin: ‘sync error trim’ loops until complete 插件
( https://github.com/ceph/ceph/... )日誌
以前對象
radosgw-admin sync error trim
命令最多隻能清理 1000 條記錄,即便經過 start_time/end_time 或是 start_marker/end_marker 指定了清理範圍,但仍最多隻能清理 1000 條記錄,
這就意味着若指定範圍內的 sync error 日誌記錄多於 1000 條,則該命令只能處理一部分日誌記錄。
在上面的提交中,社區對該命令進行了完善,支持清理指定範圍內的全部錯誤日誌記錄。同時,還新增了 –trim-delay-ms 參數,用於控制清理操做的執行頻率。
Ceph RGW 集成 OPA 策略引擎
rgw: Initial work for OPA-Ceph integration
( https://github.com/ceph/ceph/... )
OPA 是一個輕量級的開源通用策略引擎,能夠在整個項目開發堆棧中實現統一的、上下文感知的策略實施。
當前社區但願在 RGW 中集成 OPA。在上面的提交中,社區爲 RGW 和 OPA 的集成進行了一部分初期工做。
塊存儲
librbd 支持 FUA
librbd:optionally support FUA (force unit access) on write requests
( https://github.com/ceph/ceph/... )
在上面的提交中,社區爲 librbd 新增了對 FUA 的支持。若設置爲 FUA 模式,對於寫操做請求,必須將數據寫入到存儲卷後,才返回成功信息。全部的寫請求處理都徹底跳過緩存。
統一存儲層
mon 新增 pg repeer <pgid> 命令
mon/OSDMonitor: add ‘osd repeer <pgid>’ command
( https://github.com/ceph/ceph/... )
在上面的提交中,社區爲 mon 新增了
pg repeer <pgid>
命令,用於強制 pgid 參數指定的 PG 執行 peer 處理。
集羣管理
mgr 新增 crash 插件
mgr/pybind/crash: handle crashdumps
( https://github.com/ceph/ceph/... )
在上面的提交中,社區爲 mgr 實現了 crash 插件,用於收集集羣中各組件的 crash dump 信息,並存儲在 Ceph 集羣中,方便往後進行分析。
針對 crash 插件,主要新增了以下命令
ceph mgr module enable crash
ceph crash post -i <metafile>
ceph rm <crashid>
ceph crash ls
ceph crash stat
ceph crash info <crashid>
ceph crash prune <keep>
實現 mgr 內部各模塊之間能夠相互調用
mgr: enable inter-module calls
( https://github.com/ceph/ceph/... )
dashboard 新增用戶管理界面
mgr/dashboard: Ceph dashboard user management from the UI
( https://github.com/ceph/ceph/... )
工具庫
ceph-volume 新增批量操做命令及相關的操做處理
ceph-volume batch command
( https://github.com/ceph/ceph/... )
vstart.sh 支持啓用 SPDK
vstart.sh: Support SPDK in Ceph development deployment
( https://github.com/ceph/ceph/... )
本月提交狀況