Skip to main content
 首页 » 网络技术

CentOS下利用OSSFS把阿里云OSS挂载到ECS进行加速

2016年10月14日435

之前介绍过七牛云存储,而阿里云OSS同样是对象存储服务,和七牛云存储等类似,也算是一个免费的CDN了,价格也比较便宜,最近发现一个工具OSSFS,我们利用这个工具,可以将OSS挂载到阿里云ECS服务器上,可以达到存储/备份的目的.当然,最主要的是可以减轻服务器的压力.

OSSFS功能

在先补充一下,具体的介绍,我们可以在github项目上查看,地址是:由此直达.

ossfs 能让您在Linux/Mac OS X 系统中把Aliyun OSS bucket 挂载到本地文件 系统中,您能够便捷的通过本地文件系统操作OSS 上的对象,实现数据的共享.

1.支持POSIX 文件系统的大部分功能,包括文件读写,目录,链接操作,权限, uid/gid,以及扩展属性(extended attributes)

2.通过OSS 的multipart 功能上传大文件.

3.MD5 校验保证数据完整性.

OSSFS的安装

SSH连接到服务器,分别执行下面的命令:

wget https://github.com/aliyun/ossfs/releases/download/v1.79.9/ossfs_1.79.9_centos6.5_x86_64.rpm
sudo yum localinstall ossfs_1.79.9_centos6.5_x86_64.rpm

运行与示例

1.设置bucket name, access key/id信息,将其存放在/etc/passwd-ossfs 文件中, 注意这个文件的权限必须正确设置,建议设为640.

echo my-bucket:my-access-key-id:my-access-key-secret > /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs

2.将oss bucket mount到指定目录

ossfs my-bucket my-mount-point -ourl=my-oss-endpoint

3.新建一个Bucket空间,这里我用的我博客测试,命名为xiangtabk

CentOS下利用OSSFS把阿里云OSS挂载到ECS进行加速

在这里说明一下,因为是新建的Bucket,所以没有任何东西

CentOS下利用OSSFS把阿里云OSS挂载到ECS进行加速

4.然后我们再指定AccessKeyId

CentOS下利用OSSFS把阿里云OSS挂载到ECS进行加速

下面是将华北 1 (青岛)bucket名字为xiangtabk,AccessKeyId是IDXXXXXXXXXXXXXXXX, AccessKeySecret是KeyXXXXXXXXXXXXXXXXXXXXX(这里的AccessKeyId和AccessKeySecret请到阿里云查看,本人用XXXXXXX代表了),oss endpoint是xiangtabk.oss-cn-qingdao-internal.aliyuncs.com(内网)挂载到/home/ossfs目录.

Endpoint对照表请访问:OSS开通Region和Endpoint对照表查看.

echo xiaoz:faint:123 > /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs
mkdir /home/ossfs
ossfs xiaoz /home/ossfs -ourl=xiangtabk.oss-cn-qingdao-internal.aliyuncs.com

取消挂载

直接输入umount /home/ossfs即可

OSS不仅可以通过内网还可以通过公网挂载,如果您在阿里云同时购买了同一个区域的ECS和OSS那么将OSS挂载到内网用于达到文件存储或备份的目的,下面是挂载后的截图,如下:

CentOS下利用OSSFS把阿里云OSS挂载到ECS进行加速

另外,在官方的介绍页面上看到:如果使用ossfs的机器是阿里云ECS,可以使用内网域名来避免流量收费和提高速度,设置如下:

ossfs my-bucket /tmp/ossfs -ourl=xiangtabk.oss-cn-qingdao-internal.aliyuncs.com

如果您还没有使用过阿里云OSS,而刚好又是使用的阿里云的主机,那么可以试试这个,目前有免费的存储空间,不过不多,后面有可能会收费.