Realtà di produzione (Diagramma vivente)

The Reality panel compares production with your model

Reality trasforma il tuo diagramma C4 in una vista vivente di ciò che è realmente in esecuzione. Collega fonti di produzione in sola lettura — Kubernetes, Datadog, New Relic — e Archyl scopre i tuoi servizi reali e le loro dipendenze, poi le riconcilia con il tuo modello curato. Il tuo diagramma smette di essere un'istantanea e inizia a riflettere la produzione.

Reality è read-only e non distruttivo (sola lettura e senza effetti collaterali): la scansione non modifica mai la tua infrastruttura, e non altera mai da sola il tuo modello C4. Tutto ciò che viene scoperto è una proposta che approvi tu.

Come funziona

Reality mantiene tre piani nettamente separati:

  • Model (modello) — la tua architettura C4 curata (l'intento). Lo modifichi solo tu.
  • Reality (realtà) — uno specchio continuamente aggiornato di ciò che si osserva in produzione (i fatti).
  • Binding (associazione) — il collegamento tra i due, che confermi tu.

Gli scanner scrivono sempre e solo sui piani Reality e Binding. Promuovere una risorsa scoperta nel tuo modello è sempre un clic esplicito.

Passo 1 — Collega una fonte nella tua organizzazione

Le credenziali risiedono nel marketplace della tua organizzazione, quindi configuri ogni fonte una volta sola e qualsiasi progetto può usarla.

Vai su Organization → Marketplace e collega una di queste:

Kubernetes

Una connessione in sola lettura all'API del tuo cluster.

  • API Server URL — ad es. https://10.0.0.1:6443
  • Read-only ServiceAccount Token — crea un ServiceAccount associato al ClusterRole integrato view, poi genera un token
  • Skip TLS Verification — imposta a true solo per cluster di sviluppo con certificati self-signed

Archyl non scrive mai sul tuo cluster — chiama solo endpoint di lettura (describe/list).

Datadog

  • API Key e Application Key (con accesso in lettura ad APM)
  • Sitedatadoghq.com, datadoghq.eu, us5.datadoghq.com, … (deve corrispondere alla regione del tuo account)

Datadog legge la sua Service Map APM, incluse le dipendenze esterne inferite (database, code, servizi di terze parti).

New Relic

  • User API Key (NRAK-…) — usata per leggere entità e relazioni
  • Account ID (opzionale)
  • RegionUS o EU (deve corrispondere al tuo account)

New Relic legge le applicazioni APM e i servizi OpenTelemetry più le relative relazioni CALLS.

Passo 2 — Aggiungi la fonte a un progetto

Apri il diagramma di un progetto e clicca su Reality nella barra degli strumenti (in alto a destra). Il pannello Reality si apre sulla destra.

  1. Clicca su Add source.
  2. Scegli una delle tue integrazioni collegate.
  3. Aggiungi lo scope (ambito) del progetto — un namespace di Kubernetes o un environment di Datadog/New Relic (ad es. production). Lascialo vuoto per includere tutto.
  4. Clicca su Add & scan.

Un progetto può avere un numero qualsiasi di fonti — Kubernetes e Datadog, una sola, o diverse.

Passo 3 — Scansiona

Ogni fonte viene scansionata in modo indipendente. Usa l'icona di refresh (aggiornamento) su una fonte per rieseguire la scansione. La discovery è idempotente: una nuova scansione aggiorna ciò che è già presente invece di duplicarlo, e qualsiasi cosa scomparsa dalla produzione viene segnalata (mai eliminata).

Le fonti di observability possono avere un ritardo: i servizi di solito compaiono entro pochi minuti, ma le relationships (relazioni) sono calcolate dall'analisi delle tracce e possono richiedere 10–30 minuti di traffico costante per popolarsi.

Passo 4 — Riconcilia le risorse

La scheda Resources raggruppa ciò che è stato scoperto:

  • Unmodeled in production (non modellato in produzione) — in esecuzione in produzione ma non ancora presente sul tuo diagramma. Per ciascuno, puoi:
    • Bind — collegarlo a un elemento C4 esistente suggerito.
    • Promote — trasformarlo in un nuovo elemento C4 (vedi sotto).
    • Ignore — scartarlo (recuperabile).
  • Drifted (deviato) — associato al tuo modello ma con uno stato di produzione divergente (ad es. non integro, o scomparso).
  • In your model (nel tuo modello) — corrispondenze confermate tra produzione e C4.
  • Orphan (orfano) — presente nel tuo modello ma senza alcuna controparte in produzione.

Usa il campo filter (filtro) per cercare per nome, tipo o namespace.

Promuovere un servizio al livello container

Il Promote crea un nuovo container C4 da un servizio scoperto. Poiché i container risiedono all'interno di un sistema, apri prima il sistema desiderato (entra nel livello container). Se nessun sistema è aperto, Promote è disabilitato con un suggerimento. Il nuovo container finisce nel sistema che stai visualizzando.

Passo 5 — Riconcilia le connessioni

La scheda Connections elenca le dipendenze scoperte (chi chiama chi). Una connessione è promovibile quando entrambi i suoi endpoint sono nel tuo modello (associati o promossi). Clicca su Promote per disegnarla come relazione reale sul tuo diagramma. Le connessioni promosse spariscono automaticamente dall'elenco delle proposte.

La lente Reality sul diagramma

Mentre il pannello Reality è aperto, il canvas attiva una skin live: gli elementi C4 supportati da una risorsa di produzione confermata mostrano un piccolo health dot (indicatore di stato) (e un conteggio di istanze) in alto a destra. Questo resta non distruttivo — è un overlay, non una modifica. I servizi promossi vengono renderizzati come nodi normali e puliti.

Sicurezza e limiti

  • Read-only — Reality non scrive mai sui tuoi sistemi di produzione e non modifica mai automaticamente il tuo modello C4. Approvi tu ogni cambiamento.
  • Isolamento per fonte — la scansione di una fonte non influisce mai sui dati di un'altra.
  • Reversibile — le associazioni possono essere annullate, gli elementi ignorati sono recuperabili, e gli elementi promossi sono normali elementi C4 che puoi modificare o eliminare.
  • Livelli di affidabilità — le relazioni sono etichettate per origine: observed (osservate, dalla telemetria, il segnale più forte) vs config-derived (derivate dalla configurazione del cluster). Le fonti di telemetria (Datadog, New Relic, Kubernetes + una service mesh) forniscono il grafo delle dipendenze più completo.