Azure CLI— Copiando dados entre contas do Azure Blob Storage

Renicius Pagotto Fostaini
4 min readNov 1, 2022

--

Olá pessoal, no post de hoje vamos falar sobre cópia de arquivos entre contas do Azure Blob Storage utilizando o próprio Azure CLI.

Outra possibilidade de realização dessa tarefa é utilizando o AzCopy, caso queira saber mais sobre o assunto, clique aqui para acessar o post que eu fiz a respeito.

O que é Azure CLI?

Para entender melhor o que é Azure CLI, vamos pegar uma definição fornecida pela própria Microsoft.

A CLI do Azure (interface de linha de comando do Azure) é um conjunto de comandos usado para criar e gerenciar recursos do Azure. A CLI do Azure está disponível nos serviços do Azure e foi criada para ajudar você a trabalhar de maneira rápida com o Azure, com ênfase na automação.

Demonstração

Na demonstração de hoje, vamos aprender como realizar cópia de arquivos entre contas e containers do Azure Blob Storage.

Pré-requisitos

Configuração do Azure CLI

Com o Azure CLI instalado em nossa máquina, o primeiro passo é realizar a autenticação na conta do Azure utilizando o seguinte comando.

az login

Com a autenticação feita, precisamos definir a Subscription que vamos utilizar para o provisionamento dos recursos, para isso utilize o seguinte comando.

az account set -s nome-da-subscription

No comando az account definimos qual recurso queremos acessar no Azure, nesse caso queremos utilizar a nossa Subscription. O comando set é responsável por informar que queremos definir uma Subscription específica e o argumento -s é onde passamos o nome da Subscription desejada.

Comando para cópia em batch (todos os arquivos)

O comando az storage blob copyé onde informamos o recurso desejado e a ação sobre esse recurso, no caso o acrônimo storage blob significa Azure Blob Storage e a ação desejada é o copy que é o comando de cópia. O comando start-batch significa realizar a cópia de tudo o que está no container e as flags são basicamente as informações de origem e destino das informações.

Comando para cópia sem batch

Esse segundo comando que apresentamos acima é bem similar ao primeiro, porém invés de usar o start-batch, utilizamos o comando start indicando a intenção de copiar apenas um blob específico. Com isso, também é preciso indicar o blob de origem do arquivo utilizando o comando --source-blob e o blob de destino utilizando o --destination-blob , os demais argumentos são informações base da conta.

Contas no Azure Blob Storage

Para a demonstração, vamos utilizar duas contas do Azure Blob Storage onde cada conta possui um container, conforme demonstrado abaixo.

API Key

Para a realização da cópia das informações de uma conta para outra, precisamos utilizar uma Key de acesso ao recurso de origem e uma outra Key de acesso ao recurso de destino.

Ambas as Keys estão disponível no Portal do Azure na página do recurso provisionado do Azure Blob Storage. Para acessá-la, basta escolher a conta de origem, em seguida no menu lateral seleciona a opção Access Keys, por fim duas keys serão exibidas e você pode utilizar qualquer uma delas.

Copiando arquivos de uma conta para outra

Após configurado corretamente os recursos, vamos agora para a execução da cópia das informações entre as contas.

Antes de prosseguir com a cópia, vamos realizar um upload de dois arquivos para o container images da conta pagottoblob1. Esses arquivos serão utilizados para cópia para outra conta.

A conta pagottoblob3 do Azure Blob Storage por sua vez está vazia visto que a utilizaremos como conta de destino.

Com tudo pronto, agora é o momento de realizar a ação de copiar as informações de uma conta para outra e para isso vamos utilizar o comando de cópia em batch que aprendemos acima para que os arquivos de um container sejam copiados para o container de destino.

Com a finalização do processo, é exibido o nome de todos os arquivos em que a cópia foi realizada, logo o container images da conta pagottoblob3 possui todos os arquivos da conta de origem.

E ai, gostou desse post? Quer conversar um pouco mais sobre? Deixe um comentário com suas dúvidas e idéias ou entre em contato através do LinkedIn.

Referências

az storage blob | Microsoft Learn

--

--

Renicius Pagotto Fostaini
Renicius Pagotto Fostaini

Written by Renicius Pagotto Fostaini

Solutions Architect | Speaker | Community Manager

No responses yet