Configuración de la redundancia de zona para Azure Functions

La redundancia de zona permite que las funciones de las aplicaciones sean resistentes a problemas en las zonas de disponibilidad de Azure, por lo que la aplicación permanece disponible cuando un centro de datos o zona tiene un fallo o interrupción. En este artículo se proporcionan instrucciones paso a paso para configurar Azure Functions con redundancia de zona, en función del plan de hospedaje. Para obtener información sobre cómo funcionan las zonas de disponibilidad con Azure Functions, consulte Reliability en Azure Functions.

La configuración de zona de disponibilidad para Azure Functions depende del plan de hospedaje Functions:

Plan de hospedaje Nivel de soporte Sección configuración
Plan de consumo flexible GA Seleccione Flex Consumption (Consumo flexible ) en la parte superior de este artículo.
Plan Elastic Premium GA Seleccione Premium en la parte superior de este artículo.
Plan Dedicado (App Service) GA Consulte Configuración de zonas de disponibilidad para App Service.
Plan de consumo n/a No es compatible con el plan de consumo.

Nota:

El contenido de este artículo no es relevante para el plan de alojamiento seleccionado actualmente. Para elegir otro plan, utiliza el selector al principio de este artículo. Para una comparación de todos los planes de alojamiento, consulte las opciones de alojamiento de Azure Functions.

La redundancia de zonas no está soportada en el plan de Consumo. Considera migrar al plan Flex Consumption o al plan Premium para el soporte de zonas de disponibilidad.

Nota:

El contenido de este artículo no es relevante para el plan de alojamiento seleccionado actualmente. Para elegir otro plan, utiliza el selector al principio de este artículo. Para una comparación de todos los planes de alojamiento, consulte las opciones de alojamiento de Azure Functions.

Para la configuración de redundancia de zonas dedicadas (App Service), consulte Configurar zonas de disponibilidad para App Service.

Nota:

El contenido de este artículo no es relevante para el plan de alojamiento seleccionado actualmente. Para elegir otro plan, utiliza el selector al principio de este artículo. Para una comparación de todos los planes de alojamiento, consulte las opciones de alojamiento de Azure Functions.

Al ejecutar funciones en Azure Container Apps, la redundancia de zonas de disponibilidad se configura a nivel de entorno de Container Apps. Consulte Confiabilidad en Azure Container Apps.

Importante

Antes de configurar la redundancia de zona, revise los requisitos y los detalles enumerados en Reliability en Azure Functions: resistencia a errores de zona de disponibilidad.

Importante

Antes de configurar la redundancia de zona, revise los requisitos y los detalles enumerados en Reliability en Azure Functions: resistencia a errores de zona de disponibilidad.

Puede habilitar o deshabilitar zonas de disponibilidad en los planes de Elastic Premium existentes mediante el CLI de Azure. Para obtener más información, incluidos detalles importantes sobre los comportamientos de capacidad específicos de Elastic Premium, consulte Habilitación de la redundancia de zona en un plan existente.

Visualización de regiones que admiten zonas de disponibilidad

Puedes desplegar aplicaciones redundantes por zonas en un plan Flex Consumption solo en regiones específicas. Para ver la lista actual de regiones soportadas, utiliza CLI de Azure:

  1. Si no lo has hecho ya, instala CLI de Azure e inicia sesión en Azure.

    az login
    
  2. Usa el az functionapp list-flexconsumption-locations comando con el --zone-redundant=true argumento. Este comando devuelve una lista de regiones que actualmente soportan planes Flex Consumption redundantes por zona:

    az functionapp list-flexconsumption-locations --zone-redundant=true --query "sort_by(@, &name)[].{Region:name}" -o table
    

Creación de una aplicación de funciones con redundancia de zona

Siga estos pasos para crear un plan de consumo flexible con redundancia de zona al crear la aplicación.

  1. Para crear una aplicación de funciones en un plan con redundancia de zona, debe tener una cuenta de almacenamiento con redundancia de zona existente. Si aún no tiene una cuenta de almacenamiento con redundancia de zona, cree una antes de continuar.

  2. En el portal de Azure, ve a Crear aplicación de función. Para obtener más información sobre cómo crear una aplicación de funciones en el portal, consulte Creación de una aplicación de funciones.

  3. Seleccione Flex Consumption y, a continuación, seleccione el botón Seleccionar.

  4. En la página Crear aplicación de funciones (Consumo Flexible), en la pestaña Aspectos básicos, escriba la configuración de la aplicación de funciones. Preste especial atención a la configuración de la tabla siguiente (también resaltada en la captura de pantalla siguiente), que tienen requisitos específicos para la redundancia de zona.

    Configuración Valor sugerido Notas de la redundancia de zona
    Region Su región admitida preferida Región en la que se crea el plan de consumo flexible. Para obtener una lista de las regiones que admiten redundancia de zonas para los planes Premium de Azure Functions, consulte Confiabilidad en Azure Functions - Resiliencia frente a fallos de zonas de disponibilidad - Requisitos.
    Redundancia de zona Habilitado Esta configuración especifica si la aplicación tiene redundancia de zona. Solo puede seleccionar Enabled cuando haya elegido una región que admita redundancia de zona.

    Captura de pantalla de la pestaña Aspectos básicos de la página de creación de la aplicación de función Flex Consumption.

  5. En la pestaña Almacenamiento, seleccione la cuenta de almacenamiento con redundancia de zona para la aplicación de funciones. Preste especial atención a la configuración de la tabla siguiente, que tiene requisitos específicos para la redundancia de zona.

    Configuración Valor sugerido Notas de la redundancia de zona
    Cuenta de almacenamiento Una cuenta de almacenamiento con redundancia de zona Como se describe en la guía de fiabilidad de Azure Functions, utiliza una cuenta de almacenamiento redundante por zonas para tu aplicación de funciones redundantes por zona.
  6. Para el resto del proceso, cree la aplicación de funciones de la forma habitual. No hay ninguna configuración en el resto del proceso de creación que afecte a la redundancia de zona.

Después de crear y desplegar el plan redundante por zonas, la aplicación de función Flex Consumption alojada en tu nuevo plan se considera redundante por zona.

Siga estos pasos para crear un plan y una aplicación Premium con redundancia de zona.

  1. En el portal de Azure, ve a Crear aplicación de función. Para obtener más información sobre cómo crear una aplicación de funciones en el portal, consulte Creación de una aplicación de funciones.

  2. Selecciona Funciones Premium y luego selecciona Select.

  3. En Crear aplicación de función (Funciones Premium), en la pestaña Básicos , introduce la configuración de tu aplicación de función. Preste especial atención a la configuración de la tabla siguiente (también resaltada en la captura de pantalla siguiente), que tienen requisitos específicos para la redundancia de zona.

    Configuración Valor sugerido Notas de la redundancia de zona
    Region Su región admitida preferida La región en la que creas tu plan Elastic Premium. Elige una región que permita zonas de disponibilidad. Para obtener una lista de las regiones que admiten redundancia de zonas para los planes Premium de Azure Functions, consulte Confiabilidad en Azure Functions - Resiliencia frente a fallos de zonas de disponibilidad - Requisitos.
    Plan de precios Uno de los planes Elastic Premium. Para obtener más información, consulte SKU de instancia disponibles. En este artículo se describe cómo crear una aplicación con redundancia de zona en un plan Premium. La redundancia de zona no está disponible actualmente en los planes de consumo. Para obtener información sobre la redundancia de zona en los planes de App Service, consulte Configuración de zonas de disponibilidad para App Service.
    Redundancia de zona Habilitado Esta configuración especifica si la aplicación tiene redundancia de zona. No puedes seleccionar Enabled a menos que elijas una región que soporte redundancia de zonas, como se ha descrito antes.

    Captura de pantalla de la pestaña Aspectos básicos de la página de creación de la aplicación de funciones.

  4. En la pestaña Almacenamiento, escriba la configuración de la cuenta de almacenamiento de la aplicación de funciones. Preste especial atención a la configuración de la tabla siguiente, que tiene requisitos específicos para la redundancia de zona.

    Configuración Valor sugerido Notas de la redundancia de zona
    Cuenta de almacenamiento Una cuenta de almacenamiento con redundancia de zona Como se describe en la guía de fiabilidad de Azure Functions, utiliza una cuenta de almacenamiento redundante por zonas para tu aplicación de funciones redundantes por zona.
  5. Para el resto del proceso, cree la aplicación de funciones de la forma habitual. No hay ninguna configuración en el resto del proceso de creación que afecte a la redundancia de zona.

Después de crear y desplegar el plan redundante por zonas, cualquier aplicación de función que alojes en tu nuevo plan se considera redundante por zona.

Habilitación de la redundancia de zona en un plan existente

Cambiar la redundancia de zona de la aplicación requiere un reinicio, lo que provoca tiempo de inactividad en la aplicación. Antes de actualizar tu plan de Flex Consumption para que sea redundante por zona, actualiza la cuenta de almacenamiento predeterminada del host para que también sea redundante por zona.

Tip

Si usas una cuenta de almacenamiento separada para el contenedor de despliegue de la app, actualízala también para que sea redundante en zona.

Siga estos pasos para preparar las cuentas de almacenamiento para el cambio:

  1. Revisar Consideraciones de almacenamiento.
  2. Cree o identifique una cuenta de almacenamiento con redundancia de zona para que sea la cuenta de almacenamiento de host predeterminada para la aplicación.
  3. Actualiza la configuración de la aplicación relacionada con el almacenamiento de la app, como AzureWebJobsStorage, para referenciar la cuenta de almacenamiento redundante por zona. Consulte Trabajar con la configuración de la aplicación.
  4. Actualice la cuenta de almacenamiento de implementación de la aplicación, que puede ser la misma o diferente que la cuenta de almacenamiento asociada a la aplicación. Consulte Configuración de las opciones de implementación.

Después de actualizar las cuentas de almacenamiento que usa tu app, actualiza el plan de Flex Consumption para que sea redundante por zonas.

  1. En el portal de Azure, busque y seleccione la aplicación de funciones que desea actualizar.

  2. En Configuración, seleccione Escalar y simultaneidad.

  3. En la pestaña Redundancia de zona, active Agregar redundancia de zona para habilitar la característica. Si ya está activada, puede desactivar esta casilla para deshabilitar la característica.

  4. Seleccione Guardar para confirmar los cambios y reiniciar la aplicación.

Recorte de pantalla de la pestaña Escala y simultaneidad de una aplicación de funciones de Consumo flexible.

Ten en cuenta estas consideraciones importantes antes de activar la redundancia de zonas en la app alojada de tu plan Premium:

  • La zoneRedundant propiedad de un plan Elastic Premium es variable, por lo que puedes activar el soporte de zonas de disponibilidad sin necesidad de crear un nuevo plan.

  • A diferencia de un plan dedicado (App Service), un comportamiento de capacidad Elastic Premium (sku.capacity) para cada app se deriva de los ajustes a nivel de app, no solo de la configuración del plan.

  • Para activar la redundancia de zonas, debes actualizar la configuración tanto a nivel de plano como a nivel de app:

    Level Propiedad Valor requerido Notas
    Plan zoneRedundant true Permite la distribución de zonas de disponibilidad
    Plan sku.capacity 2 o superior Establece el recuento mínimo de instancias previsto
    App (cada una) minimumElasticInstanceCount 2 o superior El plan de control configura sku.capacity el plan al valor más alto en todas las apps. Con solo la configuración sku.capacity no se aplica un mínimo, así que también debes establecer esta propiedad a nivel de app.
  • Actualmente no puedes configurar la redundancia de zonas de disponibilidad en los planes Elastic Premium existentes desde el portal.

Para habilitar la redundancia de zonas de disponibilidad en tu aplicación de plan Premium:

Actualmente no está soportado, elige otra pestaña.

Comprobación de la ubicación de la zona de instancia

Después de activar la redundancia de zonas, puedes confirmar que las instancias de tu app de funciones están distribuidas entre zonas de disponibilidad usando el portal de Azure o la CLI de Azure.

En el portal de Azure, ve a tu aplicación de funciones. En Configuración, seleccione Instancias. La página Instancias muestra cada instancia en ejecución y la zona de disponibilidad en la que se coloca.

Solución de problemas

Si la redundancia de zonas no funciona como se espera tras seguir estos pasos, comprueba los siguientes elementos:

  • Verifica que la región admita zonas de disponibilidad para tu tipo de plan. Consulta Fiabilidad en Azure Functions - Requisitos.

  • Asegúrate de que tu cuenta de almacenamiento use un SKU redundante de zona (ZRS o GZRS).

  • Confirma que está minimumElasticInstanceCount configurado como al menos 2 en cada app.

  • Para cuestiones relacionadas con unidades de escala y requisitos de SKU, revisa la sección Problemas Comunes y Soluciones en la entrada de blog detallada sobre Availability Zones en Azure App Service.

Pasos siguientes