Etapa 4: configurar os componentes
Esta página descreve a quarta etapa para implantar a Cortex Framework Data Foundation, o núcleo do Cortex Framework. Nesta etapa, você configura os serviçosGoogle Cloud necessários para implantar.
Nesta seção, você ativa os seguintes serviços Google Cloud no seu Google Cloud projeto:
- Instância e conjuntos de dados do BigQuery
- API Cloud Build
- Buckets do Cloud Storage
- Conta de serviço (opcional)
- API Cloud Resource Manager
Ative estes Google Cloud serviços usando o Cloud Shell:
Copie e cole este 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
Substitua
SOURCE_PROJECT
pelo ID do projeto de origem.Confira se os Google Cloud serviços estão ativados se você receber uma mensagem de sucesso.
Opcional. É possível ativar os seguintes serviços Google Cloud no seu Google Cloud Projeto:
- Cloud Composer para processamento de captura de dados alterados (CDC), nivelamento de hierarquia (somente SAP) e replicação de dados (somente não-SAP) usando grafos acíclicos dirigidos (DAGs). Para configurar uma instância, consulte a documentação do Cloud Composer.
- Looker para se conectar a modelos de relatórios.
- Os conjuntos de dados vinculados do Analytics Hub são usados para algumas fontes externas, como o DAG do clima. Você pode preencher essa estrutura com qualquer outra fonte disponível de sua escolha para cenários avançados.
- Dataflow: ferramenta de integração para muitos dos conjuntos de dados de marketing, como o Google Ads.
- Dataplex: usado para criar uma malha de dados. Para mais informações, consulte o Guia do usuário da Data Mesh.
Conceder permissões ao usuário em execução
Para executar a implantação no projeto em que o Cloud Build é acionado, conceda as seguintes permissões ao usuário de execução:
- Consumidor do Service Usage
- Leitor de objetos do Storage para o bucket padrão do Cloud Build ou para logs
- Gravador de objetos nos buckets de saída
- Editor do Cloud Build
- Leitor de projetos ou de objetos do Storage
Para mais informações sobre como conceder essas permissões, consulte a seguinte documentação:
- Permissões para executar o Cloud Build.
- Permissões de armazenamento para a conta de build.
- Permissões para a conta de serviço do Cloud Build.
- Como conferir os registros de Builds.
Configurar a conta do Cloud Build
O Cloud Build usa uma conta de serviço para executar builds em seu nome. Conceda permissões à conta de serviço do Cloud Build para implantar o Cortex Framework seguindo estas etapas.
Para conceder à conta de serviço do Cloud Build permissões para implantar o Cortex Framework, use os comandos abaixo.
Encontre a conta de serviço padrão do Cloud Build abrindo o Cloud Shell e executando o seguinte comando:
gcloud builds get-default-service-account --project PROJECT_ID
Receber uma resposta formatada como:
# 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`
A resposta vai substituir
PROJECT_NUMBER
pelo número do projeto. Um dos e-mails da conta de serviço anterior é a conta de serviço padrão do Cloud Build.Identifique essa conta de serviço no IAM analisando a conta
@developer.gserviceaccount.com
ou a conta@cloudbuild.gserviceaccount.com
no IAM.Conceda as seguintes permissões à conta de serviço do Cloud Build no projeto de origem (e no projeto de destino, se a implantação for para um destino separado) pelo console ou pela CLI do Google Cloud:
- Conta de serviço do Cloud Build (
roles/cloudbuild.builds.builder
) - Usuário da conta de serviço (
roles/iam.serviceAccountUser
) - Editor de dados do BigQuery (
roles/bigquery.dataEditor
) Usuário de jobs do BigQuery (
roles/bigquery.jobUser
)
Console
No console do Google Cloud, abra a página IAM.
Selecione o projeto de origem.
Clique em
CONCEDER ACESSO.Adicione a conta de serviço padrão do Cloud Build da etapa anterior como um novo principal.
No menu suspenso Selecionar um papel, pesquise Conta de serviço do Cloud Build e clique em Conta de serviço do Cloud Build.
Repita a etapa anterior para adicionar o restante das permissões: Usuário da conta de serviço, Editor de dados do BigQuery e Usuário do job do BigQuery.
Clique em Salvar.
Verifique se a conta de serviço e os papéis correspondentes estão listados na página do IAM. Você concedeu um papel do IAM.
gcloud
Use o comando a seguir para conceder os papéis à conta de serviço do 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"
Substitua os valores de marcador no comando pelo seguinte:
SOURCE_PROJECT
com o ID do projeto de origem.CLOUD_BUILD_SA
com a conta de serviço padrão do Cloud Build.
Para mais informações, consulte Como conceder um papel à conta de serviço do Cloud Build usando a página do IAM e Definir e gerenciar políticas do IAM em buckets.
- Conta de serviço do Cloud Build (
Etapas opcionais
Para uma melhor personalização da implantação, siga estas etapas opcionais:
- Data Mesh: se você precisar modificar os valores padrão do Data Mesh para implementar recursos além das descrições, consulte os conceitos do Data Mesh e o guia do usuário do Data Mesh.
- Conta de serviço para implantação: se você precisar melhorar a segurança, simplificar a implantação e melhorar a auditabilidade, consulte Criar uma conta de serviço para implantação.
Criar um bucket do Storage para armazenar arquivos relacionados a DAGs
Um bucket de armazenamento é necessário para armazenar scripts de processamento de DAG e outros arquivos temporários gerados durante a implantação. Esses scripts precisam ser movidos manualmente para uma instância do Cloud Composer ou do Apache Airflow após a implantação.
É possível criar o bucket de armazenamento na CLI ou no console do Google Cloud seguindo as etapas abaixo.
Console
Acesse o Cloud Storage.
Crie um bucket na mesma região dos seus conjuntos de dados do BigQuery.
Selecione o bucket criado.
Acesse a guia
Permissions
.Conceda a permissão
Storage Object Creator
ao ID do usuário que executa o comando de build ou à conta de serviço criada. Para mais informações, consulte Definir uma nova condição em um bucket: console.
gcloud
Crie um bucket na Cloud Shell com o seguinte comando:
gcloud storage buckets create gs://DAG_BUCKET_NAME -l REGION/MULTI_REGION
Substitua:
DAG_BUCKET_NAME
pelo nome do novo bucket.REGION/MULTI_REGION
com a mesma região dos seus conjuntos de dados do BigQuery.
Use o comando abaixo para atribuir a permissão
Storage Object Creator
à conta de serviço:gsutil iam ch serviceAccount:CLOUD_BUILD_SA:roles/storage.objectCreator gs://DAG_BUCKET_NAME
Substitua:
CLOUD_BUILD_SA
com a conta de serviço padrão do Cloud Build.DAG_BUCKET_NAME
pelo nome do novo bucket.
Criar um bucket do Storage para registros
É possível criar um bucket específico para o processo do Cloud Build armazenar os registros. Isso é útil se você quiser restringir os dados que podem ser armazenados em registros a uma região específica. É possível criar o bucket de armazenamento para registros na CLI ou no console do Google Cloud.
Console
Para criar um bucket específico para os registros, siga estas etapas:
Acesse o Cloud Storage.
Crie um bucket na mesma região em que a implantação será executada.
Selecione o bucket criado.
Acesse a guia
Permissions
.Conceda a permissão
Storage Object Admin
ao ID do usuário que executa o comando de build ou à conta de serviço criada. Para mais informações, consulte Definir uma nova condição em um bucket: console.
gcloud
Para criar um bucket específico para os registros, use os comandos a seguir.
Crie um bucket na Cloud Shell com o seguinte comando:
gcloud storage buckets create gs://LOGS_BUCKET_NAME -l REGION/MULTI_REGION
Substitua:
REGION/MULTI_REGION
com a região escolhida para criar o bucket.LOGS_BUCKET_NAME
pelo nome do novo bucket.
Use o comando abaixo para atribuir a permissão
Storage Object Admin
à conta de serviço:gsutil iam ch serviceAccount:CLOUD_BUILD_SA:roles/storage.objectAdmin gs://LOGS_BUCKET_NAME
Substitua:
CLOUD_BUILD_SA
com a conta de serviço padrão do Cloud Build.LOGS_BUCKET_NAME
pelo nome do novo bucket.
Próximas etapas
Depois de concluir esta etapa, siga estas etapas de implantação:
- Estabeleça cargas de trabalho.
- Clone o repositório.
- Determinar o mecanismo de integração.
- Configurar componentes (página atual).
- Configure a implantação.
- Executar a implantação.