Deployment di Spring Cloud Config

Questo documento mostra come eseguire il deployment di Spring Cloud Config in un cluster Kf.

Spring Cloud Config fornisce un modo per disaccoppiare il codice dell'applicazione dalla configurazione di 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. Una volta letta la configurazione, il server di configurazione può formattarla e pubblicarla come YAML, Java Properties o JSON tramite HTTP.

Prima di iniziare

Devi disporre di 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 Spring Cloud Config

Per scaricare il codice sorgente del server di configurazione:

  1. Apri un terminale.
  2. Clona l'origine per il server di configurazione:

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

Configura ed esegui il deployment di un server di configurazione

Per aggiornare le impostazioni dell'istanza:

  1. Cambia la directory in spring-cloud-config-server:

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

  3. Modifica la variabile di ambiente GIT_URI con l'URI del server di configurazione Git.

  4. (Facoltativo) Modifica il nome dell'applicazione nel file manifest.

  5. Se vuoi, configura proprietà aggiuntive o origini proprietà alternative modificando src/main/resources/application.properties.

  6. 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 nello stesso spazio dei nomi.

La modalità di configurazione dipende dalla libreria utilizzata:

Applicazioni PCF

Le applicazioni PCF esistenti che utilizzano la libreria client Spring Cloud Services di Pivotal possono essere associate utilizzando il seguente metodo:

  1. Crea un servizio fornito dall'utente denominato config-server. Questo passaggio deve essere eseguito solo una volta per server di configurazione:

    kf cups config-server -p '{"uri":"http://spring-cloud-config"}' -t configuration
  2. Per ogni applicazione che deve ottenere 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 devono essere configurate per accedervi utilizzando l'URI interno del cluster:

http://spring-cloud-config
  • Per le applicazioni Spring che utilizzano la libreria client Spring Cloud Config, puoi impostare la proprietà spring.cloud.config.uri nella posizione appropriata per la tua applicazione. Di solito si tratta di un file application.properties o application.yaml.
  • Per altri framework, consulta le informazioni di riferimento della libreria.

Elimina il server di configurazione

Per rimuovere un server di configurazione:

  1. Rimuovi tutte le associazioni al server di configurazione eseguendo i seguenti comandi per ogni applicazione associata:

    kf unbind-service application-name config-server
    kf restart application-name
  2. Rimuovi la voce del servizio per il server di configurazione:

    kf delete-service config-server
  3. Elimina l'applicazione del server di configurazione:

    kf delete spring-cloud-config

Passaggi successivi