使用S3fs实现挂载华为云OBS桶到ECS服务器

已邀请:

1、安装依赖


yum install -y gcc libstdc++-devel gcc-c++ fuse fuse-devel curl-devel libxml2-devel mailcap git automake make openssl-devel fuse fuse-devel 


2、下载源码(https://gitee.com/mirrors/s3fs-fuse)


git clone https://gitee.com/mirrors/s3fs-fuse.git


3、执行自动化适配脚本


cd s3fs-fuse && ./autogen.sh


4、编译安装

./configure && make && make install


5、创建挂载目录


mkdir /dbbak


6、创建密码文件,如下AK和SK为相应的key

echo AK:SK > /etc/passwd-obsfs
cat /etc/passwd-obsfs
chmod 600 /etc/passwd-obsfs


7、执行挂载


s3fs 桶名称 挂载路径 -o url=https://obs接入点域名 -o passwd_file=/etc/passwd-obsfs -o allow_other -o max_write=131072 -o enable_noobj_cache -o sigv2 -o del_cache  




===================================

参数优化请参考

-o allow_other

本参数用于设置挂载目录可以被任意登陆服务器的用户使用,且可以将该挂载目录用于创建NFS/SMB共享。

-o max_write

本参数用于设置vfs的上传块大小,默认值为4096,可将该数值设置为fuse所支持的最大值128k(即设置-o max_write=131072),以提升性能。

-o use_cache

使用内存作为缓存目录,而非本地磁盘作为cache将提升文件读写性能,即将该值设置为-o use_cache=/dev/shm。如果系统内存使用较高则建议另外挂载一个SSD盘作为缓存目录。

-o enable_noobj_cache

使用本参数后,将减少s3fs发送的列举桶的请求,从而提升性能。

-o big_writes

开启本参数后,内核会进行IO合并,对于大块读写,提升性能。

-o sigv2

缺省值为采用V4鉴权,使用V2鉴权效率更高,兼容性更好。

-o del_cache

文件使用完成后及时清理缓存中的数据。

-o multipart_size(default="10"(10MB))

设定上传是单个分段的大小,缺省值为10MB,按照对象存储支持最大1万个分段,最大支持上传约98GB的对象。如果待上传的文件大小超过100,000MB,则需要调大该参数,最大支持5120单位为MB(对象存储支持单个分片最大5GB)

 

要回复问题请先登录注册