Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Azure CLI — это интерфейс командной строки Azure для управления ресурсами Azure. Вы можете использовать его в браузере с Azure Cloud Shell. Вы также можете установить его в macOS, Linux или Windows и запустить его из командной строки. Из этого краткого руководства вы узнаете, как с помощью Azure CLI отправлять и скачивать данные в хранилище BLOB-объектов Azure и из него.
Предпосылки
Для доступа к службе хранилища Azure требуется подписка Azure. Если у вас еще нет подписки, создайте бесплатную учетную запись Azure, прежде чем начинать работу.
Доступ к хранилищу Azure осуществляется с помощью учетной записи хранения. В этом кратком руководстве создайте учетную запись хранения с помощью портала Azure, Azure PowerShell или Azure CLI. Инструкции по созданию учетной записи хранения см. в статье Создайте учетную запись хранения.
Подготовьте свою среду для Azure CLI
Используйте среду Bash в Azure Cloud Shell. Дополнительные сведения см. в статье "Начало работы с Azure Cloud Shell".
Если вы предпочитаете запускать справочные команды CLI локально, установите Azure CLI. Если вы работаете в Windows или macOS, подумайте о запуске Azure CLI в контейнере Docker. Дополнительные сведения см. в статье Как запустить Azure CLI в контейнере Docker.
Если вы используете локальную установку, войдите в Azure CLI с помощью команды az login . Чтобы завершить процесс аутентификации, следуйте шагам, отображаемым в вашем терминале. Сведения о других параметрах входа см. в статье "Проверка подлинности в Azure с помощью Azure CLI".
Когда вас попросят, установите расширение Azure CLI при первом использовании. Дополнительные сведения о расширениях см. в статье Использование расширений и управление ими с помощью Azure CLI.
Выполните команду az version, чтобы узнать установленную версию и зависимые библиотеки. Чтобы обновиться до последней версии, выполните команду az upgrade.
- Для этой статьи требуется версия 2.0.46 или более поздняя версия Azure CLI. Если вы используете Azure Cloud Shell, последняя версия уже установлена.
Авторизация доступа к блоб-хранилищу
Вы можете авторизовать доступ к хранилищу BLOB-объектов из Azure CLI, используя учетные данные Microsoft Entra или ключ доступа к учетной записи хранения. Рекомендуется использовать учетные данные Microsoft Entra. В этой статье показано, как авторизовать операции хранения BLOB-объектов с помощью идентификатора Microsoft Entra.
Команды Azure CLI для операций с данными в хранилище BLOB-объектов поддерживают --auth-mode параметр, который позволяет указать, как авторизовать данную операцию. Задайте параметр --auth-mode значением login, чтобы авторизоваться с помощью учетных данных Microsoft Entra. Дополнительные сведения см. в статье Авторизация доступа к данным BLOB-объектов или очередей с помощью Azure CLI.
Только операции с данными объектов блоб-хранилища поддерживают параметр --auth-mode. Операции управления, такие как создание группы ресурсов или учетной записи хранения, автоматически используют учетные данные Microsoft Entra для авторизации.
Для начала войдите в свою учетную запись Azure с az login.
az login
Создайте группу ресурсов
Создайте группу ресурсов Azure с помощью команды az group create. Группа ресурсов — это логический контейнер, в котором происходит развертывание ресурсов Azure и управление ими.
Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.
az group create \
--name <resource-group> \
--location <location>
Создание учетной записи хранения
Создайте учетную запись хранения общего назначения с помощью команды az storage account create . Учетная запись хранения универсального назначения может использоваться для всех четырех служб: объектов данных, файлов, таблиц и очередей.
Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.
az storage account create \
--name <storage-account> \
--resource-group <resource-group> \
--location <location> \
--sku Standard_ZRS \
--encryption-services blob
Создание контейнера
Блобы всегда загружаются в контейнер. Группы объектов BLOB можно упорядочивать в контейнерах так же, как вы упорядочиваете файлы в папках. Создайте контейнер для хранения больших двоичных объектов с помощью команды az storage container create.
В следующем примере используется учетная запись Microsoft Entra для авторизации операции для создания контейнера. Перед созданием контейнера назначьте роль вкладчика данных хранилища Blob себе. Даже если вы являетесь владельцем учетной записи, вам требуются явные разрешения для выполнения операций с данными в учетной записи хранения. Дополнительные сведения о назначении ролей Azure см. в статье "Назначение роли Azure для доступа к данным BLOB-объектов".
Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.
az ad signed-in-user show --query id -o tsv | az role assignment create \
--role "Storage Blob Data Contributor" \
--assignee @- \
--scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account>"
az storage container create \
--account-name <storage-account> \
--name <container> \
--auth-mode login
Это важно
Для распространения назначений ролей Azure может потребоваться несколько минут.
Вы также можете использовать ключ учетной записи хранения для авторизации операции для создания контейнера. Дополнительные сведения об авторизации операций с данными с помощью Azure CLI см. в статье "Авторизация доступа к данным blob или очереди с помощью Azure CLI".
Загрузка BLOB
Blob storage поддерживает блочные BLOB-объекты, добавочные BLOB-объекты и страничные BLOB-объекты. Примеры в этом кратком руководстве показывают, как работать с блочными BLOB-объектами.
Сначала создайте файл для отправки в блочный BLOB-объект. Если вы используете Azure Cloud Shell, используйте следующую команду, чтобы создать файл:
vi helloworld
Когда файл откроется, нажмите клавишу INSERT. Введите hello world, а затем нажмите клавишу ESC. Затем введите :x, а затем нажмите клавишу ВВОД.
В этом примере вы загружаете блоб в контейнер, созданный на предыдущем шаге, с помощью команды az storage blob upload. Не обязательно указать путь к файлу, так как файл был создан в корневом каталоге. Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.
az storage blob upload \
--account-name <storage-account> \
--container-name <container> \
--name myFile.txt \
--file myFile.txt \
--auth-mode login
Эта операция создает объект BLOB, если он еще не существует, и перезаписывает его, если он существует. Перед продолжением загрузите столько файлов, сколько пожелаете.
При загрузке блоба с помощью Azure CLI, он выполняет соответствующие вызовы REST API через протоколы http и https.
Чтобы отправить несколько файлов одновременно, можно использовать команду az storage blob upload-batch .
Перечисление BLOB-объектов в контейнере
Перечислите блобы в контейнере командой az storage blob list. Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.
az storage blob list \
--account-name <storage-account> \
--container-name <container> \
--output table \
--auth-mode login
Скачать blob
Используйте команду az storage blob download, чтобы скачать загруженный ранее blob-объект. Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.
az storage blob download \
--account-name <storage-account> \
--container-name <container> \
--name myFile.txt \
--file <~/destination/path/for/file> \
--auth-mode login
Передача данных с помощью AzCopy
Служебная программа командной строки AzCopy обеспечивает высокопроизводительную передачу данных с возможностью сценариев для службы хранилища Azure. AzCopy можно использовать для передачи данных в хранилище BLOB-объектов и файлов Azure и из нее. Дополнительные сведения об AzCopy версии 10, последней версии AzCopy, см. в статье "Начало работы с AzCopy". Сведения об использовании AzCopy версии 10 с хранилищем BLOB-объектов см. в статье "Передача данных с помощью AzCopy и хранилища BLOB-объектов".
В следующем примере для отправки локального файла в объект Blob используется AzCopy. Не забудьте заменить примеры значений собственными значениями:
azcopy login
azcopy copy 'C:\myDirectory\myFile.txt' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myFile.txt'
Очистите ресурсы
Если вы хотите удалить ресурсы, созданные в рамках этого краткого руководства, включая учетную запись хранения, удалите группу ресурсов с помощью команды az group delete . Не забудьте заменить значения заполнителей в угловых скобках собственными значениями.
az group delete \
--name <resource-group> \
--no-wait
Дальнейшие шаги
Из этого краткого руководства вы узнали, как передавать файлы между локальной файловой системой и контейнером в хранилище BLOB-объектов Azure. Чтобы узнать больше о работе с хранилищем BLOB-объектов с помощью Azure CLI, выберите следующий вариант.