Planeamiento de la administración de costos de Azure Batch
En este artículo se describe cómo planear y administrar los costos de Azure Batch. Antes de implementar el servicio, puede usar la calculadora de precios de Azure para calcular los costos de Azure Batch. Más adelante, cuando implemente los recursos de Azure, revise los costos estimados.
Después de empezar a ejecutar cargas de trabajo de Batch, use las características de Cost Management para establecer presupuestos y supervisar los costos. También puede revisar los costos previstos e identificar las tendencias de gasto para identificar las áreas en las que podría querer actuar. Los costos de Azure Batch son solo una parte de los costos mensuales de la factura de Azure. Aunque en este artículo se explica cómo planear y administrar los costos de Azure Batch, se le facturan todos los servicios y recursos de Azure usados en la suscripción de Azure, incluidos los servicios de terceros.
Requisitos previos
El análisis de costos de Cost Management admite la mayoría de los tipos de cuenta de Azure, pero no todos. Para ver la lista completa de tipos de cuenta compatibles, consulte Understand Cost Management data (Información sobre los datos de Cost Management). Para ver los datos de costos, se necesita al menos acceso de lectura en la cuenta de Azure. Para más información acerca de la asignación de acceso a los datos de Microsoft Cost Management, consulte Asignación del acceso a los datos.
Estimación de los costos antes de usar Azure Batch
Utilice la calculadora de precios de Azure para estimar los costes antes de añadir máquinas virtuales.
En la pestaña Productos, vaya a la secciónProceso o busque Batch en la barra de búsqueda. en el icono Batch, seleccione Agregar para calcular y desplácese hacia abajo hasta la sección Su estimación .
Tenga en cuenta que Azure Batch es un servicio gratuito y que los costos asociados a Azure Batch son para los recursos subyacentes que ejecutan las cargas de trabajo. Al agregar Azure Batch a su estimación, la calculadora de precios crea automáticamente una selección para Cloud Services y Máquinas virtuales. Puede obtener más información acerca de Azure Cloud Services y Azure Virtual Machines (VM) en la documentación de cada producto. Lo que necesita saber para estimar el costo de Azure Batch es que las máquinas virtuales son el recurso más significativo.
Seleccione opciones en las listas desplegables. Hay varias opciones disponibles para elegir. Las opciones que tienen el mayor impacto en el total estimado son el sistema operativo de la máquina virtual, la licencia del sistema operativo si procede, el tamaño de máquina virtual que seleccione en INSTANCIA, el número de instancias que elija y la cantidad de tiempo que se ejecutarán las instancias.
Observe que el total de cambios estimados a medida que selecciona opciones diferentes. La estimación aparece en la esquina superior y en la parte inferior de la sección Su estimación.
Puede obtener más información sobre el costo de ejecutar máquinas virtuales en la documentaciónPlan para administrar los costos de las máquinas virtuales.
Descripción del modelo de facturación completo para Azure Batch
Azure Batch se ejecuta en la infraestructura de Azure que acumula los costos al implementar nuevos recursos. Es importante entender que podrían generarse otros costos de infraestructura adicionales.
Cómo se le cobra por Azure Batch
Azure Batch es un servicio gratis. No hay ningún costo para Batch. Sin embargo, puede haber cargos por los recursos de proceso subyacentes y las licencias de software que se usan para ejecutar cargas de trabajo de Batch. Los costos pueden incurrir en máquinas virtuales de un grupo, transferencia de datos desde la máquina virtual o datos almacenados de entrada o salida en la nube.
Costos que pueden acumularse con Azure Batch
Aunque Batch es un servicio gratuito, muchos de los recursos subyacentes que ejecutan las cargas de trabajo no lo son. Entre ellas se incluyen las siguientes:
- Máquinas virtuales
- Para obtener más información sobre los costos asociados a las máquinas virtuales, consulte la sección Cómo se le cobra por las máquinas virtuales de Planeamiento para administrar los costos de las máquinas virtuales.
- Cada máquina virtual de un grupo que se crea con Configuración de máquina virtual tiene un disco de sistema operativo asociado que usa discos administrados de Azure. Los discos administrados de Azure tienen un costo adicional y otros niveles de rendimiento de discos tienen también distintos costos.
- Storage
- Cuando las aplicaciones se implementan en máquinas virtuales de nodo de Batch mediante paquetes de aplicaciones, se le facturan los recursos de Azure Storage que consumen los paquetes de aplicación. También se le cobrará el almacenamiento de cualquier archivo de entrada o salida, como los archivos de recursos u otros datos de registro.
- En general, el costo de los datos de almacenamiento asociados con Batch es mucho menor que el costo de los recursos de proceso.
- En algunos casos, un equilibrador de carga
- Recursos de redes
- En el caso de los grupos de configuración de máquina virtual, se usan equilibradores de carga estándar, que requieren direcciones IP estáticas. Los equilibradores de carga utilizados por Batch son visibles para cuentas configuradas en el modo de suscripción de usuario, pero no en el modo de servicio de Batch.
- Los equilibradores de carga estándar incurren en gastos por todos los datos transmitidos desde y hacia las máquinas virtuales de los grupos de Batch. Seleccione API de Batch que recuperen datos de nodos de grupo (como Obtener archivo de tarea/nodo), paquetes de aplicación de tareas, archivos de recursos o salida y imágenes de contenedor también incurren en cargos.
- Virtual Network
- En función de los servicios que use, la solución de Batch puede incurrir en honorarios adicionales. Entre los servicios que se suelen usar con Batch que pueden tener costos asociados se incluyen los siguientes:
- Application Insights
- Data Factory
- Azure Monitor
Costos que pueden generarse tras eliminar un recurso
Después de eliminar los recursos de Azure Batch, es posible que los siguientes recursos sigan existiendo. Estos recursos siguen generando costos hasta que se eliminan.
- Máquina virtual
- Todos los discos implementados que no sean el sistema operativo y los discos locales
- De forma predeterminada, el disco del sistema operativo se elimina con la máquina virtual, pero se puede establecer no en durante la creación de la máquina virtual
- Virtual network
- La NIC virtual y la dirección IP pública, si procede, se pueden establecer para eliminar junto con la máquina virtual
- Ancho de banda
- Equilibrador de carga
En el caso de las redes virtuales, se facturará una red virtual por suscripción y región. Las redes virtuales no pueden abarcar distintas regiones o suscripciones. La configuración de puntos de conexión privados en las configuraciones de red virtual también puede incurrir en cargos.
El ancho de banda se cobra por uso; cuantos más datos se transfieren, más se cobra.
Uso del prepago de Azure con Azure Batch
Aunque Azure Batch es un servicio gratuito, puede pagar los cargos de recursos subyacentes con el crédito de pago por adelantado de Azure. Sin embargo, no puede usar el crédito del pago por adelantado de Azure para pagar los gastos de productos y servicios de terceros, incluidos los que proceden de Azure Marketplace.
Visualización del análisis de costos y creación de presupuestos
A medida que usa recursos de Azure con Azure Batch, incurre en costos. Los costos de unidad de uso de recursos de Azure varían según el intervalo de tiempo (segundos, minutos, horas y días) o el uso de unidades (bytes, megabytes, etc.). En cuanto se inicia el uso de recursos de Azure, se incurre en los costos y puede ver los costos en análisis de costos. Microsoft Cost Management le permite planear, analizar y reducir el gasto para maximizar la inversión en la nube. Puede ver y filtrar los costos de Batch que se verán y filtrarán, pronosticar costos futuros y establecer límites de gasto con alertas cuando se alcancen esos límites.
En Azure Portal, puede crear presupuestos y alertas de gastos para los grupos o cuentas de Batch. Los presupuestos y las alertas son útiles para notificar a las partes interesadas de cualquier riesgo de exceso de gasto, aunque es posible que haya un retraso en las alertas de gasto y que se supere ligeramente el presupuesto.
En la captura de pantalla siguiente se muestra un ejemplo de la vista Análisis de costos de una suscripción; se ha filtrado para que solo muestre los costos acumulados asociados a todas las cuentas de Batch. En los gráficos inferiores se muestra cómo el costo total del período seleccionado se puede clasificar por servicio consumido, ubicación y medidor. Aunque este es un ejemplo y no está pensado para reflejar los costos que puede ver en las suscripciones, es habitual en que el mayor costo sea para las máquinas virtuales que se asignan a los nodos del grupo de Batch.
Se puede obtener un nivel adicional de detalle del análisis de costos mediante la especificación de un filtro de recursos. Para las cuentas de Batch, estos valores son el nombre de la cuenta de Batch más el nombre del grupo. Esto le permite ver los costos de un grupo específico, varios grupos o una o varias cuentas.
Visualización del análisis de costos de un grupo de Batch
Modo de asignación de grupo de servicio Batch
Para las cuentas de Batch creadas con el modo de asignación del grupo de servicios de Batch:
- En Azure Portal, escriba o seleccione Cost Management + Billing.
- Seleccione su suscripción en la sección Ámbitos de facturación.
- En Cost Management, seleccione Análisis de costos.
- Seleccione Agregar filtro. En la primera lista desplegable, seleccione Recurso.
- En la segunda lista desplegable, seleccione el grupo de Batch. Cuando se selecciona el grupo, verá el análisis de costos del grupo. La siguiente captura de pantalla muestra un ejemplo de los datos.
El análisis de costos resultante muestra el costo del grupo, así como los recursos que contribuyen a este costo. En este ejemplo, las máquinas virtuales que se usan en el grupo son el recurso más costoso.
Nota
En este ejemplo, el grupo usa la configuración de máquina virtual, que se recomienda para la mayoría de los grupos y tiene cargos basados en la estructura de precios de Virtual Machines. Los grupos que usan la Configuración de Cloud Services se cobran en función de la estructura de precios de Cloud Services.
Las etiquetas se pueden asociar a cuentas de Batch, lo que le permite usar esas etiquetas para filtrar más costos. Por ejemplo, se pueden usar etiquetas para asociar información del proyecto, usuario o grupo a una cuenta de Batch. Asimismo, las etiquetas no se pueden asociar actualmente a los grupos de Batch.
Modo de asignación del grupo de suscripción de Batch
Cuentas de Batch creadas con el modo de asignación de grupos de suscripción de usuario:
- En Azure Portal, escriba o seleccione Cost Management + Billing.
- Seleccione su suscripción en la sección Ámbitos de facturación.
- En Cost Management, seleccione Análisis de costos.
- Seleccione Agregar filtro. En la primera lista desplegable, seleccione Etiqueta.
- En la segunda lista desplegable, seleccione el nombre de grupo.
- En la tercera lista desplegable, seleccione el grupo de Batch. Cuando se selecciona el grupo, verá el análisis de costos del grupo. La siguiente captura de pantalla muestra un ejemplo de los datos.
Tenga en cuenta que si está interesado en ver los datos de costos de todos los grupos de una cuenta de Batch de suscripción de usuario, puede seleccionar batchaccountname en la segunda lista desplegable y el nombre de la cuenta de Batch en la tercera lista desplegable.
Nota:
Los grupos creados por cuentas de Batch de suscripción de usuario no se muestran en el filtro Recurso, aunque su uso sigue apareciendo al filtrar por "máquinas virtuales" en nombre de servicio.
Creación de un presupuesto para un grupo de Batch
Se pueden crear presupuestos y emitir alertas de costos cuando se alcanzan varios porcentajes de un presupuesto, como el 60 %, el 80 % y el 100 %. Los presupuestos pueden especificar uno o varios filtros, para que así pueda supervisar y alertar sobre los costos de la cuenta de Batch con varios niveles de detalle.
- En la página Análisis de costos, seleccione Presupuesto: ninguno.
- Seleccione Crear presupuesto >.
- Use la ventana para configurar un presupuesto específicamente para el grupo. Para más información, consulte el Tutorial: Creación y administración de presupuestos en Azure.
Minimización de los costos asociados con Azure Batch
En función de su escenario, puede que desee reducir los costos lo máximo posible. Considere la posibilidad de usar una o varias de estas estrategias para maximizar la eficacia de las cargas de trabajo y reducir los costos potenciales.
Reducción del uso del nodo de grupo
Los costos más grandes asociados con el uso de Batch suelen provenir de las máquinas virtuales asignadas a los nodos de grupo. En el caso de los grupos de configuración de máquinas virtuales, los discos administrados asociados que se usan para los discos del sistema operativo de la VM también pueden contribuir significativamente a los costos.
Evalúe la aplicación de Batch para determinar si las tareas de trabajo están utilizando correctamente los nodos del grupo o si los nodos del grupo están inactivos durante más tiempo del esperado. Es posible reducir el número de nodos de grupo asignados, reducir la tasa de escalado vertical de los nodos de grupo o aumentar la velocidad del escalado vertical para aumentar el uso.
Además de la supervisión personalizada, las métricas de Batch pueden ayudarle a identificar los nodos que están asignados pero en un estado inactivo. Puede seleccionar una métrica para la mayoría de los estados de nodo de grupo que quiera ver, mediante las métricas de supervisión de Batch en Azure Portal. Las opciones "Recuento de nodos inactivos" y "Recuento de nodos en ejecución" se pueden ver para obtener información de cómo se usan los nodos del grupo, por ejemplo.
Asegúrese de que los nodos del grupo pueden ejecutar tareas
Los nodos asignados que se enumeran para un grupo normalmente incurren en costos, pero es posible que los nodos de grupo estén en un estado en el que no se puedan ejecutar tareas, como "unusable" o "starttaskfailed". Las API o métricas de Batch se pueden usar para supervisar y detectar esta categoría de VM. A continuación, se puede determinar el motivo de estos estados y tomar medidas correctivas para reducir o eliminar los nodos incorrectos.
Uso del tamaño de VM del nodo de grupo correcto
Asegúrese de que se usa el tamaño de VM adecuado, de modo que las VM se utilicen correctamente al ejecutar tareas, a la vez que se proporciona el rendimiento necesario para completar las tareas de trabajo en el tiempo necesario. Las VM del nodo de grupo se pueden infrautilizar en algunas situaciones, como el bajo uso de CPU. Puede ahorrar costos si elige un tamaño de VM con un precio más bajo.
Para determinar el uso de la VM, puede iniciar sesión en un nodo al ejecutar tareas para ver datos de rendimiento o usar funcionalidades de supervisión, como Application Insights, para obtener datos de rendimiento de los nodos del grupo.
Uso de las ranuras de grupo para reducir los requisitos de nodo
Se pueden especificar varias ranuras de tareas para un grupo, de modo que el número correspondiente de tareas se pueda ejecutar en paralelo en cada nodo. Las ranuras de tareas de grupo se pueden usar para reducir el número de nodos que se usan en un grupo eligiendo tamaños de VM más grandes y ejecutando varias tareas en paralelo en el nodo para asegurarse de que este se usa bien. Si los nodos están infrautilizados, se pueden usar ranuras para aumentar el uso. Por ejemplo, para una aplicación de tarea de un solo subproceso, se podría configurar una ranura por núcleo. También es posible tener más ranuras que núcleos. Esto sería viable si la aplicación se bloquea significativamente a la espera de que se devuelvan llamadas a servicios externos, por poner un ejemplo.
Establecer taskSchedulingPolicy
en pack
ayuda a garantizar que las máquinas virtuales se usen tanto como sea posible, con el escalado más fácil de quitar nodos que no ejecutan ninguna tarea.
Uso de máquinas virtuales de acceso puntual de Azure
Las VM de acceso puntual disminuyen el costo de las cargas de trabajo de Batch al usar la capacidad de proceso sobrante en Azure. Cuando se especifican máquinas virtuales de acceso puntual en los grupos, Batch usa este excedente para ejecutar la carga de trabajo. Puede lograr grandes ahorros de costos al usar VM de acceso puntual en lugar de VM dedicadas. Tenga en cuenta que las VM de acceso puntual no son adecuadas para todas las cargas de trabajo, ya que es posible que no haya capacidad disponible para asignarlas o se pueden adelantar.
Uso de discos de SO efímeros
De forma predeterminada, los nodos de grupo usan discos administrados, lo que conlleva costos. Los grupos de configuración de máquina virtual pueden usar discos de SO efímeros, que crean el disco de SO en la caché de la VM o SSD temporal, para evitar costos adicionales asociados a los discos administrados.
Compra de reservas de instancias de máquina virtual
Si piensa usar Batch durante largo tiempo, puede reducir el costo de las VM si usa Reservas de Azure para las cargas de trabajo. Una tarifa de reserva es considerablemente menor que una tarifa de pago por uso. Las instancias de máquina virtual que se usan sin una reserva se cobran según la tarifa de pago por uso. Al comprar una reserva, se aplica el descuento de la reserva. Cuando se confirma en planes de un año o tres años para instancias de máquina virtual, se aplican descuentos significativos al uso de la máquina virtual, incluidas las máquinas virtuales consumidas a través de grupos de Batch.
Es importante tener en cuenta que el descuento por reserva es "use-it-or-lose-it". Si no se usan recursos correspondientes durante una hora, perderá la cantidad de reserva para esa hora. Las horas reservadas que no se usen no se pueden llevar a cabo y, por tanto, se pierden si no se usan. Las cargas de trabajo de Batch a menudo escalan el número de VM asignadas según la carga y tienen una carga variable, incluidos los períodos en los que no hay ninguna carga. Por lo tanto, es necesario tener cuidado de determinar el importe de la reserva, dado que las horas reservadas se pierden si las máquinas virtuales de Batch se reducen verticalmente por debajo de la cantidad de reserva.
Uso del escalado automático
El escalado automático escala de manera dinámica el número de máquinas virtuales en el grupo de Batch en función de las demandas del trabajo actual. Al escalar el grupo en función de la duración de un trabajo, el escalado automático garantiza que las máquinas virtuales se escalan verticalmente y se usan solo cuando se realiza un trabajo. Cuando el trabajo se complete o no haya trabajos, las VM se reducen verticalmente de manera automáticamente para ahorrar recursos de proceso. El escalamiento permite disminuir los costos generales de la solución de Batch mediante el uso solo de los recursos que necesita.
Pasos siguientes
- Obtenga más información acerca de Microsoft Cost Management + facturación.
- Más información sobre las VM de acceso puntual con Batch.