Passaggio 4: configura i componenti
Questa pagina descrive il quarto passaggio per eseguire il deployment di Cortex Framework Data Foundation, il nucleo di Cortex Framework. In questo passaggio, configuri iGoogle Cloud servizi necessari da eseguire.
In questa sezione attivi i seguenti Google Cloud servizi nel tuo Google Cloud progetto:
- Istanze e set di dati BigQuery
- API Cloud Build
- Bucket Cloud Storage
- Account di servizio (facoltativo)
- API Cloud Resource Manager
Attiva questi Google Cloud servizi utilizzando Cloud Shell:
Copia e incolla il seguente comando:
gcloud config set project SOURCE_PROJECT gcloud services enable bigquery.googleapis.com \ cloudbuild.googleapis.com \ composer.googleapis.com \ storage-component.googleapis.com \ cloudresourcemanager.googleapis.com \ dataflow.googleapis.com
Sostituisci
SOURCE_PROJECT
con l'ID del progetto di origine.Assicurati che i servizi siano attivi se ricevi un messaggio di operazione riuscita. Google Cloud
(Facoltativo) Puoi attivare i seguenti Google Cloud servizi nel Google Cloud progetto:
- Cloud Composer per l'elaborazione di Change Data Capture (CDC), l'appiattimento della gerarchia (solo SAP) e la replica dei dati (solo non SAP) tramite DAG (Directed Acyclic Graph, grafi diretti aciclici). Per configurare un'istanza, consulta la documentazione di Cloud Composer.
- Looker per la connessione ai modelli di report.
- I set di dati collegati di Analytics Hub vengono utilizzati per alcune origini esterne, come il DAG meteo. Per gli scenari avanzati, puoi scegliere di compilare questa struttura con qualsiasi altra origine disponibile.
- Dataflow: strumento di integrazione per molti set di dati di marketing come Google Ads.
- Dataplex: utilizzato per creare un data mesh. Per ulteriori informazioni, consulta la Guida dell'utente di Data Mesh.
Concedi le autorizzazioni all'utente che esegue il comando
Per eseguire il deployment nel progetto in cui viene attivato Cloud Build, concedi le seguenti autorizzazioni all'utente che esegue il deployment:
- Service Usage Consumer
- Visualizzatore oggetti Storage per il bucket predefinito di Cloud Build o per il bucket per i log
- Object Writer ai bucket di output
- Cloud Build Editor
- Visualizzatore progetto o Visualizzatore oggetti Storage
Per ulteriori informazioni sulla concessione di queste autorizzazioni, consulta la seguente documentazione:
- Autorizzazioni per eseguire Cloud Build.
- Autorizzazioni per lo spazio di archiviazione per l'account di compilazione.
- Autorizzazioni per l'account di servizio Cloud Build.
- Visualizzazione dei log da Builds.
Configura l'account Cloud Build
Cloud Build utilizza un account di servizio per eseguire le build per tuo conto. Concedi all'account di servizio Cloud Build le autorizzazioni per eseguire il deployment di Cortex Framework con i passaggi che seguono.
Per concedere all'account di servizio Cloud Build le autorizzazioni per eseguire il deployment di Cortex Framework, utilizza i seguenti comandi.
Per trovare l'account di servizio Cloud Build predefinito, apri Cloud Shell ed esegui il seguente comando:
gcloud builds get-default-service-account --project PROJECT_ID
Ricevere una risposta formattata come:
# Response one `serviceAccountEmail: projects/PROJECT_NUMBER/serviceAccounts/PROJECT_NUMBER-compute@developer.gserviceaccount.com` # Response two `serviceAccountEmail: projects/PROJECT_NUMBER/serviceAccounts/PROJECT_NUMBER@cloudbuild.gserviceaccount.com`
La risposta sostituirà
PROJECT_NUMBER
con il numero del tuo progetto. Una delle email dell'account di servizio precedenti è il tuo account di servizio Cloud Build predefinito.Identifica questo account di servizio in IAM esaminando l'account
@developer.gserviceaccount.com
o l'account@cloudbuild.gserviceaccount.com
in IAM.Concedi le seguenti autorizzazioni all'account di servizio Cloud Build nel progetto di origine (e nel progetto di destinazione se esegui il deployment in un target separato) tramite la console o la CLI Google Cloud:
- Service account Cloud Build (
roles/cloudbuild.builds.builder
) - Utente dell'account di servizio (
roles/iam.serviceAccountUser
) - BigQuery Data Editor (
roles/bigquery.dataEditor
) Utente job BigQuery (
roles/bigquery.jobUser
)
Console
Nella console Google Cloud, vai alla pagina IAM.
Seleziona il progetto di origine.
Fai clic su
Concedi accesso.Aggiungi l'account di servizio Cloud Build predefinito del passaggio precedente come nuovo principale.
Nel menu a discesa Seleziona un ruolo, cerca Account di servizio Cloud Build, quindi fai clic su Account di servizio Cloud Build.
Ripeti il passaggio precedente per aggiungere le restanti autorizzazioni: Utente account di servizio, Editor dati BigQuery e Utente job BigQuery.
Fai clic su Salva.
Verifica che l'account di servizio e i ruoli corrispondenti siano elencati nella pagina IAM. Hai concesso un ruolo IAM.
gcloud
Utilizza il seguente comando per concedere i ruoli all'account di servizio Cloud Build:
gcloud projects add-iam-policy-binding SOURCE_PROJECT \ --member="serviceAccount:CLOUD_BUILD_SA" \ --role="roles/cloudbuild.builds.builder" gcloud projects add-iam-policy-binding SOURCE_PROJECT \ --member="serviceAccount:CLOUD_BUILD_SA" \ --role="roles/iam.serviceAccountUser" gcloud projects add-iam-policy-binding SOURCE_PROJECT \ --member="serviceAccount:CLOUD_BUILD_SA" \ --role="roles/bigquery.dataEditor" gcloud projects add-iam-policy-binding SOURCE_PROJECT \ --member="serviceAccount:CLOUD_BUILD_SA" \ --role="roles/bigquery.jobUser"
Sostituisci i valori segnaposto nel comando con quanto segue:
SOURCE_PROJECT
con l'ID progetto di origine.CLOUD_BUILD_SA
con l'account di servizio predefinito di Cloud Build.
Per ulteriori informazioni, consulta Concedere un ruolo all'account di servizio Cloud Build utilizzando la pagina IAM e Impostare e gestire i criteri IAM nei bucket.
- Service account Cloud Build (
Passaggi facoltativi
Per una migliore personalizzazione del deployment, ti consigliamo di seguire questi passaggi facoltativi:
- Data Mesh: se devi modificare i valori predefiniti di Data Mesh per implementare funzionalità oltre alle descrizioni, consulta i concetti di Data Mesh e la guida utente di Data Mesh.
- Account di servizio per il deployment: se devi migliorare la sicurezza, semplificare il deployment e migliorare la verificabilità, consulta Creare un account di servizio per il deployment.
Crea un bucket di archiviazione per archiviare i file relativi al DAG
È necessario un bucket di archiviazione per archiviare gli script DAG di elaborazione e altri file temporanei generati durante il deployment. Questi script devono essere spostati manualmente in un'istanza Cloud Composer o Apache Airflow dopo il deployment.
Puoi creare il bucket di archiviazione da Google Cloud CLI o dalla console Google Cloud volgendo i passaggi che seguono.
Console
Vai a Cloud Storage.
Crea un bucket nella stessa regione dei set di dati BigQuery.
Seleziona il bucket creato.
Vai alla scheda
Permissions
.Concedi l'autorizzazione
Storage Object Creator
all'ID utente che esegue il comando di compilazione o all'account di servizio che hai creato. Per maggiori informazioni, consulta Impostare una nuova condizione su un bucket: Console.
gcloud
Crea un bucket da Cloud Shell con il seguente comando:
gcloud storage buckets create gs://DAG_BUCKET_NAME -l REGION/MULTI_REGION
Sostituisci quanto segue:
DAG_BUCKET_NAME
con il nome del nuovo bucket.REGION/MULTI_REGION
con la stessa regione degli altri set di dati BigQuery.
Utilizza il seguente comando per assegnare l'autorizzazione
Storage Object Creator
all'account di servizio:gsutil iam ch serviceAccount:CLOUD_BUILD_SA:roles/storage.objectCreator gs://DAG_BUCKET_NAME
Sostituisci quanto segue:
CLOUD_BUILD_SA
con l'account di servizio predefinito di Cloud Build.DAG_BUCKET_NAME
con il nome del nuovo bucket.
Crea un bucket di archiviazione per i log
Puoi creare un bucket specifico per la procedura Cloud Build per archiviare i log. Questa opzione è utile se vuoi limitare i dati che possono essere archiviati nei log a una regione specifica. Puoi creare il bucket di archiviazione per i log da Google Cloud CLI o dalla console Google Cloud.
Console
Per creare un bucket specifico per i log:
Vai a Cloud Storage.
Crea un bucket nella stessa regione in cui verrà eseguito il deployment.
Seleziona il bucket creato.
Vai alla scheda
Permissions
.Concedi l'autorizzazione
Storage Object Admin
all'ID utente che esegue il comando di compilazione o all'account di servizio che hai creato. Per maggiori informazioni, consulta Impostare una nuova condizione su un bucket: Console.
gcloud
Per creare un bucket specifico per i log, utilizza i seguenti comandi.
Crea un bucket da Cloud Shell con il seguente comando:
gcloud storage buckets create gs://LOGS_BUCKET_NAME -l REGION/MULTI_REGION
Sostituisci quanto segue:
REGION/MULTI_REGION
con la regione scelta per creare il bucket.LOGS_BUCKET_NAME
con il nome del nuovo bucket.
Utilizza il seguente comando per assegnare l'autorizzazione
Storage Object Admin
all'account di servizio:gsutil iam ch serviceAccount:CLOUD_BUILD_SA:roles/storage.objectAdmin gs://LOGS_BUCKET_NAME
Sostituisci quanto segue:
CLOUD_BUILD_SA
con l'account di servizio predefinito di Cloud Build.LOGS_BUCKET_NAME
con il nome del nuovo bucket.
Passaggi successivi
Dopo aver completato questo passaggio, vai ai seguenti passaggi di deployment:
- Definire i carichi di lavoro.
- Clona il repository.
- Determina il meccanismo di integrazione.
- Configura i componenti (questa pagina).
- Configura il deployment.
- Esegui il deployment.