# Azure Blob Storage

This guide describes how to configure Alluxio with [Azure Blob Store](https://azure.microsoft.com/en-in/services/storage/blobs/) as the under storage system.

## Prerequisites

In preparation for using Azure Blob Store with Alluxio, create a new container in your Azure\
storage account or use an existing container. You should also note that the directory you want to\
use in that container, either by creating a new directory in the container, or using an existing\
one. For the purposes of this guide, the Azure storage account name is called `<AZURE_ACCOUNT>`, the\
container in that storage account is called `<AZURE_CONTAINER>` and the directory in that container is\
called `<AZURE_DIRECTORY>`. For more information about Azure storage account, Please see[here](https://docs.microsoft.com/en-us/azure/storage/storage-create-storage-account).

## Basic Setup

For the general mount mechanism and `UnderFileSystem` CR field reference, see [Underlying Storage](/ee-ai-en/ai-3.8-15.1.x/ufs.md#basic-mount-setup).

{% tabs %}
{% tab title="Kubernetes (Operator)" %}
An example `ufs.yaml` to create an Azure Blob Storage mount point with the operator:

```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>
```

{% endtab %}

{% tab title="Docker / Bare-Metal" %}
An example command to mount `wasbs://<AZURE_CONTAINER>@<AZURE_ACCOUNT>.blob.core.windows.net/<AZURE_DIRECTORY>/` to `/wasbs` if not using the operator:

```shell
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>
```

This property key `fs.azure.account.key.<AZURE_ACCOUNT>.blob.core.windows.net` will let the Alluxio use the AccountKey to access Azure Blob Store.
{% endtab %}
{% endtabs %}

## FAQ

### What should I do if I get http not support error?

If you mount the Blob and configure the Blob path start with `wasb://`, you may see the error as follows:

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

You can change the Blob path start with `wasbs://`.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://documentation.alluxio.io/ee-ai-en/ai-3.8-15.1.x/ufs/azure-blob-store.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
