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:

  1. 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.

  2. 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:

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.

  1. 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
    
  2. 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.

  3. Identifique essa conta de serviço no IAM analisando a conta @developer.gserviceaccount.com ou a conta @cloudbuild.gserviceaccount.com no IAM.

  4. 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

    1. No console do Google Cloud, abra a página IAM.

      Acessar IAM

    2. Selecione o projeto de origem.

    3. Clique em CONCEDER ACESSO.

    4. Adicione a conta de serviço padrão do Cloud Build da etapa anterior como um novo principal.

    5. No menu suspenso Selecionar um papel, pesquise Conta de serviço do Cloud Build e clique em Conta de serviço do Cloud Build.

    6. 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.

    7. Clique em Salvar.

    8. 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.

Etapas opcionais

Para uma melhor personalização da implantação, siga estas etapas opcionais:

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

  1. Acesse o Cloud Storage.

    Cloud Storage

  2. Crie um bucket na mesma região dos seus conjuntos de dados do BigQuery.

  3. Selecione o bucket criado.

  4. Acesse a guia Permissions.

  5. 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

  1. 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.
  2. 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:

  1. Acesse o Cloud Storage.

    Cloud Storage

  2. Crie um bucket na mesma região em que a implantação será executada.

  3. Selecione o bucket criado.

  4. Acesse a guia Permissions.

  5. 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.

  1. 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.
  2. 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:

  1. Estabeleça cargas de trabalho.
  2. Clone o repositório.
  3. Determinar o mecanismo de integração.
  4. Configurar componentes (página atual).
  5. Configure a implantação.
  6. Executar a implantação.