Ejercicio: validar las ventajas de rendimiento que ofrece Azure Premium Blob Storage
Ahora que ha examinado los métodos para optimizar y validar el rendimiento de Azure Premium Blob Storage, querrá ponerlos en práctica. En esta unidad, explorará el proceso de implementación de dos cuentas de Azure Storage, cada una con distintos niveles de rendimiento, y evaluará sus características de latencia relativas. Para ello, usará una aplicación .NET de desarrollo personalizado que carga y descarga un gran número de blobs y mide la latencia asociada a cada una de estas operaciones.
Para simplificar la implementación de este ejercicio, ejecutará la aplicación desde Azure Cloud Shell, lo que elimina la necesidad de usar una máquina virtual de Azure con este fin. Sin embargo, para minimizar el impacto de las latencias relacionadas con la red en los resultados de la prueba, configurará Azure Cloud Shell para usar la funcionalidad de aislamiento de red virtual. Esto le permitirá asegurarse de que la máquina virtual que hospeda el contenedor que ejecuta la sesión de Azure Cloud Shell reside en la misma región de Azure que las dos cuentas de almacenamiento.
Nota
Este ejercicio es opcional. Si le interesa completar este ejercicio, deberá crear una suscripción de Azure antes de empezar. Si no tiene una cuenta de Azure o no quiere crear una en este momento, puede leer las instrucciones para comprender la información que se está presentando.
Tarea 1: Preparación del entorno de laboratorio
Use el procedimiento siguiente para preparar el entorno que usará para implementar el aislamiento de red virtual de Azure Cloud Shell y para crear las dos cuentas de Azure Storage:
En el equipo, abra una ventana del explorador web y vaya a Azure Portal en https://portal.azure.com.
Cuando se le solicite, inicie sesión con una cuenta de usuario que tenga el rol Propietario en la suscripción de Azure que usará en este ejercicio.
En Azure Portal, seleccione el icono de Cloud Shell.
Nota
Si es la primera vez que usa Cloud Shell y aparece el mensaje Le damos la bienvenida a Azure Cloud Shell, seleccione PowerShell. En el panel No tiene ningún almacenamiento montado, en la lista desplegable Suscripción, seleccione la suscripción que usa en este ejercicio y, a continuación, seleccione Crear almacenamiento.
Si es necesario, en el panel Cloud Shell, cambie a la opción PowerShell mediante el menú desplegable de la barra de herramientas.
En el panel Cloud Shell, ejecute el siguiente comando para establecer el valor de una variable que designe la región de Azure en la que aprovisionará los recursos de este ejercicio. Para ello, reemplace el marcador de posición <azure-region> por el nombre de la región de Azure en la que puede implementar recursos:
PowerShell$location = '<azure-region>'
A continuación, establezca el valor de una variable que designe el nombre del grupo de recursos que servirá como contenedor para todos los recursos de Azure que aprovisionará en este ejercicio:
PowerShell$rgName = 'apbslabrg'
Cree una colección de valores de parámetro que Azure pueda usar para crear el grupo de recursos:
PowerShell$rg = @{ Name = "$rgName" Location = "$location" }
Creación del grupo de recursos:
PowerShellNew-AzResourceGroup @rg
Establezca el valor de una variable que designe el nombre de la red virtual a la que conectará la máquina virtual que ejecuta el contenedor de Cloud Shell:
PowerShell$vnetName = "$rgName-vnet"
Cree una colección de valores de parámetro que Azure pueda usar para crear la red virtual:
PowerShell$vnetParameters = @{ Name = "$vnetName" ResourceGroupName = "$rgName" Location = "$location" AddressPrefix = '10.0.0.0/20' }
Creación de la red virtual.
PowerShell$vnet = New-AzVirtualNetwork @vnetParameters
Cree dos área de trabajo de Log Analytics:
PowerShell$random = Get-Random -Maximum 1000000 $workspaceStandardName = 'standard-la-' + $random New-AzOperationalInsightsWorkspace -Location $location -Name $workspaceStandardName -Sku PerGB2018 -ResourceGroupName $rgName $workspacePremiumName = 'premium-la-' + $random New-AzOperationalInsightsWorkspace -Location $location -Name $workspacePremiumName -Sku PerGB2018 -ResourceGroupName $rgName
Nota
El aprovisionamiento de las áreas de trabajo de Log Analytics puede tardar unos cinco minutos. No espere a que se complete. Puede continuar a la tarea siguiente.
Tarea 2: Implementación de Cloud Shell en una instancia de Azure Virtual Network
Use el procedimiento siguiente para implementar el aislamiento de red virtual de Cloud Shell. Esto le permitirá evaluar con mayor precisión la latencia de almacenamiento de las cuentas de Azure Storage que aprovisiona más adelante en este ejercicio.
En el panel Cloud Shell, ejecute el siguiente comando para registrar el proveedor de recursos Microsoft.ContainerInstance, que es necesario para implementar la funcionalidad de aislamiento de red virtual Cloud Shell:
PowerShellRegister-AzResourceProvider -ProviderNamespace Microsoft.ContainerInstance
Revise la salida del comando anterior y compruebe que el RegistrationState (Estado de registro) del proveedor de recursos Microsoft.ContainerInstance aparece como Registered (Registrado). Si no aparece como Registered, use el siguiente comando para comprobar el estado del registro. Este comprobará periódicamente si el registro se completó correctamente y, a continuación, continuará con el paso siguiente:
PowerShellGet-AzResourceProvider -ProviderNamespace Microsoft.ContainerInstance
A continuación, recupere el valor de OID de Azure Container Instances, que es necesario para implementar la funcionalidad de aislamiento de red virtual de Cloud Shell:
PowerShell$azureContainerInstanceOID = (Get-AzADServicePrincipal -DisplayNameBeginsWith 'Azure Container Instance').Id
Establezca el valor de una variable que designe el nombre del recurso de Azure Relay que proporcionará conectividad al contenedor que ejecuta Azure Cloud Shell:
PowerShell$random = Get-Random -Maximum 1000000 $relayNameSpaceName = ($rgName.replace("-", "") + 'relay' + $random).ToLower()
Descargue el archivo de parámetros que Azure usará para crear subredes en la red virtual que aprovisionó en la tarea anterior e implemente el recurso de Azure Relay en uno de ellos:
PowerShellInvoke-WebRequest -Uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/demos/cloud-shell-vnet/azuredeploy.parameters.json -OutFile azuredeploy-relay.parameters.json
Implemente el recurso de Azure Relay:
PowerShellNew-AzResourceGroupDeployment ` -ResourceGroupName $rgName ` -existingVNETName $vnetName ` -relayNamespaceName $relayNameSpaceName ` -azureContainerInstanceOID $azureContainerInstanceOID ` -TemplateUri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/demos/cloud-shell-vnet/azuredeploy.json ` -TemplateParameterFile azuredeploy-relay.parameters.json
Nota
Espere a que la implementación se complete. Esto puede tardar unos tres minutos.
Descargue el archivo de parámetros que usará Azure para crear la cuenta de almacenamiento que usará el contenedor de Cloud Shell:
PowerShellInvoke-WebRequest -Uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/demos/cloud-shell-vnet-storage/azuredeploy.parameters.json -OutFile azuredeploy-storage.parameters.json
Establezca el valor de una variable que designe el nombre de la cuenta de Azure Storage que usará Azure para hospedar el directorio principal del contenedor de Azure Cloud Shell con el aislamiento de red virtual habilitado:
PowerShell$storageAccountName = ($rgName.replace("-", "") + 'storage' + $random).ToLower()
Cree la cuenta de almacenamiento que usará el contenedor de Cloud Shell:
PowerShellNew-AzResourceGroupDeployment ` -ResourceGroupName $rgName ` -existingVNETName $vnetName ` -existingStorageSubnetName 'storagesubnet' ` -existingContainerSubnetName 'cloudshellsubnet' ` -storageAccountName $storageAccountName ` -TemplateUri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/demos/cloud-shell-vnet-storage/azuredeploy.json ` -TemplateParameterFile azuredeploy-storage.parameters.json
Nota
Espere a que la implementación se complete. Esto puede tardar varios minutos.
Desmonte la cuenta de almacenamiento original de la sesión de Cloud Shell actual:
PowerShellclouddrive unmount
Cuando se le solicite (dos veces), confirme que desea continuar.
Nota
Esto finalizará la sesión de Cloud Shell actual.
Cuando se le solicite, en el panel Cloud Shell, seleccione Volver a conectar.
Cuando aparezca el mensaje Le damos la bienvenida a Azure Cloud Shell, seleccione PowerShell.
En el panel No tiene ningún almacenamiento montado, active la casilla Mostrar configuración avanzada y, a continuación, active la casilla Mostrar configuración de aislamiento de red virtual.
En el panel No tiene ningún almacenamiento montado, especifique la siguiente configuración y, a continuación, seleccione Crear almacenamiento:
Configuración Acción Subscription Seleccione el nombre de la suscripción. Región de Cloud Shell Seleccione el nombre de una región de Azure que eligió anteriormente en este ejercicio. Resource group Seleccione la entrada apbslabrg en la lista desplegable. Cuenta de almacenamiento Seleccione el nombre de la cuenta de almacenamiento con los prefijos apbslabrg. Recurso compartido de archivos Escriba cloudshellshare. Virtual network apbslabrg-vnet Perfil de red Nombre del perfil de red generado automáticamente anteriormente en esta tarea. Espacio de nombres de Relay Nombre del espacio de nombres de Azure Relay generado automáticamente anteriormente en esta tarea. Nota
Las tres últimas opciones de configuración de la tabla anterior se rellenan automáticamente y es posible que no se muestren en el panel No tiene ningún almacenamiento montado.
El montaje de almacenamiento puede tardar unos cinco minutos. No espere a que se complete. Puede continuar a la tarea siguiente.
Tarea 3: Creación de una cuenta de almacenamiento de rendimiento de Azure Standard
Use el procedimiento siguiente para crear una cuenta de almacenamiento de rendimiento de Azure Standard a partir del Azure Portal. Usará esta cuenta para medir la latencia de descarga de blobs más adelante en este ejercicio.
En la ventana del explorador web donde se muestra Azure Portal, abra otra pestaña y, a continuación, vaya a Azure Portal.
Use el cuadro de texto Buscar recursos, servicios y documentos para buscar y seleccione Cuentas de almacenamiento.
En la página Cuentas de almacenamiento, seleccione + Crear.
En la pestaña Aspectos básicos de la página Crear una cuenta de almacenamiento, introduzca la siguiente información:
Configuración Valor Subscription Nombre de la suscripción Resource group apbslabrg Nombre de la cuenta de almacenamiento Cualquier nombre único global de entre 3 y 24 caracteres, que conste de letras minúsculas y dígitos, y que empiece por una letra. Region El nombre de una región de Azure que eligió anteriormente en este ejercicio. Rendimiento Estándar Redundancia Almacenamiento con redundancia local (LRS) Seleccione Revisar y crear y luego Crear.
Nota
Anote el nombre de la cuenta de almacenamiento. La necesitará más adelante en este ejercicio.
El aprovisionamiento de la cuenta de almacenamiento puede tardar aproximadamente un minuto. No espere a que se complete. Puede continuar a la tarea siguiente.
Tarea 4: Creación de una cuenta de Azure Premium Blob Storage
Use el procedimiento siguiente para crear una cuenta de almacenamiento de rendimiento de Azure Premium Blob Storage a partir del Azure Portal. Usará esta cuenta para medir la latencia de descarga de blobs más adelante en este ejercicio.
En la ventana del explorador web donde se muestra Azure Portal, abra otra pestaña y, a continuación, vaya a Azure Portal.
Use el cuadro de texto Buscar recursos, servicios y documentos para buscar y seleccione Cuentas de almacenamiento.
En la página Cuentas de almacenamiento, seleccione + Crear.
En la pestaña Aspectos básicos de la página Crear una cuenta de almacenamiento, introduzca la siguiente información:
Configuración Valor Subscription Nombre de la suscripción Resource group apbslabrg Nombre de la cuenta de almacenamiento Cualquier nombre único global de entre 3 y 24 caracteres, que conste de letras minúsculas y dígitos, y que empiece por una letra. Region El nombre de una región de Azure que eligió anteriormente en este ejercicio. Rendimiento Premium Tipo de cuenta premium Blobs en bloques Redundancia Almacenamiento con redundancia local (LRS) Seleccione Revisar y crear y, luego, Crear.
Nota
Anote el nombre de la cuenta de almacenamiento. La necesitará más adelante en este ejercicio.
El aprovisionamiento de la cuenta de almacenamiento puede tardar aproximadamente un minuto. No espere a que se complete. Puede continuar a la tarea siguiente.
Tarea 5: Carga de blobs en la cuenta de almacenamiento de rendimiento de Azure Standard
Use el procedimiento siguiente para usar una aplicación .NET personalizada para cargar blobs en la cuenta de almacenamiento de rendimiento de Azure Standard que creó anteriormente en este ejercicio. Usará estos blobs para evaluar la latencia de las operaciones de descarga de blobs más adelante en este ejercicio. También configurará los diagnósticos de almacenamiento que le permitirán evaluar la latencia del servicio.
Nota
Antes de continuar con esta tarea, compruebe que la operación de montaje de almacenamiento de Azure Cloud Shell inició al final de la tarea 2 se completó correctamente y que se completó el aprovisionamiento de la cuenta de almacenamiento de rendimiento de Azure Standard que inició en la tarea 3.
En la ventana del explorador web que muestra el Azure Portal, vuelva a la pestaña que usó para aprovisionar la cuenta de almacenamiento de rendimiento de Azure Standard.
Seleccione Ir al recurso para ir a la página que muestra las propiedades de la cuenta de almacenamiento de rendimiento de Azure Standard.
En la página Cuenta de almacenamiento de rendimiento de Azure Standard, en el menú de navegación, en la sección Supervisión, seleccione Configuración de diagnóstico.
En el panel Seleccione cualquiera de los recursos para ver la configuración de diagnóstico, seleccione blob y, a continuación, seleccione + Agregar configuración de diagnóstico.
En la página Configuración de diagnóstico, en el cuadro de texto Nombre de configuración de diagnóstico, escriba Standard-diagnostic; en la sección Categorías de registros, active la casilla StorageRead; en la sección Detalles de destino, seleccione Enviar al área de trabajo de Log Analytics; acepte la Suscripción predeterminada, pero establezca el área de trabajo de Log Analytics en el área de trabajo con el prefijo standard que creó anteriormente en este ejercicio; seleccione Guardar, y cierre la página Configuración de diagnóstico.
De nuevo en la página Cuenta de almacenamiento de rendimiento de Azure Standard, en el menú de navegación, en la sección Seguridad y redes, seleccione Claves de acceso.
En la página Claves de acceso, seleccione Mostrar claves o, en la sección key1, junto al cuadro de texto Cadena de conexión, seleccione Mostrar y, a continuación, copie el contenido del cuadro de texto Cadena de conexión en el Portapapeles.
Cambie a la pestaña que usó para montar el almacenamiento en la sesión de Cloud Shell al final de la tarea 2.
En el panel Cloud Shell, dentro de una sesión de PowerShell, ejecute el siguiente comando para establecer la variable de entorno que usará la aplicación .NET para conectarse a la cuenta de Azure Storage de destino. Reemplace el marcador de posición <connection-string> por el valor de la cadena de conexión que copió en el Portapapeles anteriormente en esta tarea:
PowerShell$env:standardconnectionstring = '<connection-string>'
Importante
En este ejemplo de código se usa una cadena de conexión para autorizar el acceso a la cuenta de almacenamiento. Esta configuración es por ejemplo. Las cadenas de conexión y las claves de acceso de la cuenta deben usarse con precaución en el código de aplicación. Si la clave de acceso de la cuenta se pierde o se coloca por accidente en una ubicación no segura, el servicio puede volverse vulnerable. Cualquier persona que tenga la clave de acceso puede autorizar las solicitudes en la cuenta de almacenamiento y tiene acceso eficaz a todos los datos.
Para lograr una seguridad óptima, Microsoft recomienda usar identidades administradas para que los recursos de Azure autoricen solicitudes en datos de blobs, colas y tablas, siempre que sea posible. Para obtener más información, consulte Autorizar el acceso a blobs mediante Microsoft Entra ID.
Clone el repositorio de GitHub que contiene el código de la aplicación .NET que usará para las pruebas de latencia en el directorio principal del Cloud Shell:
PowerShellgit clone https://github.com/mpolicht/storage-blob-dotnet-latency-profiler.git
Compile la aplicación .NET:
PowerShellcd ./storage-blob-dotnet-latency-profiler dotnet build
Inicie la carga de 10 000 blobs de 4 MiB de tamaño en la cuenta de almacenamiento de destino:
PowerShelldotnet run --project ./storage-blob-dotnet-latency-profiler/storage-blob-dotnet-latency-profiler.csproj testcontainer standardconnectionstring ./standarduploadresults.csv prod true UploadTestBlobs testblob- 10000 4194304
Nota
La carga puede tardar unos tres minutos. No espere a que se complete. Puede continuar a la tarea siguiente.
Tarea 6: Carga de blobs en la cuenta de Azure Premium Blob Storage
Use el procedimiento siguiente para aprovechar la aplicación .NET personalizada para cargar blobs en la cuenta de almacenamiento de rendimiento de Azure Premium Blob Storage que creó anteriormente en este ejercicio. Usará estos blobs para evaluar la latencia de las operaciones de descarga de blobs más adelante en este ejercicio y también configurará los diagnósticos de almacenamiento que le permitirán evaluar la latencia del servicio.
Nota
Antes de iniciar esta tarea, compruebe que se ha completado el aprovisionamiento de la cuenta de Azure Premium Blob Storage que inició en la tarea 4.
En la ventana del explorador web que muestra el Azure Portal, vuelva a la pestaña que usó para aprovisionar la cuenta de almacenamiento de rendimiento de Azure Premium Blob Storage.
Seleccione Ir al recurso para ir a la página que muestra las propiedades de la cuenta de almacenamiento de rendimiento de Azure Premium Blob Storage.
En la página Cuenta de almacenamiento de rendimiento de Azure Premium Blob Storage, en el menú de navegación, en la sección Supervisión, seleccione Configuración de diagnóstico.
En el panel Seleccione cualquiera de los recursos para ver la configuración de diagnóstico, seleccione blob y, a continuación, seleccione + Agregar configuración de diagnóstico.
En la página Configuración de diagnóstico, en el cuadro de texto Nombre de configuración de diagnóstico, escriba Premium-diagnostic; en la sección Categorías de registros, active la casilla StorageRead; en la sección Detalles de destino, seleccione Enviar al área de trabajo de Log Analytics; acepte la Suscripción predeterminada, pero establezca el área de trabajo de Log Analytics en el área de trabajo con el prefijo premium que creó anteriormente en este ejercicio; seleccione Guardar, y cierre la página Configuración de diagnóstico.
De nuevo en la página Cuenta de almacenamiento de rendimiento de Azure Premium Blob Storage, en el menú de navegación, en la sección Seguridad y redes, seleccione Claves de acceso.
En la página Claves de acceso, seleccione Mostrar claves o, en la sección key1, junto al cuadro de texto Cadena de conexión, seleccione Mostrar y, a continuación, copie el contenido del cuadro de texto Cadena de conexión en el Portapapeles.
En la misma pestaña del explorador, seleccione el icono de Azure Cloud Shell.
En el panel Cloud Shell, dentro de una sesión de PowerShell, ejecute el siguiente comando para establecer la variable de entorno que usará la aplicación .NET para conectarse a la cuenta de Azure Storage de destino después de reemplazar el marcador de posición connection-string por el valor de la cadena de conexión que copió en el Portapapeles anteriormente en esta tarea:
PowerShell$env:premiumconnectionstring = '<connection-string>'
Importante
En este ejemplo de código se usa una cadena de conexión para autorizar el acceso a la cuenta de almacenamiento. Esta configuración es por ejemplo. Las cadenas de conexión y las claves de acceso de la cuenta deben usarse con precaución en el código de aplicación. Si la clave de acceso de la cuenta se pierde o se coloca por accidente en una ubicación no segura, el servicio puede volverse vulnerable. Cualquier persona que tenga la clave de acceso puede autorizar las solicitudes en la cuenta de almacenamiento y tiene acceso eficaz a todos los datos.
Para lograr una seguridad óptima, Microsoft recomienda usar identidades administradas para que los recursos de Azure autoricen solicitudes en datos de blobs, colas y tablas, siempre que sea posible. Para obtener más información, consulte Autorizar el acceso a blobs mediante Microsoft Entra ID.
Inicie la carga de 10 000 blobs de 4 MiB de tamaño en la cuenta de almacenamiento de destino:
PowerShellcd ./storage-blob-dotnet-latency-profiler dotnet run --project ./storage-blob-dotnet-latency-profiler/storage-blob-dotnet-latency-profiler.csproj testcontainer premiumconnectionstring ./premiumuploadresults.csv prod true UploadTestBlobs testblob- 10000 4194304
Nota
La carga puede tardar unos tres minutos. No espere a que se complete. Puede continuar a la tarea siguiente.
Tarea 7: Prueba del rendimiento de la cuenta de almacenamiento de rendimiento de Azure Standard
Use el procedimiento siguiente para aprovechar la aplicación .NET personalizada para evaluar la latencia de las descargas de blobs de la cuenta de almacenamiento de rendimiento de Azure Standard en la que cargó blobs anteriormente en este ejercicio.
Nota
Antes de iniciar esta tarea, compruebe que la carga de blobs en la cuenta de almacenamiento de rendimiento de Azure Standard que inició al final de la tarea 5 se completó correctamente.
Cambie a la ventana del explorador web que muestra la sesión de Cloud Shell desde la que cargó blobs en la cuenta de almacenamiento de rendimiento de Azure Standard.
En el panel Cloud Shell, dentro de una sesión de PowerShell, ejecute el siguiente comando para iniciar la descarga de los primeros 64 KiB de 1000 blobs elegidos aleatoriamente de un conjunto disponible de 10 000 blobs (denominados de testblob-0 a testblob-9999) de la cuenta de almacenamiento identificada en la variable de entorno standardconnectionstring. Azure muestra la salida en el archivo ./standarddownloadresults.csv con la latencia de cada descarga de bloque. Azure también informa del promedio total y las latencias de percentil 99 después de descargar cada grupo de 100 blobs:
PowerShelldotnet run --project ./storage-blob-dotnet-latency-profiler/storage-blob-dotnet-latency-profiler.csproj testcontainer standardconnectionstring ./standarddownloadresults.csv prod true RandomDownloadTest testblob- 1000 65536 10000 100 99
Revise los resultados y compruebe que tienen el formato siguiente:
PowerShellTest running. Streaming details to output file './standarddownloadresults.csv'. Test 10.0% Complete. 99th Percentile: 48.8ms Average: 34.1ms Test 20.0% Complete. 99th Percentile: 80.4ms Average: 35.7ms Test 30.0% Complete. 99th Percentile: 103.7ms Average: 37.2ms Test 40.0% Complete. 99th Percentile: 113.6ms Average: 37.6ms Test 50.0% Complete. 99th Percentile: 144.0ms Average: 38.8ms Test 60.0% Complete. 99th Percentile: 144.0ms Average: 38.3ms Test 70.0% Complete. 99th Percentile: 144.0ms Average: 37.5ms Test 80.0% Complete. 99th Percentile: 144.0ms Average: 37.5ms Test 90.0% Complete. 99th Percentile: 144.0ms Average: 37.0ms Test 100.0% Complete. 99th Percentile: 144.0ms Average: 36.8ms The test completed successfully.
Nota
Revise el percentil 99 y la latencia media de descarga.
Cierre el panel de Cloud Shell.
Tarea 8: Prueba del rendimiento de la cuenta de Azure Premium Blob Storage
Use el procedimiento siguiente para aprovechar la aplicación .NET personalizada para evaluar la latencia de las descargas de blobs de la cuenta de almacenamiento de rendimiento de Azure Premium Blob Storage en la que cargó blobs anteriormente en este ejercicio.
Nota
Antes de iniciar esta tarea, compruebe que la carga de blobs en la cuenta de almacenamiento de rendimiento de Azure Premium Blob Storage que inició al final de la tarea 6 se completó correctamente.
Cambie a la ventana del explorador web que muestra la sesión de Cloud Shell desde la que cargó blobs en la cuenta de almacenamiento de rendimiento de Azure Premium Blob Storage.
En el panel Cloud Shell, dentro de una sesión de PowerShell, ejecute el siguiente comando para iniciar la descarga de los primeros 64 KiB de 1000 blobs elegidos aleatoriamente de un conjunto disponible de 10 000 blobs (denominados de testblob-0 a testblob-9999) de la cuenta de almacenamiento identificada en la variable de entorno premiumconnectionstring. Azure muestra la salida en el archivo ./premiumdownloadresults.csv con la latencia de cada descarga de bloque. Azure también informa del promedio total y las latencias de percentil 99 después de descargar cada grupo de 100 blobs:
PowerShelldotnet run --project ./storage-blob-dotnet-latency-profiler/storage-blob-dotnet-latency-profiler.csproj testcontainer premiumconnectionstring ./premiumdownloadresults.csv prod true RandomDownloadTest testblob- 1000 65536 10000 100 99
Revise los resultados y compruebe que tienen el formato siguiente:
PowerShellTest running. Streaming details to output file './premiumdownloadresults.csv'. Test 10.0% Complete. 99th Percentile: 12.6ms Average: 7.3ms Test 20.0% Complete. 99th Percentile: 13.0ms Average: 6.8ms Test 30.0% Complete. 99th Percentile: 13.1ms Average: 6.5ms Test 40.0% Complete. 99th Percentile: 13.1ms Average: 6.3ms Test 50.0% Complete. 99th Percentile: 13.1ms Average: 6.2ms Test 60.0% Complete. 99th Percentile: 13.1ms Average: 6.0ms Test 70.0% Complete. 99th Percentile: 13.1ms Average: 5.9ms Test 80.0% Complete. 99th Percentile: 13.2ms Average: 5.9ms Test 90.0% Complete. 99th Percentile: 13.2ms Average: 5.8ms Test 100.0% Complete. 99th Percentile: 13.2ms Average: 5.8ms The test completed successfully.
Nota
Revise el percentil 99 y la latencia media de descarga y compárelas con los resultados de la prueba anterior.
Cierre el panel de Cloud Shell.
Tarea 9: Examen del rendimiento del servicio de la cuenta de Azure Premium Blob Storage y almacenamiento de rendimiento de Azure Standard
Use el procedimiento siguiente para aprovechar Azure Log Analytics para analizar los registros de diagnóstico de Azure Storage que se recopilaron de ambas cuentas de almacenamiento en función de la configuración de diagnóstico que configuró anteriormente en este ejercicio.
En la ventana del explorador web que muestra las propiedades de la cuenta de Azure Premium Blob Storage, en el menú de navegación, en la sección Supervisión, seleccione Registros.
Cierre el panel Le damos la bienvenida a Log Analytics y el panel Consultas.
En el panel Nueva consulta 1, introduzca la siguiente consulta en lenguaje de consulta Kusto y seleccione Ejecutar:
SQLStorageBlobLogs | where TimeGenerated > ago (30m) | where Uri contains "testblob" and OperationName == "GetBlob" | project TimeGenerated, OperationName, DurationMs, ServerLatencyMs, ClientLatencyMs = DurationMs - ServerLatencyMs, Uri, ResponseBodySize
Revise la salida, centrándose en los valores de la columna ServerLatencyMs y después cópielos en un archivo del Bloc de notas.
En el panel Nueva consulta 1, actualice la consulta en lenguaje de consulta Kusto para que tenga el siguiente contenido y seleccione Ejecutar:
SQLStorageBlobLogs | where TimeGenerated > ago (30m) | where Uri contains "testblob" and OperationName == "GetBlob" | project TimeGenerated, OperationName, DurationMs, ServerLatencyMs, ClientLatencyMs = DurationMs - ServerLatencyMs, Uri, ResponseBodySize | summarize percentiles_array(ServerLatencyMs, 50, 99), avg(ServerLatencyMs), count()
Nota
La salida debe contener valores similares a los siguientes:
SQLpercentiles_ServerLatencyMs avg_ServerLatencyMs count_ [3,5] 3.071 1000
Revise la salida, centrándose en los valores de las columnas percentiles_ServerLatencyMs y avg_ServerLatencyMs.
Cambie a la ventana del explorador web en la que se muestran las propiedades de la cuenta de almacenamiento de rendimiento de Azure Standard.
En la ventana del explorador web que muestra las propiedades de la cuenta de almacenamiento de rendimiento de Azure Standard, en el menú de navegación, en la sección Supervisión, seleccione Registros.
Cierre el panel Consultas.
En el panel Nueva consulta 1, introduzca la siguiente consulta en lenguaje de consulta Kusto y seleccione Ejecutar:
SQLStorageBlobLogs | where TimeGenerated > ago (30m) | where Uri contains "testblob" and OperationName == "GetBlob" | project TimeGenerated, OperationName, DurationMs, ServerLatencyMs, ClientLatencyMs = DurationMs - ServerLatencyMs, Uri, ResponseBodySize
Revise la salida, centrándose en los valores de la columna ServerLatencyMs y compárelos con los valores de la cuenta de Azure Premium Blob Storage.
En el panel Nueva consulta 1, actualice la consulta en lenguaje de consulta Kusto para que tenga el siguiente contenido y seleccione Ejecutar:
SQLStorageBlobLogs | where TimeGenerated > ago (30m) | where Uri contains "testblob" and OperationName == "GetBlob" | project TimeGenerated, OperationName, DurationMs, ServerLatencyMs, ClientLatencyMs = DurationMs - ServerLatencyMs, Uri, ResponseBodySize | summarize percentiles_array(ServerLatencyMs, 50, 99), avg(ServerLatencyMs), count()
Revise la salida, centrándose en los valores de las columnas percentiles_ServerLatencyMs y avg_ServerLatencyMs, y compárelos con los valores de la cuenta de Azure Premium Blob Storage.
Nota
La salida debe contener valores similares a los siguientes:
SQLpercentiles_ServerLatencyMs avg_ServerLatencyMs count_ [24,102] 29.111 1000
Tarea 10: Desaprovisionamiento del entorno de laboratorio
Use el siguiente procedimiento para desaprovisionar el entorno de laboratorio.
En la ventana del explorador web que muestra el Azure Portal, vaya a la página del Grupo de recursos apbslabrg.
En la página apbslabrg, seleccione Eliminar grupo de recursos.
Cuando se le solicite, en el cuadro de texto TYPE THE RESOURCE GROUP NAME (ESCRIBA EL NOMBRE DEL GRUPO DE RECURSOS), escriba apbslabrg y seleccione Eliminar.
Cuando se le pida confirmación, seleccione Sí.