Optimización de los costos en la nube
1) Por qué FinOps y qué objetivos
El objetivo es reducir el COGS mientras se mantiene la velocidad de desarrollo/SLO. Cuestiones clave:- ¿Cuánto cuesta 1 consulta, 1 usuario activo, 1 tenant?
- ¿Qué efecto de margen tiene el nuevo fichero/tráfico?
- ¿Dónde están las «filtraciones» (egresos, registros redundantes, CPU/memoria overhead, recursos ociosos)?
Métricas básicas
Cost/Req, Cost/Minute Active, Cost/Tenant/Brand, Cost/GB-stored, Cost/GB-egress.
COGS%: participación del coste en los ingresos.
Waste%: (recursos pagados pero no utilizados )/( todos los recursos).
2) Poner orden: etiquetas, propiedad, presupuestos
Etiquetas: 'env', 'team', 'service', 'tenant', 'product', 'cost _ center', 'slo _ tier'.
Propiedad: cada recurso tiene un propietario y un TTL.
Presupuestos/alertas: presupuestos mensuales/semanales con umbrales de 50/80/100% + anomaly detection.
Directivas como código: prohibición «sin etiquetas», límites de cota, regiones predeterminadas, cuotas asignadas.
hcl module "policy" {
source = "finops/policy/required-tags"
required_tags = ["env","team","service","cost_center","tenant"]
}
3) Palancas de ahorro arquitectónico
3. 1 Tamaños correctos y Auto Skaling
Rightsizing: seleccione las instancias bajo la CPU/RAM p95 real.
Auto Scaling: horizontal> vertical; для K8s — Cluster Autoscaler/Karpenter, для serverless — min/max concurrency.
Caminos fríos - en cola/batch; tareas oblongo - en los workers según lo programado.
3. 2 Potencia spot/redimida
Spot/Preemptible para statless/backgraunds y CI; mantenga el búfer On-Demand.
RI/CUD/Planes de Ahorro: reservar estable 50-70% de carga base, el resto es elástico.
3. 3 Almacenamiento y clases de datos
Comparta: hot (SSD), warm (estándar), cold/archive (Glacier/Archive).
Directivas de ciclo de vida: cambio de clase, eliminación después de la fecha límite.
Habilite la versificación donde desee y el bloqueo de objetos (WORM) sólo para auditoría.
3. 4 Red y Egress
CDN/edge + stale-while-revalidate reduce la egresa interregional.
Canales privados (PrivateLink/PSC/Direct Connect/Interconnect) en lugar de Internet «crudo».
Compresión (Brotli/Zstd), HTTP/3/QUIC - menos RTT/reconexiones.
3. 5 Bases de datos y cachés
Seleccione un esquema de dos niveles: caché (Redis/Memcached) + almacenamiento de información.
Lea las réplicas para análisis, incluya el autovacum/compactación, use pgBouncer/RDS Proxy.
Para tablas grandes - partición/TTL/archivo.
4) Kubernetes-economía
Requests/Limits según las clases SLO; prohibición de 'limits: null'.
VPA (recomendaciones), Karpenter (selección de instancias bajo las pistas), Bin packing (tolerations/affinity).
Separe prod/stage/dev a nivel de clúster/nodo (diferentes tipos y políticas).
Clases de red y storedge: elija SC/IOPS por perfil de carga en lugar de «premium dondequiera».
Clases y prioridades de QoS: ahorros en trabajos de fondo.
Perfiles de registro: agentes sidecar con búfer local, envío de batches.
5) Economía serverless
Min instances/provisioned concurrency - sólo para bolígrafos calientes.
Pequeño deploy-bandl, lazy-init, sharing connects.
Plazos de ejecución y tareas difíciles a la cola.
Funciones agregadoras (fan-in) en lugar de una docena de caminatas en función.
6) Observability: pagar por la valiosa telemetría
Registros: estructural, sin verboseness; retenciones por clase (los errores de prod son más largos, debug son cortos).
Sampling Trays: tail-based - 100% de errores/p99, el resto 1-10%.
Métricas: agregación/downsampling, sparse-envío.
Filtrar PII antes del envío (menos bytes y riesgos).
7) Red de proveedores y Marketplace
Compare los precios de las regiones, los márgenes de los servicios managed, las bandas de marketing.
Negociación: descuentos volumétricos (RI/CUD), acuerdos de commit, programas de crédito.
Evite la duplicación de SaaS con la funcionalidad de intersección.
8) Unit-economía y dashboards
Costo básico SLI/SLO
Costo/Req por rutas (login, catalog, deposite).
Cost/Tenant/Brand/Region.
Egress/Req, Storage/Req, Compute/Req.
Waste % и Coverage RI/SP %.
Dashboards (conjunto mínimo)
«Mapa de costos» por servicio/equipo con descensos al recurso.
«Mapa de calor» egresa en las direcciones.
«Servicio → costo → SLO»: correlación entre p99 y Costo/Req.
«RI/CUD/Spot» cobertura y ahorro de líneas.
9) Procesos de FinOps
Revisiones semanales de cuentas con los titulares de los servicios.
Change review con una estimación del valor del fich antes de la inclusión previa.
Guardrails: límites de cuota, finalización automática de recursos idle, TTL en entornos de prueba.
Costo de GameDays: picos artificiales/banderas de fijación, verificación de la sostenibilidad del presupuesto.
10) Antipattern
Recursos «temporales» sin TTL → para siempre.
`0. 0. 0. 0/0 'egress + falta CDN → las cuentas de egresos explotan.
Sin etiquetas/etiquetas → es imposible distribuir los gastos.
Logs de nivel DEBUG en venta, trays 100% - terabytes sin sentido.
Provisioned/serverful «por si acaso» sin métricas de uso.
Todas las cargas son solo On-Demand, sin RI/Spot/commits.
11) Especificidad de iGaming/finanzas
Tarifas PSP/de pago - parte de COGS: optimice el enrutamiento inteligente a proveedores baratos/confiables; almacene en caché los estados, evite repeticiones sin idempotencia.
Proveedores KYC/AML: empaquetar consultas, usar la caché de resultados (TTL por política), medir el costo/KYC.
«Formas de dinero» (depósito/retiro): SLO y presupuesto separados; reservas para eventos de pico, instancias cálidas sólo allí.
Contenido/CDN: edge local y dominios regionales para reducir el egress y cumplir con la residencia de datos.
Requisitos legales: Almacenamiento WORM para auditoría: limite el volumen (agregación, TTL, compresión).
12) Mini recetas
12. 1 Política de retiro de registros
Errores de prod: 30-90 días; Info: 7–14; Debug: 24-72 horas.
Archivo sólo a petición de cumplimiento.
12. 2 Telemetría canaria
Para un nuevo fichaje - 100% trace las primeras 24 h → luego tail-sampling.
12. 3 Flujos de objetos
json
[
{"prefix": "raw/", "days_to_warm": 30, "days_to_cold": 90, "days_to_delete": 365},
{"prefix": "audit/", "lock": "WORM-365d"}
]
12. 4 Presupuestos/alertas (idea)
Presupuesto mensual por equipo; alerta 50/80/100%; anomaly detection> 30% de tendencia en 24 h.
13) Lista de comprobación prod
- Etiquetas y propietarios en el 100% de los recursos; Las políticas bloquean las políticas no flexibles.
- Presupuestos y alertas + detección anomaly; informes sobre tenantes/marcas/regiones.
- RI/CUD/Spot cubren la carga base; hay un búfer On-Demand.
- K8s: requests/limits especificados; VPA/Karpenter; bin packing; clases separadas de Almacenamiento/IOPS.
- Serverless: provisioned/min sólo para rutas de acceso; frío a través de las colas.
- CDN/edge están habilitados; canales privados a PaaS; egress-dashboard.
- Logs/tracks: tail-sampling, retenciones por clase; filtrado PII.
- Liffycles de almacenamiento y archivo; partición de mesas grandes.
- Dashboards financieros Costo/Req, Costo/Tenant, Waste%, Coverage RI/SP%.
- Para iGaming: contabilidad de gastos PSP/KYC/AML, SLO y presupuestos de «vías de dinero», auditoría WORM.
14) TL; DR
Primero la visibilidad (etiquetas, presupuestos, dashboards), luego las palancas estructurales: tamaños correctos, auto skaling, RI/Spot/commits, CDN/edge y canales privados, clases de almacenamiento y ciclos de vida. Pague por la valiosa telemetría (tail-sampling, retenciones cortas) y automatice los guardrails. En iGaming, tenga en cuenta PSP/KYC/AML como parte de COGS y asigne «rutas de dinero» con SLO y presupuestos separados.