在 JuiceFS 開源一周年之際,我們迎來了首個里程碑版本 JuiceFS v1.0.0 Beta1,并將開源許可從 AGPL v3 修改為 Apache License 2.0,
JuiceFS v1.0.0 Beta1 是一個在生產環境中充分驗證迭代的產物,在延續 JuiceFS 一貫開放、安全、穩定、可靠的品質之上,進一步提供一系列緊貼用戶需求的全新功能,
亮點一:回收站
資料誤刪這樣的情況總是在你我身邊一次又一次上演,周期性備份尚且無法根治,我們需要的是讓洗掉操作可以有回旋的余地,
今天,JuiceFS 正式解鎖這項對于資料保護來說非常重要的功能——回收站,
從 JuiceFS v1.0.0 Beta1 開始,檔案系統默認開啟回收站,任何對檔案的洗掉都會先被移動到回收站,可以隨時找回誤刪的檔案,

如果你的 JuiceFS 檔案系統經常產生洗掉操作,回收站可能會占據很多的空間(默認保留最近 1 天的洗掉資料),你可以調整設定讓 JuiceFS 定期清理回收站中的檔案,
對于新創建的檔案系統,可以在 format 命令中指定 --trash-days 選項,比如 --trash-days 3 代表回收站自動清理存放超過 3 天的檔案,
對于已經在用的檔案系統,可以通過新增的 config 命令調整回收站清理規則,例如:
$ juicefs config "postgres://user:[email protected]:5432/jfs1" --trash-days 3

關于回收站的詳細介紹,請查看 JuiceFS 官方檔案,
亮點二:元資料自動備份
對于資料和元資料分離存盤的分布式檔案系統,元資料的安全和完整直接決定了整個存盤系統的安全和完整,
于我們而言,資料安全絕不是目標,而是始終盡心捍衛的底線,
早在 JuiceFS v0.15.2 我們就增加了備份和恢復元資料的 dump 和 load 命令,讓用戶可以根據實際需要定期備份元資料,從而在基礎的資料庫備份層面之上又增加了一重對元資料的安全保障,
今天,我們又增加了一重保障——元資料自動備份,
從 JuiceFS v1.0.0 Beta1 開始,不論檔案系統通過 mount 命令掛載,還是通過 JuiceFS S3 網關及 Hadoop Java SDK 訪問,每小時都會自動備份元資料并拷貝到物件存盤,

備份檔案存盤在物件存盤的 meta 目錄中,它是一個獨立于資料存盤的目錄,在掛載點中不可見,也不會與資料存盤之間產生影響,用物件存盤的檔案瀏覽器即可查看和管理,
默認情況下,JuiceFS 客戶端每小時備份一次元資料,自動備份的頻率可以在掛載檔案系統時通過 mount 命令的 --backup-meta 選項進行調整,比如 --backup-meta 8h 設定每八個小時執行一次自動備份,
雖然自動備份元資料成為了默認動作,但在多主機共享掛載同一個檔案系統時也不會發生備份沖突,因為 JuiceFS 維護了一個全域的時間戳,確保同一時刻只有一個客戶端執行備份操作,當客戶端之間設定了不同的備份周期,那么就會以周期最短的設定為準進行備份,
另外,JuiceFS 會按照以下規則定期清理備份:
- 保留 2 天以內全部的備份;
- 超過 2 天不足 2 周的,保留每天中的 1 個備份;
- 超過 2 周不足 2 月的,保留每周中的 1 個備份;
- 超過 2 個月的,保留每個月中的 1 個備份,
亮點三:新增 config 命令調整檔案系統配置
由于元資訊全部存盤在資料庫中,在過去,JuiceFS 檔案系統一旦創建,若需要調整檔案系統的配置要使用 format 命令進行修改,還需要帶上之前格式化檔案系統時的那些引數,再就是直接操作資料庫,在相應的資料表中小心翼翼的修改,操作不當還有可能損壞資料庫,毫無疑問,過去的幾種修改方式既麻煩,又存在一定風險,
為了解決這個問題,JuiceFS v1.0.0 Beta1 新增加了 config 命令,讓你可以通過客戶端就能修改檔案系統的基本資訊,

本次更新的 config 命令支持修改檔案系統的容量配額、inodes 配額、物件存盤及密鑰、回收站清理規則,
亮點四:新增 destroy 命令銷毀檔案系統
在之前,如果決定停用一個 JuiceFS 檔案系統,需要分別操作物件存盤和資料庫清理資料,如果資料量特別大時會十分耗費精力,
為此,JuiceFS v1.0.0 Beta1 特別新增了 destroy 命令,只需一條命令即可完成檔案系統的銷毀,

如上圖,銷毀操作除了要指定元資料存盤的 URL 之外,還需要指定檔案系統的 UUID,這可以在一定程度上避免誤操作,
注意:銷毀檔案系統是一項高風險操作,請務必謹慎使用!
更多功能
除了上述幾項功能之外,JuiceFS v1.0.0 Beta1 還增加了以下新功能:
- 新增
--max-deletes選項,控制并行洗掉檔案的執行緒數; - 新增
--consul選項,將監控指標 API 注冊到 Consul 中; - 新增
--keep-etag選項,保留上傳到 S3 網關的物件的 ETag; - 新增
--check-all和--check-new選項,允許通過sync命令同步資料時校驗資料的完整性; - sync 命令支持同步匿名訪問的物件存盤的資料
有關 JuiceFS 新版的更多內容,歡迎了解詳情,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/415280.html
標籤:其他
上一篇:MongoDB 副本集
下一篇:如何自學編程?
