Desplegar Spring Cloud Config

En este documento se muestra cómo desplegar Spring Cloud Config en un clúster de Kf.

Spring Cloud Config proporciona una forma de desacoplar el código de la aplicación de su configuración de tiempo de ejecución. El servidor de configuración de Spring Cloud Config puede leer archivos de configuración de repositorios de Git, del sistema de archivos local, de servidores de HashiCorp Vault o de Cloud Foundry CredHub. Una vez que el servidor de configuración haya leído la configuración, podrá darle formato y servirla como YAML, propiedades de Java o JSON a través de HTTP.

Antes de empezar

Necesitarás un clúster con Kf instalado y acceso a la CLI de Kf.

Además, necesitará el siguiente software:

  • git: se necesita Git para clonar un repositorio.

Descargar el servidor de configuración de Spring Cloud Config

Para descargar la fuente del servidor de configuración:

  1. Abre la terminal.
  2. Clona la fuente del servidor de configuración:

    git clone --depth 1 "https://github.com/google/kf"

Configurar y desplegar un servidor de configuración

Para actualizar la configuración de la instancia, siga estos pasos:

  1. Cambia al directorio spring-cloud-config-server:

    cd kf/spring-cloud-config-server
  2. Abre manifest.yaml.

  3. Cambia la variable de entorno GIT_URI por el URI de tu servidor de configuración de Git.

  4. Si quieres, cambia el nombre de la aplicación en el manifiesto.

  5. También puede configurar propiedades adicionales o fuentes de propiedades alternativas editando src/main/resources/application.properties.

  6. Despliega el servidor de configuración sin una ruta externa. Si has cambiado el nombre de la aplicación en el manifiesto, actualízalo aquí:

    kf push --no-route spring-cloud-config

Vincular aplicaciones al servidor de configuración

Puedes crear un servicio proporcionado por el usuario para vincular el servidor de configuración implementado a otras aplicaciones de Kf en el mismo clúster o espacio de nombres.

La forma de configurarlos dependerá de la biblioteca que utilices:

Aplicaciones PCF

Las aplicaciones de PCF que usen la biblioteca de cliente de Spring Cloud Services de Pivotal se pueden vincular con el siguiente método:

  1. Crea un servicio proporcionado por el usuario llamado config-server. Este paso solo se tiene que hacer una vez por servidor de configuración:

    kf cups config-server -p '{"uri":"http://spring-cloud-config"}' -t configuration
  2. Para cada aplicación que necesite obtener credenciales, ejecuta el siguiente comando:

    kf bind-service application-name config-server
    kf restart application-name

    De esta forma, se creará una entrada en la variable de entorno VCAP_SERVICES para el servidor de configuración.

Otras aplicaciones

Las aplicaciones que puedan conectarse directamente a un servidor de configuración de Spring Cloud deben configurarse para acceder a él mediante su URI interno de clúster:

http://spring-cloud-config
  • En el caso de las aplicaciones Spring que usan la biblioteca de cliente Spring Cloud Config, se puede definir la propiedad spring.cloud.config.uri en la ubicación adecuada para la aplicación. Normalmente, se trata de un archivo application.properties o application.yaml.
  • En el caso de otros frameworks, consulta la información de referencia de tu biblioteca.

Eliminar el servidor de configuración

Para quitar un servidor de configuración, sigue estos pasos:

  1. Elimina todas las vinculaciones al servidor de configuración ejecutando los siguientes comandos para cada aplicación vinculada:

    kf unbind-service application-name config-server
    kf restart application-name
  2. Elimina la entrada de servicio del servidor de configuración:

    kf delete-service config-server
  3. Elimina la aplicación del servidor de configuración:

    kf delete spring-cloud-config

Siguientes pasos