本文介绍如何通过命令行工具快速使用云存储网关软件版。

前提条件

  1. 已注册阿里云账号,并完成实名认证。具体操作,请参见注册阿里云账号
    说明 建议您使用RAM用户登录云存储网关控制台进行相关操作。更多信息,请参见账号访问控制
  2. 已开通云存储网关服务。首次登录云存储网关控制台时,根据页面提示开通云存储网关服务。
  3. 已有可用的客户端机器。具体操作如下:
    1. 线上云存储网关软件版:在创建云存储网关软件版的地域,已有可用的云服务器ECS作为客户端机器。具体操作,请参见创建ECS实例
      说明 线上云存储网关软件版当前支持的操作系统如下:
      • Linux操作系统:CentOS 7、Alibaba Cloud Linux 2
      • Windows操作系统:Windows server 2016、Windows Server 2019
    2. 线下云存储网关软件版:需要根据以下说明部署云存储网关软件版机器。
      说明
      • 操作系统:
        • Linux操作系统:CentOS 7、Alibaba Cloud Linux 2
        • Windows操作系统:Windows server 2016、Windows Server 2019
      • 要求机器可以访问公网,或者可以通过阿里云专线等方式接入阿里云VPC。
  4. 已创建OSS Bucket。具体操作,请参见创建存储空间
    说明 云存储网关软件版支持标准(Standard)类型和低频访问(IA)类型的OSS Bucket。
  5. 已创建阿里云AccessKey信息,更多信息,请参见用户信息管理控制台

步骤一:下载云存储网关软件版安装包

Linux操作系统

下载链接:

CsgAgent-Linux.rpm

Windows操作系统

下载链接:

CsgAgent-Win64.zip

步骤二:安装云存储网关软件版

说明 在安装线下云存储网关软件版时,如果部分依赖项无法下载导致安装失败,可以根据安装失败的提示,自行安装对应版本的依赖项。

Linux操作系统

  1. 以0.5.9版本为例,从官网下载安装包CsgAgent-0.5.9-Linux.rpm至客户端,然后执行命令rpm -i CsgAgent-0.5.9-Linux.rpm
  2. 安装完成后,执行安装脚本/usr/local/bin/Aliyun/csg/scripts/install.sh
  3. 您可以执行命令csgfsctl --help查看云存储网关软件版安装情况。

Windows操作系统

  1. 以0.5.9版本为例,从官网下载安装包CsgAgent-0.5.9-win64.zip至客户端,然后解压安装包。
    说明
    • 安装包里包含:CsgAgent-0.5.9-win64.msi、install.bat、uninstall.bat三个文件。
    • CsgAgent-0.5.9-win64.msi、install.bat、uninstall.bat三个文件需要处于同一目录下。
    • 建议解压文件时,保持压缩包内的文件目录结构不变。
  2. 用管理员权限运行install.bat进行安装。
  3. 您可以执行csgfsctl --help查看云存储网关软件版安装情况。

步骤三:激活云存储网关软件版

云存储网关软件版安装完成后,需要对其进行激活才能正常使用。

  • 线上云存储网关软件版:执行csgfsctl activate --ak=xxx --sk=xxx进行激活。
    说明 激活云存储网关软件版需要您提供账户AccessKey和AccessKey Secret信息。可以使用RAM账户AccessKey和AccessKey Secret,账户需要具备AliyunHCSSGWFullAccess权限。
  • 线下云存储网关软件版:执行csgfsctl activate --region=xxx --ak=xxx --sk=xxx进行激活。
    说明 激活云存储网关软件版需要您提供Region(以北京地域为例,region为cn-beijing)、用户AccessKey以及AccessKey Secret信息。可以使用RAM用户AccessKey和AccessKey Secret,用户需要具备AliyunHCSSGWFullAccess权限。

激活成功后,您可以登录云存储网关控制台,选择对应的地域,查看对应的云存储网关软件版信息。

步骤四:创建挂载

以一个在北京地域的阿里云ECS客户端上创建挂载点为例。
  • Linux操作系统:/mnt/test为挂载点路径,/root/cache为缓存路径,使用的Bucket名称为beijing,缓存大小设置为50 GB,Bucket子目录设置为test,其命令行如下:
    csgfsctl create --mp=/mnt/test --cd=/root/cache --ak=xxx --sk=xxx --ep=oss-cn-beijing-internal.aliyuncs.com --bucket=beijing -c=50 --prefix=test --work-mode=standard
  • Windows操作系统:D:\test为挂载点路径,D:\cache为缓存路径,使用的Bucket名称为beijing,缓存大小设置为50 GB,Bucket子目录设置为test,其命令行如下:
    csgfsctl create --mp=D:\test --cd=D:\cache --ak=xxx --sk=xxx --ep=oss-cn-beijing-internal.aliyuncs.com --bucket=beijing -c=50 --prefix=test --work-mode=standard
您可以执行csgfsctl create --help查看创建挂载的使用说明。具体的参数配置,请参见下表。
参数 是否必选 说明
--mountpoint(简写:-mp) 挂载点路径,例如:/mnt/test/。
说明
  • 配置挂载时,需要确保挂载点路径下无任何数据。
  • Windows操作系统:
    • 挂载点路径请不要使用已有磁盘的根目录。
    • 挂载点可以是一个新的磁盘符,如Z:\。
--cache-dir(简写:-cd) 缓存路径,包括元数据缓存和数据缓存等。
说明
  • 配置挂载时,需要确保缓存路径下无任何数据。
  • Windows操作系统:缓存路径请不要使用已有磁盘的根目录。
--access-key(简写:-ak) 输入具有OSS Bucket读写权限的AccessKey,可以是RAM用户AccessKey。
--access-key-secret(简写:-sk) 账户AccessKey Secret。
--endpoint(简写:-ep) OSS Bucket Endpoint。
说明 如果您使用的是线上机器(阿里云ECS):
  • 如果您需要跨地域访问(客户端和OSS Bucket不在一个地域),那么您必须使用公网Endpoint。
  • 如果您不需要跨地域访问,由于公网传输速度较慢,建议您使用阿里云内网Endpoint(oss-xxx-xxx-internal.aliyuncs.com)。
--bucket(简写:-b) OSS Bucket名称。
--prefix(简写:-p) Bucket子目录。
说明 若为空,则挂载点以OSS Bucket为根目录。若不为空,则挂载点以该子目录为根目录。
--cache-size-gb(简写:-c) Cache预留的磁盘空间。
说明
  • 可选区间为:20~32768(或磁盘剩余空间)。
  • 建议实际空间比设置的CacheGB大2 GB。
--work-mode(简写:-wm) 读写模式。默认为standard(标准模式)。其他可选项为:
  • seq-write(顺序写模式)
  • read-only(只读模式)
配置成功后,您可以像操作本地目录一样操作共享目录。
说明 云存储网关软件版的共享目录与OSS Bucket之间进行了数据同步,您对共享目录的操作实际也是对OSS进行操作。

其他相关操作

获取挂载点信息

您可以执行csgfsctl get --help查看获取挂载点信息的使用说明。具体的参数配置,请参见下表。
参数 是否必选 说明
--mountpoint(简写:-mp) 挂载点路径。
说明 如果不指定mountpoint,则获取所有挂载点信息,否则获取指定的挂载点信息。
--details 获取更详细的挂载点信息。

修改挂载点配置

  • Linux操作系统:以挂载点/mnt/test为例,打开反向同步功能,并将反向同步间隔时间设置为600秒,其命令行如下:
    csgfsctl set --mountpoint=/mnt/test --reverse-sync=true --rs-interval=600
  • Windows操作系统:以挂载点D:\test为例,打开反向同步功能,并将反向同步间隔时间设置为600秒,其命令行如下:
    csgfsctl set --mountpoint=D:\test --reverse-sync=true --rs-interval=600
您可以执行csgfsctl set --help查看修改挂载点配置的使用说明。具体的参数配置,请参见下表。
参数 是否必选 说明
--mountpoint(简写:-mp) 挂载点路径。
--reverse-sync(简写:-rs) 反向同步功能。可能值:
  • true:打开反向同步。
  • false:关闭反向同步。
说明 开启反向同步功能,云存储网关软件版可以将OSS Bucket中的元数据信息同步到本地。云存储网关软件版的性能会有一定损耗。
--rs-interval(简写:-rsi) 反向同步间隔时间,单位:秒(s)。
说明
  • 仅当反向同步打开时生效。取值区间为:10~36000,默认值为300。
  • 在反向同步时间间隔内,访问同一个目录只会触发一次反向同步。
  • 当文件夹下文件数目较多(上万级别),建议把反向同步时间设置为300s以上。
--ignore-delete 忽略删除。可能值:
  • true:打开忽略删除。
  • false:关闭忽略删除。
说明 删除操作仅针对于本地缓存,不会同步到OSS Bucket。
--oss-direct-read 直读OSS,非必要不建议开启此功能。可能值:
  • true:打开直读OSS。
  • false:关闭直读OSS。
说明 默认情况下,收到一个读请求时,如果数据缓存未命中,云存储网关软件版会去OSS Bucket下载数据并且存储到本地磁盘缓存,会有一定的数据预读。但是如果您的读请求完全是随机请求,并且设置的缓存容量远小于对应的OSS Bucket容量,这时数据预读并落盘可能会效果不佳,可以考虑开启这个功能。
--upload-delay 同步延迟,本地缓存同步到OSS Bucket的延迟时间,单位:秒(s)。
说明
  • 取值区间为:0~120,默认值为2。
  • 在关闭文件后会延迟一段时间上传数据至OSS,防止频繁的本地修改操作产生OSS碎片。
--upload-bandwidth-limit 上传带宽限流,单位:MB/s。
--rw-bandwidth-limit 读写带宽限流,单位:MB/s。
--download-bandwidth-limit 下载带宽限流,单位:MB/s。
--seq-mode 顺序写模式。可能值:
  • true:由标准模式切换至顺序写模式。
  • false:由顺序写模式切换至标准模式。
说明
  • 如果希望使用顺序写模式,建议在create时,work-mode设置为seq-write。
  • 在设置SeqMode选项时,由于涉及到云存储网关软件版写模式的转变,因此请确保设置时挂载点没有IO。
  • 在SeqMode没有设置成功之前,新的IO请求均会返回失败。
  • 在标准模式下,如果挂载点IO刚结束,同时有很多文件正在上传,那么设置SeqMode选项时,可能会耗时较久,甚至超时。
--slient(简写:-s) 切换写模式时,用户需手动输入y或者N,决定是否继续。可以在命令中加入此参数跳过提示,自动执行。

删除挂载点

您可以执行csgfsctl remove --help查看删除挂载点的使用说明。具体的参数配置,请参见下表。
参数 是否必选 说明
--mountpoint(简写:-mp) 挂载点路径。
--force 如果遇到挂载点删除不掉的情况,可以加上此参数进行强制删除。

日志功能

您可以执行csgfsctl log一键收集日志。
说明
  • Linux操作系统:生成的日志位于/usr/local/bin/Aliyun/csg/路径下。
  • Windows操作系统:生成的日志位于C:\Program Files\Aliyun\csg\bin路径下。

卸载云存储网关软件版

  • Linux操作系统:您可以执行/usr/local/bin/Aliyun/csg/scripts/uninstall.sh卸载云存储网关软件版。
  • Windows操作系统:您可以用管理员权限执行uninstall.bat卸载云存储网关软件版。
说明 由于卸载时会强制移除挂载点,因此请务必确保当前挂载点不再使用。