Configurar un servidor de Spring Cloud Config

Completado

En este módulo, configurará Config Server de Spring Cloud, que se administra por completo mediante Azure Spring Apps y es compatible con este, para que lo usen los microservicios de Spring Boot.

Este servidor de Spring Cloud Config obtiene sus datos de configuración de un repositorio de Git, donde se almacenan los archivos de configuración de Spring Boot. El almacenamiento de los archivos de configuración con este mecanismo tiene las ventajas siguientes:

  • Los parámetros confidenciales de la aplicación (como la contraseña de la base de datos) no se insertarán en su código de la aplicación.
  • El repositorio de Git que almacena la configuración se puede proteger, de modo que solo tenga acceso a él el equipo de operaciones.
  • A medida que los archivos de configuración se almacenan en Git, puede etiquetarlos o revertirlos, lo que facilita la administración del entorno de producción.
  • Proporciona un lugar centralizado para almacenar todos los datos de configuración para todos los microservicios.

Creación de un repositorio de GIT para almacenar la configuración de la aplicación

En la cuenta de GitHub, cree un repositorio privado en el que se almacenarán las configuraciones de Spring Boot.

En el nuevo repositorio privado de GitHub, agregue un nuevo archivo application.yml, que almacena los datos de configuración de todos nuestros microservicios.

Normalmente, cada aplicación de Spring Boot incluye un archivo de este tipo en los archivos binarios de la aplicación para que contenga la configuración de la aplicación. Un servidor de configuración de Spring Cloud permite almacenar esta configuración fuera de la aplicación, lo que aporta las ventajas siguientes:

  • Permite almacenar parámetros confidenciales (como la contraseña de la base de datos) fuera de la aplicación.
  • La configuración se almacena en un repositorio de GIT, por lo que sus datos se pueden etiquetar o revertir.
  • Usa un repositorio de GIT específico, que se puede proteger por separado.
  • Proporciona un lugar centralizado para almacenar todos los datos de configuración para todos los microservicios.

Por el momento, nuestro application.yml solo almacenará un mensaje para comprobar si la configuración es correcta:

application:
    message: Configured by Azure Spring Apps

Confirme e inserte el nuevo archivo:

git add application.yml
git commit -m 'Add new Spring Boot configuration file'
git push

Creación de un token personal de GitHub

Azure Spring Apps puede acceder a los repositorios de Git públicos, protegidos mediante SSH o protegidos mediante la autenticación HTTP básica. Usaremos esa última opción, ya que es más fácil de crear y administrar con GitHub.

Siga la guía de GitHub para crear un token personal y guarde el token. Cuando se le pida que seleccione los ámbitos, desactive toda la sección "repo" y nada más.

Screenshot that shows the GitHub personal access token settings.

Una vez generado el token, deje la pestaña abierta hasta el final de esta sección.

Configuración de Azure Spring Apps para acceder al repositorio de GIT

  1. Vaya a Azure Portal y busque Azure Spring Apps.

  2. Vaya a la página de información general del servidor de Azure Spring Apps y seleccione Config Server en el menú.

  3. Configure el repositorio que ha creado anteriormente:

    1. Agregue la dirección URL del repositorio, por ejemplo, https://github.com/<YOUR_USERNAME>/azure-spring-cloud-config o git@github.com:<YOUR_USERNAME>/azure-spring-cloud-config.git.

      Sugerencia

      Asegúrese de incluir la terminación .git en la dirección URL o use el URI completo.

    2. Agregue la rama en Label. El valor predeterminado es main en GitHub, pero los repositorios más antiguos o los proveedores de Git alternativos pueden seguir usando master.

    3. Seleccione Autenticación y seleccione HTTP básico.

    4. El nombre de usuario es el nombre de inicio de sesión de GitHub.

    5. La contraseña es el token personal que creamos en la sección anterior.

    Screenshot of the Spring Cloud config server settings.

  4. Seleccione Validar y espere a que la operación se complete correctamente.

  5. Seleccione Aplicar y espere a que la operación se complete correctamente.

Revisar

Hemos creado un repositorio de configuración privado. También hemos habilitado Azure Spring Apps para crear un servidor de configuración con los archivos de configuración de este repositorio.

Comprobación de conocimientos

1.

En Azure Spring Apps, ¿qué mecanismos de seguridad admite Config Server de Spring Cloud?

2.

Spring Cloud Config es una solución excelente porque: