D/ DJANGO CON CRITERIO

UNIDAD 9 · OPERACIÓN Y DEVSECOPS

Infraestructura de un servidor LoRa en Azure

VM, disco, VNet, NIC, NSG, entrada, diagnóstico y restauración.

Ilustración: Conectividad, cómputo y recuperación
Conectividad, cómputo y recuperación

CAPÍTULO 10 · Operar también es desarrollar

La web es una parte del camino de la medición

Si una lectura no aparece en la pantalla, el fallo no necesariamente está en la vista o en PostgreSQL. El dato recorre componentes de comunicación y servicios antes de llegar a la aplicación. Mirar únicamente los logs de Django puede dejarnos investigando el último tramo de un problema que ocurrió mucho antes.

Ubicamos el servidor LoRa y sus dependencias dentro del conjunto. Reconocemos la red, la máquina, el almacenamiento y las relaciones necesarias para que la información avance. Esa visión permite formular mejores preguntas: si el dispositivo transmitió, si el servidor recibió y si la siguiente integración pudo entregar el evento.

La arquitectura deja de terminar en el límite del repositorio. También aparece un costo de infraestructura que debemos sostener. Una máquina sobredimensionada consume presupuesto, pero reducirla sin comprender su trabajo puede afectar la continuidad. El siguiente paso consiste en relacionar capacidad, medición y recuperación antes de decidir un ahorro.

Leer esta parte dentro del relato completo →

DEL RELATO A LA PRÁCTICA

Vamos a desarrollar esta decisión con su mapa, explicación, código y ejercicio.

MIRA · CONECTA · COMPRENDE

Conectividad, cómputo y recuperación

Conectividad, cómputo y recuperación1. Gateways: Emiten según protocolo del stack; 2. Red y NSG: Limitan rutas y orígenes; 3. VM LoRa: Ejecuta los servicios; 4. Estado y backup: Persistencia y restauración01GatewaysEmiten según protocolo del stack02Red y NSGLimitan rutas y orígenes03VM LoRaEjecuta los servicios04Estado y backupPersistencia y restauración

Las flechas muestran responsabilidades relacionadas; no representan un orden obligatorio de ejecución.

Selecciona una pieza para destacar su responsabilidad.

Leer la explicación del mapa
  1. Gateways. Emiten según protocolo del stack
  2. Red y NSG. Limitan rutas y orígenes
  3. VM LoRa. Ejecuta los servicios
  4. Estado y backup. Persistencia y restauración
Descargar gráfico SVG ↓

¿Para qué sirve?

Un servidor de red LoRa tiene dependencias operativas fuera de Django. Identificar cada componente permite decidir qué proteger y cómo recuperar el servicio.

El concepto, explicado

Una VM ejecuta servicios; disco conserva estado; NIC conecta a VNet y NSG filtra tráfico. La necesidad de IP pública depende de cómo llegan gateways y administradores, no del simple hecho de tener una VM.

Define el protocolo real de tu stack LoRaWAN. Los puertos, autenticación y cifrado dependen del servidor y gateway; no copies reglas abiertas de un diagrama.

Backup, diagnóstico y monitoreo resuelven problemas diferentes. Un backup sin ensayo de restauración no demuestra recuperación, y un log de arranque no reemplaza métricas del servicio.

Una VM única es un punto de fallo. Según criticidad necesitas recuperación, redundancia o tolerancia a pérdida temporal. Decide RPO y RTO antes de recortar recursos.

Función de cada componente

ComponenteFunciónDecisión operativa
VMEjecutar serviciosMedir capacidad y disponibilidad
DiscoPersistir sistema y datosIO, backup y restauración
VNet y NICConectividadRutas y segmentación
NSGFiltrar tráficoProtocolos y orígenes necesarios
IP públicaEntrada desde InternetSolo si el diseño la necesita
BackupRecuperar estadoRetención basada en RPO/RTO
Diagnóstico y monitoreoDetectar e investigarSeñales útiles y costo de retención

Implementación paso a paso

  1. Inventaría VM, discos, NIC, VNet, NSG, endpoints y datos persistentes.
  2. Dibuja rutas de gateway, API Django y administración con protocolos exactos.
  3. Limita reglas NSG por origen y destino, separando administración y servicio.
  4. Documenta secretos y configura acceso administrativo según la política elegida.
  5. Define backups y monitoreo del servicio, no solo de CPU.
  6. Restaura en un entorno de prueba y valida ingesta completa hacia Django.

Ejemplo en SensorHub

# Inventario didáctico, no plantilla de infraestructura desplegable.
network_server = {
    "compute": "VM dimensionada tras medir CPU/RAM/IO",
    "state": ["configuración", "credenciales", "base de datos del stack"],
    "network": ["NIC", "VNet", "NSG"],
    "ingress": "solo protocolos del gateway realmente utilizados",
    "administration": "acceso controlado, separado de la ingesta",
    "recovery": {"rpo": "definir", "rto": "definir", "restore_test": "pendiente"},
}

Cómo leer el ejemplo

  • Los protocolos exactos se completan con documentación del stack elegido.
  • Django recibe eventos mediante una integración autenticada y valida/idempotentiza entrada.
  • Bastion, VPN u otras opciones tienen requisitos y costos propios.

Error habitual

Considerar opcional una IP sin revisar gateways que la usan o declarar alta disponibilidad por tener backups.

05 / PRACTICAR

Tu turno

El disco conserva datos pero la VM falla. Diseña cómo reconstruir servicio y probar la recuperación.

Ver solución orientativa

Recupera configuración, datos y secretos desde fuentes protegidas; recrea red y cómputo, valida stack y reconecta gateways. Comprueba tiempos reales y duplicados de eventos.

Cómo sabes que funciona

  • Inventario distingue cómputo, estado y red.
  • Ninguna regla abre administración sin justificación.
  • Restauración cumple objetivos medidos.

Para profundizar

Documentación oficial para comprobar configuración, permisos y condiciones vigentes. Revisión del tema: 2026-10-11.

CONTINUAR LA EXPERIENCIA

El siguiente paso del recorrido:

Optimizar costos de VM sin perder recuperación →Continuar en modo relato