Compartir vía


Administración de la aplicación de funciones

En Azure Functions, una Function App ofrece el contexto de ejecución de funciones individuales. Los comportamientos de Function App se aplican a todas las funciones hospedadas en una Function App determinada. Todas las funciones de una aplicación de funciones deben compartir el mismo lenguaje.

Las funciones individuales de una aplicación de funciones se implementan y escalan juntas. Todas las funciones de la misma aplicación de funciones comparten recursos (por instancia) a medida que se escala la aplicación de funciones.

Las cadenas de conexión, las variables de entorno y otras opciones de configuración de la aplicación se definen por separado para cada aplicación de funciones. Los datos que se deben compartir entre las aplicaciones de funciones deben almacenarse externamente en un almacén persistente.

Introducción a Azure Portal

Nota:

Debido a limitaciones en la edición del código de función en Azure Portal, debe desarrollar las funciones localmente y publicar el proyecto de código en una aplicación de funciones en Azure. Para más información, consulte Limitaciones de desarrollo en Azure Portal.

Para ver la configuración de la aplicación en la aplicación de funciones, siga estos pasos:

  1. Inicie sesión en Azure Portal con su cuenta de Azure. Busque la aplicación de funciones y selecciónela.

  2. En el panel izquierdo de la aplicación de funciones, expanda Configuración, luego seleccione Variables de entorno, y a continuación, seleccione la pestaña Configuración de la aplicación.

    Recorte de pantalla que muestra cómo seleccionar la página Configuración de la aplicación en una aplicación de funciones.

Trabajo con la configuración de la aplicación

Además de la configuración de la aplicación predefinida que usa Azure Functions, puede crear cualquier número de configuraciones de aplicación, según sea necesario en el código de función. Para más información, consulte Referencia de configuración de aplicación para Azure Functions.

Esta configuración se almacena cifrada. Para obtener más información, consulte Seguridad de la configuración de la aplicación.

Puede administrar la configuración de las aplicaciones desde el Azure Portal, y usando CLI de Azure y Azure PowerShell. También puede administrar la configuración de la aplicación desde Visual Studio Code y desde Visual Studio.

Para ver la configuración de la aplicación, consulte Introducción en Azure Portal.

La pestaña Configuración de la aplicación mantiene la configuración que usa la aplicación de funciones:

  1. Para ver los valores de la configuración de la aplicación, seleccione Mostrar valores.

  2. Para agregar una configuración, seleccione + Agregar, y escriba el Nombre y Valor del nuevo par clave-valor.

    Recorte de pantalla que muestra la página Configuración de la aplicación en una aplicación de funciones.

Uso de la configuración de la aplicación

Esta configuración de la aplicación de función también se puede leer en el código como variables de entorno. Para más información, consulte la sección Variables de entorno de estos artículos de referencia específicos de cada lenguaje:

Al desarrollar una aplicación de funciones localmente, debe mantener copias locales de estos valores en el archivo de proyecto de local.settings.json. Para más información, consulte Archivo de configuración local.

Configuración de implementación de FTPS

Azure Functions admite la implementación de código de proyecto en la aplicación de funciones mediante FTPS. Dado que este método de implementación requiere que desencadenadores de sincronización, no se recomienda. Para transferir archivos de proyecto de forma segura, use siempre FTPS y no FTP.

Para obtener las credenciales necesarias para la implementación de FTPS, use uno de estos métodos:

Puede obtener las credenciales de publicación de FTPS en Azure Portal descargando el perfil de publicación de la aplicación de funciones.

Importante

El perfil de publicación contiene credenciales de seguridad importantes. Proteja siempre el archivo descargado en el equipo local.

Para descargar el perfil de publicación de la aplicación de funciones:

  1. En Azure Portal, busque la página de la aplicación de funciones y expanda Configuración>Configuración en la columna izquierda.

  2. En la página Configuración, seleccione la pestaña Configuración general y asegúrese de que las credenciales de publicación de autenticación básica de SCM estén activadas. Cuando esta configuración está Desactivada, no puede usar perfiles de publicación, así que seleccione Activada y, a continuación, Guardar.

  3. Seleccione la página Información general de la aplicación de funciones y, después, seleccione Obtener perfil de publicación.

    Descargar perfil de publicación

  4. Guarde y copie el contenido del archivo.

  1. En el archivo, localice el publishProfile elemento con el atributo publishMethod="FTP". En este elemento, los atributos publishUrl, userName y userPWD contienen la dirección URL de destino y las credenciales para la publicación de FTPS.

Tipo de plan de hospedaje

Al crear una aplicación de funciones, también se crea un plan de hospedaje en el que se ejecuta la aplicación. Un plan puede tener una o varias aplicaciones de funciones. La funcionalidad, el escalado y el precio de las funciones dependen del tipo de plan. Para obtener más información, vea Opciones de hospedaje de Azure Functions.

Puede determinar el tipo de plan que usa la aplicación de funciones desde Azure Portal o mediante el uso de las API de la CLI de Azure o Azure PowerShell.

Los valores siguientes indican el tipo de plan:

Tipo de plan Azure portal Azure CLI/PowerShell
Consumo Consumo Dynamic
Premium ElasticPremium ElasticPremium
Dedicado (App Service) Varios Varios
  1. Para determinar el tipo de plan usado por la aplicación de funciones, consulte Plan de App Service en la página Información general de la aplicación de funciones en Azure Portal.

    Recorte de pantalla que muestra el vínculo Plan de App Service en la página Información general de una aplicación de funciones.

  2. Para ver el plan de tarifas, seleccione el nombre del Plan de App Service y, a continuación, Propiedades de >Configuración en el panel izquierdo.

Planear la migración

Puede migrar una aplicación de funciones entre un plan de Consumo y un plan Premium en Windows. Al migrar entre planes, tenga en cuenta las consideraciones siguientes:

  • No se admite la migración directa a un plan dedicado (App Service).
  • La migración no se admite en Linux.
  • El plan de origen y el plan de destino deben estar en el mismo grupo de recursos y región geográfica. Para obtener más información, consulte Move an app to another App Service plan (Mover una aplicación a otro plan de App Service).
  • Los comandos específicos de la CLI dependen de la dirección de la migración.
  • El tiempo de inactividad de las ejecuciones de funciones se producirá cuando la aplicación de funciones se migre entre planes.
  • Se mantiene el estado y otro contenido específico de la aplicación, ya que la aplicación usa el mismo recurso compartido de Azure Files antes y después de la migración.

Puede migrar el plan mediante estas herramientas:

Puede usar Azure Portal para cambiar a un plan diferente.

Elija la dirección de la migración para la aplicación en Windows.

  1. En Azure Portal, vaya a la aplicación de plan de Consumo o Premium y elija Cambiar el plan de App Service en Plan de App Service.

  2. Seleccione Premium en Tipo de plan, cree un nuevo plan Premium y seleccione Aceptar.

Para obtener más información, consulte Move an app to another App Service plan (Mover una aplicación a otro plan de App Service).

Limitaciones de desarrollo en Azure Portal

La siguiente tabla muestra los sistemas operativos y lenguajes que admiten la edición en el portal:

Idioma Consumo de Windows Windows Premium Dedicado de Windows Consumo de Linux Linux Premium Dedicado de Linux
C#
Java
JavaScript (Node.js)
Python
PowerShell
TypeScript (Node.js)

Tenga en cuenta estas limitaciones al desarrollar las funciones en Azure Portal:

  • La edición en el portal solo se admite para funciones creadas o modificadas por última vez en Azure Portal.
  • La edición en el portal solo se admite para las funciones JavaScript, PowerShell, Python y Script de C#.
  • La edición en el portal no se admite actualmente en el plan de Consumo flexible.
  • Al implementar código en una aplicación de funciones desde fuera de Azure Portal, ya no se puede editar el código de esa aplicación de funciones en el portal. En este caso, solo tiene que seguir usando el desarrollo local.
  • Para Python, el desarrollo con módulos personalizados no se admite actualmente en el portal. Para agregar módulos personalizados a la aplicación de funciones, debe desarrollar la aplicación localmente.
  • En el caso de las funciones de C# compiladas y las funciones de Java, puede crear la aplicación de funciones y los recursos relacionados en el portal. Sin embargo, debes crear el proyecto de código de funciones localmente y, a continuación, publicarlo en Azure.

Cuando sea posible, desarrolle las funciones localmente y publique el proyecto de código en una aplicación de funciones en Azure. Para más información, consulte Codificación y comprobación de las funciones de Azure Functions en un entorno local.

Instalación manual de extensiones

Las funciones de biblioteca de clases de C# pueden incluir los paquetes de NuGet para extensiones de enlace directamente en el proyecto de biblioteca de clases. Para otros lenguajes de non-.NET y script de C#, debe usar agrupaciones de extensiones. Si debes instalar manualmente extensiones, puedes hacerlo mediante Azure Functions Core Tools localmente. Si no puede usar conjuntos de extensiones y solo puede trabajar en el portal, debe usar Herramientas avanzadas (Kudu) para crear manualmente el archivo extensions.csproj directamente en el sitio. Asegúrese de quitar primero el elemento extensionBundle del archivo host.json.

Este mismo proceso funciona para cualquier otro archivo que necesite agregar a la aplicación.

Importante

Cuando sea posible, no edite los archivos directamente en la aplicación de funciones de Azure. Se recomienda descargar los archivos de la aplicación localmente, usar Core Tools para instalar extensiones y otros paquetes, validar los cambios y volver a publicar la aplicación mediante Core Tools o uno de los otros métodos de implementación admitidos.

El editor de Functions integrado en Azure Portal le permite actualizar el código de función y los archivos de configuración directamente en el portal:

  1. Seleccione la aplicación de funciones y a continuación, en Functions, seleccione Funciones.

  2. Elija la función y seleccione Código y prueba en Desarrollador.

  3. Elija el archivo para editar y seleccione Guardar cuando termine.

Los archivos de la raíz de la aplicación, como function.proj o extensions.csproj, deben crearse y editarse mediante Herramientas avanzadas (Kudu).:

  1. Seleccione la aplicación de funciones, expanda Herramientas de desarrollo, y a continuación, seleccioneHerramientas avanzadas >Ir.

  2. Si se le solicita, inicie sesión en el sitio del Administrador de control de código fuente (SCM) con sus credenciales de Azure.

  3. En el menú Consola de depuración, elija CMD.

  4. Vaya a .\site\wwwroot, seleccione el botón más (+) en la parte superior y seleccione Nuevo archivo.

  5. Asigne un nombre al archivo, como extensions.csproj, y presione Entrar.

  6. Seleccione el botón Editar situado junto al nuevo archivo, agregue o actualice código en el archivo y a continuación, seleccione Guardar.

  7. Para un archivo de proyecto como extensions.csproj, ejecute el siguiente comando para recompilar el proyecto de extensiones:

    dotnet build extensions.csproj
    

Características de la plataforma

Las aplicaciones de funciones se ejecutan en la plataforma de Azure App Service, que las mantiene. Por tanto, Function App tiene acceso a la mayoría de las características de la plataforma de hospedaje web principal de Azure. Al usar el Azure Portal, el panel izquierdo es donde tiene acceso a las muchas características de la plataforma de App Service que puede usar en las aplicaciones de funciones.

La siguiente matriz indica la compatibilidad de características de Azure Portal mediante el plan de hospedaje y el sistema operativo:

Característica Plan de consumo Plan de Consumo flexible Plan Premium Plan dedicado
Herramientas avanzadas (Kudu) Windows: ✔
Linux: X
X
Editor de App Service Windows: ✔
Linux: X
X Windows: ✔
Linux: X
Windows: ✔
Linux: X
Copias de seguridad X X X
Consola Windows: línea de comandos
Linux: X
X Windows: línea de comandos
Linux: SSH
Windows: línea de comandos
Linux: SSH

El resto de este artículo se centra en las siguientes características del portal que resultan útiles para las aplicaciones de funciones:

Para más información sobre cómo trabajar con la configuración de App Service, vea Configuración de Azure App Service.

Editor de App Service

El Editor de App Service es un editor en portal avanzado que puede usar para modificar archivos de configuración JSON y archivos de código similares. Al seleccionar esta opción se inicia una pestaña de explorador independiente con un editor básico. Este editor le permite integrar con el repositorio de Git, ejecutar y depurar código y modificar la configuración de la aplicación de funciones. Este editor proporciona un entorno de desarrollo mejorado para las funciones en comparación con el editor de funciones integrado.

Recorte de pantalla que muestra el editor de App Service.

Se recomienda que considere la posibilidad de desarrollar las funciones en el equipo local. Al desarrollar localmente y publicar en Azure, los archivos del proyecto son de solo lectura en Azure Portal. Para más información, consulte Codificación y comprobación de las funciones de Azure Functions en un entorno local.

Consola

La consola del portal es una herramienta ideal para desarrolladores si prefiere interactuar con Function App desde la línea de comandos. Los comandos comunes incluyen creación de archivos y directorios y navegación por los mismos, así como la ejecución de archivos y scripts por lotes.

Recorte de pantalla que muestra la consola de la aplicación de funciones.

Al desarrollar localmente, se recomienda usar Azure Functions Core Tools y la CLI de Azure.

Herramientas avanzadas (Kudu)

Las herramientas avanzadas para App Service (también conocidas como Kudu) proporcionan acceso a las características administrativas avanzadas de la Function App. Con Kudu, puede administrar la información del sistema, la configuración de las aplicaciones, las variables del entorno, las extensiones del sitio, los encabezados HTTP y las variables del servidor. También puede iniciar Kudu si navega al punto de conexión de SCM de la aplicación de funciones, por ejemplo: https://<myfunctionapp>.scm.azurewebsites.net/.

Recorte de pantalla que muestra las herramientas avanzadas de App Service (Kudo).

Centro de implementación

Cuando se usa una solución de control de código fuente para desarrollar y mantener el código de las funciones, el Centro de implementación le permite compilar e implementar desde el control de código fuente. El proyecto se compila e implementa en Azure cuando se realizan actualizaciones. Para más información, vea Tecnologías de implementación en Azure Functions.

Uso compartido de recursos entre orígenes

Para evitar la ejecución de código malintencionado en el cliente, los exploradores modernos bloquean las solicitudes de las aplicaciones web en los recursos que se ejecutan en un dominio independiente. El Intercambio de Recursos de Origen Cruzado (CORS) permite a un encabezado Access-Control-Allow-Origin declarar qué orígenes pueden llamar a los puntos de conexión en la aplicación de funciones.

Al configurar la lista de orígenes permitidos para la aplicación de funciones, el encabezado Access-Control-Allow-Origin se agrega automáticamente a todas las respuestas de los puntos de conexión HTTP en la aplicación de funciones.

Recorte de pantalla que muestra cómo configurar la lista de CORS de la aplicación de funciones.

Si hay otra entrada de dominio, se omite el carácter comodín (*).

Autenticación

Si las funciones usan un desencadenador HTTP, puede requerir que las llamadas se autentiquen primero. App Service admite la autenticación e inicio de sesión de Microsoft Entra con proveedores sociales, como Facebook, Microsoft y X. Para obtener información acerca de cómo configurar proveedores de autenticación específicos, consulte Introducción a la autenticación de Azure App Service.

Recorte de pantalla que muestra cómo configurar la autenticación para una aplicación de funciones.