Alluxio Community Day VIII

Join us at our next virtual community event on December 14th featuring fellow Alluxio community users from Apache Iceberg and WeRide.

底层存储扩展

Slack Docker Pulls GitHub edit source

这篇文档是帮助用户进行文件系统的扩展,请查看创建新Alluxio底层存储系统文档来阅读扩展开发文档。

Alluxio可以在运行时扩展额外的底层存储模块,底层存储模块的扩展(通过JARs包进行编译)可以被包括在一个Alluxio Core中具体的位置, 不需要重启运行的进程。对于没有现有原生支持的存储系统,添加与Alluxio相连的底层存储模块可以使其与Alluxio一起工作。

扩展列表

以下是底层存储扩展计划的列表:

管理扩展

扩展JARs包通过扩展目录配置项alluxio.extensions.dir (默认: ${alluxio-home}/extensions)获取,扩展命令行实用程序用来管理 Alluxio集群的扩展JAR包的分布。在CLI不可用的环境下(参考下面的配置),JAR包被放置在扩展目录中。例如,当在容器中运行时,在合适的位置 通过额外的二进制文件创建一个客户镜像。

命令行实用程序

命令行实用程序是用来提供帮助扩展管理。

$ ./bin/alluxio extensions
Usage: alluxio extensions [generic options]
	 [install <URI>]
	 [ls]
	 [uninstall <JAR>]

安装

install命令通过命令rsyncssh,向conf/mastersconf/workers列出的Alluxio服务器拷贝提供的JAR。然而,这些工具可能不是在所有的 环境中适用。在脚本中,使用其他更多的可用工具来将JAR放置在Alluxio服务器配置项alluxio.extensions.dir中的位置。

列举

为了列出任意给定的运行Alluxio进程的主机所安装的扩展,你可以用ls命令。实用程序通过扫描本地扩展目录列出所有安装的扩展。

卸载

uninstall命令和install命令类似,处理所有conf/mastersconf/workers包括的主机。手动移除Alluxio服务器中的扩展, 防止一些主机是运行命令行的主机不可达的。

从Maven坐标中安装

为了从maven中安装,按照下面的步骤下载JAR,并安装。

$ mvn dependency:get -DremoteRepositories=http://repo1.maven.org/maven2/ -DgroupId=<extension-group> \
 -DartifactId=<extension-artifact> -Dversion=<version> -Dtransitive=false -Ddest=<extension>.jar

$ ./bin/alluxio extensions install <extension.jar>

验证

一旦扩展JAR部署之后,你应该可以通过如下Alluxio CLI命令挂载你的底层存储。

$ ./bin/alluxio fs mount /my-storage <scheme>://<path>/ --option <key>=<value>

其中,<key>=<value>可以被底层存储的任何必需配置替代。

执行完整的测试:

$ ./bin/alluxio runTests --directory /my-storage