Ce document explique comment déployer Spring Cloud Config dans un cluster Kf.
Spring Cloud Config permet de dissocier le code de l'application de sa configuration d'exécution. Le serveur de configuration Spring Cloud Config peut lire les fichiers de configuration à partir de dépôts Git, du système de fichiers local, de serveurs HashiCorp Vault ou de Cloud Foundry CredHub. Une fois que le serveur a lu la configuration, il peut la mettre en forme et la diffuser en tant que fichier YAML, propriétés Java ou JSON via HTTP.
Avant de commencer
Vous devez disposer d'un cluster sur lequel Kf est installé et d'un accès à la CLI Kf.
Vous avez également besoin du logiciel suivant :
git
: Git est nécessaire pour cloner un dépôt.
Télécharger le serveur de configuration Spring Cloud Config
Pour télécharger le code source du serveur de configuration :
- Ouvrez un terminal.
Clonez le code source du serveur de configuration :
git clone --depth 1 "https://github.com/google/kf"
Configurer et déployer un serveur de configuration
Pour mettre à jour les paramètres de l'instance, procédez comme suit :
Placez-vous dans le répertoire
spring-cloud-config-server
:cd kf/spring-cloud-config-server
Ouvrez
manifest.yaml
.Remplacez la variable d'environnement
GIT_URI
par l'URI de votre serveur de configuration Git.Si vous le souhaitez, modifiez le nom de l'application dans le fichier manifeste.
Vous pouvez également configurer des propriétés supplémentaires ou d'autres sources de propriétés en modifiant
src/main/resources/application.properties
.Déployez le serveur de configuration sans route externe. Si vous avez modifié le nom de l'application dans le fichier manifeste, mettez-le à jour ici :
kf push --no-route spring-cloud-config
Lier des applications au serveur de configuration
Vous pouvez créer un service fourni par l'utilisateur pour lier le serveur de configuration déployé à d'autres applications Kf du même cluster ou du même espace de noms.
La manière de les configurer dépend de la bibliothèque que vous utilisez :
Applications PCF
Les applications PCF existantes qui utilisent la bibliothèque cliente Spring Cloud Services de Pivotal peuvent être liées à l'aide de la méthode suivante :
Créez un service fourni par l'utilisateur nommé config-server. Cette étape ne doit être effectuée qu'une seule fois par serveur de configuration :
kf cups config-server -p '{"uri":"http://spring-cloud-config"}' -t configuration
Pour chaque application nécessitant des identifiants, exécutez les commandes suivantes :
kf bind-service application-name config-server
kf restart application-name
Cela crée une entrée dans la variable d'environnement
VCAP_SERVICES
pour le serveur de configuration.
Autres applications
Les applications qui peuvent se connecter directement à un serveur de configuration Spring Cloud Config doivent être configurées pour y accéder à l'aide de l'URI interne du cluster :
http://spring-cloud-config
- Pour les applications Spring qui utilisent la bibliothèque cliente Spring Cloud Config, vous pouvez définir la propriété
spring.cloud.config.uri
à l'emplacement correspondant à votre application. Il s'agit généralement d'un fichierapplication.properties
ouapplication.yaml
. - Pour les autres frameworks, consultez les informations de référence de votre bibliothèque.
Supprimer le serveur de configuration
Pour supprimer un serveur de configuration, procédez comme suit :
Supprimez toutes les liaisons au serveur de configuration en exécutant les commandes suivantes pour chaque application liée :
kf unbind-service application-name config-server
kf restart application-name
Supprimez l'entrée de service correspondant au serveur de configuration :
kf delete-service config-server
Supprimez l'application du serveur de configuration :
kf delete spring-cloud-config
Étapes suivantes
- En savoir plus sur les types de sources de configuration compatibles avec Spring Cloud Config.
- Découvrez la structure de la variable d'environnement
VCAP_SERVICES
afin de comprendre son utilisation dans le cadre de la découverte des services.