Alluxio
ProductsLanguageHome
  • Alluxio概览
  • 用户指南
    • 快速上手指南
    • 架构
    • FAQ
    • 作业服务器
    • 应用场景
  • 核心功能
    • 缓存
    • 统一命名空间
  • 部署 Alluxio
    • 在Kubernetes上部署Alluxio
    • 本地运行Alluxio
    • 在集群上独立运行Alluxio
    • 在Docker上运行Alluxio
    • 在具有HA的群集上部署Alluxio
    • 使用Docker部署AlluxioFuse加速深度学习训练(试验)
    • 基本要求
  • 云源生
    • Tencent EMR
  • 计算应用
    • Apache Spark
    • Presto
    • Spark on Kubernetes
    • Apache Flink
    • Apache Hadoop MapReduce
    • Presto on Iceberg (Experimental)
    • Trino
    • Apache Hive
    • 深度学习框架
    • Tensorflow
  • 底层存储系统
    • Alluxio集成Amazon AWS S3作为底层存储
    • Alluxio集成GCS作为底层存储
    • Alluxio集成Azure Blob Store作为底层存储
    • Azure Data Lake Storage Gen2
    • Azure 数据湖存储
    • Alluxio集成HDFS作为底层存储
    • Alluxio集成COS作为底层存储
    • Alluxio集成COSN作为底层存储
    • Alluxio集成Ceph Object Storage作为底层存储
    • Alluxio集成NFS作为底层存储
    • Alluxio集成Kodo作为底层存储
    • Alluxio集成Swift作为底层存储
    • Alluxio集成WEB作为底层存储
    • Alluxio集成Minio作为底层存储
    • 阿里云对象存储服务
    • Alluxio集成Ozone作为底层存储
    • Alluxio集成CephFS作为底层存储
  • 安全设置
    • 安全性
  • 运维指南
    • 配置项设置
    • 命令行接口
    • 管理员命令行接口
    • Web界面
    • 日志
    • 度量指标系统
    • 远程记录日志
  • 管理
    • 升级
    • 异常诊断与调试
  • APIs
    • Filesystem API
    • S3 Client
    • POSIX API
    • REST API
    • Python Client
    • 兼容Hadoop的Java
    • Go 客户端
  • 开发者资源
    • 编译Alluxio源代码
    • 开发指南
    • 代码规范
    • 如何开发单元测试
    • 文档规范
  • 参考
    • 配置项列表
    • List of Metrics
  • REST API
    • Master REST API
    • Worker REST API
    • Proxy REST API
    • Job REST API
  • Javadoc
Powered by GitBook
On this page
  • 先决条件
  • 基本设置
  • o3fs
  • ofs
  • Ozone HA模式
  • o3fs
  • ofs
  • 挂载特定版本Ozone
  • 示例:使用Ozone本地运行Alluxio
  • 高级设置
  • 挂载Ozone
  • 支持的Ozone版本
  1. 底层存储系统

Alluxio集成Ozone作为底层存储

Last updated 6 months ago

本指南介绍了如何将配置为Alluxio的底层存储系统。 Ozone是用于Hadoop的可扩展,冗余和分布式对象存储。除了可以扩展到数十亿个大小不同的对象外, Ozone可以在容器化环境(例如Kubernetes和YARN)中有效运行。

先决条件

要在一组计算机上运行Alluxio集群,必须将Alluxio二进制文件部署到集群的每台 计算机上。你可以使用(具有正确的Hadoop版本(推荐)),或 (适用于高级用户)。

在准备Ozone与Alluxio一起使用时,请遵循 安装Ozone集群,并遵循创建Ozone集群的卷和存储桶。

基本设置

要配置Alluxio使用Ozone做为底层存储系统,需要修改配置文件 conf/alluxio-site.properties。如果此文件不存在,请从模板创建此配置文件。

$ cp conf/alluxio-site.properties.template conf/alluxio-site.properties

编辑conf/alluxio-site.properties将alluxio.master.mount.table.root.ufs底层存储地址设置为Ozone桶或想要挂载到Alluxio的Ozone目录。 Ozone 支持o3fs和ofs两种不同的 schema

o3fs

例如,如果要将整个存储桶挂载到Alluxio的根目录,则将alluxio.master.mount.table.root.ufs设置为o3fs://<OZONE_BUCKET>.<OZONE_VOLUME>/; 如果仅将<OZONE_VOLUME>的<OZONE_BUCKET>Ozone桶内的/alluxio/data目录映射到Alluxio的根目录, 则可以设置为o3fs://<OZONE_BUCKET>.<OZONE_VOLUME>/alluxio/data。

将alluxio-site.properties中的alluxio.master.mount.table.root.option.alluxio.underfs.hdfs.configuration指向ozone-site.xml,确保配置在所有正在运行Alluxio的服务端上设置了。

alluxio.master.mount.table.root.ufs=o3fs://<OZONE_BUCKET>.<OZONE_VOLUME>/
alluxio.master.mount.table.root.option.alluxio.underfs.hdfs.configuration=/path/to/hdfs/conf/ozone-site.xml

ofs

例如,如果要将整个存储桶挂载到Alluxio的根目录,则将alluxio.master.mount.table.root.ufs设置为ofs://<OZONE_MANAGER>/<OZONE_VOLUME>/<OZONE_BUCKET>/; 如果仅将<OZONE_VOLUME>的<OZONE_BUCKET>Ozone桶内的/alluxio/data目录映射到Alluxio的根目录, 则可以设置为ofs://<OZONE_MANAGER>/<OZONE_VOLUME>/<OZONE_BUCKET>/alluxio/data。

Ozone HA模式

o3fs

要让Alluxio挂载HA模式下Ozone,你应该配置Alluxio的服务端以让其可以找到OzoneManager。请注意一旦设置,你使用Alluxio客户端的应用程序不再需要任何特殊的配置。 在HA模式下alluxio.master.mount.table.root.ufs需要指定<OM_SERVICE_IDS> 例如:

alluxio.master.mount.table.root.ufs=o3fs://<OZONE_BUCKET>.<OZONE_VOLUME>.<OM_SERVICE_IDS>/
alluxio.master.mount.table.root.option.alluxio.underfs.hdfs.configuration=/path/to/hdfs/conf/ozone-site.xml

ofs

alluxio.master.mount.table.root.ufs=ofs://<OZONE_MANAGER>/<OZONE_VOLUME>/<OZONE_BUCKET>/
alluxio.master.mount.table.root.option.alluxio.underfs.hdfs.configuration=/path/to/hdfs/conf/ozone-site.xml

<OM_SERVICE_IDS> 可以在ozone-site.xml中找到, 例如以下ozone-site.xml配置文件中<OM_SERVICE_IDS>为omservice1。

<property>
    <name>ozone.om.service.ids</name>
    <value>omservice1</value>
</property>

挂载特定版本Ozone

用户可以将具有指定版本的Ozone集群作为底层存储挂载到Alluxio命名空间。 在挂载特定版本Ozone之前,请确保已使用该特定版本Ozone构建了客户端。 你可以通过到Alluxio目录下的lib目录来检查该客户端是否存在。

当使用特定的Ozone版本挂载Alluxio根目录的底层存储时,可以添加以下内容到conf/alluxio-site.properties。

alluxio.master.mount.table.root.option.alluxio.underfs.version=<OZONE_VERSION>

示例:使用Ozone本地运行Alluxio

启动Alluxio服务器:

$ ./bin/alluxio format
$ ./bin/alluxio-start.sh local

运行一个简单的示例程序

$ ./bin/alluxio runTests

使用HDFS shell或Ozone shell来访问Ozone目录o3fs://<OZONE_BUCKET>.<OZONE_VOLUME>/<OZONE_DIRECTORY> 来确认由Alluxio创建的文件和目录是存在的。对于此测试,应该看到名为 <OZONE_BUCKET>.<OZONE_VOLUME>/<OZONE_DIRECTORY>/default_tests_files/BasicFile_CACHE_PROMOTE_MUST_CACHE.的文件。

停止Alluxio运行

$ ./bin/alluxio-stop.sh local

高级设置

挂载Ozone

$ ./bin/alluxio fs mount \
  --option alluxio.underfs.hdfs.configuration=<DIR>/ozone-site.xml \
  /ozone o3fs://<OZONE_BUCKET>.<OZONE_VOLUME>/

如果需要挂载指定版本的Ozone,可以在挂载时通过alluxio.underfs.version=<OZONE_VERSION>参数指定版本。

$ ./bin/alluxio fs mount \
  --option alluxio.underfs.hdfs.configuration=<DIR>/ozone-site.xml \
  --option alluxio.underfs.version=<OZONE_VERSION> \
  /ozone o3fs://<OZONE_BUCKET>.<OZONE_VOLUME>/

可能的 ozone-site.xml 文件设置

  • ozone-site.xml

<configuration>
  <property>
    <name>ozone.om.address</name>
    <value>localhost</value>
  </property>
</configuration>

确保相关的配置文件在所有运行Alluxio的服务器节点上。

支持的Ozone版本

当前,与 Alluxio 测试过的 Ozone 版本是 1.0.0, 1.1.0, 1.2.1。

这将启动Alluxio master和Alluxio worker。可以在上看到 master UI。

一个Ozone位置可以挂载到Alluxio命名空间中一个嵌套目录来保证对多个底层存储的统一访问。可以使用Alluxio的 来挂载。 例如,以下命令将Ozone存储桶中的一个目录挂载到Alluxio目录 /ozone上:

Ozone
直接下载预编译的二进制文件
从Alluxio源代码编译二进制文件
Ozone本地安装
Cli命令
http://localhost:19999
Mount Command