Creación de un plan de App Service y una aplicación web
Aprovisione un plan de App Service, comprenda los niveles de SKU e implemente una aplicación web desde un archivo ZIP o un repositorio de GitHub mediante la implementación continua.
Creación de un plan de App Service y una aplicación web es una lección gratuita de Azure Fundamentals en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Azure Fundamentals, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Azure Fundamentals incluye 4 lecciones en total.
¿Qué es Azure App Service?
Azure App Service es una plataforma como servicio (PaaS) totalmente administrada para hospedar aplicaciones web, API REST y backends móviles. Usted implementa el código y Azure se encarga de las actualizaciones del sistema operativo, el equilibrio de carga y el escalado automático de la infraestructura subyacente. App Service admite .NET, Node.js, Python, Java, PHP, Ruby y contenedores personalizados, por lo que es uno de los servicios de proceso más versátiles de Azure.
Plan de App Service: la unidad de facturación
Un plan de App Service define la región, el sistema operativo (Windows o Linux) y los recursos de proceso (CPU y RAM) asignados a sus aplicaciones. El pago corresponde al plan, no a cada aplicación; varias aplicaciones pueden compartir el mismo plan sin coste adicional. El nivel de SKU del plan determina funcionalidades como el número de ranuras de implementación, la capacidad de escalado automático y la compatibilidad con la integración de VNet.
# Create an App Service Plan (Linux, Standard S1 tier)
az appservice plan create \
--name MyAppServicePlan \
--resource-group MyRG \
--location eastus \
--sku S1 \
--is-linuxNiveles de SKU de los planes de App Service
Los planes de App Service ofrecen varios niveles con capacidades y costes progresivamente mayores. Free (F1) y Shared (D1) se ejecutan en infraestructura compartida y están destinados únicamente al desarrollo. Basic (B1-B3) proporciona capacidad de proceso dedicada, pero no admite escalado automático ni ranuras. Standard (S1-S3) añade escalado automático y 5 ranuras de implementación. Premium (P1-P3v3) ofrece más capacidad de proceso e integración con VNet. Isolated (I1-I3) se ejecuta en un entorno privado y dedicado.
# App Service Plan tiers (ordered by capability)
# Free: F1 — shared, 60 min/day compute
# Shared: D1 — shared, custom domain support
# Basic: B1, B2, B3 — dedicated, no autoscale
# Standard: S1, S2, S3 — autoscale, 5 slots
# Premium: P1v3, P2v3, P3v3 — VNet integration
# Isolated: I1v2, I2v2 — App Service Environment (ASE)Crear una Web App
Una Web App es una aplicación individual hospedada en un plan de App Service. Cada aplicación web obtiene un nombre de host predeterminado con el formato <appname>.azurewebsites.net. Al crear la aplicación, debe especificar la pila de ejecución (por ejemplo, NODE:18-lts o DOTNET:7.0), aunque puede actualizarla posteriormente sin volver a implementarla.
# Create a Node.js Web App on the Linux plan
az webapp create \
--name MyUniqueWebApp \
--resource-group MyRG \
--plan MyAppServicePlan \
--runtime 'NODE:18-lts'
# Access the app
# https://MyUniqueWebApp.azurewebsites.netImplementar código en App Service
App Service admite varios métodos de implementación. ZIP deploy es el más sencillo: empaquete la aplicación y cargue el archivo ZIP. Git deploy se conecta a un repositorio de Git y compila la aplicación al hacer push. GitHub Actions y Azure Pipelines son las integraciones de CI/CD recomendadas. También puede implementar una imagen de contenedor de Docker desde Azure Container Registry o desde cualquier registro público.
# Deploy a ZIP package
zip -r app.zip . --exclude '.git/*' --exclude 'node_modules/*'
az webapp deploy \
--name MyUniqueWebApp \
--resource-group MyRG \
--src-path app.zip
# Configure deployment from GitHub
az webapp deployment source config \
--name MyUniqueWebApp \
--resource-group MyRG \
--repo-url https://github.com/myorg/myrepo \
--branch main \
--manual-integrationConfiguración de la aplicación y variables de entorno
App Service expone la configuración de la aplicación como variables de entorno para el código de la aplicación. Esta es la forma recomendada de inyectar configuraciones como cadenas de conexión de bases de datos, claves de API y feature flags sin incluirlas directamente en el código. La configuración se cifra en reposo y puede hacer referencia a secretos de Azure Key Vault mediante una cadena de referencia de Key Vault, lo que elimina la necesidad de almacenar secretos en el portal.
# Set application settings
az webapp config appsettings set \
--name MyUniqueWebApp \
--resource-group MyRG \
--settings \
NODE_ENV=production \
DATABASE_URL='@Microsoft.KeyVault(SecretUri=https://mykv.vault.azure.net/secrets/dburl/)'
# View current settings
az webapp config appsettings list \
--name MyUniqueWebApp \
--resource-group MyRGAlways On y comprobaciones de estado
De forma predeterminada, App Service descarga una aplicación después de un periodo de inactividad. Habilite Always On (nivel Standard y superiores) para mantener la aplicación cargada en todo momento, algo importante para trabajos en segundo plano y API que necesitan responder rápidamente tras un inicio en frío. La característica de health check envía solicitudes periódicas a una URL que usted define y retira las instancias que no están saludables del equilibrador de carga, lo que permite reemplazarlas automáticamente.
# Enable Always On
az webapp config set \
--name MyUniqueWebApp \
--resource-group MyRG \
--always-on true
# Configure health check endpoint
az webapp config set \
--name MyUniqueWebApp \
--resource-group MyRG \
--generic-configurations '{"healthCheckPath": "/health"}'Registros y diagnósticos de App Service
App Service proporciona registro integrado para registros de la aplicación (stdout/stderr del código), registros del servidor web (registros de acceso HTTP) y registros de implementación. Puede transmitir los registros en tiempo real mediante Azure CLI o habilitar su almacenamiento en Blob Storage. Habilite Application Insights para obtener trazas distribuidas y supervisar el rendimiento durante todo el ciclo de vida de la solicitud.
# Enable application logging to file system
az webapp log config \
--name MyUniqueWebApp \
--resource-group MyRG \
--application-logging filesystem \
--level information
# Tail logs in real time
az webapp log tail \
--name MyUniqueWebApp \
--resource-group MyRGEscalado manual de App Service
Puede escalar App Service verticalmente (a una SKU mayor con más CPU/RAM) u horizontalmente (añadiendo más instancias). El escalado horizontal manual aumenta inmediatamente el número de instancias y está disponible a partir del nivel Basic. El escalado vertical a un nivel superior habilita características adicionales, como las ranuras de implementación y la integración con VNet, sin interrupciones del servicio; la aplicación se reinicia brevemente durante el cambio de SKU.
# Scale out: increase instance count to 3
az appservice plan update \
--name MyAppServicePlan \
--resource-group MyRG \
--number-of-workers 3
# Scale up: upgrade from S1 to P2v3
az appservice plan update \
--name MyAppServicePlan \
--resource-group MyRG \
--sku P2V3Supervisión en Azure Portal
El panel Overview de App Service muestra gráficos en tiempo real de las solicitudes, el tiempo de respuesta, los datos entrantes y salientes, y las tasas de error. El panel Diagnose and solve problems ejecuta detectores automatizados para problemas comunes. La pestaña Metrics permite fijar gráficos personalizados y configurar reglas de alerta. Integre Application Insights para realizar el seguimiento de solicitudes de extremo a extremo y consultar mapas de dependencias en toda la pila de aplicaciones.
# View recent HTTP metrics via CLI
az monitor metrics list \
--resource '/subscriptions/<sub>/resourceGroups/MyRG/providers/Microsoft.Web/sites/MyUniqueWebApp' \
--metric 'Requests,Http5xx,AverageResponseTime' \
--interval PT1M \
--start-time 2025-01-01T00:00:00Z \
--end-time 2025-01-01T01:00:00ZEstrategias de precios de App Service
Optimice los costes de App Service consolidando varias aplicaciones en un único plan cuando tengan necesidades de recursos compatibles, utilizando el nivel Free para entornos de desarrollo y pruebas, y aplicando Azure Reservations (compromisos de 1 o 3 años) para cargas de trabajo de producción predecibles, con un ahorro de hasta el 55 %. El autoescalado (que se trata en la siguiente lección) garantiza que no pague por instancias inactivas durante las horas de menor demanda.
Comprobación rápida
Compruebe sus conocimientos sobre los conceptos de Microsoft Azure Fundamentals (AZ-900) tratados en esta lección.
Resumen de la lección
En esta lección ha aprendido que un plan de App Service define el nivel de proceso y la unidad de facturación de sus aplicaciones web; puede implementar código mediante ZIP, Git o canalizaciones de CI/CD; y la configuración de la aplicación inyecta la configuración como variables de entorno sin incluir secretos directamente en el código. A continuación, exploraremos las ranuras de implementación para realizar lanzamientos sin tiempo de inactividad.
Preguntas frecuentes
¿La lección «Creación de un plan de App Service y una aplicación web» es gratis?
Sí — el texto completo de «Creación de un plan de App Service y una aplicación web» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Azure Fundamentals, actualiza a CoddyKit PRO. El curso de Azure Fundamentals incluye 4 lecciones en total.
¿Qué aprenderé en «Creación de un plan de App Service y una aplicación web»?
Aprovisione un plan de App Service, comprenda los niveles de SKU e implemente una aplicación web desde un archivo ZIP o un repositorio de GitHub mediante la implementación continua. Practicas Azure Fundamentals con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Azure Fundamentals?
No se requiere experiencia previa. Azure Fundamentals en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «Creación de un plan de App Service y una aplicación web»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Azure Fundamentals?
Sí. Cada lección de Azure Fundamentals incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Creación de un plan de App Service y una aplicación web
- Ranuras de implementación e intercambio
- Escalado automático y dominios personalizados
- Autenticación y redes de App Service