---
layout: default
navsection: installguide
title: Configure Azure Blob storage
...
{% comment %}
Copyright (C) The Arvados Authors. All rights reserved.
SPDX-License-Identifier: CC-BY-SA-3.0
{% endcomment %}
As an alternative to local and network-attached POSIX filesystems, Keepstore can store data in an Azure Storage container.
h2. Create a storage container
Using the Azure web portal or command line tool, create or choose a storage account with a suitable redundancy profile and availability region. Use the storage account keys to create a new container.
~$ azure config mode arm
~$ azure login
~$ azure group create exampleGroupName eastus
~$ azure storage account create --type LRS --location eastus --resource-group exampleGroupName exampleStorageAccountName
~$ azure storage account keys list --resource-group exampleGroupName exampleStorageAccountName
info: Executing command storage account keys list
+ Getting storage account keys
data: Primary: zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz==
data: Secondary: yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy==
info: storage account keys list command OK
~$ AZURE_STORAGE_ACCOUNT="exampleStorageAccountName" \
AZURE_STORAGE_ACCESS_KEY="zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz==" \
azure storage container create exampleContainerName
~$ sudo sh -c 'cat >/etc/arvados/keepstore/azure_storage_account_key.txt <<EOF'
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz==
EOF
~$ sudo chmod 0400 /etc/arvados/keepstore/azure_storage_account_key.txt
Volumes: - # The volume type, this indicates Azure blob storage Type: Azure # How much replication is performed by the underlying container. # This is used to inform replication decisions at the Keep layer. AzureReplication: 3 # The storage container to use for the backing store. ContainerName: exampleContainerName # If true, do not accept write or trash operations, only reads. ReadOnly: false # Amount of time to wait for a response before failing the request RequestTimeout: 10m0s # The storage account name, used for authentication StorageAccountName: exampleStorageAccountName # The storage account secret key, used for authentication StorageAccountKeyFile: /etc/arvados/keepstore/azure_storage_account_key.txt # The cloud environment to use. If blank, use the default cloud # environment. See below for an example of an alternate cloud environment. StorageBaseURL: "" # Storage classes to associate with this volume. See "Configuring # storage classes" in the "Admin" section of doc.arvados.org. StorageClasses: null - # Example configuration to use Azure China. # # The alternate cloud environment to use. # Note that cloud environments are different from regions. A # cloud environment is an entirely separate instance of Azure with # separate accounts, requiring separate credentials. # StorageBaseURL: core.chinacloudapi.cn StorageAccountKeyFile: /etc/arvados/keepstore/azure_cn_storage_account_key.txt StorageAccountName: cn-account-name ContainerName: exampleChinaContainerName # The rest are the same as above Type: Azure AzureReplication: 3 ReadOnly: false RequestTimeout: 10m0s StorageClasses: nullStart (or restart) keepstore, and check its log file to confirm it is using the new configuration.
2015/10/26 21:06:24 Using volume azure-storage-container:"exampleContainerName" (writable=true)