Realidade de Produção (Diagrama Vivo)

The Reality panel compares production with your model

O Reality (Realidade) transforma o seu diagrama C4 em uma visão viva do que realmente está em execução. Conecte fontes de produção somente leitura — Kubernetes, Datadog, New Relic — e o Archyl descobre os seus serviços reais e suas dependências, reconciliando-os com o seu modelo curado. O seu diagrama deixa de ser um instantâneo e passa a refletir a produção.

O Reality é somente leitura e não destrutivo: a varredura nunca altera a sua infraestrutura e nunca edita o seu modelo C4 por conta própria. Tudo o que é descoberto é uma proposta que você aprova.

Como funciona

O Reality mantém três planos claramente separados:

  • Model (Modelo) — a sua arquitetura C4 curada (a intenção). Só você a altera.
  • Reality (Realidade) — um espelho continuamente atualizado do que é observado em produção (os fatos).
  • Binding (Vínculo) — a ligação entre os dois, que você confirma.

Os scanners só escrevem nos planos Reality e Binding. Promover um recurso descoberto para o seu modelo é sempre um clique explícito.

Passo 1 — Conecte uma fonte na sua organização

As credenciais ficam no marketplace da sua organização, então você configura cada fonte uma vez e qualquer projeto pode usá-la.

Vá em Organization → Marketplace (Organização → Marketplace) e conecte uma das opções:

Kubernetes

Uma conexão somente leitura com a API do seu cluster.

  • API Server URL — ex.: https://10.0.0.1:6443
  • Read-only ServiceAccount Token (token de ServiceAccount somente leitura) — crie um ServiceAccount vinculado ao ClusterRole view integrado e então gere um token
  • Skip TLS Verification (ignorar verificação de TLS) — defina como true apenas para clusters de desenvolvimento com certificados autoassinados

O Archyl nunca escreve no seu cluster — ele apenas chama endpoints de leitura (describe/list).

Datadog

  • API Key e Application Key (com leitura de APM)
  • Sitedatadoghq.com, datadoghq.eu, us5.datadoghq.com, … (deve corresponder à região da sua conta)

O Datadog lê o seu Service Map de APM, incluindo dependências externas inferidas (bancos de dados, filas, serviços de terceiros).

New Relic

  • User API Key (NRAK-…) — usada para ler entidades e relacionamentos
  • Account ID (opcional)
  • RegionUS ou EU (deve corresponder à sua conta)

O New Relic lê aplicações de APM e serviços OpenTelemetry, além de seus relacionamentos CALLS.

Passo 2 — Adicione a fonte a um projeto

Abra o diagrama de um projeto e clique em Reality na barra de ferramentas (canto superior direito). O painel do Reality abre à direita.

  1. Clique em Add source (adicionar fonte).
  2. Escolha uma das suas integrações conectadas.
  3. Adicione o scope (escopo) do projeto — um namespace do Kubernetes ou um environment (ambiente) do Datadog/New Relic (ex.: production). Deixe em branco para incluir tudo.
  4. Clique em Add & scan (adicionar e varrer).

Um projeto pode ter qualquer número de fontes — Kubernetes e Datadog, apenas uma, ou várias.

Passo 3 — Varredura

Cada fonte é varrida de forma independente. Use o ícone de refresh (atualizar) em uma fonte para varrê-la novamente. A descoberta é idempotente: a nova varredura atualiza o que já existe em vez de duplicá-lo, e qualquer coisa que tenha desaparecido da produção é sinalizada (nunca excluída).

Fontes de observabilidade podem ter atraso: os serviços costumam aparecer em minutos, mas as relationships (relações) são calculadas a partir da análise de traces e podem levar de 10 a 30 minutos de tráfego sustentado para serem preenchidas.

Passo 4 — Reconcilie recursos

A aba Resources (Recursos) agrupa o que foi descoberto:

  • Unmodeled in production (não modelado em produção) — em execução na produção, mas ainda não no seu diagrama. Para cada um, você pode:
    • Bind (vincular) — ligá-lo a um elemento C4 existente sugerido.
    • Promote (promover) — transformá-lo em um novo elemento C4 (veja abaixo).
    • Ignore (ignorar) — descartá-lo (recuperável).
  • Drifted (desviado) — vinculado ao seu modelo, mas com estado de produção divergente (ex.: não saudável ou desaparecido).
  • In your model (no seu modelo) — correspondências confirmadas entre produção e C4.
  • Orphan (órfão) — no seu modelo, mas sem contraparte em produção.

Use o campo de filter (filtro) para pesquisar por nome, tipo ou namespace.

Promovendo um serviço para o nível de container

Promover cria um novo container C4 a partir de um serviço descoberto. Como os containers vivem dentro de um sistema, abra primeiro o sistema desejado (entre no nível de container). Se nenhum sistema estiver aberto, o Promote fica desativado com uma dica. O novo container surge no sistema que você está visualizando.

Passo 5 — Reconcilie conexões

A aba Connections (Conexões) lista as dependências descobertas (quem chama quem). Uma conexão é promovível quando ambos os seus extremos estão no seu modelo (vinculados ou promovidos). Clique em Promote para desenhá-la como uma relação real no seu diagrama. Conexões promovidas saem automaticamente da lista de propostas.

A lente Reality no diagrama

Enquanto o painel do Reality está aberto, o canvas ativa uma camada ao vivo: elementos C4 que têm um recurso de produção confirmado exibem um pequeno health dot (ponto de saúde) (e uma contagem de instâncias) no canto superior direito. Isso permanece não destrutivo — é uma sobreposição, não uma edição. Serviços promovidos são renderizados como nós limpos e normais.

Segurança e limites

  • Read-only (somente leitura) — o Reality nunca escreve nos seus sistemas de produção e nunca edita automaticamente o seu modelo C4. Você aprova cada alteração.
  • Per-source isolation (isolamento por fonte) — varrer uma fonte nunca afeta os dados de outra.
  • Reversible (reversível) — vínculos podem ser desfeitos, itens ignorados são recuperáveis e elementos promovidos são elementos C4 normais que você pode editar ou excluir.
  • Trust levels (níveis de confiança) — as relações são marcadas pela origem: observed (observado, a partir de telemetria, o sinal mais forte) vs config-derived (derivado de configuração, a partir da configuração do cluster). Fontes de telemetria (Datadog, New Relic, Kubernetes + um service mesh) fornecem o grafo de dependências mais completo.