Preparação de uma aplicação para carregamento de dados de configuração
Uma 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. Depois de carregar os dados de configuração de origem, a aplicação pode oferecer suporte a todos os implantáveis potenciais que compõem cada versão dos ambientes de desenvolvimento, teste e produção do serviço.
Visão geral: como preparar uma aplicação para aceitar dados de configuração carregados
- Na guia Aplicações, você, um usuário com a função Administrador do CDM [sn_cdm.cdm_admin], cria um registro de aplicação.
O sistema gera uma aplicação que inclui várias pastas padrão em uma estrutura hierárquica. Você mapeará os dados de configuração existentes nesta estrutura de dados para habilitar os benefícios descritos em Modelo de dados de CDM.
A aplicação oferece suporte à criação de vários implantáveis. Por exemplo, você pode criar um implantável para cada ambiente típico: Desenvolvimento, Teste e Produção. Você também pode criar várias versões de cada implantável para cada tipo de ambiente.
- Trabalhando no editor de código CDM, agora você cria um conjunto de mudanças - uma cópia de rascunho da aplicação que pode ser editada.
- Ao trabalhar no changeset, você cria os seguintes tipos de nós nas pastas apropriadas. Este processo modela os dados de configuração, ou seja, prepara a aplicação para mapear os dados de configuração de origem na estrutura de dados CDM.Nota:
A partir da Gestão de dados de configuração versão 4.2, você pode definir um nó usando qualquer caractere UTF-8, incluindo a barra (/).
- Agora que a estrutura está em vigor, use as REST APIs ou o painel de edição de código CDM para carregar os dados de configuração existentes no changeset. O processo é descrito em Carregando seus dados de configuração. Para obter mais informações, consulte CdmApplicationsAPI, CdmChangesetsAPIe CdmSnapshoAPI. Nota:Se você estiver carregando um arquivo XML ou CSV para importar os dados de configuração existentes para o CDM, o analisador do CDM analisará os dados de uma maneira específica. Para obter mais informações, consulte Análise de arquivos XML no CDM e Análise de arquivos CSV no CDM.Você pode carregar os seguintes tipos de conjuntos de dados: variáveis de componente, componentes, coleções e implantáveis.
- Componentes
- 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 de uma 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 em coleções e implantáveis. Instruções mais detalhadas aparecem em Definir ou atualizar 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 configurações variáveis ou 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
2Gbpara a configuração de memória ("memory": "2Gb") e a versão-2 pode especificar um valor diferente ("memory": "4Gb"). Além disso, uma coleção pode incluir definições de configuração que não aparecem em seus componentes. Você pode pensar nesses valores como "sobreposições".- Implantáveis
Um implantável é um conjunto de dados de configuração (para um ambiente de desenvolvimento, teste ou produção) que pode ser implantado no pipeline de IC/CD como um serviço. Cada implantável em 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.
Um implantável é composto pela coleção ou conjunto de coleções que definem a versão de um ambiente específico. A combinação de coleções + link de ambiente para um serviço de aplicativos no CMDB ou um serviço de infraestrutura.
Um implantável pode conter configurações variáveis ou de substituição que são específicas do ambiente. Por exemplo, a variável
de banco de dadostem um valor no ambiente de desenvolvimento e um valor diferente no ambiente de produção. Um valor de substituição na produção implantável pode especificar um parâmetro de contêiner necessário que não é necessário no ambiente de desenvolvimento.
- Depois que os dados forem carregados, você retornará para CDM. Você atualiza a variável e substitui os valores para que o conjunto relativamente pequeno de componentes e coleções possa fornecer dados de configuração para todos os três ambientes implantável. Por exemplo, o Desenvolvimento implantável pode usar os mesmos componentes e coleções que o Teste implantável. O desenvolvimento usa o valor de variável de banco de dados padrão. O teste, por outro lado, usa um valor diferente que é apropriado para o ambiente de testes.
- Agora, salve e confirme o changeset. O sistema executa as seguintes ações:
- Determine se há conflitos com outras confirmações anteriores. Se o sistema relatar um conflito, você deverá resolvê-lo e confirmar novamente ou criar um changeset e refazer as mudanças. Para obter mais informações sobre resolução de conflitos, consulte Conflitos entre confirmações de conjunto de mudanças.
- Envie todas as mudanças para o modelo de dados da aplicação (os dados de configuração são persistentes).
- Gere um snapshot de cada implantável que é afetado pelas mudanças no changeset. O sistema valida os dados de configuração executando as políticas especificadas em relação a um snapshot. No momento em que o snapshot é criado, o snapshot pode ser publicado e usado para exportar os dados de configuração. Snapshots são registros permanentes que não podem ser editados.