Краткое руководство. Передача, скачивание и составление списка больших двоичных объектов с помощью Azure CLIQuickstart: Upload, download, and list blobs using the Azure CLI

Azure CLI — это интерфейс командной строки Azure для управления ресурсами Azure.The Azure CLI is Azure's command-line experience for managing Azure resources. Вы можете использовать его в браузере с Azure Cloud Shell.You can use it in your browser with Azure Cloud Shell. Его также можно установить в macOS, Linux или Windows и запускать из командной строки.You can also install it on macOS, Linux, or Windows and run it from the command line. В этом кратком руководстве содержатся сведения об использовании Azure CLI для отправки и скачивания данных в хранилище BLOB-объектов Azure и обратно.In this quickstart, you learn to use the Azure CLI to upload and download data to and from Azure Blob storage.

Примечание

Описанные в этой статье функции доступны для учетных записей, имеющих иерархическое пространство имен, только если вы зарегистрировались в общедоступной предварительной версии Data Lake Storage с доступом к данным по нескольким протоколам.The features described in this article are available to accounts that have a hierarchical namespace only if you enroll in the public preview of multi-protocol access on Data Lake Storage. Сведения об ограничениях см. в этой статье с описанием известных проблем.To review limitations, see the known issues article.

Предварительные требованияPrerequisites

Для доступа к службе хранилища Azure требуется подписка Azure.To access Azure Storage, you'll need an Azure subscription. Если у вас еще нет подписки, вы можете создать бесплатную учетную запись Azure, прежде чем начинать работу.If you don't already have a subscription, then create a free account before you begin.

Доступ к хранилищу Azure осуществляется с помощью учетной записи хранения.All access to Azure Storage takes place through a storage account. Для работы с этим руководством создайте учетную запись хранения с помощью портала Azure, Azure PowerShell или Azure CLI.For this quickstart, create a storage account using the Azure portal, Azure PowerShell, or Azure CLI. Инструкции по созданию учетной записи хранения см. в статье Создайте учетную запись хранения.For help creating the account, see Create a storage account.

Использование Azure Cloud ShellUse Azure Cloud Shell

В Azure есть Azure Cloud Shell, интерактивная оболочка среды, с которой можно работать в браузере.Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. Для работы со службами Azure в Cloud Shell можно использовать bash и PowerShell.Cloud Shell lets you use either bash or PowerShell to work with Azure services. Для запуска кода из этой статьи можно использовать предварительно установленные команды Cloud Shell. Ничего дополнительного в локальной среде устанавливать не нужно.You can use the Cloud Shell pre-installed commands to run the code in this article without having to install anything on your local environment.

Чтобы запустить Azure Cloud Shell, сделайте вот что:To launch Azure Cloud Shell:

ПараметрOption Пример и ссылкаExample/Link
Нажмите кнопку Попробовать в правом верхнем углу блока с кодом.Select Try It in the upper-right corner of a code block. При нажатии кнопки Попробовать код не копируется в Cloud Shell автоматически.Selecting Try It doesn't automatically copy the code to Cloud Shell. Открытие Azure Cloud Shell с помощью кнопки "Попробовать"
Перейдите по адресу https://shell.azure.com или нажмите кнопку Запуск Cloud Shell, чтобы открыть Cloud Shell в браузере.Go to https://shell.azure.com or select the Launch Cloud Shell button to open Cloud Shell in your browser. Запуск Cloud Shell в новом окнеLaunch Cloud Shell in a new window
На портале Azure в правом верхнем углу в строке меню нажмите кнопку Cloud Shell.Select the Cloud Shell button on the top-right menu bar in the Azure portal. Кнопка "Cloud Shell" на портале Azure

Чтобы выполнить код из этой статьи в Azure Cloud Shell, сделайте вот что:To run the code in this article in Azure Cloud Shell:

  1. Откройте Cloud Shell.Open Cloud Shell.
  2. В блоке кода нажмите кнопку Копировать, чтобы скопировать код.Select the Copy button on a code block to copy the code.
  3. Вставьте код в окно сеанса Cloud Shell, нажав клавиши Ctrl+Shift+V в Windows и Linux или Cmd+Shift+V в macOS.Paste the code into the Cloud Shell session with Ctrl+Shift+V on Windows and Linux, or Cmd+Shift+V on macOS.
  4. Нажмите клавишу ВВОД, чтобы выполнить код.Press Enter to run the code.

Если вы решили установить и использовать CLI локально, для выполнения инструкций в этом руководстве вам понадобится Azure CLI 2.0.4 или более поздней версии.If you choose to install and use the CLI locally, this quickstart requires that you are running the Azure CLI version 2.0.4 or later. Выполните команду az --version, чтобы определить версию.Run az --version to determine your version. Если вам необходимо выполнить установку или обновление, см. статью Установка Azure CLI.If you need to install or upgrade, see Install the Azure CLI.

Создание группы ресурсовCreate a resource group

Создайте группу ресурсов Azure с помощью команды az group create.Create an Azure resource group with the az group create command. Группа ресурсов — это логический контейнер, в котором происходит развертывание ресурсов Azure и управление ими.A resource group is a logical container into which Azure resources are deployed and managed.

az group create \
    --name myResourceGroup \
    --location eastus

Создание учетной записи храненияCreate a storage account

Создайте учетную запись хранения общего назначения с помощью команды az storage account create.Create a general-purpose storage account with the az storage account create command. Эта учетная запись хранения может использоваться для всех четырех служб: больших двоичных объектов, файлов, таблиц и очередей.The general-purpose storage account can be used for all four services: blobs, files, tables, and queues.

az storage account create \
    --name mystorageaccount \
    --resource-group myResourceGroup \
    --location eastus \
    --sku Standard_LRS \
    --encryption blob

Указание учетных данных учетной записи храненияSpecify storage account credentials

Azure CLI требуются учетные данные учетной записи хранения для большинства команд в этом руководстве.The Azure CLI needs your storage account credentials for most of the commands in this tutorial. Хотя для этого есть несколько вариантов, проще всего предоставить их, задав переменные среды AZURE_STORAGE_ACCOUNT и AZURE_STORAGE_KEY.While there are several options for doing so, one of the easiest ways to provide them is to set AZURE_STORAGE_ACCOUNT and AZURE_STORAGE_KEY environment variables.

Сначала отобразите ключи своей учетной записи хранения с помощью команды az storage account keys list:First, display your storage account keys by using the az storage account keys list command:

az storage account keys list \
    --account-name mystorageaccount \
    --resource-group myResourceGroup \
    --output table

Теперь задайте переменные среды AZURE_STORAGE_ACCOUNT и AZURE_STORAGE_KEY.Now, set the AZURE_STORAGE_ACCOUNT and AZURE_STORAGE_KEY environment variables. Это можно сделать в оболочке Bash с помощью команды export.You can do this in the Bash shell by using the export command:

export AZURE_STORAGE_ACCOUNT="mystorageaccountname"
export AZURE_STORAGE_KEY="myStorageAccountKey"

Создание контейнераCreate a container

Большие двоичные объекты всегда отправляются в контейнер.Blobs are always uploaded into a container. Вы можете упорядочивать группы больших двоичных объектов аналогично организации файлов в папках на компьютере.You can organize groups of blobs similar to the way you organize your files on your computer in folders.

Создайте контейнер для хранения больших двоичных объектов с помощью команды az storage container create.Create a container for storing blobs with the az storage container create command.

az storage container create --name mystoragecontainer

Передача больших двоичных объектовUpload a blob

Хранилище BLOB-объектов поддерживает блочные, добавочные и страничные BLOB-объекты.Blob storage supports block blobs, append blobs, and page blobs. Большинство файлов, находящихся в хранилище BLOB-объектов, хранятся как блочные BLOB-объекты.Most files stored in Blob storage are stored as block blobs. Добавочные BLOB-объекты используются, когда данные необходимо добавить в имеющийся большой двоичный объект без изменения его текущего содержимого, например для ведения журнала.Append blobs are used when data must be added to an existing blob without modifying its existing contents, such as for logging. Страничные BLOB-объекты содержат файлы VHD виртуальных машин IaaS.Page blobs back the VHD files of IaaS virtual machines.

Сначала создайте файл для передачи большого двоичного объекта.First, create a file to upload to a blob. Если вы используете Azure Cloud Shell, создайте файл, выполнив следующие инструкции: введите vi helloworld при открытии файла, нажмите клавишу INSERT, введите "Hello world", а затем нажмите клавишу ESC, введите :x и нажмите клавишу ВВОД.If you're using the Azure cloud shell, use the following in order to create a file: vi helloworld when the file opens, press insert, type "Hello world" and then press Esc and enter :x and press Enter.

В этом примере большой двоичный объект отправляется в контейнер, созданный на последнем шаге, с помощью команды az storage blob upload.In this example, you upload a blob to the container you created in the last step using the az storage blob upload command.

az storage blob upload \
    --container-name mystoragecontainer \
    --name blobName \
    --file ~/path/to/local/file

Если вы использовали описанный выше метод,чтобы создать файл в Azure Cloud Shell, вместо этого можно применить следующую команду CLI (обратите внимание, что вам не нужно было указывать путь к файлу, так как файл был создан в базовом каталоге, — в других ситуациях путь потребуется указать):If you used the previously described method to create a file in your Azure Cloud Shell, you can use this CLI command instead (note that you didn't need to specify a path since the file was created at the base directory, normally you'd need to specify a path):

az storage blob upload \
    --container-name mystoragecontainer \
    --name helloworld \
    --file helloworld

С помощью этой операции создается большой двоичный объект, если он не был создан ранее, или же, если он имеется, происходит его замещение.This operation creates the blob if it doesn't already exist, and overwrites it if it does. Прежде чем продолжить, отправьте нужное количество файлов.Upload as many files as you like before continuing.

Чтобы одновременно отправить несколько файлов, используйте команду az storage blob upload-batch.To upload multiple files at the same time, you can use the az storage blob upload-batch command.

Перечисление BLOB-объектов в контейнереList the blobs in a container

Выведите список больших двоичных объектов в контейнере, выполнив команду az storage blob list.List the blobs in the container with the az storage blob list command.

az storage blob list \
    --container-name mystoragecontainer \
    --output table

Загрузка BLOB-объектовDownload a blob

Выполните команду az storage blob download, чтобы скачать отправленный ранее большой двоичный объект.Use the az storage blob download command to download the blob you uploaded earlier.

az storage blob download \
    --container-name mystoragecontainer \
    --name blobName \
    --file ~/destination/path/for/file

Передача данных с помощью AzCopyData transfer with AzCopy

Программа AzCopy является дополнительным способом высокопроизводительной передачи данных с поддержкой сценариев для хранилища Azure.The AzCopy utility is another option for high-performance scriptable data transfer for Azure Storage. AzCopy можно использовать для передачи данных из хранилища BLOB-объектов, таблиц и файлов и обратно.You can use AzCopy to transfer data to and from Blob, File, and Table storage.

В качестве краткого примера здесь приводится команда AzCopy для отправки файла myfile.txt в контейнер mystoragecontainer.As a quick example, here is the AzCopy command for uploading a file called myfile.txt to the mystoragecontainer container.

azcopy \
    --source /mnt/myfiles \
    --destination https://mystorageaccount.blob.core.windows.net/mystoragecontainer \
    --dest-key <storage-account-access-key> \
    --include "myfile.txt"

Очистка ресурсовClean up resources

Если вам больше не нужны какие-либо ресурсы в группе ресурсов, включая учетную запись хранения, созданную в рамках этого краткого руководства, удалите группу ресурсов с помощью команды az group delete.If you no longer need any of the resources in your resource group, including the storage account you created in this Quickstart, delete the resource group with the az group delete command.

az group delete --name myResourceGroup

Дополнительная информацияNext steps

В этом кратком руководстве вы узнали, как передавать файлы между локальным диском и контейнером в хранилище BLOB-объектов Azure.In this Quickstart, you learned how to transfer files between local disk and a container in Azure Blob storage. Дополнительные сведения о работе с большими двоичными объектами в службе хранилища Azure см. в руководстве по работе с хранилищем BLOB-объектов Azure.To learn more about working with blobs in Azure Storage, continue to the tutorial for working with Azure Blob storage.