Queste istruzioni mostrano come integrare i servizi Google Cloud in un ambiente Cloud Foundry su SAP Business Technology Platform (SAP BTP) utilizzando Open Service Broker per Google Cloud (Google Cloud Service Broker).
Il Service Broker di Google Cloud semplifica la distribuzione dai servizi Google Cloud eseguite in un ambiente Cloud Foundry su SAP BTP. Creando Google Cloud risorse e la gestione delle autorizzazioni corrispondenti, Il Service Broker di Google Cloud semplifica l'utilizzo di Google Cloud direttamente dall'ambiente applicativo SAP BTP.
Il seguente diagramma è una visione di alto livello dei passaggi di configurazione con alcuni esempi di servizi Google Cloud.
Componenti principali della soluzione
Per la configurazione di Google Cloud Service Broker su SAP BTP per Cloud Foundry sono necessari i seguenti componenti.
Servizio | Caso d'uso |
---|---|
Apri Service Broker per Google Cloud | Integrazione dei servizi Google Cloud in un ambiente Cloud Foundry SAP BTP |
Cloud SQL per MySQL | Un database per l'archiviazione back-end per il service broker di Google Cloud |
Account SAP BTP | Fornisci l'ambiente Cloud Foundry di SAP BTP nella regione Google Cloud selezionata |
Progetto Google Cloud | Fornire i servizi Google Cloud |
Interfaccia a riga di comando Cloud Foundry | Interfaccia a riga di comando per la configurazione di Cloud Foundry |
Costi
Cloud SQL, che è consigliato per l'utilizzo con Google Cloud Service Broker, è un componente Google Cloud fatturabile.
L'utilizzo dei servizi Google Cloud tramite le rispettive API potrebbe anche fatturabile.
Utilizza il Calcolatore prezzi per generare una stima dei costi in base all'utilizzo previsto.
Prerequisiti
Prima di poter configurare l'ambiente Cloud Foundry su SAP BTP devi prima configurare l'ambiente di sviluppo locale e creare un progetto su Google Cloud.
Configurazione dell'ambiente di sviluppo
- Installa l'interfaccia a riga di comando (CLI) di Cloud Foundry sul tuo workstation di sviluppo in base alla documentazione del portale SAP.
Configura un progetto Google Cloud
Se non hai già un progetto Google Cloud con fatturazione è abilitato, devi crearne uno.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
Configurare l'ambiente Google Cloud
Devi attivare alcune API Google Cloud, un account di servizio Google Cloud e un database per Google Cloud Service Broker.
Abilita le API Google Cloud richieste
Abilita le seguenti API in Gestore API > Raccolta.
- Abilita l'API Cloud Resource Manager.
- Abilita l'API Identity and Access Management.
- Abilita l'API Cloud SQL Admin.
- Abilita l'API per qualsiasi altro servizio Google Cloud supportato di cui hai bisogno.
Crea un account di servizio principale
Nella console Google Cloud, vai alla pagina Account di servizio.
Selezionare il tuo progetto Google Cloud.
Fai clic su Crea account di servizio.
Inserisci un nome nel campo Nome account di servizio.
Fai clic su Crea e continua.
Nell'elenco Seleziona un ruolo, fai clic su Progetto > Proprietario, che fornisce le autorizzazioni necessarie per il funzionamento di Google Cloud Service Broker con i servizi Google Cloud.
Fai clic su Continua.
Se necessario, concedi ad altri utenti l'accesso all'account di servizio.
Fai clic su Fine.
Nella pagina Account di servizio della console Google Cloud, fai clic sull'indirizzo email dell'account di servizio appena creato.
Sotto il nome dell'account di servizio, fai clic sulla scheda Chiavi.
Fai clic sul menu a discesa Aggiungi chiave e seleziona Crea nuova chiave.
Assicurati che sia specificato il tipo di chiave JSON.
Fai clic su Crea. Il file della chiave JSON viene scaricato automaticamente la workstation.
Sposta il file della chiave JSON in una posizione sicura.
Configura un database di supporto
Il Service Broker di Google Cloud richiede un database MySQL per archiviare lo stato di cui è stato eseguito il provisioning. È consigliata un'istanza Cloud SQL di seconda generazione per MySQL, che fornisce un database MySQL Community Edition completamente gestito con backup automatici, alta disponibilità e manutenzione automatica. Tuttavia, puoi utilizzare qualsiasi database compatibile con il protocollo MySQL.
I passaggi seguenti per creare un database utilizzando un database di seconda generazione un'istanza Cloud SQL su Google Cloud, ma dovrebbe essere applicabile a qualsiasi database compatibile con il protocollo MySQL.
Crea un'istanza Cloud SQL per MySQL
Prima di poter creare un database, devi creare un Cloud SQL MySQL su Google Cloud.
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
Fai clic su Crea istanza.
- Seleziona MySQL e fai clic su Avanti.
- Fai clic su Scegli seconda generazione.
- Definisci un ID istanza.
- Definisci una password root.
- Nel campo Regione, seleziona la regione in cui verrà eseguito il deployment dell'ambiente Cloud Foundry.
- Fai clic su Crea.
Crea un database
Dopo l'avvio dell'istanza Cloud SQL, apri Cloud Shell.
Connettiti all'istanza Cloud SQL.
gcloud sql connect your-cloud-sql-instance --user=root
Dove
your-cloud-sql-instance
è il nome del Istanza Cloud SQL che hai creato su Google Cloud.Crea un database denominato
servicebroker
.CREATE DATABASE servicebroker;
Definisci un nome utente e una password per Cloud Service Broker per Google Cloud.
CREATE USER 'SB_DB_UserName'@'%' IDENTIFIED BY 'SB_DB_Password';
Dove:
SB_DB_UserName
è il nome utente che rappresenta Cloud Service Broker per Google Cloud come utente del database.SB_DB_Password
è la password che identifica il service broker di Google Cloud al database.
Imposta i privilegi di accesso per il service broker di Google Cloud.
GRANT ALL PRIVILEGES ON servicebroker.* TO 'SB_DB_UserName'@'%' WITH GRANT OPTION;
Configura SSL e ottieni i certificati SSL.
Nella console Google Cloud, apri la pagina Istanze Cloud SQL.
Fai clic sul nome dell'istanza Cloud SQL.
Nella pagina Dettagli istanza, fai clic sulla scheda Connessioni.
Nella sezione SSL in Connessioni SSL, fai clic su Consenti solo connessioni SSL. L'aggiornamento potrebbe richiedere alcuni secondi.
Nella sezione SSL, in Configura i certificati client SSL, Fai clic su Crea un certificato client.
Inserisci un nome e fai clic su Crea.
Scarica i tre file del certificato e salvali in una posizione sicura.
Nella sezione Connettività della scheda Connessioni sulla Pagina Dettagli istanza:
- Conferma che la casella IP pubblico sia selezionata.
- In Reti autorizzate, fai clic su Aggiungi rete.
- Nel campo Network (Rete), inserisci
0.0.0.0/0
. - Fai clic su Fine.
Fai clic su Salva per salvare le modifiche delle autorizzazioni.
Ottieni un account di prova SAP BTP per Cloud Foundry sull'infrastruttura Google Cloud
- Registrati per creare un account di prova SAP BTP. Devi avere un account SAP attivo per ottenere un account di prova SAP BTP.
- Accedi a SAP BTP Cockpit.
- In SAP BTP Cockpit, scegli Home nella parte superiore della schermata.
- Nel riquadro di navigazione sul lato sinistro dello schermo, fai clic su Regioni.
- In Cloud Foundry Environment (Ambiente Cloud Foundry), seleziona una regione che utilizzi l'infrastruttura Google Cloud, ad esempio US-Central (IA). Questo crea un'organizzazione e uno spazio all'interno di SAP BTP Cloud Ambiente di fonderia.
Installa e configura Google Cloud Service Broker per Cloud Foundry
Deployment di Service Broker Google Cloud per Cloud Foundry
In un terminale sulla postazione di lavoro di sviluppo:
Installa la versione più recente di Google Cloud Service Broker per Cloud Foundry da GitHub.
curl -s https://api.github.com/repos/GoogleCloudPlatform/gcp-service-broker/releases/latest \ |grep 'tag_name' \ |cut -d\" -f4 \ |xargs -I {} curl -sOL "https://github.com/GoogleCloudPlatform/gcp-service-broker/archive/"{}'.tar.gz'
Estrai i file del service broker di Google Cloud.
tar zxvf *.tar.gz
Cambia directory.
cd gcp-service-broker*
Accedi all'ambiente SAP BTP Cloud Foundry.
cf login
Inserisci l'endpoint API.
https://api.techkey.hana.ondemand.com
dove
techkey
è una chiave tecnica definita da SAP che identifica la regione dell'endpoint dell'API. Ad esempio, la chiave tecnica per la regione US Central che include l'infrastruttura di Google Cloud ècf.us30
. Per un elenco di tutte le regioni per l'ambiente Cloud Foundry di SAP BTP, visita il portale di assistenza SAP.Inserisci il nome utente e la password del tuo account SAP BTP.
Esegui il deployment dell'app Google Cloud Service Broker nell'ambiente Cloud Foundry.
cf push APP_NAME --no-start
Dove
APP_NAME
è un nome univoco che scegli l'applicazione Google Cloud Service Broker. Ad esempio,gcp-service-broker-001
omycompany-gcp-svc-broker-app
.Dopo che Cloud Foundry esegue il deployment dell'app Google Cloud Service Broker, vengono visualizzate informazioni simili all'esempio seguente:
name: gcp-service-broker-example-app requested state: stopped routes: gcp-service-broker-example-app.cfapps.us30.hana.ondemand.com last uploaded: stack: buildpacks: type: web instances: 0/1 memory usage: 1024M state since cpu memory disk details #0 down 2018-12-19T23:49:13Z 0.0% 0 of 0 0 of 0
Configurare l'app Google Cloud Service Broker per Cloud Foundry
- Accedi a SAP BTP Cockpit.
- In SAP BTP Cockpit, vai a Home page della prova > Regioni > Your Google Cloud region > Your global account > Your subaccount > Spaces > Your space.
- Fai clic sul nome dell'app Google Cloud Service Broker di cui hai eseguito il deployment nella sezione precedente.
- Nel menu a sinistra, fai clic su Variabili fornite dall'utente.
Utilizza il pulsante Aggiungi variabile per definire le seguenti variabili di Google Cloud Service Broker come coppie chiave-valore:
Chiave Valore CA_CERT
I contenuti del file del certificato del server, server-ca.pem
, che hai scaricato durante la configurazione dell'SSL in Configurare un database di supporto.CLIENT_CERT
I contenuti del file del certificato client, client-cert.pem
, che hai scaricato quando hai impostato per configurare SSL in Impostare un database di supporto.CLIENT_KEY
I contenuti del file della chiave client client-key.pem
, scaricato quando hai configurato SSL in Configurare un database di supporto.DB_HOST
L'indirizzo IP pubblico della tua istanza Cloud SQL, mostrato in nella sezione Connetti a questa istanza del Dettagli istanza per la tua istanza Cloud SQL Console Google Cloud. DB_PASSWORD
La password definita per l'accesso da parte di Google Cloud Service Broker configurato in Impostare un database di supporto. DB_USERNAME
Il nome utente che hai definito per Cloud Service Broker per Google Cloud quando hai creato il database. Per un database Cloud SQL, puoi visualizzare il nome utente in Account utente MySQL nella scheda Utenti della pagina Dettagli istanza per la tua istanza Cloud SQL nella console Google Cloud. ROOT_SERVICE_ACCOUNT_JSON
I contenuti del file di chiave JSON scaricato durante ha creato l'account di servizio radice. SECURITY_USER_NAME
Un nome utente che definisci per il service broker da utilizzare quando di autenticazione delle richieste dell'intermediario. Specifica lo stesso nome utente più avanti nel cf create-service-broker
comando quando crei il servizio broker.SECURITY_USER_PASSWORD
Una password che definisci per il service broker da utilizzare quando di autenticazione delle richieste dell'intermediario. Specifica la stessa password più avanti nel comando cf create-service-broker
quando crei il servizio broker.Variabili di ambiente facoltative Per un elenco di variabili facoltative che puoi utilizzare per personalizzare Cloud Service Broker per Google Cloud, consulta Personalizzazione dell'installazione.
Avvia l'app Google Cloud Service Broker per Cloud Foundry
- Nel menu a sinistra, fai clic su Panoramica.
Per avviare l'applicazione del broker, fai clic su Avvia. Quando l'applicazione è attiva e in esecuzione, con il colore verde Started (Avviata) e Running (In esecuzione) vengono visualizzati nella pagina Panoramica, come illustrato immagini che seguono.
Se l'app Google Cloud Service Broker non si avvia o mostra Error o Crashed, controlla i log dell'applicazione dalla tua stazione di lavoro di sviluppo e modifica le variabili o la configurazione di conseguenza.
cf logs APP_NAME --recent
Registra Cloud Service Broker per Google Cloud per Cloud Foundry
Nella workstation di sviluppo:
Connettiti all'ambiente SAP BTP Cloud Foundry.
cf login
Elenca le applicazioni di cui è stato eseguito il deployment.
cf apps
Viene visualizzato un output simile al seguente esempio:
name requested state instances memory disk urls broker-test-app started 1/1 1G 1G broker-test-app.cfapps.us30.hana.ondemand.com
Registra il servizio broker.
cf create-service-broker BROKER_SERVICE_NAME SECURITY_USER_NAME SECURITY_USER_PASSWORD https://BROKER_APPLICATION_ROUTE --space-scoped
Dove:
BROKER_SERVICE_NAME
è un nome univoco che scegli per il tuo servizio di intermediario.SECURITY_USER_NAME
è il nome utente precedente per autenticare le richieste dell'intermediario in Configurare App Google Cloud Service Broker per Cloud Foundry.SECURITY_USER_PASSWORD
è la password precedente per autenticare le richieste dell'intermediario in Configurare App Google Cloud Service Broker per Cloud Foundry.BROKER_APPLICATION_ROUTE
è l'URL del come mostrato nel passaggio precedente. Ad esempio:broker-test-app.cfapps.us30.hana.ondemand.com
Verifica la registrazione del servizio di intermediario.
cf service-brokers
Dovresti vedere un output simile al seguente esempio:
name url broker-service-name https://broker-service-name.cfapps.us30.hana.ondemand.com
Verificare che i servizi Google Cloud siano ora disponibili nel SAP BTP Service Marketplace.
cf marketplace
L'esempio seguente, modificato per migliorarne la leggibilità e adattarlo alla pagina, mostra due servizi di una scheda di servizi Google Cloud nel marketplace.
service plans description ... google-bigquery default A fast, economical and fully managed data warehouse for large-scale data analytics. google-bigtable three-node-production-hdd A high performance NoSQL database service for large analytical and operational workloads.
Per un elenco dei servizi Google Cloud disponibili, consulta Open Service Broker per Google Cloud.
Passaggi successivi
Creare istanze di servizio Google Cloud e associarle al tuo Applicazioni SAP BTP.
Per saperne di più sulla creazione e sull'associazione di Google Cloud vedi:
Utilizzo dei servizi nell'ambiente Cloud Foundry nel portale di assistenza SAP.