【教程】使用S3fs让KEC云主机直接挂载KS3 金山云对象存储bucket

 S3fs是一款基于FUSE的文件系统适配器,通过S3fs能够使对象存储直接挂载到云平台虚拟机,如云硬盘一般使用,非常的方便。
本教程教你如何在Linux系统上使用S3fs

对于Ubuntu 14.04,执行:

sudo apt-get install automake autotools-dev fuse g++ git libcurl4-gnutls-dev libfuse-dev libssl-dev libxml2-dev make pkg-config

对于CentOS7,执行:

sudo yum install automake fuse fuse-devel gcc-c++ git libcurl-devel libxml2-devel make openssl-devel

而对于CentOS6.5,需要手动更新fuse包,到libfuse 2.8.4。

安装依赖完成后,接着安装S3fs本体:

git clone https://github.com/s3fs-fuse/s3fs-fuse.git

cd s3fs-fuse/
./autogen.sh 
./configure
make
make install

为了能够对接上KS3对象存储服务,你还需要配置上你的AK(Access Key)和SK(Secret Key)到S3fs的配置文件中,使用以下命令:

echo AK:SK> ~/.passwd-s3fs
chmod 600  ~/.passwd-s3fs
#AK 和 SK 到云平台获取哦

至此安装和配置完成,可以开始使用。例如我们将S3fs挂载到 /mnt/yourname 这个目录,本例中KS3的域名为(ks3-cn-beijing.ksyun.com),注意你的Bucket域名是否匹配。

s3fs 你的桶名 /mnt/yourname -o url=https://ks3-cn-beijing.ksyun.com -o passwd_file=~/.passwd-s3fs

至此,S3fs挂载完成。

-----------分割线--------------

上文讲了基本的挂载方式, 如果对性能有极致要求,下面有一些参数优化请参考

扫描二维码关注公众号,回复: 4029190 查看本文章

-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)

关于S3fs,这里还有另一篇文章可以参考:https://bbs.huaweicloud.com/forum/thread-11650-1-1.html

华为做的优化参数测试:

s3fs obs-hpc-test /data_obs/ -o passwd_file=/root/.passwd-s3fs -o url=http://obs.cn-north-1.myhwclouds.com/ -o allow_other -o umask=0 -o max_write=131072 -o use_cache=/dev/shm -o big_writes -o enable_noobj_cache -o sigv2 -o del_cache

猜你喜欢

转载自www.cnblogs.com/zhangmingda/p/9943375.html
今日推荐