Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O Azure Stack Hub fornece um conjunto de serviços de armazenamento para discos, blobs, tabelas, filas e funções de gerenciamento de contas. Algumas ferramentas de Armazenamento do Azure estão disponíveis se você quiser gerenciar ou mover dados de ou para o Armazenamento do Hub de Pilha do Azure. Este artigo fornece uma visão geral das ferramentas disponíveis.
Seus requisitos determinam qual das seguintes ferramentas funciona melhor para você:
- AzCopy: um utilitário de linha de comando específico do armazenamento que você pode baixar para copiar dados de um objeto para outro dentro ou entre suas contas de armazenamento.
- Azure PowerShell: uma linguagem de script e shell de linha de comando baseada em tarefas projetada especialmente para a administração do sistema.
- CLI do Azure: uma ferramenta de código aberto e plataforma cruzada que fornece um conjunto de comandos para trabalhar com as plataformas Azure e Azure Stack Hub.
- Gerenciador de Armazenamento do Microsoft Azure: um aplicativo autônomo fácil de usar com uma interface de usuário.
- Blobfuse: Um driver de sistema de arquivos virtual para o Armazenamento de Blobs do Azure, que permite acessar seus dados de blob de bloco existentes em sua conta de armazenamento por meio do sistema de arquivos Linux.
Devido às diferenças dos serviços de armazenamento entre o Azure e o Azure Stack Hub, pode haver alguns requisitos específicos para cada ferramenta descrita nas seções a seguir. Para obter uma comparação entre o Armazenamento do Hub do Azure e o Armazenamento do Azure, consulte Armazenamento do Hub do Azure Stack: diferenças e considerações.
AzCopy
AzCopy é um utilitário de linha de comando projetado para copiar dados de e para o armazenamento de blob e tabela do Microsoft Azure usando comandos simples com desempenho ideal. Você pode copiar dados de um objeto para outro dentro ou entre suas contas de armazenamento.
Baixe e instale o AzCopy
Configuração e limites do AzCopy 10.1
O AzCopy 10.1 agora pode ser configurado para usar versões mais antigas da API. Isso habilita o suporte (limitado) para o Azure Stack Hub.
Para configurar a versão da API do AzCopy para dar suporte ao Azure Stack Hub, defina a AZCOPY_DEFAULT_SERVICE_API_VERSION variável de ambiente como 2017-11-09.
| Sistema operativo | Comando |
|---|---|
| Mac OS | Num prompt de comando, utilize: set AZCOPY_DEFAULT_SERVICE_API_VERSION=2017-11-09No uso do PowerShell: $env:AZCOPY_DEFAULT_SERVICE_API_VERSION="2017-11-09" |
| Aplicações Linux | export AZCOPY_DEFAULT_SERVICE_API_VERSION=2017-11-09 |
| MacOS | export AZCOPY_DEFAULT_SERVICE_API_VERSION=2017-11-09 |
No AzCopy 10.1, os seguintes recursos são suportados para o Azure Stack Hub:
| Característica | Ações suportadas |
|---|---|
| Gerenciar contêiner | Criar um contêiner Listar o conteúdo dos recipientes |
| Gerenciar trabalho | Exibir trabalhos Retomar um emprego |
| Remover blob | Remover um único blob Remover diretório virtual total ou parcial |
| Carregar ficheiro | Carregar um ficheiro Carregar um diretório Carregar o conteúdo de um diretório |
| Transferir ficheiro | Descarregar um ficheiro Baixar um diretório Descarregar o conteúdo de um diretório |
| Sincronizar arquivo | Sincronizar um contêiner com um sistema de arquivos local Sincronizar um sistema de arquivos local com um contêiner |
Observação
O Azure Stack Hub não oferece suporte ao fornecimento de credenciais de autorização para o AzCopy usando a ID do Microsoft Entra. Você deve acessar objetos de armazenamento no Azure Stack Hub usando um token SAS (Assinatura de Acesso Compartilhado).
O Azure Stack Hub não oferece suporte à transferência síncrona de dados entre dois locais de blob do Azure Stack Hub e entre o Armazenamento do Azure e o Azure Stack Hub. Você não pode usar azcopy cp para mover dados do Azure Stack Hub para o Armazenamento do Azure (ou o contrário) diretamente com o AzCopy 10.1.
Exemplos de comandos AzCopy para transferência de dados
Os exemplos a seguir seguem cenários típicos para copiar dados de e para blobs do Azure Stack Hub. Para saber mais, consulte Introdução ao AzCopy.
Baixar todos os blobs para um disco local
azcopy cp "https://[account].blob.core.windows.net/[container]/[path/to/directory]?[SAS]" "/path/to/dir" --recursive=true
Carregar um único arquivo para o diretório virtual
azcopy cp "/path/to/file.txt" "https://[account].blob.core.windows.net/[container]/[path/to/blob]?[SAS]"
Problemas conhecidos do AzCopy
- Qualquer operação AzCopy em um armazenamento de arquivos não está disponível porque o armazenamento de arquivos ainda não está disponível no Azure Stack Hub.
- Se você quiser transferir dados entre dois locais de blob do Azure Stack Hub, ou entre o Azure Stack Hub e o Armazenamento do Azure usando o AzCopy 10.1, baixe os dados primeiro para um local local e, em seguida, carregue novamente no diretório de destino no Azure Stack Hub ou no Armazenamento do Azure.
- A versão Linux do AzCopy suporta apenas a atualização 1802 ou versões posteriores; ele não suporta o serviço de tabela.
- Se quiser copiar dados de e para o seu serviço de Armazenamento de Tabela do Azure, pode utilizar o PowerShell, a CLI ou as bibliotecas de cliente do Azure.
Azure PowerShell
O Azure PowerShell é um módulo que fornece cmdlets para gerenciar serviços no Azure e no Azure Stack Hub. É um shell de linha de comando baseado em tarefas e linguagem de script projetado especialmente para a administração do sistema.
Instalar e configurar o PowerShell para o Azure Stack Hub
Os módulos do Azure PowerShell compatíveis com o Azure Stack Hub são necessários para trabalhar com o Azure Stack Hub. Para obter mais informações, consulte Instalar o PowerShell para o Azure Stack Hub e Configurar o ambiente PowerShell do usuário do Azure Stack Hub.
Script de exemplo do PowerShell para o Azure Stack Hub
Este exemplo pressupõe que você tenha instalado com êxito o PowerShell para o Azure Stack Hub. Esse script ajudará você a concluir a configuração e solicitar suas credenciais de locatário do Azure Stack Hub para adicionar sua conta ao ambiente local do PowerShell. O script definirá a assinatura padrão do Azure, criará uma nova conta de armazenamento no Azure, criará um novo contêiner nessa nova conta de armazenamento e carregará um arquivo de imagem (blob) existente nesse contêiner. Depois que o script listar todos os blobs nesse contêiner, ele criará um novo diretório de destino em seu computador local e baixará o arquivo de imagem.
- Instale módulos do Azure PowerShell compatíveis com o Azure Stack Hub.
- Descarregue as ferramentas necessárias para utilizar o Azure Stack Hub.
- Abra o Windows PowerShell ISE e Executar como Administrador e clique em Arquivo>Novo para criar um novo arquivo de script.
- Copie o script abaixo e cole-o no novo arquivo de script.
- Atualize as variáveis de script com base em suas definições de configuração.
Observação
Esse script deve ser executado no diretório raiz para AzureStack_Tools.
# begin
$ARMEvnName = "AzureStackUser" # set AzureStackUser as your Azure Stack Hub environment name
$ARMEndPoint = "https://management.local.azurestack.external"
$GraphAudience = "https://graph.windows.net/"
$AADTenantName = "<myDirectoryTenantName>.onmicrosoft.com"
$SubscriptionName = "basic" # Update with the name of your subscription.
$ResourceGroupName = "myTestRG" # Give a name to your new resource group.
$StorageAccountName = "azsblobcontainer" # Give a name to your new storage account. It must be lowercase.
$Location = "Local" # Choose "Local" as an example.
$ContainerName = "photo" # Give a name to your new container.
$ImageToUpload = "C:\temp\Hello.jpg" # Prepare an image file and a source directory in your local computer.
$DestinationFolder = "C:\temp\download" # A destination directory in your local computer.
# Import the Connect PowerShell module"
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force
Import-Module .\Connect\AzureStack.Connect.psm1
# Configure the PowerShell environment
# Register an Az environment that targets your Azure Stack Hub instance
Add-AzEnvironment -Name $ARMEvnName -ARMEndpoint $ARMEndPoint
# Login
$TenantID = Get-AzsDirectoryTenantId -AADTenantName $AADTenantName -EnvironmentName $ARMEvnName
Connect-AzAccount -EnvironmentName $ARMEvnName -TenantId $TenantID
# Set a default Azure subscription.
Select-AzSubscription -SubscriptionName $SubscriptionName
# Create a new Resource Group
New-AzResourceGroup -Name $ResourceGroupName -Location $Location
# Create a new storage account.
New-AzStorageAccount -ResourceGroupName $ResourceGroupName -Name $StorageAccountName -Location $Location -Type Standard_LRS
# Set a default storage account.
Set-AzCurrentStorageAccount -StorageAccountName $StorageAccountName -ResourceGroupName $ResourceGroupName
# Create a new container.
New-AzStorageContainer -Name $ContainerName -Permission Off
# Upload a blob into a container.
Set-AzStorageBlobContent -Container $ContainerName -File $ImageToUpload
# List all blobs in a container.
Get-AzStorageBlob -Container $ContainerName
# Download blobs from the container:
# Get a reference to a list of all blobs in a container.
$blobs = Get-AzStorageBlob -Container $ContainerName
# Create the destination directory.
New-Item -Path $DestinationFolder -ItemType Directory -Force
# Download blobs into the local destination directory.
$blobs | Get-AzureStorageBlobContent -Destination $DestinationFolder
# end
Problemas conhecidos do PowerShell
diferença Get-AzStorageAccountKey
A versão atual do módulo compatível do Azure PowerShell para o Azure Stack Hub é 1.2.11 para as operações do usuário. É diferente da versão mais recente do Azure PowerShell. Essa diferença afeta a operação dos serviços de armazenamento da seguinte maneira:
O formato de valor de retorno de Get-AzStorageAccountKey na versão 1.2.11 tem duas propriedades: Key1 e Key2, enquanto a versão atual do Azure retorna uma matriz contendo todas as chaves da conta.
# This command gets a specific key for a storage account,
# and works for Azure PowerShell version 1.4, and later versions.
(Get-AzStorageAccountKey -ResourceGroupName "RG01" `
-AccountName "MyStorageAccount").Value[0]
# This command gets a specific key for a storage account,
# and works for Azure PowerShell version 1.3.2, and previous versions.
(Get-AzStorageAccountKey -ResourceGroupName "RG01" `
-AccountName "MyStorageAccount").Key1
Para obter mais informações, consulte Get-AzureRMStorageAccountKey.
Copiar blob entre clusters do Azure Stack Hub
Start-AzStorageBlobCopy pode ser utilizado para iniciar um trabalho de cópia e transferir um blob. Ao definir a propriedade AbsoluteUri como o uri de blob em outro cluster do Azure Stack Hub, esse cmdlet pode ser usado para copiar blob entre dois clusters do Azure Stack Hub. Verifique se os clusters de origem e destino do Azure Stack Hub estão na mesma versão de atualização. Atualmente, o Azure Stack Hub não oferece suporte ao uso Start-AzStorageBlobCopy para copiar blob entre dois clusters do Azure Stack Hub que implantaram versões de atualização diferentes.
Azure CLI (Interface de Linha de Comando da Azure)
A CLI do Azure é a experiência da linha de comandos do Azure para a gestão de recursos do Azure. Você pode instalá-lo no macOS, Linux e Windows e executá-lo a partir da linha de comando.
A CLI do Azure é otimizada para gerenciar e administrar recursos do Azure a partir da linha de comando e para criar scripts de automação que funcionam no Gerenciador de Recursos do Azure. Ele fornece muitas das mesmas funções encontradas no portal do Azure Stack Hub, incluindo acesso avançado a dados.
O Azure Stack Hub requer a CLI do Azure versão 2.0 ou posterior. Para obter mais informações sobre como instalar e configurar a CLI do Azure com o Azure Stack Hub, consulte Instalar e configurar a CLI do Azure Stack Hub. Para obter mais informações sobre como usar a CLI do Azure para executar várias tarefas trabalhando com recursos em sua conta de armazenamento do Azure Stack Hub, consulte Usando a CLI do Azure com o armazenamento do Azure.
Script de exemplo da CLI do Azure para o Azure Stack Hub
Depois de concluir a instalação e a configuração da CLI, você pode tentar as etapas a seguir para trabalhar com um pequeno script de exemplo de shell para interagir com os recursos de armazenamento do Azure Stack Hub. O script conclui as seguintes ações:
- Cria um novo contêiner em sua conta de armazenamento.
- Carrega um arquivo existente (como um blob) no contêiner.
- Lista todos os blobs no contêiner.
- Transfere o ficheiro para um destino no computador local que especificar.
Antes de executar esse script, verifique se você pode se conectar e entrar com êxito no Azure Stack Hub de destino.
- Abra seu editor de texto favorito e, em seguida, copie e cole o script anterior no editor.
- Atualize as variáveis do script para refletir suas definições de configuração.
- Depois de atualizar as variáveis necessárias, salve o script e saia do editor. As próximas etapas pressupõem que você nomeou seu script my_storage_sample.sh.
- Marque o script como executável, se necessário:
chmod +x my_storage_sample.sh - Execute o script. Por exemplo, em Bash:
./my_storage_sample.sh
#!/bin/bash
# A simple Azure Stack Hub storage example script
export AZURESTACK_RESOURCE_GROUP=<resource_group_name>
export AZURESTACK_RG_LOCATION="local"
export AZURESTACK_STORAGE_ACCOUNT_NAME=<storage_account_name>
export AZURESTACK_STORAGE_CONTAINER_NAME=<container_name>
export AZURESTACK_STORAGE_BLOB_NAME=<blob_name>
export FILE_TO_UPLOAD=<file_to_upload>
export DESTINATION_FILE=<destination_file>
echo "Creating the resource group..."
az group create --name $AZURESTACK_RESOURCE_GROUP --location $AZURESTACK_RG_LOCATION
echo "Creating the storage account..."
az storage account create --name $AZURESTACK_STORAGE_ACCOUNT_NAME --resource-group $AZURESTACK_RESOURCE_GROUP --account-type Standard_LRS
echo "Creating the blob container..."
az storage container create --name $AZURESTACK_STORAGE_CONTAINER_NAME --account-name $AZURESTACK_STORAGE_ACCOUNT_NAME
echo "Uploading the file..."
az storage blob upload --container-name $AZURESTACK_STORAGE_CONTAINER_NAME --file $FILE_TO_UPLOAD --name $AZURESTACK_STORAGE_BLOB_NAME --account-name $AZURESTACK_STORAGE_ACCOUNT_NAME
echo "Listing the blobs..."
az storage blob list --container-name $AZURESTACK_STORAGE_CONTAINER_NAME --account-name $AZURESTACK_STORAGE_ACCOUNT_NAME --output table
echo "Downloading the file..."
az storage blob download --container-name $AZURESTACK_STORAGE_CONTAINER_NAME --account-name $AZURESTACK_STORAGE_ACCOUNT_NAME --name $AZURESTACK_STORAGE_BLOB_NAME --file $DESTINATION_FILE --output table
echo "Done"
Explorador de Armazenamento do Microsoft Azure
O Azure Storage Explorer é um aplicativo autônomo da Microsoft. Ele permite que você trabalhe facilmente com dados do Armazenamento do Azure e do Armazenamento do Hub de Pilha do Azure em computadores Windows, macOS e Linux. Se quiser uma maneira fácil de gerir os seus dados de armazenamento do Azure Stack Hub, considere usar o Explorador de Armazenamento do Microsoft Azure.
- Para obter mais informações sobre como configurar o Gerenciador de Armazenamento do Azure para funcionar com o Azure Stack Hub, consulte Conectar o Gerenciador de Armazenamento a uma assinatura do Azure Stack Hub.
- Para obter mais informações sobre o Gerenciador de Armazenamento do Microsoft Azure, consulte Introdução ao Gerenciador de Armazenamento.
Blobfusa
Blobfuse é um controlador de sistema de arquivos virtual para o Armazenamento de Blobs do Azure, que permite aceder aos seus blobs de blocos existentes na conta de armazenamento através do sistema de arquivos Linux. O Armazenamento de Blobs do Azure é um serviço de armazenamento de objetos e, portanto, não tem um namespace hierárquico. Blobfuse fornece esse namespace usando o esquema de diretório virtual com o uso de barra frontal / como um delimitador. O Blobfuse funciona no Azure e no Azure Stack Hub.
Para saber mais sobre como montar o armazenamento de blob como um sistema de arquivos com Blobfuse no Linux, consulte Como montar o armazenamento de Blob como um sistema de arquivos com Blobfuse.
Para o Azure Stack Hub, blobEndpoint precisa ser especificado ao configurar suas credenciais de conta de armazenamento junto com accountName, accountKey/sasToken e containerName.
No Azure Stack Development Kit (ASDK), o blobEndpoint deve ser myaccount.blob.local.azurestack.external. No sistema integrado do Azure Stack Hub, entre em contato com o administrador de nuvem se não tiver certeza sobre o seu endpoint.
accountKey e sasToken só podem ser configurados um de cada vez. Quando uma chave de conta de armazenamento é fornecida, o arquivo de configuração de credenciais está no seguinte formato:
accountName myaccount
accountKey myaccesskey==
containerName mycontainer
blobEndpoint myaccount.blob.local.azurestack.external
Quando um token de acesso compartilhado é fornecido, o arquivo de configuração de credenciais está no seguinte formato:
accountName myaccount
sasToken ?mysastoken
containerName mycontainer
blobEndpoint myaccount.blob.local.azurestack.external