rclone访问DLF全托管存储

本文将介绍如何给使用rclone访问DLF。

前提条件

说明
  • 本文的示例环境皆为VPC接入地址(内网)为参考,请注意服务接入点的选择。

  • rclone完成安装即可,无需配置。后续将提供独立配置,不影响现有环境。

操作步骤

  1. 下载generate-dlf-catalog-token.sh脚本,将其上传到DLF CLI工具所在的bin目录下,赋予可执行权限。

    chmod 755 ${DLF_CLI安装目录}/dlf-cli/bin/generate-dlf-catalog-token.sh
  2. 配置aws config,设置catalog token获取方式,执行如下命令编辑文件。

    mkdir -p ~/.aws && vim ~/.aws/config
    1. 增加一个 profile 配置dlf-catalog-token-profile

      • ${regionId}:地域ID

      • ${catalog}:Catalog名称

        [profile dlf-catalog-token-profile]
        region = ${regionId}
        credential_process = "${DLF_CLI安装目录}/dlf-cli/bin/generate-dlf-catalog-token.sh --catalog ${catalog} --credential-format s3"
    2. 配置 rclone,执行如下命令编辑文件。

      vim ~/.config/rclone/rclone.conf

      增加一个dlf-remote配置。

      [dlf-remote]
      type = s3
      provider = Alibaba
      env_auth = true
      endpoint = ${oss.endpoint}
      acl = private
      profile = dlf-catalog-token-profile

      参数

      参数说明

      type

      存储类型。本文固定为 s3。

      provider

      s3 协议提供商。本文固定为 Alibaba。

      env_auth

      是否需要在 runtime 获取 credentials。本文固定为 true。

      endpoint

      OSS服务接入点。选择和 DLF 同地域的访问域名。

      acl

      Object 的读写权限。本文以 private 为例。

      profile

      填写上一步中的 profile 配置。

同步DLF表文件

  1. 获取表路径(${tablePath})。

    控制台查看

    1. 登录DLF控制台

    2. 选择数据目录 > Catalog > 数据库 > 表列表 > 表详情

      image

    DLF CLI工具查看

    进入DLF CLI工具的bin目录,执行以下命令,输出的path即为表路径。

    ./dlf table get --full_name <catalogName.databaseName.tableName> 

    示例

    ./dlf table get --full_name dlf_catalog.default.test_table
  2. 执行以下命令同步 DLF Table 下所有文件到本地。

    rclone sync dlf-remote:${tablePath} /local/path/