1.簡介
s3fs允許Linux和macOS通過FUSE掛載ceph rgw bucket,s3fs保留文件原來的對(duì)象格式虎敦。本文簡要測(cè)試在Centos下掛載ceph rgw bucket陡叠。
2.環(huán)境配置信息說明
ceph版本:Nautilus 14.2.8
操作系統(tǒng)信息:Centos7
3.配置實(shí)測(cè)
3.1 安裝s3fs-fuse
sudo yum install epel-release
sudo yum install s3fs-fuse
3.2配置s3fs密鑰文件
命令:
echo ACCESS_KEY_ID:SECRET_ACCESS_KEY > ${HOME}/.passwd-s3fs
chmod 600 ${HOME}/.passwd-s3fs
ACCESS_KEY_ID:測(cè)試bucket用戶的access_key
SECRET_ACCESS_KEY:測(cè)試bucket用戶的secret_key
例如:用戶test的access_key為123456,secret_key為654321隅忿,則:
[root@node44 s3fs]# echo 123456:654321 > ~/.passwd-s3fs
[root@node44 s3fs]# cat /root/.passwd-s3fs
123456:654321
[root@node44 s3fs]# chmod 600 ~/.passwd-s3fs
3.3掛載bucket
命令:
s3fs <bucketname> <mountpoint> -o passwd_file=${HOME}/.passwd-s3fs -o url=http://url:7480 -o use_path_request_style
<bucketname>:替換實(shí)踐需要掛載的桶名
<mountpoint>:替換掛載點(diǎn)
例如:將test用戶的testbucket掛載到/root/mnt_s3fs下,則:
s3fs testbucket /root/mnt_s3fs/ -o passwd_file=~/.passwd-s3fs -o url=http://10.0.9.44:7480 -o use_path_request_style
查看掛載是否成功:
[root@node44 ~]# df | grep s3fs
s3fs 274877906944 0 274877906944 0% /root/mnt_s3fs
[root@node44 ~]#
3.4簡要測(cè)試
測(cè)試寫入:
4.s3fs特性
兼容POSIX的較大子集,包括讀/寫文件荣倾,目錄,符號(hào)鏈接骑丸,模式舌仍,uid / gid和擴(kuò)展屬性
與Amazon S3和其他基于S3的對(duì)象存儲(chǔ)兼容
允許隨機(jī)寫入和追加
通過分段上傳大文件
通過服務(wù)器端副本重命名
可選的服務(wù)器端加密
通過MD5哈希保證數(shù)據(jù)完整性
內(nèi)存中緩存元數(shù)據(jù)
用戶指定的區(qū)域,包括Amazon GovCloud
可通過v2或v4簽名進(jìn)行身份驗(yàn)證
5.s3fs局限性
通常者娱,S3無法提供與本地文件系統(tǒng)相同的性能或語義抡笼。進(jìn)一步來說:
隨機(jī)寫入或追加文件需要重寫整個(gè)對(duì)象,使用分段上傳副本進(jìn)行了優(yōu)化
元數(shù)據(jù)操作(如列出目錄)由于網(wǎng)絡(luò)延遲而導(dǎo)致性能不佳
非AWS提供商可能最終具有一致性黄鳍,因此讀取可以臨時(shí)生成陳舊數(shù)據(jù)(AWS自2020年12月以來提供寫入后讀取一致性)
不支持文件或目錄的原子重命名
掛載同一存儲(chǔ)桶的多個(gè)客戶端之間沒有協(xié)調(diào)
不支持硬鏈接
inotify僅檢測(cè)本地修改推姻,而不檢測(cè)其他客戶端或工具的外部修改