Queste istruzioni ti mostreranno come eseguire il deployment dell'app di riferimento Cloud Foundry Spring Music con Kf, dimostrando alcuni aspetti durante il processo:
Creazione di app Java dall'origine: l'origine Spring Music sarà basata sul cluster, non localmente.
Integrazione di Service broker: creerai un database PostgreSQL e associ all'app Spring Music.
Connettori Spring Cloud: i connettori Spring Cloud vengono utilizzati dall'app Spring Music per rilevare elementi come i servizi CF associati. Sono perfettamente compatibili con Kf.
Configurazione della versione Java: specificherai la versione di Java che vuoi utilizzare per il buildpack.
Prerequisiti
Opzione 1: brokeraggio
L'amministratore del cluster deve seguire queste istruzioni per installare il service broker di Minibroker nel tuo cluster. Minibroker ti consentirà di eseguire il provisioning di un database PostgreSQL e di configurare la tua app per utilizzarlo.
Per confermare che Minibroker sia installato e disponibile per il tuo cluster, esegui kf
marketplace
. Dovresti vedere un output simile a questo:
$ kf marketplace
5 services can be used in Space "demo", use the --service flag to list the plans for a service
Broker Name Space Status Description
minibroker mariadb Active Helm Chart for mariadb
minibroker mongodb Active Helm Chart for mongodb
minibroker mysql Active Helm Chart for mysql
minibroker postgresql Active Helm Chart for postgresql
minibroker redis Active Helm Chart for redis
Opzione 2: altro service broker
Puoi utilizzare un altro service broker installato, a condizione che supporti la creazione di servizi PostgreSQL. ad esempio gcp-service-broker.
Esegui il deployment
Clona origine
Clona il repository Musica di primavera.
git clone https://github.com/cloudfoundry-samples/spring-music.git spring-music cd spring-music
Modifica
manifest.yml
e sostituisci i contenuti con quanto segue:--- applications: - name: spring-music memory: 1G random-route: true stack: org.cloudfoundry.stacks.cflinuxfs3 env: BP_AUTO_RECONFIGURATION_ENABLED: false
App push
Esegui il deployment (presuppone che tu abbia già
kf target
creato uno spazio; consulta questi documenti per maggiori dettagli):kf push spring-music
Utilizza la funzionalità proxy per accedere all'app di cui è stato eseguito il deployment, quindi carica
http://localhost:8080
nel browser:kf proxy spring-music
L'app di cui è stato eseguito il deployment include un elemento UI che mostra l'eventuale profilo Spring in uso. Non viene utilizzato nessun profilo qui, che indica che è in uso un database in memoria.
Crea e associa un database
Crea un servizio PostgreSQL tramite il broker installato nel marketplace:
kf create-service postgresql 11-7-0 spring-music-db -c '{"postgresqlDatabase":"smdb", "postgresDatabase":"smdb"}'
Associa l'istanza del servizio all'app Spring Music:
kf bind-service spring-music spring-music-db -c '{"postgresqlDatabase":"smdb", "postgresDatabase":"smdb"}'
Riavvia l'app per rendere disponibile l'associazione dei servizi tramite la variabile di ambiente
VCAP_SERVICES
:kf restart spring-music
(Facoltativo) Visualizza i dettagli dell'associazione:
kf bindings
kf proxy
all'app e visualizzalo nel browser web. Dovrebbe essere visualizzato il profilo Spring, a indicare che è in uso il servizio PostgreSQL che hai creato e associato:
Elimina
Svincola ed elimina il servizio PostgreSQL:
kf unbind-service spring-music spring-music-db kf delete-service spring-music-db
Elimina l'app:
kf delete spring-music