Analisi di sistemaArchitetto di sistema

Come organizzare un SLA (Service Level Agreement) a livello di architettura delle sistemi IT e quali metriche è importante considerare?

Supera i colloqui con l'assistente IA Hintsage

Risposta.

L'SLA (Service Level Agreement) è un accordo formale tra il cliente e il team IT, che definisce i parametri di qualità del servizio.

A livello di architettura, il rispetto dell'SLA è garantito da mezzi tecnici, processi, monitoraggio e automazione. Per una corretta attuazione, è importante avere una chiara comprensione dei componenti critici del sistema, della sua resilienza e scalabilità.

Esempio di codice (monitoraggio SLA con Prometheus e Alertmanager):

# Esempio di configurazione alert per latenza di risposta API - alert: HighResponseLatency expr: histogram_quantile(0.99, sum(rate(http_request_duration_seconds_bucket[5m])) by (le, service)) > 1 for: 5m labels: severity: critical annotations: summary: Il tempo di risposta supera l'SLA (99% > 1 sec)

Caratteristiche chiave:

  • È necessario identificare i percorsi critici del codice e applicare le metriche SLA su di essi.
  • L'architettura deve prevedere un sistema di raccolta e archiviazione delle metriche, un meccanismo di alerting e riserva.
  • Vengono implementati strumenti di monitoraggio automatizzato e un registro centralizzato (logging).

Domande insidiose.

Cosa sono le metriche operative e a cosa servono?

Le metriche operative sono indicatori che caratterizzano i parametri reali di funzionamento del sistema, ad esempio, disponibilità, latenza, numero di errori. Servono per misurare quanto il sistema rispetti l'SLA e per rispondere rapidamente a eventuali deviazioni.

Esempio di codice:

# Esempio di esportazione delle metriche tramite Prometheus client from prometheus_client import start_http_server, Summary REQUEST_TIME = Summary('request_processing_seconds', 'Tempo di elaborazione della richiesta')

SLA, SLO e SLI: qual è la differenza?

  • SLA — accordo sulla qualità tra cliente e servizio.
  • SLO — obiettivi specifici o soglie (l'SLA può includere più SLO).
  • SLI — misurazione effettiva del parametro (ad esempio, % delle richieste riuscite in un'ora).

La sola alta disponibilità garantisce il rispetto dell'SLA?

No, l'SLA include non solo disponibilità, ma anche prestazioni (latency), stabilità (error rate), correttezza del funzionamento. L'alta disponibilità da sola non garantisce il rispetto dei restanti requisiti dell'SLA.