Inicio rápido: Creación, descarga y enumeración de blobs mediante la CLI de Azure

La CLI de Azure es la forma de usar la línea de comandos de Azure para administrar los recursos de Azure. Puede utilizarlo en el explorador con Azure Cloud Shell. También puede instalarla en macOS, Linux o Windows y ejecutarla desde la línea de comandos. En esta guía de inicio rápido aprenderá a usar la CLI de Azure para cargar y descargar datos en Azure Blob Storage y desde este.

Requisitos previos

Para acceder a Azure Storage, necesitará una suscripción de Azure. Si todavía no tiene una suscripción, cree una cuenta gratuita antes de empezar.

Todo el acceso a Azure Storage tiene lugar mediante una cuenta de almacenamiento. En este inicio rápido, cree una cuenta de almacenamiento con Azure Portal, Azure PowerShell o la CLI de Azure. Si necesita ayuda para crear una cuenta de almacenamiento, consulte Creación de una cuenta de almacenamiento.

Preparación del entorno para la CLI de Azure

  • En este artículo se necesita la versión 2.0.46 de la CLI de Azure, o cualquier versión posterior. Si usa Azure Cloud Shell, ya está instalada la versión más reciente.

Autorización del acceso al almacenamiento de blobs

Puede autorizar el acceso al almacenamiento de blobs desde la CLI de Azure con las credenciales de Microsoft Entra o con la clave de acceso de la cuenta de almacenamiento. Se recomienda usar las credenciales de Microsoft Entra. En este artículo se muestra cómo autorizar las operaciones de almacenamiento de blobs mediante Microsoft Entra ID.

Los comandos de la CLI de Azure para operaciones de datos en el almacenamiento de blobs admiten el parámetro --auth-mode, que permite especificar cómo se autoriza una operación determinada. Establezca el parámetro --auth-mode en login para autorizar con las credenciales de Microsoft Entra. Para más información, consulte el artículo en el que se explica cómo autorizar el acceso a los datos de blobs o colas con la CLI de Azure.

Solo las operaciones de datos de almacenamiento de blobs admiten el parámetro --auth-mode. Las operaciones de administración, como la creación de un grupo de recursos o una cuenta de almacenamiento, usan automáticamente las credenciales de Microsoft Entra para la autorización.

Para empezar, inicie sesión en su cuenta de Azure con el comando az login.

az login

Crear un grupo de recursos

Cree un grupo de recursos de Azure con el comando az group create. Un grupo de recursos es un contenedor lógico en el que se implementan y se administran los recursos de Azure.

No olvide reemplazar los valores del marcador de posición entre corchetes angulares por sus propios valores:

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

Crear una cuenta de almacenamiento

Las cuentas de almacenamiento de uso general se crean con el comando az storage account create. Las cuentas de almacenamiento de uso general se pueden para los cuatro servicios: blobs, archivos, tablas y colas.

No olvide reemplazar los valores del marcador de posición entre corchetes angulares por sus propios valores:

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

Crear un contenedor

Los blobs siempre se cargan en un contenedor. Puede organizar los grupos de blobs en contenedores de una forma similar a la que organiza los archivos en carpetas en el equipo. Cree un contenedor para almacenar blobs con el comando az storage container create.

En el ejemplo siguiente se usa la cuenta de Microsoft Entra para autorizar la operación de creación del contenedor. Antes de crear el contenedor, asígnese a sí mismo el rol Colaborador de datos de Storage Blob. Aunque sea el propietario de la cuenta, necesita permisos explícitos para realizar operaciones de datos en la cuenta de almacenamiento. Para más información sobre la asignación de roles de Azure, consulte Asignación de roles de Azure para el acceso a datos de blobs.

No olvide reemplazar los valores del marcador de posición entre corchetes angulares por sus propios valores:

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

Importante

La propagación de las asignaciones de roles de Azure puede tardar unos minutos.

También puede usar la clave de la cuenta de almacenamiento para autorizar a la operación de creación del contenedor. Para obtener más información sobre la autorización de operaciones de datos con la CLI de Azure, consulte Autorización del acceso a los datos de blobs o colas con la CLI de Azure.

Carga de un blob

Blob Storage admite blobs en bloques, blobs en anexos y blobs en páginas. Los ejemplos en esta guía de inicio rápido muestran cómo trabajar con blobs en bloques.

En primer lugar, cree un archivo para cargarlo en un blob en bloques. Si está utilizando Azure Cloud Shell, use el siguiente comando para crear un archivo:

vi helloworld

Cuando se abra el archivo, presione Insertar. Escriba Hello World y, a continuación, presione Esc. Después, escriba :x y, a continuación, presione Entrar.

En este ejemplo, se carga un blob en el contenedor que se creó en el último paso con el comando az storage blob upload. No es necesario especificar una ruta de acceso de archivo, ya que el archivo se creó en el directorio raíz. No olvide reemplazar los valores del marcador de posición entre corchetes angulares por sus propios valores:

az storage blob upload \
    --account-name <storage-account> \
    --container-name <container> \
    --name myFile.txt \
    --file myFile.txt \
    --auth-mode login

Esta operación crea el blob si todavía no existe y lo sobrescribe si ya existe. Cargue tantos archivos como desee antes de continuar.

Al cargar un blob mediante la CLI de Azure, emite las llamadas a la API de REST respectivas a través de protocolos http y https.

Para cargar varios archivos al mismo tiempo, puede usar el comando az storage blob upload-batch.

Enumerar los blobs de un contenedor

Enumere los blobs del contenedor con el comando az storage blob list. No olvide reemplazar los valores del marcador de posición entre corchetes angulares por sus propios valores:

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

Descarga de un blob

Use el comando az storage blob download para descargar el blob que cargó anteriormente. No olvide reemplazar los valores del marcador de posición entre corchetes angulares por sus propios valores:

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

Transferencia de datos con AzCopy

La utilidad de línea de comandos AzCopy ofrece transferencia de datos de alto rendimiento mediante scripts para Azure Storage. Puede utilizar AzCopy para transferir datos a y desde Blob Storage y Azure Files. Para más información sobre AzCopy v10, la versión más reciente de AzCopy, consulte Introducción a AzCopy. Para más información acerca del uso de AzCopy v10 con el almacenamiento de blobs, consulte Transferencia de datos con AzCopy y Blob Storage.

En el ejemplo siguiente se usa AzCopy para cargar un archivo local en un blob. No olvide reemplazar los valores de ejemplo por sus propios valores:

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

Limpieza de recursos

Si desea eliminar los recursos que ha creado en este, lo que incluye la cuenta de almacenamiento, elimine el grupo de recursos mediante el comando az group delete. No olvide reemplazar los valores del marcador de posición entre corchetes angulares por sus propios valores:

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

Pasos siguientes

En esta guía de inicio rápido, aprendió a transferir archivos entre un sistema de archivos local y un contenedor en Azure Blob Storage. Para más información sobre cómo trabajar con Blob Storage mediante la CLI de Azure, seleccione una de las siguientes opciones.