火山引擎 TOS

本指南介绍如何将火山引擎对象存储服务 (TOS) 配置为 Alluxio 的底层存储系统。火山引擎对象存储服务 (TOS) 是火山引擎提供的一种海量、安全、低成本、易于使用、高可靠、高可用的分布式云存储服务。

先决条件

在使用 TOS 与 Alluxio 之前,请遵循 TOS 快速入门指南 注册 TOS 并创建一个 TOS 存储桶。

在开始之前,请确保您已准备好以下所需信息:

<TOS_BUCKET>

创建一个新的 TOS 存储桶或使用现有的存储桶

<TOS_DIRECTORY>

您要在存储桶中使用的目录,可以是创建新目录或使用现有目录

<TOS_ACCESS_KEY_ID>

TOS 的 访问密钥 ID, 在 TOS AccessKey 管理控制台中创建和管理

<TOS_ACCESS_KEY_SECRET>

TOS 的 秘密访问密钥, 在 TOS AccessKey 管理控制台中创建和管理

<TOS_ENDPOINT>

存储桶的互联网端点,可以在存储桶概览页面中找到,其值类似于 tos-cn-beijing.volces.comtos-cn-guangzhou.volces.com。 可用端点在 TOS 互联网端点文档中列出。

<TOS_REGION>

存储桶所在的区域,例如 cn-beijingcn-guangzhou。 可用区域在 TOS 区域文档中列出。

基本设置

通用挂载机制和 UnderFileSystem CR 字段参考,请参阅底层存储

使用 operator 创建 TOS 挂载点的 ufs.yaml 示例:

apiVersion: k8s-operator.alluxio.com/v1
kind: UnderFileSystem
metadata:
  name: alluxio-tos
  namespace: alx-ns
spec:
  alluxioCluster: alluxio-cluster
  path: tos://<TOS_BUCKET>/<TOS_DIRECTORY>
  mountPath: /tos
  mountOptions:
    fs.tos.accessKeyId: <TOS_ACCESS_KEY>
    fs.tos.accessKeySecret: <TOS_ACCESS_KEY_SECRET>
    fs.tos.endpoint: <TOS_ENDPOINT>
    fs.tos.region: <TOS_REGION>

高级设置

请注意,配置选项可以指定为挂载选项或 conf/alluxio-site.properties 中的配置属性。 以下各节将介绍如何将配置设置为属性,但它们也可以通过 --option <key>=<value> 设置为挂载选项。

启用 HTTPS

要启用 HTTPS 协议以与 TOS 进行安全通信,并为数据传输增加一层额外的安全性,请在 conf/alluxio-site.properties 中配置以下设置:

TOS 分片上传

我们使用分片上传方法将一个文件分多个部分上传,每个部分将在一个线程中上传。上传时不会生成任何临时文件。

您可以在 conf/alluxio-site.properties 中指定其他参数以可能加快上传速度。

禁用 TOS 分片上传,上传方法将一次性从头到尾完整上传一个文件。您需要修改 conf/alluxio-site.properties 以包含:

设置请求重试策略

适用于所有对象存储 UFS 类型的重试配置,请参阅 UFS 概览中的请求重试策略

高并发调优

将 Alluxio 与 TOS 集成时,您可以通过调整以下配置来优化性能:

  • alluxio.underfs.tos.retry.max:控制 TOS 的重试次数。默认值为 3。

  • alluxio.underfs.tos.read.timeout:控制 TOS 的读取超时。默认值为 30000 毫秒。

  • alluxio.underfs.tos.write.timeout:控制 TOS 的写入超时。默认值为 30000 毫秒。

  • alluxio.underfs.tos.streaming.upload.partition.size:控制 TOS 流式上传的分区大小。默认值为 64MB。

  • alluxio.underfs.tos.connect.timeout:控制 TOS 的连接超时。默认值为 30000 毫秒。

Last updated