docs.illanes00.cl
Documentación Técnica

Arquitectura de Infraestructura

Documentación técnica completa de la infraestructura illanes00.cl: arquitectura multi-VPS, servicios distribuidos, monitoreo y deployment.

📌 Última actualización: 2026-01-13
Versión: 2.1.0
Autor: Benjamín Illanes

Arquitectura General

La infraestructura illanes00.cl está compuesta por 3 servidores VPS distribuidos geográficamente, ejecutando 14 servicios diferentes.

Servidores VPS

VPS-Dev

IP Pública74.208.113.138
ProveedorAlphaVPS
UbicaciónLos Angeles, USA
Especificaciones2 vCPU, 4GB RAM, 40GB SSD
OSUbuntu 22.04 LTS
PropósitoAplicaciones principales y desarrollo

Servicios: illanes00-www, illanes00-blog, illanes00-api, illanes00-cv, illanes00-ep

VPS-Control

IP Pública74.208.113.139
ProveedorAlphaVPS
UbicaciónLos Angeles, USA
Especificaciones2 vCPU, 4GB RAM, 40GB SSD
OSUbuntu 22.04 LTS
PropósitoMonitoreo, observabilidad y control

Servicios: prometheus, grafana, illanes00-admin, illanes00-monitor, api-gateway

VPS-Deploy

IP Pública74.208.112.19
ProveedorAlphaVPS
UbicaciónLos Angeles, USA
Especificaciones2 vCPU, 4GB RAM, 40GB SSD
OSUbuntu 22.04 LTS
PropósitoAplicaciones cliente y deployment CI/CD

Servicios: lepp-www, circulodesantiago-www, circulodesantiago-admin, docs

Servicios por Tecnología

Servicio Stack Puerto VPS
illanes00-www Flask (Python) 8100 VPS-Dev
illanes00-blog Django (Python) 8101 VPS-Dev
illanes00-admin FastAPI (Python) 8102 VPS-Control
illanes00-api FastAPI (Python) 8103 VPS-Dev
lepp-www Express (Node.js) 3001 VPS-Deploy
circulodesantiago-www Astro (Node.js) 3000 VPS-Deploy

Networking y DNS

Todos los dominios están gestionados en Cloudflare DNS:

  • illanes00.cl - Dominio principal
  • lepp.cl - Aplicación cliente LEPP
  • circulodesantiago.cl - Aplicación cliente CDS
  • espaciopublico.cl - Proyecto Espacio Público

El reverse proxy Caddy maneja SSL automático con Let's Encrypt.

# Ejemplo Caddyfile admin.illanes00.cl { reverse_proxy localhost:8102 log { output file /var/log/caddy/admin.log } }

Monitoreo y Observabilidad

El stack de monitoreo está centralizado en VPS-Control y recolecta métricas de los 3 servidores.

Prometheus

Prometheus (prometheus.illanes00.cl) scrapea métricas de node_exporter en cada VPS via HTTPS.

# prometheus.yml scrape_configs: - job_name: 'vps-dev' scheme: https static_configs: - targets: ['metrics.illanes00.cl'] labels: vps: 'dev' - job_name: 'vps-control' static_configs: - targets: ['localhost:9100'] labels: vps: 'control' - job_name: 'vps-deploy' scheme: https static_configs: - targets: ['metrics-deploy.illanes00.cl'] labels: vps: 'deploy'
⚠ Importante: Los puertos de node_exporter (9100) están bloqueados en firewall. El scraping se hace via túneles HTTP reverse proxy.

Grafana

Grafana (grafana.illanes00.cl) visualiza las métricas de Prometheus en dashboards personalizados.

Dashboards configurados:

  • Infrastructure Overview - Métricas generales de 3 VPS
  • Node Exporter Full - Métricas detalladas por servidor
  • Service Status - Estado de servicios systemd

Proceso de Despliegue

Los servicios se despliegan via GitHub Actions CI/CD o deployment manual.

Workflow CI/CD (Ejemplo: lepp-www)

# .github/workflows/deploy.yml name: Deploy to VPS-Deploy on: push: branches: [main] jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Deploy to VPS uses: appleboy/ssh-action@master with: host: 74.208.112.19 username: illanes00 key: ${{ secrets.SSH_KEY }} script: | cd /srv/projects/lepp-www git pull origin main npm install npm run build sudo systemctl restart lepp-www

Deployment Manual

Para servicios sin CI/CD:

# SSH al servidor ssh [email protected] # Navegar al proyecto cd /srv/projects/illanes00-www # Pull cambios git pull origin main # Instalar dependencias pip install -r requirements.txt # Restart servicio sudo systemctl restart illanes00-www # Verificar status sudo systemctl status illanes00-www
✓ Best Practice: Siempre verifica el estado del servicio después de deployment y revisa los logs en caso de error.

Mantenimiento y Operaciones

Tareas Rutinarias

Diarias

Semanales

  • 🔄 Actualizar dependencias (npm/pip)
  • 🔄 Revisar logs de errores
  • 🔄 Verificar uso de disco en cada VPS
  • 🔄 Backup manual si necesario

Mensuales

  • 🔄 apt update && apt upgrade en cada VPS
  • 🔄 Revisar certificados SSL (automático con Caddy)
  • 🔄 Cleanup de logs antiguos
  • 🔄 Review de métricas de rendimiento

Comandos Útiles

# Ver logs de servicio sudo journalctl -u illanes00-www -f # Restart todos los servicios sudo systemctl restart illanes00-* # Check disk usage df -h # Ver procesos por CPU top # Ver puertos en uso sudo netstat -tulpn | grep LISTEN # Verificar firewall sudo ufw status # Ver servicios activos systemctl list-units --type=service --state=running
⚠ Precaución: Nunca ejecutar rm -rf o comandos destructivos sin verificar el directorio actual. Siempre hacer backup antes de cambios críticos.