Modelo de dados de CDM

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 9 min. de leitura
  • . CDM o modelo de dados é uma estrutura de dados padronizada que oferece suporte ao ciclo de vida mais amplo da entrega de software: automação, validação de qualidade e CSDM. CDM importa dados de configuração existentes, valida-os usando políticas que você define e exporta dados de configuração válidos para os existentes da sua organização DevOps pipeline para implementar aplicações, serviços e infraestrutura.

    Importante:
    Configuração de DevOps agora está descontinuado e não há mais suporte ou disponível para nova ativação.

    CDM visão geral do modelo de dados

    . CDM o modelo de dados não muda a forma como você pensa sobre a configuração. Em vez disso, você usa CDM REST API e interface do usuário para mapear JSON, YAML, INI, XML e outros dados de configuração existentes em uma estrutura de dados intuitiva que fornece os seguintes benefícios:
    • Implementa versão rigorosa e transparente e controle de mudanças.
    • O permite criptografar dados confidenciais e garante o controle de acesso apropriado para os dados.
    • Habilita a validação automatizada de dados de configuração.
    • Permite reutilizar estruturas de dados de configuração usando variáveis, incluindo valores e valores sobrepostos.

    Estrutura do CDM modelo de dados

    Um aplicação em CDMé a coleção completa de dados de configuração para um serviço de aplicações, modelo de aplicação ou grupo de IC dinâmico[infraestrutura] no CMDB. . CDM o usuário cria um registro de aplicação que inclui as seguintes pastas vazias em uma estrutura hierárquica padrão. Depois que o sistema ingerir seus dados de configuração existentes, você estrutura os dados em componentes na pasta apropriada. Você cria coleções dos componentes e, em seguida, combina as coleções em um implantável um conjunto de dados de configuração (para um ambiente de desenvolvimento, teste ou produção) que pode ser implantado pelo seu processo de entrega. Cada componente, coleção, variável e implantável é um na estrutura.

    Estrutura de pastas para um novo CDM aplicação

    Componentes
    Os componentes são os blocos de construção que normalmente representam os dados de configuração de um elemento lógico de uma aplicação ou parte de um serviço de infraestrutura. Por exemplo, um app monolítico, um microsserviço, um servidor físico ou um modelo do Docker.

    Um componente pode incluir componentes descendentes, diretos ou incluídos. Um componente pode incluir variáveis que podem assumir valores diferentes em coleções e. implantáveis.

    Você pode agrupar componentes em uma biblioteca de componentes compartilhados.

    Dica:
    Muitas vezes é útil definir um valor padrão para uma variável em um componente ou coleção. Esta é uma estratégia poderosa porque você pode criar uma ampla variedade de implantáveis a partir de um pequeno conjunto de componentes e coleções. Implantáveis que herdam um componente ou coleção podem usar substituições, sobreposições e configurações de variáveis para atender às necessidades do tipo de ambiente. Por exemplo, o. Desenvolvimento implantávelpode usar os mesmos componentes e coleções que Teste implantável. Desenvolvimento usa o padrão banco de dados valor da variável. Teste , em contraste, usa um valor diferente que é apropriado para o ambiente de teste.
    Pasta Varis de componentes
    Os componentes VARs A pasta pode conter variáveis que qualquer CDI no Componentes a pasta pode usar. Há apenas um componente VARs pasta.
    Coleções

    Uma coleção é o conjunto de componentes que juntos definem uma versão. Você pode pensar em uma coleção como uma composição de versão.

    Uma coleção pode incluir variáveis ou substituir configurações específicas para a versão específica. Por exemplo, os dados de configuração da VM usados na versão-1 são diferentes dos dados usados na versão-2. a versão-1 pode usar o valor 2 GB para memória configuração ( "Memória": "2GB" e a versão-2 podem especificar um valor diferente ( "Memória": "4 GB" ). Uma coleção pode incluir configurações que não aparecem em seus componentes. Esses valores são chamados sobreposições .

    Uma coleção pode representar uma versão específica de uma aplicação, localização ou conjunto de recursos. Por exemplo, uma coleção chamada coleção - 2 pode incluir o conjunto de componentes ou versões de componentes que representam o. Versão 2,0 funcionalidade da aplicação . Em contraste, uma coleção chamada coleção - 3 que representa Versão 3,0 a funcionalidade pode incluir o mesmo conjunto de componentes ou versões de componentes, componentes adicionais ou versões de componentes e outras configurações de variável, substituição e sobreposição.

    Pasta Variações de coleções
    A coleção VARs A pasta pode conter variáveis que qualquer CDI no Coleções a pasta pode usar. Cada coleção tem uma coleção VARs pasta. Uma variável de coleção tem precedência maior do que uma variável de componente.
    Implantáveis

    Você adiciona e configura implantáveis na estrutura de dados. . implantávelÉ um conjunto de dados de configuração (para um ambiente DE DESENVOLVIMENTO, TESTE ou PROD) que pode ser implantado pelo seu processo de entrega. Cada um implantávelem uma aplicação representa a configuração de um serviço no CMDB.

    Um implantável é composto pela coleção ou conjunto de coleções que definem a versão para um ambiente específico. A combinação de coleções e ambiente link para um serviço de aplicações no CMDB ou para um serviço de infraestrutura.

    . implantávelpode incluir variáveis ou substituir configurações específicas do ambiente. Por exemplo, o. banco de dados a variável tem um valor no ambiente de desenvolvimento e um valor diferente no ambiente de produção. Um valor de substituição na produção implantávelpode especificar um parâmetro de contêiner obrigatório que não é necessário no ambiente de desenvolvimento.

    Um exemplo implantávelnomeado DEV-2 . incluiria coleção - 2 e especificariam variáveis, substituições e configurações de sobreposição que são específicas do ambiente de desenvolvimento da versão 2,0. Em contraste, o. implantávelnomeado PROD-2 também incluiria coleção - 2 , mas, em vez disso, especificaria configurações específicas do ambiente de produção da versão 2,0.

    Quando você estiver satisfeito com um conjunto de mudanças, poderá salvar e confirmar as mudanças. O sistema verifica se há conflitos com os conjuntos de mudanças confirmados de outros usuários. Se não houver conflitos, o sistema persistirá as mudanças e gerará um snapshot de cada implantávelafetado pelas mudanças. Um snapshot representa um possível conjunto de dados de configuração exportável. O sistema valida os dados de configuração executando políticas em relação a cada snapshot e retornando os resultados da validação.

    Pasta variáveis implantáveis
    Implantável VARs A pasta pode conter variáveis que qualquer CDI no Implantáveis a pasta pode usar. Cada implantável tem um implantável VARs pasta. Uma variável implantável tem precedência maior do que uma variável de coleção.

    Exemplo

    No diagrama a seguir da aplicação de biblioteca de exemplo, os números identificam os relacionamentos entre componentes, coleções e implantáveis.
    1. Os componentes são agrupados para formar coleções que representam ambientes ou versões de ambientes. A coleção FS2 (conjunto de recursos 2) tem dados de configuração para a versão principal 2 da aplicação que está sendo desenvolvida e testada no momento. O FS1, por outro lado, contém a versão anterior Core 1 que foi totalmente testada e está executando a aplicação no ambiente de produção.
    2. No exemplo, o FS2 (a coleção usada em ambientes de teste) e o FS1 (a coleção usada no ambiente de produção) usam dados de configuração para ambos S3e um particular VM template. Portanto, as coleções FS1 e FS2 herdam esses dois componentes. Como as coleções representam conjuntos de recursos diferentes, provavelmente é o caso que FS1 e FS2 usem variáveis ou substituições para especificar algumas configurações diferentes para os componentes.
    3. Cada implantável inclui a coleção apropriada para seu ambiente (desenvolvimento, teste ou produção). No exemplo, o TESTE implantável usa a coleção FS2, a versão mais recente do conjunto de recursos e outras configurações usadas em ambientes de teste. O PROD implantável, por outro lado, usa FS1 no ambiente de produção. FS1 é a versão anterior da coleção de dados de configuração que foram validados para produção.

      Em cada implantável, as variáveis são definidas com valores apropriados para o ambiente. Por exemplo, no PROD, o. banco de dados a variável está definida como prod1 (o banco de dados de produção). O TESTE implantável, no entanto, especifica um dos bancos de dados que é usado pela equipe de testes, test3 .

    Este diagrama é simplificado. Em sua implementação, implantáveispode incluir várias coleções, configurações de variável e substituição e configurações de sobreposição (configurações que não aparecem nos componentes e coleções que compõem o implantável). Além disso, você pode ter vários implantáveis para cada tipo de ambiente.

    Como os componentes e coleções fornecem conteúdo que você pode criar em implantáveis para uma variedade de ambientes

    Definições

    CDI
    Um item de dados de configuração (CDI) é simples um nó de chave-valor.
    Variável
    Uma variável é um item de chave-valor que pode ser referenciado em um CDI.
    Nós primários e secundários (folha)
    • CDIs e variáveis são itens de chave-valor. CDIs e variáveis só podem ser nós secundários.
    • Nós de componentes, coleções, implantáveis e pastas podem ser nós primários, nós que podem ter itens de valor de chave ou outros nós primários.
    Componentes
    Os componentes são os blocos de construção que normalmente representam os dados de configuração de um elemento lógico de uma aplicação ou parte de um serviço de infraestrutura. Por exemplo, um app monolítico, um microsserviço, um servidor físico ou um modelo do Docker.

    Um componente pode conter variáveis que podem assumir valores diferentes nas coleções e. implantáveis. Instruções mais detalhadas são exibidas em Defina ou atualize um componente.

    Coleções

    Uma coleção é o conjunto de componentes que juntos definem uma versão. Você pode pensar em uma coleção como uma composição de versão.

    Uma coleção pode conter variáveis ou configurações de substituição que são específicas para a versão específica. Por exemplo, os dados de configuração da VM usados na versão-1 são diferentes dos dados usados na versão-2. a versão-1 pode usar o valor 2 GB para memória configuração ( "Memória": "2GB" e a versão-2 podem especificar um valor diferente ( "Memória": "4 GB" ). Uma coleção pode incluir configurações que não aparecem em seus componentes. Você pode pensar em valores como "sobreposições".

    Implantáveis

    . implantávelÉ um conjunto de dados de configuração (para um ambiente de desenvolvimento, teste ou produção) que pode ser implantado em seu pipeline de IC/CD como um serviço. Cada um implantávelem uma aplicação configura um serviço no CMDB. Por exemplo, você pode criar três implantáveis, um para cada tipo de ambiente: Desenvolvimento, Teste e Produção.

    . implantávelé composto pela coleção ou conjunto de coleções que definem a versão para um ambiente específico. A combinação de coleções e ambiente link para um serviço de aplicações no CMDB ou um serviço de infraestrutura.

    . implantávelpode conter variáveis ou substituir configurações específicas do ambiente. Por exemplo, o. banco de dados a variável tem um valor no ambiente de desenvolvimento e um valor diferente no ambiente de produção. Um valor de substituição na produção implantávelpode especificar um parâmetro de contêiner obrigatório que não é necessário no ambiente de desenvolvimento.

    Conjuntos de mudanças e snapshots
    Quando você confirma mudanças em um CDM, o sistema persiste as mudanças como um conjunto de mudanças da aplicação. Em seguida, o sistema também gera um snapshot de cada implantável afetado pelas mudanças. Um snapshot representa um possível conjunto de dados de configuração exportável. O sistema valida os dados de configuração executando políticas em relação a cada snapshot e retornando os resultados da validação. Snapshots aprovados na validação e publicados podem ser exportados para o pipeline de versão como dados de configuração.
    Componentes compartilhados e bibliotecas de componentes
    Componentes compartilhados em Gestão de dados de configuração permite que você use um componente em várias aplicações.

    Para uma melhor organização, esses componentes compartilhados são gerenciados em bibliotecas de componentes. Essas bibliotecas de componentes melhoram a consistência e a manutenção, garantindo uma única fonte de verdade para os dados de configuração de um componente em todas as aplicações.