Partilhar via


Migrar o Serviço de Configuração de Aplicativo para o Spring Cloud Config Server gerenciado

Nota

Os planos Basic, Standard e Enterprise serão preteridos a partir de meados de março de 2025, com um período de aposentadoria de 3 anos. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para obter mais informações, consulte o anúncio de aposentadoria do Azure Spring Apps.

O plano de consumo padrão e dedicado será preterido a partir de 30 de setembro de 2024, com um desligamento completo após seis meses. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para obter mais informações, consulte Migrar consumo padrão e plano dedicado do Azure Spring Apps para Aplicativos de Contêiner do Azure.

Este artigo aplica-se a: ❎ Basic/Standard ✅ Enterprise

Este artigo descreve como migrar do Serviço de Configuração de Aplicativo (ACS) para o Spring Cloud Config Server ao usar o plano do Azure Spring Apps Enterprise com aplicativos Java.

O Spring Cloud Config Server fornece um serviço de configuração centralizada que os aplicativos podem usar para buscar propriedades de configuração de fontes externas, como repositórios Git.

Provisionar o Spring Cloud Config Server

Se você tiver uma instância do plano do Azure Spring Apps Enterprise com o Serviço de Configuração de Aplicativo habilitado, a primeira etapa na migração do ACS para o Spring Cloud Config Server é provisionar o Config Server em seu ambiente do Azure Spring Apps. Você pode provisioná-lo usando o portal do Azure ou a CLI do Azure.

Use as seguintes etapas para provisionar o Spring Cloud Config Server:

  • Navegue até sua instância corporativa do Azure Spring Apps no portal do Azure.
  • No menu, selecione Spring Cloud Config Server.
  • Selecione Gerenciar para ver se o Spring Cloud Config Server está ativado. Se não estiver, ative-o e selecione Aplicar para salvar.
  • Depois de atualizar com êxito, você pode ver o Estado de provisionamento do servidor de configuração é bem-sucedido na guia Visão geral .

Configurar o Spring Cloud Config Server

Depois de provisionar o Spring Cloud Config Server, a próxima etapa é configurá-lo para seu aplicativo para garantir uma migração suave.

Use as seguintes etapas para configurar o Spring Cloud Config Server no portal do Azure:

  1. Na sua instância do Azure Spring Apps, navegue até Spring Cloud Config Server.

  2. Na guia Configurações, mapeie as configurações de todos os repositórios do ACS para o Spring Cloud Config Server.

    Se você tiver apenas um repositório no ACS, mapeie-o para o repositório padrão do Spring Cloud Config Server sem nome e padrões. Se você tiver vários repositórios no ACS, escolha um repositório como o repositório padrão para o Spring Cloud Config Server e use outros como repositórios adicionais. Migre propriedades, incluindo uri, label, search path, namee authentication do ACS para o Spring Cloud Config Server.

    Captura de ecrã do portal do Azure que mostra a página Spring Cloud Config Server.

  3. Depois de mapear as configurações, selecione Validar para verificar a configuração.

  4. Após a validação bem-sucedida, selecione Aplicar para concluir a configuração do Spring Cloud Config Server.

  5. Para aplicar as alterações, na guia Vinculação de aplicativos, selecione Vincular aplicativo e, em seguida, selecione todos os aplicativos para usar o Spring Cloud Config Server.

Para migrar a propriedade pattern do ACS, é importante garantir que o nome do seu aplicativo do Azure Spring Apps corresponda ao nome do arquivo de configuração no repositório Git.

  • Se o nome do aplicativo do Azure Spring Apps corresponder ao nome do arquivo de configuração, o Spring Cloud Config Server aplicará automaticamente o arquivo de configuração com o nome correspondente ao aplicativo, sem exigir configuração extra.
  • Se os nomes não corresponderem, você precisará criar um novo aplicativo com o nome como o nome do arquivo de configuração.

Para obter mais configurações, consulte o documento do Spring Cloud Config Server.

Atualize a configuração do aplicativo

Devido às diferenças nos mecanismos de implementação entre o ACS e o Config Server, algumas alterações na configuração do aplicativo são necessárias para se adaptar à maneira como as configurações são buscadas.

Depois de provisionar e configurar o Spring Cloud Config Server, você precisa ajustar sua configuração usando as seguintes etapas:

  1. Atualize as dependências do Spring Boot adicionando as seguintes dependências necessárias do Spring Cloud Config ao seu arquivo pom.xml para Maven ou arquivo build.gradle para Gradle.

    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-config</artifactId>
    </dependency>
    
  2. Configure o perfil.

    No ACS, você fornece o perfil como padrões em uma implantação do Azure Spring Apps, enquanto no Spring Cloud Config Server, você configura o perfil no código-fonte de um aplicativo.

    Certifique-se de que seu aplicativo use os perfis corretos - dev, prod, e assim por diante - para que o Spring Cloud Config Server possa servir configurações específicas do ambiente.

    Atualize o arquivo bootstrap.yml ou application.yml em seu aplicativo com as propriedades de configuração corretas para apontar para o Spring Cloud Config Server, conforme mostrado no exemplo a seguir:

    spring:
      cloud:
        config:
          profile: dev
    

    Verifique se o nome do aplicativo do Azure Spring Apps corresponde ao nome do arquivo de configuração em seu repositório git. Além disso, evite configurar spring.application.name no código do seu aplicativo.

Reimplantar o aplicativo

Depois de testar o aplicativo localmente, você pode reimplantá-lo no Azure Spring Apps para usar o Spring Cloud Config Server usando o seguinte comando da CLI do Azure:

az spring app deploy \
    --name <app-name> \
    --artifact-path <path-to-your-app> \
    --config-file-patterns '""'

Com --config-file-patterns '""' o parâmetro, ele limpa a referência do Serviço de Configuração de Aplicativo do seu aplicativo. O aplicativo consome a configuração por meio do Spring Cloud Config Server em vez do Application Configuration Service.

Desabilitar o serviço de configuração do aplicativo

Depois que todos os aplicativos terminarem de migrar para o Spring Cloud Config Server, você poderá desvincular esses aplicativos ao Serviço de Configuração de Aplicativo e desabilitar o ACS.

  1. Na sua instância do Azure Spring Apps, navegue até Serviço de Configuração de Aplicativo
  2. Abra a guia Vinculação de aplicativo e selecione cada aplicativo acoplado para desvincular.
  3. Depois que todos os aplicativos estiverem desvinculados, selecione Gerenciar para desabilitar o Serviço de Configuração de Aplicativo.

Seguindo cuidadosamente estas etapas, você pode garantir uma migração suave e usar os benefícios do Spring Cloud Config Server no Azure Spring Apps.

Limitação conhecida

A migração do ACS para o Spring Cloud Config Server só se aplica a aplicativos Java porque o ACS gerencia a configuração usando o Kubernetes-native ConfigMap. Este método permite atualizações de configuração dinâmica em ambientes Kubernetes, tornando-o versátil para diferentes aplicações com várias linguagens de programação. O Spring Cloud Config Server foi projetado principalmente para aplicativos Java, usando recursos do Spring Framework, portanto, suporta apenas gerenciamento de configuração para Java.