Contoso Airlines ja té totes les peces soltes: sap estimar abans de desplegar, sap què ha gastat i de qui és, sap quins compromisos comprar i sap on és el malbaratament. El que encara no té és el més difícil, que no és tècnic: una manera de treballar en què el cost es gestioni sol, sense dependre que algú se'n recordi. Perquè l'optimització que es fa una vegada es desfà sola en sis mesos. Tornen els discos orfes, torna l'entorn encès de nit, torna la ingesta de registres que ningú no consulta, i el trimestre següent la Nuria torna a preguntar el mateix.
Aquesta lliçó tanca el mòdul amb aquest salt: de les eines a la cultura FinOps. Veuràs les seves tres fases i els tres papers que la sostenen —la Nuria, la Marta i en Diego—, el catàleg complet de palanques d'optimització que consolida tot el que s'ha après al curs, el compromís conscient entre cost i fiabilitat, rendiment i seguretat, amb les retallades que Contoso rebutja deliberadament, el pla prioritzat amb la seva taula d'abans i després, el cost unitari com l'indicador que de debò importa, la revisió mensual com a procés de govern, el cost dins del cicle de vida del desenvolupament, i els antipatrons que arruïnen qualsevol iniciativa d'estalvi.
Recordatori: totes les xifres en euros són orientatives i fictícies. Els preus reals d'Azure canvien amb freqüència i varien per regió; consulta'ls sempre a la calculadora oficial.
Contingut
- Què és FinOps i per què és cultura, no eina
- Les tres fases i els tres papers
- El catàleg complet de palanques d'optimització
- El compromís: cost davant de fiabilitat, rendiment i seguretat
- Les retallades que Contoso rebutja
- El pla d'optimització de Contoso
- Abans i després
- Cost unitari: l'indicador que importa
- La revisió mensual de costos
- Polítiques que prevenen la despesa
- El cost en el cicle de vida del desenvolupament
- Antipatrons de l'optimització
- Errors Comuns i Consells
- Exercicis
- Conclusió
- Què és FinOps i per què és cultura, no eina
FinOps és una disciplina operativa per gestionar la despesa al núvol: un conjunt de pràctiques que porten la responsabilitat econòmica a l'equip que pren les decisions tècniques, amb dades compartides i en temps gairebé real. No és un producte, no és un tauler i no es compra.
La raó per la qual cal és estructural i ja va aparèixer a 08-01: al núvol, qui gasta els diners és l'enginyer, no el departament de compres. Un model de control en què finances aprova i després enginyeria executa no funciona quan l'execució triga tres segons. Només queden dues opcions: bloquejar la gent amb processos d'aprovació que destrueixen l'agilitat que justificava el núvol, o donar a la gent la dada i la responsabilitat. FinOps és la segona.
Els tres principis que ho resumeixen:
- Visibilitat: cada equip veu el que gasta, amb detall suficient per actuar i sense demanar-ho a ningú.
- Responsabilitat: l'equip que decideix és el que respon de la seva factura, i té marge per decidir.
- Optimització contínua: no és un projecte trimestral, és una rutina mensual amb responsables i dates.
I el motiu pel qual s'insisteix que és cultura: les tres coses que més van estalviar a Contoso no van ser tècniques. Van ser un etiquetatge que permet saber de qui és cada euro, una revisió mensual d'una hora en què algú ha d'explicar les seves xifres, i el costum d'adjuntar una estimació a cada proposta d'arquitectura. Les eines executen; la cultura és la que fa que algú les miri.
- Les tres fases i els tres papers
flowchart LR I["INFORMAR<br/>visibilitat, assignacio,<br/>pressupostos, previsio"] --> O["OPTIMITZAR<br/>dimensionar, apagar,<br/>comprometre s, netejar"] O --> P["OPERAR<br/>governanca, politiques,<br/>revisio mensual, cultura"] P --> I I -.->|"08-02"| I O -.->|"08-03 i 08-04"| O P -.->|"aquesta llico"| P
El cicle es recorre contínuament i no es pot saltar la primera fase: optimitzar sense informar és endevinar. Contoso va trigar dos mesos en la fase d'informar —etiquetatge, política hereda-centro-coste, vistes, pressupostos, exportacions— abans de tocar ni un sol recurs, i aquest va ser el motiu que la fase d'optimitzar durés tres setmanes en lloc de sis mesos.
Els tres papers, amb nom propi:
| Paper | Qui | Aporta | Necessita | Risc si falta |
|---|---|---|---|---|
| Finances | Nuria Peña | Pressupost, previsió, context econòmic, relació amb el comitè | Dades en el seu idioma, no captures del portal | El cost es converteix en un topall arbitrari sense criteri tècnic |
| Enginyeria | Marta Ríos i infraestructura | Coneixement de què es pot tocar i què no; executa | Veure el cost del que construeix, i marge per decidir | S'optimitza el que s'entén, no el que costa |
| Producte / negoci | Diego Salas i els responsables de producte | Prioritza: què val la pena i què no | Cost per funcionalitat i per transacció | Es retalla on no fa mal en lloc d'on no aporta |
La disfunció clàssica és que només hi participin dos dels tres. Si falten finances, l'equip optimitza sense saber si importa. Si falta enginyeria, es fixen topalls que trenquen producció. I si falta negoci —el cas més freqüent— es retalla el que és tècnicament fàcil en lloc del que és econòmicament irrellevant, que poques vegades coincideixen.
- El catàleg complet de palanques d'optimització
Aquesta és la taula que consolida tot el curs. Cada fila és una palanca vista en algun mòdul anterior, aquí posada al seu lloc econòmic.
| Tipus de recurs | Palanca | Com s'aplica a Contoso | Estalvi típic | Risc |
|---|---|---|---|---|
| Tot | Apagar el que no es fa servir | Runbook Detener-IniciarEntornosDev sobre horario=laborable (07-04) |
Fins al 75 % del còmput afectat | Molt baix |
| Tot | Eliminar orfes | Discos, IP, instantànies, passarel·les (08-04) | Variable, sempre positiu | Baix, amb instantània prèvia |
| VM / VMSS | Dimensionar correctament | Percentil 95 de CPU i memòria a log-contoso-pro |
20-50 % del recurs | Mitjà: exigeix reiniciar |
| VM / VMSS | Escalar automàticament en lloc de sobredimensionar | Escalat automàtic 2-20 amb perfil apertura-temporada-verano (02-02) |
30-60 % davant del pic fix | Baix si el llindar està provat |
| VM / VMSS / AKS | Instàncies d'accés puntual | Grup lotes i agents de compilació (08-03) |
60-90 % | Alt: desallotjament amb 30 s |
| Còmput estable | Reserves i plans d'estalvi | AKS, App Service, SQL, línia base del VMSS (08-03) | 11-45 % | Mitjà: compromís |
| Windows / SQL Server | Azure Hybrid Benefit | db-reservas, validat per llicències (08-03) |
~30 % del vCore | Compliment, no tècnic |
| App Service | Consolidar aplicacions en un pla | Diverses apps sobre plan-contoso-reservas-pro (02-03) |
Un pla en lloc de N | Baix: aïllen malament el soroll |
| Bases de dades | Nivell sense servidor amb pausa automàtica | sql-contoso-reservas-dev (03-02) |
70-90 % en desenvolupament | Latència de represa |
| Bases de dades | Aturar el servidor flexible | MySQL i PostgreSQL de desenvolupament (03-04, 03-05) | Còmput a zero | Baix |
| Cosmos DB | Escalat automàtic i revisió de RU/s | cosmos-contoso-tarifas-pro, 4000 RU/s màximes (03-03) |
20-40 % davant de fix | Baix |
| Synapse | Pausar el grup dedicat; particionar el llac | sqlpool-contoso pausat; Parquet particionat (03-06) |
Molt alt | Baix |
| Storage | Nivells d'accés i cicle de vida | sttarjetascontosopro: Cool als 30 dies, Cold als 90, Archive als 365 (02-04) |
40-80 % del GB-mes | Cost de recuperació i transaccions |
| Storage | Redundància adequada per dada | GZRS a targetes, LRS a desenvolupament | 50 % entre nivells | Alt: és fiabilitat |
| Log Analytics | Les tres palanques: què, en quin pla, quant de temps | Retallada d'ingesta, ContainerLogV2 a Basic, retenció per taula (07-02) |
30-60 % | Baix si es conserva el que s'investiga |
| App Insights | Mostreig adaptatiu | 25 % amb mostreig per tipus a ai-insights-contoso-pro (07-03) |
Proporcional al mostreig | Mitjà: es perd detall |
| Xarxa | Reduir la sortida de dades amb memòria cau i CDN | Memòria cau d'estàtics i targetes a fd-contoso-global (02-06) |
30-60 % de l'egress | Baix, amb invalidació correcta |
| Xarxa | Consolidar tallafoc, bastió i passarel·les | Un únic fw-contoso-hub-pro de concentrador |
Elimina duplicats sencers | Mitjà |
| Functions / Logic Apps | Pla d'allotjament adequat | Consum per al que és esporàdic, Premium només on cal (06-03) | Molt alt en càrregues esporàdiques | Arrencada en fred |
| Arquitectura | Sense servidor i basada en esdeveniments | evgt-contoso-reservas-pro en lloc de sondeig continu (06-05) |
Elimina còmput ociós | Redisseny |
| IA | Límit de tokens, retallada de context i memòria cau | oai-contoso-pro amb topall dur (06-06) |
20-50 % | Qualitat de resposta |
| Còpies | Retenció per criticitat, no uniforme | 30 dies en producció, menys en desenvolupament (07-05) | Proporcional | Alt: és recuperació |
Dues maneres de llegir aquesta taula. En vertical, és la llista de tot el que pots tocar. En horitzontal, és un avís: la columna de risc diu que les palanques més rendibles no són les més segures, i que hi ha tres files —redundància, retenció de còpies i mostreig— on estalviar significa acceptar més risc, no eliminar malbaratament. Aquesta distinció és el tema de l'apartat següent.
- El compromís: cost davant de fiabilitat, rendiment i seguretat
Hi ha dues classes d'optimització, i confondre-les és l'origen de gairebé tots els desastres:
| Eliminar malbaratament | Acceptar un compromís | |
|---|---|---|
| Què és | Deixar de pagar una cosa que no aporta res | Pagar menys a canvi de menys |
| Exemple | Un disc orfe, un entorn encès de nit | Baixar de GZRS a LRS, treure el WAF |
| Qui decideix | Enginyeria, sola | Negoci, informat per enginyeria |
| Reversibilitat | Total | De vegades cap, i es descobreix el dia dolent |
| Quan es fa | Sempre i immediatament | Només amb decisió explícita i documentada |
La primera columna s'executa sense demanar permís: ningú no ha d'aprovar que s'esborri una IP pública que no està associada a res. La segona no la decideix mai enginyeria en solitari, perquè no és una decisió tècnica: és un intercanvi de diners per risc, i el risc l'assumeix el negoci.
La manera de plantejar correctament un compromís davant de qui l'ha de decidir té tres parts: quant s'estalvia, què es perd exactament i què passa el dia que això importi. Formulat així, la majoria de retallades discutibles cauen soles. Formulat com «podem estalviar 190 € al mes en emmagatzematge», gairebé totes s'aproven, i ningú no recorda per què el dia de l'incident.
- Les retallades que Contoso rebutja
Aquestes propostes van aparèixer a la revisió i es van rebutjar per escrit, que és tan important com el que sí que es va fer:
| Proposta | Estalvi | Què es perdria | Decisió i motiu |
|---|---|---|---|
Eliminar la redundància de zona de db-reservas |
370 € | Tolerància a la caiguda d'una zona de West Europe | Rebutjat: sense ella no es ven un bitllet durant hores |
Eliminar la rèplica fg-contoso-reservas |
1.180 € | L'RTO d'1 hora del mòdul 7 | Rebutjat: és un compromís signat amb el negoci |
Desactivar el WAF wafcontosoglobal |
140 € | Protecció davant d'injecció i bots al frontal públic | Rebutjat: una bretxa de dades personals costa ordres de magnitud més |
| Desactivar Defender for Cloud a SQL i Key Vault | 310 € | Detecció d'exfiltració i d'accés anòmal a secrets | Rebutjat: són els dos recursos amb dades sensibles |
Baixar sttarjetascontosopro de GZRS a LRS |
190 € | Recuperació davant d'un desastre regional | Rebutjat per a targetes; acceptat per a sttarjetascontosodev |
| Reduir la retenció de còpies de 30 a 7 dies | 160 € | El punt net anterior a un ransomware detectat tard | Rebutjat: 07-05 ho explica amb detall |
Eliminar bastion-contoso-pro i obrir accés directe |
205 € | Accés administratiu sense exposar ports | Rebutjat: reobrir RDP/SSH a internet és indefensable |
| 2.555 € | Deixats sobre la taula deliberadament |
Contoso hauria pogut abaixar la seva factura uns altres 2.555 € al mes aplicant aquesta llista. Va decidir no fer-ho, i ho va escriure. Aquest document té més valor del que sembla: quan d'aquí a un any algú pregunti per què es paga GZRS, la resposta estarà escrita amb la seva data i la seva signatura, i ningú no haurà de reconstruir el raonament des de zero. Un equip madur no és el que més retalla: és el que sap què no retalla i per què.
- El pla d'optimització de Contoso
Partint de la factura analitzada de juliol —17.800 €—, l'equip va prioritzar les accions per estalvi, risc i esforç. Xifres orientatives i fictícies:
| # | Acció | Estalvi/mes | Risc | Esforç | Origen |
|---|---|---|---|---|---|
| 1 | Reserves, pla d'estalvi i Hybrid Benefit | 2.900 € | Mitjà (compromís) | Baix | 08-03 |
| 2 | Retallada d'ingesta i plans de taula a log-contoso-pro (42 → 24 GB/dia) |
690 € | Baix | Mitjà | 07-02 |
| 3 | Malbaratament d'Advisor i Resource Graph | 457 € | Baix | Baix | 08-04 |
| 4 | Memòria cau d'estàtics i targetes a fd-contoso-global |
340 € | Baix | Mitjà | 02-06 |
| 5 | Cicle de vida més agressiu a sttarjetascontosopro i neteja de stlagocontosopro |
215 € | Baix | Baix | 02-04 |
| 6 | Ampliar Detener-IniciarEntornosDev a tot rg-contoso-reservas-dev |
210 € | Baix | Baix | 07-04 |
| 7 | Mostreig adaptatiu al 25 % a ai-insights-contoso-pro |
180 € | Mitjà | Baix | 07-03 |
| 8 | Particionar el llac en Parquet per reduir TB llegits a Synapse | 130 € | Baix | Mitjà | 03-06 |
| 9 | Bases de dades de desenvolupament a sense servidor o aturades | 120 € | Baix | Baix | 03-04, 03-05 |
| Total | ≈ 5.250 €/mes |
El criteri d'ordenació no va ser l'estalvi absolut, sinó la relació estalvi ÷ (risc × esforç), i per això l'acció 3 —457 € de neteja sense risc ni esforç— es va executar abans que la 1, tot i estalviar sis vegades menys. Hi ha a més una dependència dura entre totes dues: la regla 3 de 08-03 exigeix optimitzar abans de comprometre's, així que la neteja i el redimensionament havien d'anar primer perquè la reserva es comprés sobre la plataforma ja aprimada.
I un advertiment sobre l'aritmètica que convé fer sempre: aquests estalvis no són perfectament additius. L'acció 2 redueix la ingesta i amb ella la base sobre la qual es calcularia un futur compromís de capacitat; l'acció 4 redueix l'egress però també les transaccions de Storage, encavalcant-se lleugerament amb la 5. L'estimació honesta que Contoso va portar al comitè no va ser una xifra sinó un interval: entre 12.400 € i 13.000 € al mes, i el nou pressupost es va fixar en 13.000 € per no prometre el millor cas.
- Abans i després
| Partida | Juliol (abans) | Octubre (després) | Variació | Què la va produir |
|---|---|---|---|---|
sql-contoso-reservas-pro + rèplica |
2.660 € | 1.535 € | −42 % | Capacitat reservada + Hybrid Benefit |
aks-contoso-operaciones |
1.980 € | 1.150 € | −42 % | Reserva de 3 anys + redimensionament del grup aplicaciones |
log-contoso-pro + App Insights |
1.640 € | 770 € | −53 % | Retallada d'ingesta, plans de taula, retenció i mostreig |
vmss-api-disponibilidad-pro |
1.320 € | 1.188 € | −10 % | Reserva de la línia base de 2 instàncies |
fw-contoso-hub-pro |
1.010 € | 1.010 € | 0 % | Sense canvis: és control de sortida obligatori |
| Sortida de dades | 780 € | 440 € | −44 % | Memòria cau a fd-contoso-global |
| Resta de la plataforma | 8.410 € | 6.457 € | −23 % | Neteja, cicle de vida, apagades, Synapse, plans |
| Total | 17.800 € | 12.550 € | −29 % |
Tres lectures. Cap servei no es va degradar: els temps de resposta, la disponibilitat i l'RPO/RTO són idèntics abans i després, i així es va verificar amb els taulers del mòdul 7 durant les quatre setmanes següents. Més de la meitat de l'estalvi va venir de dos llocs —compromisos i observabilitat—, coherent amb la regla d'optimitzar de dalt a baix. I fw-contoso-hub-pro continua costant el mateix, perquè no tot el que és car és optimitzable, i reconèixer-ho forma part de la feina.
- Cost unitari: l'indicador que importa
Un total absolut és un mal indicador, perquè no distingeix entre gastar més per créixer i gastar més per malbaratar. L'indicador que sí que ho distingeix és el cost unitari: cost dividit per unitat de valor de negoci. En una aerolínia, cost per reserva venuda.
| Mes | Factura | Reserves venudes | Cost per reserva | Lectura |
|---|---|---|---|---|
| Juliol (abans) | 17.800 € | 92.000 | 0,193 € | Línia base |
| Octubre (després) | 12.550 € | 92.500 | 0,136 € | −30 % amb el mateix volum |
| Agost següent (temporada) | 19.600 € | 148.000 | 0,132 € | Factura +10 %, cost unitari −3 % |
La tercera fila és la que canvia la conversa al comitè. La factura d'agost puja un 10 % respecte al juliol i, mirada en absolut, sembla un fracàs. Mirada en cost unitari, és la millor notícia de l'any: la plataforma va absorbir un 60 % més de reserves amb un 10 % més de despesa, és a dir, escala amb eficiència creixent. Una factura que puja pot ser una excel·lent notícia, i sense cost unitari no hi ha manera de demostrar-ho.
L'indicador es calcula unint l'exportació diària de cost de stlagocontosopro (08-02) amb la taula de reserves, a syn-contoso-analitica-pro:
// Cost per reserva venuda, per dia, sobre l area de treball amb totes dues dades
let cost =
CosteDiario_CL
| where TimeGenerated > ago(90d)
| summarize eur = sum(CostInBillingCurrency_d) by dia = bin(TimeGenerated, 1d);
let vendes =
AppEvents
| where Name == "ReservaConfirmada"
| summarize reserves = count() by dia = bin(TimeGenerated, 1d);
cost
| join kind=inner vendes on dia
| extend costUnitari = round(eur / todouble(reserves), 4)
| project dia, eur, reserves, costUnitari
| order by dia asc
| render timechartContoso publica tres indicadors unitaris: cost per reserva venuda, cost per targeta d'embarcament emesa i cost per milió de peticions a l'API de Disponibilitat. Cadascun té responsable, i tots tres es revisen mensualment. La regla que els governa: l'objectiu no és que la factura baixi; és que el cost unitari baixi. Si el negoci creix un 40 % i la factura creix un 15 %, l'equip ha fet una feina excel·lent encara que la Nuria pagui més que el mes passat —i ho sap, perquè l'indicador l'hi ensenya—.
- La revisió mensual de costos
El procés que sosté tota la resta cap en una hora al mes:
| Element | Definició a Contoso |
|---|---|
| Quan | Primer dimarts de mes, 60 minuts, al calendari de manera permanent |
| Qui | Nuria (finances), Marta (infraestructura), Diego (backend), responsable de producte, responsable de dades |
| Entrada | L'informe d'una pàgina de 08-04, enviat 48 hores abans |
| Què es mira | Factura i variació; cost unitari; desviació respecte al pressupost; top 10 de partides; anomalies del mes; malbaratament detectat; estalvi realitzat davant del promès; cobertura i utilització de compromisos; recursos sense etiquetar |
| Què es decideix | Què s'aplica aquest mes i qui ho fa; quins compromisos es compren; quines retallades es rebutgen i per què; quins pressupostos s'ajusten |
| Sortida | Llista d'accions amb responsable i data, i les decisions escrites |
Quatre regles apreses per les males i que marquen la diferència entre una reunió útil i una cerimònia:
- S'envia l'informe abans. Una reunió que comença llegint dades no pren decisions.
- Tota acció té nom i data. «Caldria mirar el tema dels registres» no és una acció.
- Es compara l'estalvi promès amb el realitzat. És el punt que dona credibilitat, i també el que destapa les estimacions optimistes.
- Es celebra el cost unitari, no la factura. Si es premia abaixar la factura, algú acabarà frenant el creixement del negoci per aconseguir-ho.
- Polítiques que prevenen la despesa
L'optimització més barata és la que evita la despesa abans que existeixi, i per a això hi ha les directives del mòdul 4, aplicades des de la iniciativa «Base de governança de Contoso»:
| Directiva | Efecte | Què preveu |
|---|---|---|
Regions permeses (westeurope, northeurope) |
Deny |
La VM en un altre continent que ningú no monitora, i la sortida entre regions |
| Mides de VM permeses | Deny |
La Standard_E64s_v5 creada «per a una prova» |
| SKU permeses en serveis de dades | Deny |
Un grup dedicat de Synapse creat a mà |
Etiquetes obligatòries (entorno, proyecto, centro-coste, propietario) |
Deny |
La despesa que no es pot imputar a ningú |
hereda-centro-coste |
Modify |
Que el recurs fill perdi la imputació del grup |
| Prohibir IP pública en subxarxes d'aplicació | Deny |
Cost i superfície d'exposició alhora |
| Auditar recursos sense configuració de diagnòstic | AuditIfNotExists |
Ceguesa operativa; amb el matís que desplegar-la genera ingesta |
Aquest últim matís mereix atenció perquè és el bucle complet del mòdul: una directiva pensada per millorar l'observabilitat crea despesa a log-contoso-pro. No és un argument per no tenir-la; és un argument per desplegar-la amb les categories de registre triades conscientment, en lloc d'activar-les totes.
I un advertiment sobre l'equilibri: una directiva Deny massa estricta es converteix en una cua d'excepcions que algú ha d'aprovar, i això reintrodueix exactament la fricció que el núvol venia a eliminar. Contoso manté una llista curta de Deny —regions, mides desproporcionades, etiquetes— i fa servir Audit per a tota la resta, revisant el resultat a la reunió mensual.
- El cost en el cicle de vida del desenvolupament
Que el cost sigui un criteri de disseny i no una auditoria posterior exigeix integrar-lo en quatre punts del procés, tots ja vistos:
flowchart LR D["Disseny<br/>estimacio amb supostos<br/>i alternatives comparades"] --> R["Revisio d arquitectura<br/>el cost es un criteri<br/>al costat de fiabilitat i seguretat"] R --> PR["Solicitud de canvis en Bicep<br/>comentari automatic amb<br/>l impacte de les SKU"] PR --> DE["Desplegament<br/>etiquetes obligatories<br/>i pressupost de l entorn"] DE --> M["Operacio<br/>Cost Management, Advisor,<br/>revisio mensual"] M --> D
La peça amb més efecte cultural és la tercera. Quan la sol·licitud d'incorporació de canvis mostra automàticament que apujar la SKU d'una base de dades són 380 € al mes (08-01), la conversa sobre cost passa entre dos enginyers, en el moment en què canviar-ho costa editar una línia, i sense que ningú hagi de fer de policia. El cost deixa de ser una auditoria i es converteix en informació de disseny, que és tot l'objectiu de FinOps.
- Antipatrons de l'optimització
| Antipatró | Per què falla | Què fer |
|---|---|---|
| Optimitzar sense mesurar | S'optimitza el que s'entén, no el que costa | Informar abans que optimitzar: fase 1 completa |
| Retallar on no són els diners | El 80 % de la despesa és en el 20 % dels recursos | Ordenar per cost i començar per dalt |
| Estalviar 50 € amb 20 hores d'enginyeria | El temps d'enginyeria costa molt més que allò estalviat | Calcular sempre el cost de l'acció, no només l'estalvi |
| Trencar producció per un canvi de mida un divendres | Un incident costa més que un any d'aquest estalvi | Finestres, entorn previ i mai abans d'un cap de setmana |
| Retallar l'observabilitat fins a quedar-se cec | Sense dades no es pot optimitzar ni operar | Retallar el que no es consulta, conservar el que s'investiga |
| Reservar abans d'estabilitzar | Es paga tres anys la mida equivocada | Optimitzar primer, comprometre's després |
| Optimitzar una vegada | El malbaratament es regenera sol | Rutina mensual amb responsables |
| Convertir el cost en una arma | Culpar un equip per la seva factura destrueix la col·laboració | Showback abans que chargeback; dades, no retrets |
| Perseguir el 100 % de puntuació | Porta a aplicar recomanacions improcedents | Euros i risc com a mètriques, no la puntuació |
El tercer mereix un comentari a part perquè és el més freqüent entre equips tècnics motivats. Una jornada d'enginyeria té un cost que sol estar en l'ordre de diversos centenars d'euros; dedicar vint hores a un estalvi de 50 € al mes triga gairebé un any a amortitzar-se, temps durant el qual aquestes vint hores podrien haver estat en una altra cosa. Abans d'optimitzar alguna cosa, estima quant costa optimitzar-la. És la mateixa disciplina de 08-01 aplicada a la feina pròpia.
Errors Comuns i Consells
- Creure que FinOps és una eina. Es compra un tauler i no canvia res; el que canvia les coses és la revisió mensual amb responsables.
- Confondre eliminar malbaratament amb acceptar un compromís. El primer s'executa; el segon es decideix amb el negoci i s'escriu.
- Optimitzar sense verificar després. S'aplica el canvi i ningú no comprova si l'estalvi va aparèixer a la factura.
- Mesurar només la factura total. Sense cost unitari no es distingeix créixer de malbaratar.
- Retallar observabilitat a cegues. És la partida més fàcil de tocar i la que et deixa sense instruments.
- No escriure el que es rebutja. D'aquí a un any ningú no recordarà per què es paga GZRS.
- Automatitzar apagades sense salvaguardes per etiqueta. Un runbook mal filtrat apaga producció un dimarts.
- Consell: fixa avui la revisió mensual al calendari, encara que el primer informe sigui dolent. La rutina crea la dada, no a l'inrevés.
- Consell: publica el cost unitari al mateix tauler on l'equip mira la latència. El que es veu, es gestiona.
- Consell: guarda un registre de decisions de cost —aplicades i rebutjades— al costat de les plantilles de
contoso-infra.
Exercicis
Exercici 1. La factura de Contoso Millas (centro-coste=CC-2077) és de 1.240 €/mes: App Service Premium v3 (420 €), PostgreSQL flexible amb alta disponibilitat (390 €), Log Analytics (180 €), blobs de justificants en GZRS (140 €) i Functions en consum (110 €). El projecte té 6.000 bescanvis al mes i un pressupost de 900 €. Proposa un pla prioritzat amb estalvi, risc i esforç, indica què no retallaries i calcula el cost unitari abans i després.
Exercici 2. Un enginyer proposa reduir la retenció de log-contoso-pro de 90 a 7 dies, estalviant 480 €/mes. Analitza la proposta: què es perd, quines alternatives hi ha amb el mateix estalvi i menys impacte, i com la plantejaries al comitè si tot i així s'hagués de fer.
Exercici 3. Dissenya la reunió mensual de costos d'una empresa de 40 persones amb una sola subscripció i 4.000 €/mes de factura. Defineix assistents, durada, ordre del dia, indicadors i què automatitzaries perquè l'informe es prepari sol.
Solucions
Solució 1: cost unitari de partida: 1.240 € ÷ 6.000 bescanvis = 0,207 €/bescanvi. Pla prioritzat. (1) Log Analytics (180 €): aplicar les tres palanques de 07-02 —revisar amb Usage quines taules s'ingereixen, passar els registres de contenidor o d'aplicació no investigats a pla Basic i ajustar la retenció per taula—; estalvi estimat 90 €, risc baix, esforç mitjà; és la partida amb millor relació estalvi/risc. (2) PostgreSQL (390 €): l'alta disponibilitat amb redundància de zona duplica el còmput; això és un compromís, no malbaratament, així que ho decideix negoci —si un programa de fidelització tolera unes hores d'indisponibilitat, desactivar-la estalvia uns 180 €; si no, es manté i es busca en un altre lloc—. En paral·lel, sí que és malbaratament pur comprovar el dimensionament i reservar a 1 any si l'ús porta tres mesos estable (uns 60 € més). (3) App Service (420 €): comprovar si Premium v3 és necessari per redundància de zona i ranures o si es va triar per inèrcia; si el projecte tolera un nivell inferior, l'estalvi és gran, però es perden ranures i escalat —de nou, compromís—. (4) Blobs GZRS (140 €): passar a ZRS n'estalvia una part, però els justificants de bescanvi poden tenir valor probatori; no es retalla sense consultar-ho a legal. (5) Functions en consum (110 €): ja és al model més eficient; no es toca. El que no es retalla en cap cas: la retenció mínima legal dels justificants, i les còpies de la base de dades. Resultat plausible: ~330 € d'estalvi sense compromisos (Log Analytics, reserva i neteja) → 910 €/mes, cost unitari 0,152 €/bescanvi, un 27 % menys, pràcticament dins del pressupost sense degradar res. Si el negoci accepta a més renunciar a l'alta disponibilitat, es baixa de 900 € amb escreix, però aquesta decisió no la signa enginyeria.
Solució 2: què es perd amb 7 dies de retenció: la capacitat d'investigar qualsevol incident de més d'una setmana, la comparació amb la línia base del mes anterior, l'anàlisi de tendències que sustenta el mateix exercici d'optimització, i —crític— el compliment, perquè AzureActivity i els registres d'accés solen tenir requisits de conservació de mesos o anys; retallar a 7 dies de manera indiscriminada pot ser directament un incompliment. A més, els incidents de seguretat i el ransomware es detecten tard (07-05): sense registres no hi ha manera de reconstruir què va passar. Alternatives amb estalvi comparable i molt menys impacte, en ordre: (1) reduir la ingesta del que ningú no consulta —la palanca de més impacte—, identificant amb la taula Usage les taules que representen el gruix del volum i desactivant categories de diagnòstic no fetes servir o filtrant-les amb transformacions a la regla de recopilació; (2) pla Basic per a taules de gran volum i poca consulta com els registres de contenidor; (3) retenció diferenciada per taula, que és el que resol el conflicte: AzureActivity a 365 dies per compliment, AppTraces a 30, registres de depuració a 8; (4) arxiu a llarg termini, molt més barat, amb treballs de cerca quan calgui; i (5) exportació a stlagocontosopro per al que només es necessita de manera esporàdica. Amb la combinació de les cinc s'assoleix un estalvi similar conservant el que és investigable. Si tot i així s'hagués de fer la retallada, es planteja al comitè com a compromís explícit: «estalviem 480 €/mes i acceptem que qualsevol incident de més d'una setmana serà no investigable i que els registres d'auditoria deixaran de complir el requisit X», amb la signatura de qui assumeix aquest risc i una data de revisió.
Solució 3: assistents quatre persones: qui porta finances, qui porta infraestructura, un representant de producte i el responsable tècnic del producte principal; més de cinc persones per a 4.000 € és desproporcionat. Durada 30 minuts mensuals. Ordre del dia: (1) factura del mes, variació i desviació respecte al pressupost, 5 min; (2) cost unitari de l'indicador de negoci triat, 5 min; (3) top 5 de partides i anomalies detectades, 5 min; (4) malbaratament d'Advisor i Resource Graph amb decisió aplicar/ajornar/descartar, 10 min; (5) accions amb responsable i data, 5 min. Indicadors: total, variació mensual, cost unitari, percentatge de recursos sense etiquetar, estalvi realitzat davant del promès, i cobertura de compromisos si n'hi ha. Automatització: un runbook mensual a Azure Automation que executi az advisor recommendation list --category Cost i les consultes de Resource Graph d'orfes i de recursos sense etiquetar, aboqui el resultat en un compte d'emmagatzematge i publiqui el resum a Teams 48 hores abans de la reunió; una exportació diària de cost; pressupost amb alertes al 80 % real i 100 % previst cap al grup d'accions existent; i detecció d'anomalies activada. A aquesta mida no pertoca el chargeback —amb una sola subscripció i quatre persones, el showback i una conversa basten— ni comprar reserves abans de tenir tres mesos d'ús estable.
Conclusió
Ja saps què és FinOps i per què és cultura i no eina: al núvol qui gasta els diners és qui escriu la plantilla, i l'única alternativa a bloquejar la gent amb aprovacions és donar-li la dada i la responsabilitat. Coneixes les seves tres fases —informar, optimitzar, operar—, la regla que no es pot saltar la primera, i els tres papers amb els seus noms: la Nuria aportant pressupost i context econòmic, la Marta aportant el coneixement de què es pot tocar, i en Diego i producte decidint què val la pena; amb la disfunció típica que falti negoci i s'acabi retallant el que és tècnicament fàcil en lloc del que és econòmicament irrellevant.
Tens el catàleg complet de palanques que consolida el curs sencer —apagar, netejar orfes, dimensionar, escalar automàticament, instàncies d'accés puntual, reserves i plans d'estalvi, Hybrid Benefit, consolidar plans, nivells sense servidor amb pausa, escalat automàtic de RU/s, pausar Synapse, nivells i cicle de vida d'emmagatzematge, les tres palanques de Log Analytics, mostreig a Application Insights, memòria cau i CDN contra l'egress, plans d'allotjament adequats, arquitectures sense servidor i basades en esdeveniments, i límits de tokens— amb el seu estalvi típic i, sobretot, amb el seu risc. I amb ell, la distinció que evita els desastres: eliminar malbaratament s'executa sense demanar permís, acceptar un compromís ho decideix el negoci informat, amb les tres preguntes —quant s'estalvia, què es perd exactament i què passa el dia que això importi—. Per això Contoso va deixar 2.555 € al mes sobre la taula rebutjant per escrit treure la redundància de zona de db-reservas, la rèplica fg-contoso-reservas, el WAF, Defender for Cloud, el GZRS de les targetes, la retenció de còpies i el bastió.
T'endus el pla prioritzat complet, ordenat per estalvi dividit entre risc i esforç, amb la neteja executada abans que els compromisos; el resultat mesurat —de 17.800 € a 12.550 € al mes, un 29 % menys, sense degradar ni un sol servei— i l'honestedat de presentar-lo com a interval i pressupostar el pitjor cas. Saps que l'indicador que de debò importa és el cost unitari, que va baixar de 0,193 € a 0,136 € per reserva venuda i va continuar baixant en la temporada alta tot i que la factura pujava, perquè una factura que puja pot ser una excel·lent notícia i sense aquest indicador no hi ha manera de demostrar-ho. I tens el procés que ho sosté: la revisió mensual d'una hora amb els seus assistents, el seu informe enviat amb 48 hores, les seves accions amb nom i data i la seva comparació entre estalvi promès i realitzat; les polítiques que prevenen la despesa des de la governança del mòdul 4; la integració del cost en el cicle de vida del desenvolupament, amb l'estimació a la revisió d'arquitectura i el comentari automàtic a la sol·licitud de canvis de Bicep; i els antipatrons que arruïnen qualsevol iniciativa, amb el més car de tots ben identificat: estalviar cinquanta euros a costa de vint hores d'enginyeria.
Amb això es tanca el mòdul 8 i, amb ell, la construcció de la plataforma. Val la pena mirar el conjunt: Contoso Airlines va començar aquest curs amb una idea vaga del que era el núvol i acaba amb una plataforma desplegada sobre còmput, emmagatzematge i xarxes ben triats; amb les seves dades als serveis adequats i els seus nivells de servei justificats; assegurada amb identitat, RBAC, secrets, WAF, Defender for Cloud i directives que impedeixen crear el que no ha d'existir; lliurada per canalitzacions i infraestructura com a codi en lloc de per clics; ampliada amb contenidors, funcions, missatgeria i IA; observada d'extrem a extrem, investigable amb KQL, automatitzada i recuperable amb un pla provat; i ara estimada, mesurada, pressupostada, repartida, optimitzada i governada, amb cada euro imputat a un centre de cost i cada decisió de retallada —incloses les que es van rebutjar— escrita amb el seu motiu. La pregunta de la Nuria Peña, la que va obrir aquest mòdul, té per fi resposta: se sap quant costa cada peça, quina part d'aquesta factura és valor i quina part era malbaratament, i qui decideix sobre cadascuna.
Queda una última cosa, i és mirar tot això de cop. Al llarg de vuit mòduls has vist la plataforma per parts, cadascuna a la seva lliçó, i aquesta és la manera d'aprendre-la; però no és la manera en què existeix. El mòdul 9 tanca el curs amb la vista de conjunt: l'arquitectura completa de Contoso Airlines dibuixada sencera, amb tots els seus components i totes les seves connexions, perquè la puguis llegir com es llegeix un plànol; l'Azure Well-Architected Framework, que és el marc que justifica —o desmunta— cadascuna de les decisions que has anat prenent, amb els seus cinc pilars i els seus compromisos entre ells; els errors comuns que es repeteixen a totes les organitzacions i com evitar-los abans de cometre'ls; com es migra una organització sencera amb el Cloud Adoption Framework, perquè Contoso encara té sistemes a Barcelona; i cap on va Azure, amb les certificacions que acrediten el que ja saps fer. Ja tens totes les peces: el mòdul 9 és on aprens a llegir el conjunt amb criteri.
Curs d'Azure
Mòdul 1: Introducció a Azure
- Què és Azure?
- Models de servei, regions i zones de disponibilitat
- Crear i configurar el teu compte d'Azure
- Recorregut pel portal d'Azure
- Azure Resource Manager: subscripcions, grups de recursos i etiquetes
- Azure CLI, PowerShell i Cloud Shell
Mòdul 2: Serveis principals d'Azure
- Màquines virtuals d'Azure
- Escalat i alta disponibilitat del còmput
- Azure App Service
- Azure Storage: blobs, fitxers, cues i taules
- Xarxes a Azure: xarxes virtuals, subxarxes i NSG
- Connectivitat híbrida i lliurament global
Mòdul 3: Bases de dades d'Azure
- Triar el servei de dades adequat
- Azure SQL Database
- Azure Cosmos DB
- Azure Database for MySQL
- Azure Database for PostgreSQL
- Analítica de dades: Data Lake, Data Factory i Synapse
Mòdul 4: Seguretat a Azure
- Microsoft Entra ID i gestió d'identitats
- RBAC i identitats administrades
- Azure Key Vault
- Protecció DDoS i tallafoc d'aplicacions web
- Microsoft Defender for Cloud
- Governança i compliment amb Azure Policy
Mòdul 5: Azure DevOps
- Introducció a Azure DevOps
- Azure Repos
- Azure Pipelines: integració contínua
- Desplegament continu amb entorns i aprovacions
- Azure Artifacts
- Infraestructura com a codi amb Bicep
Mòdul 6: Serveis avançats d'Azure
- Contenidors a Azure: Container Registry i Container Apps
- Azure Kubernetes Service (AKS)
- Azure Functions
- Azure Logic Apps
- Missatgeria i esdeveniments: Service Bus, Event Grid i Event Hubs
- Serveis d'IA d'Azure
Mòdul 7: Monitoratge i gestió
- Azure Monitor: mètriques, alertes i taulers
- Log Analytics i consultes KQL
- Application Insights
- Azure Automation i runbooks
- Còpies de seguretat i recuperació davant desastres
Mòdul 8: Gestió i optimització de costos
- Calculadora de preus i estimació de costos
- Azure Cost Management: anàlisi, pressupostos i alertes
- Reserves, plans d'estalvi i Azure Hybrid Benefit
- Azure Advisor
- Estratègies d'optimització i cultura FinOps
