Questo documento mostra come eseguire il deployment di Spring Cloud Config in un cluster Kf.
Spring Cloud Config offre un modo per disaccoppiare il codice dell'applicazione dalla configurazione del runtime. Il server di configurazione Spring Cloud Config può leggere i file di configurazione dai repository Git, dal file system locale, dai server HashiCorp Vault o da Cloud Foundry CredHub. Dopo che il server di configurazione ha letto la configurazione, può formattarla e pubblicarla come YAML, proprietà Java o JSON su HTTP.
Prima di iniziare
È necessario un cluster con Kf installato e accesso all'interfaccia a riga di comando Kf.
Inoltre, avrai bisogno del seguente software:
git
: Git è necessario per clonare un repository.
Scarica il server di configurazione di Spring Cloud Config
Per scaricare l'origine del server di configurazione:
- Apri un terminale.
Clona l'origine per il server di configurazione:
git clone --depth 1 "https://github.com/google/kf"
Configurare ed eseguire il deployment di un server di configurazione
Per aggiornare le impostazioni per l'istanza:
Cambia directory in
spring-cloud-config-server
:cd kf/spring-cloud-config-server
Apri
manifest.yaml
.Cambia la variabile di ambiente
GIT_URI
nell'URI del tuo server di configurazione Git.Se vuoi, modifica il nome dell'applicazione nel file manifest.
(Facoltativo) Configura proprietà aggiuntive o origini proprietà alternative modificando
src/main/resources/application.properties
.Esegui il deployment del server di configurazione senza una route esterna. Se hai modificato il nome dell'applicazione nel file manifest, aggiornalo qui:
kf push --no-route spring-cloud-config
Associa le applicazioni al server di configurazione
Puoi creare un servizio fornito dall'utente per associare il server di configurazione di cui è stato eseguito il deployment ad altre applicazioni Kf nello stesso cluster o spazio dei nomi.
Il modo in cui le configuri dipende dalla libreria che utilizzi:
Applicazioni PCF
Le applicazioni PCF esistenti che utilizzano la libreria client di Spring Cloud Services di Pivotal possono essere associate utilizzando il seguente metodo:
Crea un servizio fornito dall'utente denominato config-server. Questo passaggio deve essere eseguito una sola volta per server di configurazione:
kf cups config-server -p '{"uri":"http://spring-cloud-config"}' -t configuration
Per ogni applicazione che richiede le credenziali, esegui:
kf bind-service application-name config-server
kf restart application-name
Verrà creata una voce nella variabile di ambiente
VCAP_SERVICES
per il server di configurazione.
Altre applicazioni
Le applicazioni che possono connettersi direttamente a un server di configurazione Spring Cloud Config devono essere configurate in modo da accedervi utilizzando l'URI interno del cluster:
http://spring-cloud-config
- Per le applicazioni Spring che utilizzano la libreria client di Cloud Config Spring
puoi impostare la proprietà
spring.cloud.config.uri
nella località appropriata per la tua applicazione. In genere, è un fileapplication.properties
oapplication.yaml
. - Per altri framework, consulta le informazioni di riferimento della tua libreria.
Elimina il server di configurazione
Per rimuovere un server di configurazione:
Rimuovi tutte le associazioni al server di configurazione che esegue i comandi seguenti per ogni applicazione associata:
kf unbind-service application-name config-server
kf restart application-name
Rimuovi la voce relativa al servizio per il server di configurazione:
kf delete-service config-server
Elimina l'applicazione del server di configurazione:
kf delete spring-cloud-config
Passaggi successivi
- Scopri di più sui tipi di origini di configurazione supportati da Spring Cloud Config.
- Scopri di più sulla struttura della variabile di ambiente
VCAP_SERVICES
per capire come può essere utilizzata per il Service Discovery.