Què és OSIRIS JSON
OSIRIS (Open Standard for Infrastructure Resource Interchange Schema) defineix un format JSON vendor-neutral per descriure recursos d'infraestructura, les seves propietats i les seves relacions topològiques en entorns heterogenis, amb una via d'extensió per a OT quan sigui aplicable.
Com a schema d'intercanvi, OSIRIS JSON normalitza exportacions de fonts diverses i permet un consum portable per eines dedicades a diagramació, documentació, fluxos de treball d'inventari/CMDB, evidència d'auditoria i integracions, sense requerir que cada consumer implementi i mantingui parsers específics de vendor.
OSIRIS JSON defineix un schema JSON canònic que actua com a middleware neutral entre les fonts de dades d'infraestructura i les aplicacions consumers. En lloc d'incrustar lògica de parsing específica de vendor en cada eina, OSIRIS JSON adopta un enfocament de capa de traducció:
- PRODUCERS (parsers, translators, discovery agents) tradueixen representacions de source/vendor a documents OSIRIS JSON.
- CONSUMERS (eines de diagramació, CMDBs, IPAMs, DCIMs, pipelines de documentació) llegeixen i processen un únic schema ben definit.
Això desacobla les fonts de dades de les aplicacions consumers, reduint la complexitat d'integració de S×C (S fonts × C consumers) a P+C (P producers + C consumers).
Això desacobla les fonts de dades de les aplicacions i redueix la complexitat d’integració. En un entorn amb S sistemes font i C aplicacions consumers, l’esforç d’integració passa de mapatges directes S×C a S mapatges de producer (source > OSIRIS) més C mapatges de consumer (OSIRIS > application).
El repte
Les dades d’infraestructura s’exposen mitjançant formats i models específics de vendor, amb semàntiques inconsistents per a conceptes equivalents com identitat, propietats, relacions i jerarquia. En entorns mixtos que abracen hyperscalers, public cloud, sistemes on-prem i infraestructura OT, el problema s’agreuja. El resultat és tooling fragmentat i de vegades costós, exportacions inconsistents i documentació amb una topologia fragmentada o de baixa qualitat que ràpidament queda obsoleta.
Conseqüències de la fragmentació
-
crisis_alert
Complexitat d'integracióLes eines han de mantenir adapters, mapatges i translators específics de vendor.
-
crisis_alert
Alt cost de mantenimentLes APIs i els models de dades específics de vendor evolucionen, forçant actualitzacions contínues de parsers i integracions i fent esclatar els costos amb el temps.
-
crisis_alert
Semàntica de topologia inconsistentLes relacions poden ser implícites, incompletes o representades de manera diferent entre fonts, fent que la topologia sigui difícil de comparar i reutilitzar.
-
crisis_alert
Deriva de la documentacióLa traducció manual és fràgil; la documentació és pobra i els diagrames són de baixa qualitat la major part del temps, amb icones incomprensibles i fluxos caòtics que ràpidament queden desactualitzats.
-
crisis_alert
Risc de coneixement tribalSense un estàndard compartit, el context crític sovint viu al cap de les persones. Quan aquestes persones se'n van, aquest coneixement se'n va amb elles i els sistemes es tornen més difícils d'entendre i operar.
-
crisis_alert
Risc de lock-inLes organitzacions poden esdevenir dependents de solucions de normalització tancades, específiques de vendor o de pagament, difícils de substituir o que potser no es mantinguin amb una visió a llarg termini.
Enfocament Open Standard d'OSIRIS JSON
-
verified
Schema d'intercanvi JSON neutralUn format vendor-neutral per intercanviar recursos d'infraestructura i topologia entre sistemes.
-
verified
Els producers tradueixen exportacions de source a documents OSIRISParsers/translators/discovery agents mapen representacions natives al schema OSIRIS.
-
verified
Els consumers implementen un schema per a moltes fontsLes eines poden llegir un únic format de document ben definit en diferents entorns.
-
verified
Relacions de topologia explícites i de primera classeConnections, dependències, contenció i agrupació es representen directament perquè un snapshot pugui descriure què existeix i com es relaciona en un moment concret.
-
verified
Compatibilitat futura mitjançant l'omissió segura de camps desconegutsEls consumers poden ignorar propietats i extensions desconegudes sense trencar el processament bàsic.
-
verified
Les extensions tenen suport nadiuUn mecanisme definit permet a vendors i usuaris enriquir documents sense trencar la interoperabilitat.
Capacitats principals
schema Disseny unificat
Dissenyat per a entorns IT heterogenis, amb una via clara d'extensió per a OT i altres dominis a mesura que creix l'adopció.
hub Model explícit de relacions
Representació de primera classe de connections, dependències, contenció i altres relacions de topologia.
account_tree Constructes d'agrupació
Suport per a l'agrupació lògica i física que reflecteix estructures organitzatives i arquitectòniques reals sense forçar una taxonomia única.
dns Atribució del provider
Els recursos conserven la traçabilitat fins al seu sistema/provider d'origen mentre fan servir una representació estandarditzada i vendor-neutral.
extension Extensibilitat
Un mecanisme definit per a propietats específiques de vendor i custom resource types sense trencar la compatibilitat.
verified_user Validació de tres nivells
Validació estructural (schema), semàntica i de domini que millora la consistència i la qualitat de les dades quan s'aplica tooling de validació.
Principis de disseny
Format de snapshot estàtic
OSIRIS JSON és un format d'intercanvi de snapshots estàtics. Captura què existeix i com es relaciona en un moment concret. No va ser dissenyat com un sistema de monitorització en temps real, una eina de desplegament o un motor d'Infrastructure-as-Code.
Què NO és OSIRIS JSON
close No és telemetria ni monitorització en temps real
OSIRIS JSON descriu l'estat de la topologia i de l'inventari, no mètriques de sèries temporals, logs ni dades d'observabilitat. Projectes com Prometheus, Grafana, Zabbix i OpenTelemetry cobreixen les necessitats de telemetria.
close No és desplegament ni orquestració d'infraestructura
OSIRIS JSON no és un llenguatge infrastructure-as-code ni una especificació de desplegament. Projectes com Terraform, CloudFormation o TOSCA Oasis cobreixen els fluxos de desplegament.
close No és gestió de configuració
OSIRIS JSON no defineix ni imposa una configuració desired state per als recursos. Sistemes de gestió de configuració com Ansible, Puppet, Chef i Salt cobreixen aquest propòsit.
close No és seguiment de canvis ni historial
OSIRIS JSON representa un snapshot puntual. El seguiment dels canvis al llarg del temps és responsabilitat dels sistemes producers i consumers.
close No és autenticació, autorització ni polítiques d'accés
OSIRIS JSON pot transportar metadata que descrigui límits o ownership, però no defineix mecanismes ni polítiques de control d'accés.
close Informació de costos i facturació
La facturació detallada i el modelatge financer queden fora de l'abast del core schema, tot i que es pot incloure metadata relacionada amb costos mitjançant extension.
Estructura del document
Els documents OSIRIS són objectes JSON. A la Specification v1.0.0, l’objecte de nivell superior es defineix al voltant de tres camps: version, metadata i topology.
Es pot incloure un camp $schema opcional per referenciar el schema URI.
[!NOTE] Aquest és un esquema d’alt nivell del schema OSIRIS JSON. Els $defs s’ometen aquí per facilitar la llegibilitat del nivell superior; consulta l’URI canònic per veure el schema complet.
El core schema d’OSIRIS JSON defineix:
{
"$schema": "https://json-schema.org/draft/2020-12/schema#",
"$id": "https://osirisjson.org/schema/v1.0/osiris.schema.json",
"title": "Core OSIRIS JSON Schema v1.0",
"description": "OSIRIS Open Standard for Infrastructure Resource Interchange Schema. This schema encodes baseline interoperability requirements; additional semantic rules (e.g. referential integrity, uniqueness) are validated by tooling.",
"type": "object",
"required": [
"version",
"metadata",
"topology"
],
"properties": {
"$schema": {
"type": "string",
"description": "Optional JSON Schema dialect reference for OSIRIS documents.",
"format": "uri"
},
"version": {
"type": "string",
"description": "OSIRIS specification version of this document (semver). For the v1.0 schema endpoint, any 1.x.y is allowed.",
"pattern": "^1\\.[0-9]+\\.[0-9]+$"
},
"metadata": {
"$ref": "#/$defs/metadata"
},
"topology": {
"$ref": "#/$defs/topology"
}
},
"additionalProperties": true,
"$defs": {
"osirisType": { },
"providerName": { },
"namespaceKey": { },
"tags": { },
"freeformObject": { },
"extensions": { },
"provider": { },
"resource": { },
"connectionDirection": { },
"connectionType": { },
"connection": { },
"group": { },
"topology": { },
"metadataGenerator": { },
"metadataScope": { },
"metadata": { }
}
}
Entitats d'infraestructura identificables de manera única amb propietats i atribució del provider.
Relacions explícites i direcció entre recursos (network, dependency, containment, data flow, etc.).
Col·leccions lògiques o físiques que organitzen recursos (per exemple, VPC, subnet, rack, data center).