前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于CenterOS7环境下本地挂载云端COS对象存储桶256TB!

基于CenterOS7环境下本地挂载云端COS对象存储桶256TB!

原创
作者头像
TCS-F
修改2018-12-12 15:48:00
2.9K0
修改2018-12-12 15:48:00
举报

基于腾讯云COSFS工具的256TB大容量网盘挂载技术实践

一、方案目的介绍

方案客户群体:企业或个人海量文件存储备份,数据迁移灾备,数据云端灾备服务,实现本地挂载COS存储256TB大容量网盘。

(1)COSFS 工具支持将 COS 存储桶挂载到本地,像使用本地文件系统一样直接操作腾讯云对象存储中的对象,COSFS适用Ubuntu、CenterOS、MacOS等主流系统。

(2)支持 POSIX 文件系统的大部分功能,如:文件读写、目录操作、链接操作、权限管理、uid/gid 管理等功能。

(3)大文件分块传输功能。

(4)MD5 数据校验功能。

方案目标:实现云端----本地的海量数据灾备迁移,实现有公网能力的linux主机或云下用户直接挂载使用COS对象存储桶,实现云数据共享、存储、备份服务。

使用产品:腾讯云COS对象存储、本地虚拟机CenterOS7.3/系统盘20G/1核2G内存。

二、方案架构

三、COS数据安全架构

四、方案部署

1.获取源码

您首先需要从 GitHub 上将 COSFS 源码 下载到指定目录,下面以目录 /usr/cosfs 为例:

代码语言:shell
复制
git clone https://github.com/tencentyun/cosfs /usr/cosfs

2.安装依赖软件的软件

COSFS 的编译安装依赖于 automake、git、libcurl-devel、libxml2-devel、fuse-devel、make、openssl-devel 等软件包, CentOS的依赖软件安装过程如下:

代码语言:shell
复制
sudo yum install automake gcc-c++ git libcurl-devel libxml2-devel fuse-devel make openssl-devel fuse

3.进入下载目录/usr/cosfs/并查看README等文件

4.在下载目录下执行安装COSFS工具软件.

4.1 执行安装脚本等命令

代码语言:shell
复制
cd /usr/cosfs
./autogen.sh
./configure
make
sudo make install
cosfs --version

4.2执行编译配置

注:如果安装时报错,官网给出了报错处理的提示

https://cloud.tencent.com/document/product/436/6883

5.COSFS工具配置文件参数填写

5.1在腾讯控制台创建一个自己的存储桶,建议用记事本把命令和信息一次性写好再运行。

5.2根据官网给出的格式填写命令

注意: 您需要将 <Name>、<Appid>、<SecretId> 和 <SecretKey> 替换为您的信息。 在 test-1253972369 这个 Bucket 中,<Name> 为 test, <Appid> 为 1253972369, Bucket 命名规范,请参见 存储桶命名规范。<SecretId> 和 <SecretKey> 请前往访问管理控制台的 云 API 密钥管理 中获取。

代码语言:shell
复制
echo <Name>-<Appid>:<SecretId>:<SecretKey> > /etc/passwd-cosfs      #命令格式示范
代码语言:javascript
复制
chmod 640 /etc/passwd-cosfs #此处是给目录添加可读写权限

5.3将命令全部准备复制,核对信息无误后准备执行。

5.4在centerOS7.3系统中执行命令,并附加权限给/etc/passwd-cosfs

6.运行工具

将已经在密钥文件中配置好信息的存储桶挂载到指定目录,可以使用如下命令行:

代码语言:shell
复制
cosfs <Name>-<Appid> <MountPoint> -ourl=<CosDomainName> -odbglevel=info

其中:

  • <MountPoint> 为本地挂载目录(如 /mnt)。
  • <CosDomainName> 为存储桶对应的访问域名,形式为 http://cos.<Region>.myqcloud.com (适用于XML API),其中<Region> 为地域简称, 如: ap-guangzhou 、 eu-frankfurt 等。更多地域信息,请查阅 可用地域
  • -odbglevel 指定日志级别。

6.1创建挂载目录 mkdir /munt/mnt-cos 注意这里只是挂载网盘的目录挂载点。

6.2执行挂载命令(建议用记事本粘贴复制一整条命令)

7.查看挂载信息。

由图可以看到我们的本地mnt-cos目录上挂载上了一个256TB数据盘

8.测试验证

8.1这里我们复制一个60MB大小的视频文件到这个目录下,做下测试。

我们发现,上传速度很快,没有限制,基本在2.6MB/S,只是根据本地带宽大小而定,如果是专线,那么速度肯定会更快!

8.2大概20秒左右,我们的视频就从本地目录上传到了挂载的云端COS目录上了。

8.3检查存储桶。在腾讯云控制台上查看存储桶中是否存在这个文件

8.4这里我们发现挂载的目录没有什么影响,大小连0.1%也没用到。

8.5最后我们再次验证,直接将左面上的视频文件mv上云端的目录。速度达到3.5MB/S。

9.总结:

综上所述,本次实验成功挂载一个存储桶到本地的Linux虚拟机,实现256TB本地挂载。

(1)本次实验验证了本地----腾讯云端COS的强大存储能力,能够承载大容量存储。

(2)本次上传的速度相对较慢,是因为本地就给了12M带宽,所以受限。

(3)COSFS工具适合任意有公网能力的主机挂载云端COS对象存储,达到海量存储,简单实用,这样就能实现,数据灾备,本地容量上限,使用云端扩容本地,实现业务扩容。

(4)本实践自己还有一个节,就是如何实现【开机自动挂载】,因为是工具,所以只能是命令操作,自己设想的是要么就是crontab+shell脚本实现或者/etc/fstable挂载就好了,留个后续研究者。

10.FA&Q实践踩坑:

(1)为什么git不了文件目录?

答:自己本地的机器没有初始化,环境初始化,更新yum仓库,安装更新git包。

(2)编译时老是报错,有error出现,找了很多,都没有作用?

答:依赖包没有安装fuse-devel,很难弄,我是直接安装*.deve

代码语言:shell
复制
sudo yum install automake gcc-c++ git libcurl-devel libxml2-devel fuse-devel make openssl-devel fuse

(3)编译安装时还会报错?

答:我是先检查这个目录是否存在,后面make install再次安装了一次成功,后面直接运行命令。

(4)在执行很长的秘钥存储桶命令时一定要用笔记本写好再一次性执行,后面安装tools。

本次实践依据腾讯云官网COSFS官网文档指导,参考链接:

https://cloud.tencent.com/document/product/436/6883

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 基于腾讯云COSFS工具的256TB大容量网盘挂载技术实践
  • 一、方案目的介绍
  • 二、方案架构
  • 三、COS数据安全架构
  • 四、方案部署
    • 1.获取源码
      • 2.安装依赖软件的软件
        • 3.进入下载目录/usr/cosfs/并查看README等文件
          • 4.在下载目录下执行安装COSFS工具软件.
            • 4.1 执行安装脚本等命令
            • 4.2执行编译配置
          • 5.COSFS工具配置文件参数填写
            • 5.1在腾讯控制台创建一个自己的存储桶,建议用记事本把命令和信息一次性写好再运行。
            • 5.2根据官网给出的格式填写命令
            • 5.3将命令全部准备复制,核对信息无误后准备执行。
            • 5.4在centerOS7.3系统中执行命令,并附加权限给/etc/passwd-cosfs
          • 6.运行工具
            • 6.1创建挂载目录 mkdir /munt/mnt-cos 注意这里只是挂载网盘的目录挂载点。
            • 6.2执行挂载命令(建议用记事本粘贴复制一整条命令)
          • 7.查看挂载信息。
            • 8.测试验证
              • 8.1这里我们复制一个60MB大小的视频文件到这个目录下,做下测试。
              • 8.2大概20秒左右,我们的视频就从本地目录上传到了挂载的云端COS目录上了。
              • 8.3检查存储桶。在腾讯云控制台上查看存储桶中是否存在这个文件
              • 8.4这里我们发现挂载的目录没有什么影响,大小连0.1%也没用到。
              • 8.5最后我们再次验证,直接将左面上的视频文件mv上云端的目录。速度达到3.5MB/S。
            • 9.总结:
              • (1)本次实验验证了本地----腾讯云端COS的强大存储能力,能够承载大容量存储。
              • (2)本次上传的速度相对较慢,是因为本地就给了12M带宽,所以受限。
              • (3)COSFS工具适合任意有公网能力的主机挂载云端COS对象存储,达到海量存储,简单实用,这样就能实现,数据灾备,本地容量上限,使用云端扩容本地,实现业务扩容。
              • (4)本实践自己还有一个节,就是如何实现【开机自动挂载】,因为是工具,所以只能是命令操作,自己设想的是要么就是crontab+shell脚本实现或者/etc/fstable挂载就好了,留个后续研究者。
            • 10.FA&Q实践踩坑:
              • (1)为什么git不了文件目录?
              • (2)编译时老是报错,有error出现,找了很多,都没有作用?
              • (3)编译安装时还会报错?
              • (4)在执行很长的秘钥存储桶命令时一定要用笔记本写好再一次性执行,后面安装tools。
          相关产品与服务
          对象存储
          对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档