Producers do OSIRIS JSON
Os producers do OSIRIS são ferramentas de snapshot somente leitura que se conectam a plataformas de infraestrutura, coletam dados de topologia e configuração e emitem um documento OSIRIS JSON em conformidade com o padrão. Cada producer tem como alvo um fornecedor específico ou uma plataforma de nuvem.
O que os producers fazem
Um producer executa quatro etapas:
-
Discovery
Conecta-se à plataforma de destino e enumera todos os recursos dentro do escopo.
-
Normalization
Mapeia modelos de dados específicos do fornecedor para tipos de recurso, conexões e grupos do OSIRIS JSON, enriquecendo outros detalhes quando necessário.
-
Redaction and safety guardrails
Remove segredos, credenciais e valores sensíveis de configuração antes da emissão.
-
Emission
Gera um documento OSIRIS JSON válido em stdout ou em um arquivo, pronto para validação.
Producers disponíveis
Os producers são lançados de forma incremental. Cisco é o primeiro producer disponível; os demais estão planejados e virão em seguida.
router Fornecedores de rede
Cisco
APIC, NX-OS, IOS-XE
Arista
EOS
Nokia
SR Linux, EDA
HPE
Apstra
Juniper
Junos
cloud Hyperscalers
Instalação
Os producers são distribuídos como binários Go. Você precisa ter o Go 1.25+ instalado.
Instale tudo (core dispatcher + todos os producers de fornecedores disponíveis):
go install go.osirisjson.org/producers/cmd/...@latest
Ou instale apenas o que você precisa: o core dispatcher e um producer de fornecedor específico:
go install go.osirisjson.org/producers/cmd/osirisjson-producer@latest
go install go.osirisjson.org/producers/cmd/osirisjson-producer-cisco@latest
A tabela abaixo lista todos os pacotes instaláveis:
| Package | Description | Status |
|---|---|---|
cmd/osirisjson-producer | Dispatcher central da CLI - encaminha osirisjson-producer <vendor> ... para binários de fornecedores | available |
cmd/osirisjson-producer-cisco | Producer Cisco (APIC, NX-OS, IOS-XE) | available |
O core dispatcher (osirisjson-producer) descobre binários de fornecedores no seu PATH e encaminha o comando para o binário correto. Sem ele, você precisa invocar o binário do fornecedor diretamente pelo nome completo dele, por exemplo, osirisjson-producer-cisco em vez de osirisjson-producer cisco.
Certifique-se de que $GOPATH/bin (ou $HOME/go/bin) esteja no seu PATH.
Formato da CLI do producer
Todos os producers compartilham uma CLI no estilo dispatcher:
osirisjson-producer <vendor> [subcommand] [flags]
A saída sempre é validada depois por meio da CLI do OSIRIS JSON, por exemplo:
osirisjson-producer <vendor> <subcommand> --host device.example.com > snapshot.json
npx @osirisjson/cli validate --profile strict snapshot.json
Fluxo de trabalho típico
Para arquitetos de solução e auditores, o fluxo de trabalho recomendado é:
- Execute o producer na sua plataforma de destino com as credenciais apropriadas.
- Valide a saída usando
@osirisjson/clicom o perfilstrict. - Revise o snapshot como um artefato de arquitetura, armazene-o, compare-o ao longo do tempo e anexe-o a auditorias.
# Generate snapshot
osirisjson-producer cisco apic -h apic.example.com -u admin > snapshot.json
# Validate
npx @osirisjson/cli validate --profile strict snapshot.json
# Compare with previous snapshot
diff <(jq -S . previous.json) <(jq -S . snapshot.json)
Segurança
O código-fonte dos producers é analisado continuamente pelo SonarCloud em busca de vulnerabilidades, code smells e security hotspots. Todo pull request precisa passar por um quality gate que impõe uma A security rating antes de poder ser mesclado.
Além disso, os producers incluem guardrails de segurança integrados:
- Secret redaction - a flag
--safe-failure-mode(padrão:fail-closed) impede que credenciais e valores sensíveis vazem para a saída JSON. - Read-only access - os producers nunca modificam a configuração do dispositivo. Todas as chamadas de API e NETCONF RPCs são operações somente leitura.
- No persistent storage - os producers não armazenam credenciais em cache nem persistem dados além do arquivo JSON emitido.
O que ler a seguir
- Navegue pelas páginas de producers específicos de fornecedores para ver detalhes sobre instalação, sistemas de origem, autenticação e escopo da saída.
- Leia o guia de validação para entender como verificar a saída do producer.
- Veja o exemplo de infraestrutura de IT e o exemplo de infraestrutura de OT para ver uma amostra completa de documento OSIRIS JSON.