Azure Blob 存储

本指南介绍了如何将 Alluxio 配置为使用 Azure Blob 存储 作为底层存储系统。

先决条件

在使用 Azure Blob 存储和 Alluxio 之前,请在您的 Azure 存储帐户中创建一个新容器或使用现有容器。您还应该注意您想在该容器中使用的目录,可以通过在容器中创建新目录或使用现有目录来实现。在本指南中,Azure 存储帐户名称为 <AZURE_ACCOUNT>,该存储帐户中的容器为 <AZURE_CONTAINER>,该容器中的目录为 <AZURE_DIRECTORY>。有关 Azure 存储帐户的更多信息,请参阅此处

基本设置

使用挂载表示例添加新的挂载点,指定创建挂载的 Alluxio 路径和作为 UFS URI 的 Azure Blob 存储路径。凭据和配置选项也可以作为挂载操作的一部分指定,如配置挂载点中所述。

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

apiVersion: k8s-operator.alluxio.com/v1
kind: UnderFileSystem
metadata:
  name: alluxio-wasbs
  namespace: alx-ns
spec:
  alluxioCluster: alluxio-cluster
  path: wasbs://<AZURE_CONTAINER>@<AZURE_ACCOUNT>.blob.core.windows.net/<AZURE_DIRECTORY>/
  mountPath: /wasbs
  mountOptions:
    fs.azure.account.key.<AZURE_ACCOUNT>.blob.core.windows.net: <YOUR ACCESS KEY>

如果不使用 operator,将 wasbs://<AZURE_CONTAINER>@<AZURE_ACCOUNT>.blob.core.windows.net/<AZURE_DIRECTORY>/ 挂载到 /wasbs 的示例命令:

bin/alluxio mount add --path /wasbs/ --ufs-uri wasbs://<AZURE_CONTAINER>@<AZURE_ACCOUNT>.blob.core.windows.net/<AZURE_DIRECTORY>/ \
  --option fs.azure.account.key.<AZURE_ACCOUNT>.blob.core.windows.net=<YOUR ACCESS KEY>

此属性键 fs.azure.account.key.<AZURE_ACCOUNT>.blob.core.windows.net 将让 Alluxio 使用 AccountKey 访问 Azure Blob 存储。

常见问题解答

如果遇到 http 不支持错误该怎么办?

如果您挂载 Blob 并将 Blob 路径配置为以 wasb:// 开头,您可能会看到如下错误:

alluxio.exception.AlluxioException: com.microsoft.azure.storage.StorageException: The account being accessed does not support http.

您可以将 Blob 路径更改为以 wasbs:// 开头。

Last updated