Краткое руководство. Создание, скачивание и составление списка больших двоичных объектов с помощью Azure CLIQuickstart: Create, download, and list blobs with 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.

Примечание

Функции, описанные в этой статье, теперь доступны для учетных записей с иерархическим пространством имен.The features described in this article are now available to accounts that have a hierarchical namespace. Чтобы просмотреть ограничения, ознакомьтесь с возможностями хранилища BLOB-объектов, доступными в Azure Data Lake Storage 2-го поколения статье.To review limitations, see the Blob storage features available in Azure Data Lake Storage Gen2 article.

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

Для доступа к службе хранилища Azure требуется подписка Azure.To access Azure Storage, you'll need an Azure subscription. Если у вас еще нет подписки, создайте бесплатную учетную запись Azure, прежде чем начинать работу.If you don't already have a subscription, 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 a storage 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 можно использовать Bash или PowerShell с Cloud Shell.You can use either Bash or PowerShell with Cloud Shell to work with Azure services. Для запуска кода из этой статьи можно использовать предварительно установленные команды Cloud Shell. Ничего дополнительного в локальной среде устанавливать не нужно.You can use the Cloud Shell preinstalled commands to run the code in this article without having to install anything on your local environment.

Начало работы с Azure Cloud ShellTo start 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
Нажмите кнопку Cloud Shell в строке меню в правом верхнем углу окна портала Azure.Select the Cloud Shell button on the menu bar at the upper right in the Azure portal. Кнопка "Cloud Shell" на портале Azure

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

  1. Запустите Cloud Shell.Start 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 by selecting Ctrl+Shift+V on Windows and Linux or by selecting Cmd+Shift+V on macOS.

  4. Нажмите клавишу ВВОД, чтобы выполнить код.Select Enter to run the code.

Установка Azure CLI в локальной средеInstall the Azure CLI locally

Если вы решили установить и использовать Azure CLI на локальном компьютере, для выполнения инструкций из этого руководства вам потребуется Azure CLI 2.0.46 или более поздней версии.If you choose to install and use the Azure CLI locally, this quickstart requires that you are running the Azure CLI version 2.0.46 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.

Если вы используете Azure CLI на локальном компьютере, необходимо войти в систему и пройти проверку подлинности.If you are running the Azure CLI locally, you must log in and authenticate. В этом шаге нет необходимости, если вы используете Azure Cloud Shell.This step is not necessary if you are using Azure Cloud Shell. Чтобы войти в Azure CLI, запустите az login и пройдите проверку подлинности в окне браузера:To log in to Azure CLI, run az login and authenticate in the browser window:

az login

Дополнительные сведения о проверке подлинности с помощью Azure CLI см. в статье Вход с помощью Azure CLI.For more information about authentication` with Azure CLI, see Sign in with Azure CLI.

Авторизация доступа к хранилищу BLOB-объектовAuthorize access to Blob storage

Вы можете предоставить доступ к хранилищу BLOB-объектов из Azure CLI либо с использованием учетных данных Azure AD или ключа доступа к учетной записи хранения.You can authorize access to Blob storage from the Azure CLI either with Azure AD credentials or by using the storage account access key. Рекомендуется использовать учетные данные Azure AD.Using Azure AD credentials is recommended. В этой статье показано, как авторизовать операции в хранилище BLOB-объектов с помощью Azure AD.This article shows how to authorize Blob storage operations using Azure AD.

Команды Azure CLI для операций с данными в хранилище BLOB-объектов поддерживают параметр --auth-mode, что позволяет указать, как авторизовать определенную операцию.Azure CLI commands for data operations against Blob storage support the --auth-mode parameter, which enables you to specify how to authorize a given operation. Задайте для параметра --auth-mode значение login, чтобы выполнять авторизацию с использованием учетных данных Azure AD.Set the --auth-mode parameter to login to authorize with Azure AD credentials. Дополнительные сведения см. в статье Авторизация доступа к данным BLOB-объектов или очередей с помощью Azure CLI.For more information, see Authorize access to blob or queue data with Azure CLI.

Только операции с данными хранилища BLOB-объектов поддерживают параметр --auth-mode.Only Blob storage data operations support the --auth-mode parameter. Для авторизации операций управления, таких как создание группы ресурсов или учетной записи хранения, автоматически используются учетные данные Azure AD.Management operations, such as creating a resource group or storage account, automatically use Azure AD credentials for authorization.

Создание группы ресурсов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.

Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.Remember to replace placeholder values in angle brackets with your own values:

az group create \
    --name <resource-group> \
    --location <location>

Создание учетной записи хранения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.

Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.Remember to replace placeholder values in angle brackets with your own values:

az storage account create \
    --name <storage-account> \
    --resource-group <resource-group> \
    --location <location> \
    --sku Standard_ZRS \
    --encryption-services blob

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

Большие двоичные объекты всегда отправляются в контейнер.Blobs are always uploaded into a container. Вы можете упорядочивать группы больших двоичных объектов в контейнеры аналогично организации файлов в папках на компьютере.You can organize groups of blobs in containers 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.

В следующем примере учетная запись Azure AD используется для авторизации операции создания контейнера.The following example uses your Azure AD account to authorize the operation to create the container. Прежде чем создавать контейнер, назначьте себе роль Участник данных в хранилище BLOB-объектов.Before you create the container, assign the Storage Blob Data Contributor role to yourself. Даже если вы являетесь владельцем учетной записи, вам потребуются явные разрешения для выполнения операций с данными в учетной записи хранения.Even if you are the account owner, you need explicit permissions to perform data operations against the storage account. Дополнительные сведения о назначении ролей RBAC см. в разделе Использование Azure CLI для назначения роли RBAC для доступа.For more information about assigning RBAC roles, see Use Azure CLI to assign an RBAC role for access.

Вы также можете использовать ключ учетной записи хранения, чтобы авторизовать операцию создания контейнера.You can also use the storage account key to authorize the operation to create the container. Дополнительные сведения об авторизации операций с данными с помощью Azure CLI см. в статье Авторизация доступа к данным большого двоичного объекта или очереди с помощью Azure CLI.For more information about authorizing data operations with Azure CLI, see Authorize access to blob or queue data with Azure CLI.

Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.Remember to replace placeholder values in angle brackets with your own values:

az storage container create \
    --account-name <storage-account> \
    --name <container> \
    --auth-mode login

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

Хранилище BLOB-объектов поддерживает блочные, добавочные и страничные BLOB-объекты.Blob storage supports block blobs, append blobs, and page blobs. В примерах в этом кратком руководстве показано, как работать с блочными BLOB-объектами.The examples in this quickstart show how to work with block blobs.

Сначала создайте файл для передачи в блочный BLOB-объект.First, create a file to upload to a block blob. Если вы используете Azure Cloud Shell, создайте этот файл с помощью следующей команды.If you're using Azure Cloud Shell, use the following command to create a file:

vi helloworld

Когда файл откроется, щелкните Вставить.When the file opens, press insert. Введите Hello World, а затем нажмите клавишу ESC. Затем введите :x и нажмите клавишу ВВОД.Type Hello world, then press Esc. Next, type :x, then 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. Нет необходимости указывать путь к файлу, так как файл создан в корневом каталоге.It's not necessary to specify a file path since the file was created at the root directory. Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.Remember to replace placeholder values in angle brackets with your own values:

az storage blob upload \
    --account-name <storage-account> \
    --container-name <container> \
    --name helloworld \
    --file helloworld \
    --auth-mode login

С помощью этой операции создается большой двоичный объект, если он не был создан ранее, или же, если он имеется, происходит его замещение.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. Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.Remember to replace placeholder values in angle brackets with your own values:

az storage blob list \
    --account-name <storage-account> \
    --container-name <container> \
    --output table \
    --auth-mode login

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

Выполните команду az storage blob download, чтобы скачать отправленный ранее большой двоичный объект.Use the az storage blob download command to download the blob you uploaded earlier. Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.Remember to replace placeholder values in angle brackets with your own values:

az storage blob download \
    --account-name <storage-account> \
    --container-name <container> \
    --name helloworld \
    --file ~/destination/path/for/file \
    --auth-mode login

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

Служебная программа командной строки AzCopy обеспечивает высокопроизводительную передачу данных с поддержкой сценариев для службы хранилища Azure.The AzCopy command-line utility offers high-performance, scriptable data transfer for Azure Storage. AzCopy можно использовать для передачи данных из хранилища BLOB-объектов, Файлов Azure и обратно.You can use AzCopy to transfer data to and from Blob storage and Azure Files. Дополнительные сведения об AzCopy версии 10, которая является последней, см. в статье Get started with AzCopy (Начало работы с AzCopy).For more information about AzCopy v10, the latest version of AzCopy, see Get started with AzCopy. Дополнительные сведения об использовании AzCopy версии 10 с хранилищем BLOB-объектов см. в статье Transfer data with AzCopy and Blob storage (Передача данных с помощью AzCopy и хранилища BLOB-объектов).To learn about using AzCopy v10 with Blob storage, see Transfer data with AzCopy and Blob storage.

В следующем примере AzCopy используется для передачи локального файла в большой двоичный объект.The following example uses AzCopy to upload a local file to a blob. Не забудьте заменить примеры значений собственными значениями:Remember to replace the sample values with your own values:

azcopy login
azcopy copy 'C:\myDirectory\myTextFile.txt' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myTextFile.txt'

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

Если вы решили удалить ресурсы, созданные для этого краткого руководства, вместе с группой ресурсов, выполните для этого команду az group delete.If you want to delete the resources you created as part of this quickstart, including the storage account, delete the resource group by using the az group delete command. Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.Remember to replace placeholder values in angle brackets with your own values:

az group delete \
    --name <resource-group> \
    --no-wait

Дальнейшие действияNext steps

В этом кратком руководстве вы узнали, как передавать файлы между локальной файловой системой и контейнером в хранилище BLOB-объектов Azure.In this quickstart, you learned how to transfer files between a local file system and a container in Azure Blob storage. Чтобы узнать больше о работе с хранилищем BLOB-объектов с использованием Azure CLI, изучите примеры Azure CLI для хранилища BLOB-объектов.To learn more about working with Blob storage by using Azure CLI, explore Azure CLI samples for Blob storage.