OSS存儲卷概述
您可以在容器服務(wù)Kubernetes集群中使用阿里云OSS存儲卷。本文介紹OSS存儲卷的功能介紹、存儲規(guī)格、適用場景、使用限制及計費說明。
功能介紹
阿里云對象存儲OSS(Object Storage Service)是阿里云提供的海量、安全、低成本、高持久的云存儲服務(wù)。
OSS具有豐富的安全防護能力,支持服務(wù)器端加密、客戶端加密、防盜鏈白名單、細粒度權(quán)限管控、日志審計、合規(guī)保留策略(WORM)等特性。OSS為您的云端數(shù)據(jù)安全進行全方位的保駕護航,并滿足您企業(yè)數(shù)據(jù)的安全與合規(guī)要求。
存儲規(guī)格
對象存儲OSS提供標(biāo)準(zhǔn)、低頻訪問、歸檔、冷歸檔四種存儲類型,全面覆蓋從熱到冷的各種數(shù)據(jù)存儲場景。更多信息,請參見存儲類型概述。
適用場景
根據(jù)業(yè)務(wù)需求,您可以對OSS存儲卷進行以下操作。
業(yè)務(wù)需求 | 參考鏈接 |
存儲應(yīng)用數(shù)據(jù) |
|
加密存儲在OSS存儲卷上的數(shù)據(jù) | 僅支持服務(wù)器端加密。更多信息,請參見服務(wù)器端加密。 具體操作,請參見加密OSS存儲卷。 |
使用限制及說明
OSS存儲卷通過FUSE將對象存儲掛載到本地,與本地存儲和ext4塊存儲相比有一定限制。針對讀寫場景,請盡量避免使用隨機寫和追加寫操作,或直接在掛載路徑下進行壓縮、解壓縮操作。由于寫操作導(dǎo)致的元數(shù)據(jù)和數(shù)據(jù)的不一致性問題,容器服務(wù) Kubernetes 版 ACK(Container Service for Kubernetes)不承諾保障。
您可以使用SDK、ossutil工具實現(xiàn)寫操作。若您需要直接通過OSS存儲卷實現(xiàn)寫操作,建議使用ossfs 1.91及以上版本。更多信息,請參見ossfs 1.91及以上版本新功能介紹及性能壓測。
配置存儲卷的使用說明如下。
OSS為共享存儲,可以同時為多個Pod提供共享存儲服務(wù)。
使用數(shù)據(jù)卷時,每個應(yīng)用使用獨立的PV名稱。
如需掛載OSS Bucket中的子目錄,建議直接使用PV中的path字段,而非subpath方式。若您的業(yè)務(wù)需要使用subpath或subpathExpr配置,為避免因權(quán)限配置錯誤等原因?qū)е聮燧d異常,請先閱讀常見問題中的使用subpath或subpathExpr方式掛載OSS存儲卷異常。
OSS存儲卷是使用ossfs文件進行掛載的FUSE文件系統(tǒng)。
適合于讀文件場景。例如,讀配置文件、視頻、圖片文件等場景。 更多使用限制,請參見ossfs使用限制。
不適用于寫文件的應(yīng)用場景。如需寫入文件,建議您使用SDK實現(xiàn)寫操作。關(guān)于使用SDK實現(xiàn)寫操作的具體操作,請參見OSS存儲讀寫分離最佳實踐。若您需要直接通過OSS存儲卷實現(xiàn)寫操作,建議使用ossfs 1.91及以上版本。更多信息,請參見ossfs 1.91及以上版本新功能介紹及性能壓測。
CSI版本小于1.28時,ossfs以進程形式直接運行在節(jié)點上,支持的節(jié)點操作系統(tǒng)為CentOS、Alibaba Cloud Linux、ContainerOS和龍蜥操作系統(tǒng)。如果節(jié)點操作系統(tǒng)不支持,您可以通過升級CSI版本的方式運行ossfs。
OSS存儲卷掛載根路徑不支持chmod、chown操作,您可以通過配置項mp_umask實現(xiàn)。更多信息,請參見OSS存儲掛載權(quán)限問題。
ossfs使用限制
隨機或者追加寫文件實際為在本地生成新文件重新上傳至OSS服務(wù)端。
因為需要遠程訪問OSS服務(wù)器,list directory等元數(shù)據(jù)操作的性能較差。
文件、文件夾的rename操作不是原子的。
多個客戶端掛載同一個OSS Bucket時,依賴用戶自行協(xié)調(diào)各個客戶端的行為,例如,避免多個客戶端寫入同一個文件等。
不支持硬鏈接(Hard Link)。
CSI plugin為v1.20.7以下的版本時,僅檢測本地修改,而不能檢測其他客戶端或工具的外部修改。
為避免系統(tǒng)的負(fù)載升高,請勿在高并發(fā)讀寫的場景中使用。
計費說明
關(guān)于OSS的計量計費方式,請參見計費概述。