在Minio上配置Alluxio

该指南介绍如何配置Alluxio以使用Minio作为底层存储系统。 Alluxio本地提供了s3a:// scheme(建议使用以获取更好的性能)。您可以使用此方案连接Alluxio与Minio服务器。

初始步骤

首先,本地要有Alluxio二进制包。你可以自己编译Alluxio,或者下载二进制包

配置Minio

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

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

Minio是为云应用程序和DevOps构建的对象存储服务器。 Minio提供了AWS S3的开源替代方案。

按照这里的步骤启动Minio服务器实例。 然后创建一个桶(或使用现有的桶)。一旦服务器启动,请记录Minio服务器端点,accessKey和secretKey。

您还应该留意希望在该桶中使用的目录,通过创建一个新目录或使用已经存在的目录。 就本指南而言,Minio桶命名为MINIO_BUCKET,该桶中的目录命名为MINIO_DIRECTORY

配置Alluxio

您需要修改conf/alluxio-site.properties配置Alluxio,以使用Minio作为其底层存储系统。 首先需要指定已存在的Minio桶和目录作为底层存储系统

conf/alluxio-site.properties文件中要修改的所有字段如下所示:

alluxio.underfs.address=s3a://<MINIO_BUCKET>/<MINIO_DIRECTORY>
alluxio.underfs.s3.endpoint=http://<MINIO_ENDPOINT>/
alluxio.underfs.s3.disable.dns.buckets=true
alluxio.underfs.s3a.inherit_acl=false
alluxio.underfs.s3.proxy.https.only=<USE_HTTPS>
alluxio.underfs.s3.endpoint.http.port=<MINIO_HTTP_PORT>
alluxio.underfs.s3.endpoint.https.port=<MINIO_HTTPS_PORT>
aws.accessKeyId=<MINIO_ACCESS_KEY_ID>
aws.secretKey=<MINIO_SECRET_KEY_ID>

对于这些参数,用您的Minio服务的URL和端口替换<MINIO_ENDPOINT><MINIO_PORT>

truefalse替换<USE_HTTPS>。 如果使用true(使用HTTPS),还需要用提供者的HTTPS端口替换<MINIO_HTTPS_PORT>,并且删除alluxio.underfs.s3.endpoint.http.port参数。 如果您使用false来替换<USE_HTTPS>(使用HTTP),同样需要用提供者的HTTPS端口替换<MINIO_HTTP_PORT>,并且删除alluxio.underfs.s3.endpoint.https.port参数。 如果HTTP或HTTPS端口值未设置,<HTTP_PORT>默认端口为80,<HTTPS_PORT>默认端口为443。

Need help? Ask a Question