在MapR-FS上配置Alluixo

该指南介绍如何配置Alluxio以使用MapR-FS作为底层存储系统。

以特定MapR版本编译Alluxio

Alluxio要与MapR-FS结合,必须以相对应的MapR版本进行编译,以下是一些对应于不同MapR版本的hadoop.version

MapR Versionhadoop.version
5.2 2.7.0-mapr-1607
5.1 2.7.0-mapr-1602
5.0 2.7.0-mapr-1506
4.1 2.5.1-mapr-1503
4.0.2 2.5.1-mapr-1501
4.0.1 2.4.1-mapr-1408

针对MapR-FS配置Alluxio

一旦你以对应的hadoop.version和MapR版本编译了Alluxio,就需要配置Alluxio从而使其能够识别MapR-FS的模式和URI。Alluxio能够使用HDFS客户端访问MapR-FS,要让HDFS客户端能够访问MapR-FS URI,需要给alluxio.underfs.hdfs.prefixes配置项添加一个maprfs:///前缀:

alluxio.underfs.hdfs.prefixes=hdfs://,maprfs:///

该配置项需要在所有的Alluxio服务器上(masters和workers)进行设置,具体可以参考Alluxio配置。对于Alluxio进程,该配置项能够在alluxio-site.properties配置文件中设置,请参考通过属性文件配置Alluxio获取更多信息。

另外,该配置项还需要在所有访问Alluxio的客户端中进行配置,这也就意味着在所有访问Alluxio的应用中(MapReduce、Spark、Flink等等)也要进行配置。通常可以在命令行中添加-Dalluxio.underfs.hdfs.prefixes=hdfs://,maprfs:///完成设置,可以参考配置Alluxio应用获取更多信息。

配置Alluxio以使用MapR-FS作为底层文件系统

有多种方式配置Alluxio以使用MapR-FS作为底层文件系统。如果你需要将MapR-FS挂载到Alluxio的根目录,添加以下配置项到conf/alluxio-site.properties属性文件中:

alluxio.underfs.address=maprfs:///<path in MapR-FS>/

也可以将MapR-FS中的某个目录挂载到Alluxio命名空间中:

$ ${ALLUXIO_HOME}/bin/alluxio fs mount /<path in Alluxio>/ maprfs:///<path in MapR-FS>/

使用MapR-FS在本地运行Alluxio

完成所有相应配置后,你可以在本地启动Alluxio,观察一切是否正常运行:

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

这应当会在本地启动一个Alluxio master和一个Alluxio worker,可以在浏览器中访问http://localhost:19999查看master Web UI。

接着,可以运行一个简单的示例程序:

$ ./bin/alluxio runTests

成功启动后,你可以访问MapR-FS的web UI以确认通过Alluxio创建的文件和目录确实存在。对于该测试,你应该可以看到类似/default_tests_files/Basic_CACHE_THROUGH的文件。

运行以下命令停止Alluxio:

$ ./bin/alluxio-stop.sh local
Need help? Ask a Question