Usar o bucket de um ambiente personalizado

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

No Cloud Composer 2, especifique um bucket personalizado do Cloud Storage como bucket do ambiente ao criá-lo. Seu ambiente usa este bucket da mesma maneira que o bucket padrão do ambiente, e o bucket do ambiente padrão não será criado.

Com um bucket personalizado, é possível:

  • Use uma configuração de bucket que esteja em conformidade com seus requisitos.
  • Usar um bucket que já existe para desenvolvimento ou teste periódico propósitos.
  • Reutilizar um bucket de um ambiente anterior e manter CI/CD e dados integrações.
  • Excluir e recriar um ambiente sem a necessidade de transferir dados entre buckets de armazenamento.
  • Pré-preencher o bucket personalizado com os dados necessários, como seus arquivos DAG, e criar um ambiente.

Antes de começar

  • Esse recurso tem suporte a partir do Cloud Composer versão 2.5.0. As versões anteriores do Cloud Composer 2 não são compatíveis com esse .
  • O bucket personalizado precisa estar localizado na mesma região que o ambiente. Não há suporte para buckets multirregionais e birregionais.
  • O bucket personalizado e o ambiente precisam estar no mesmo projeto.
  • O bucket personalizado precisa ter Classe de armazenamento padrão.
  • O bucket personalizado não pode ter políticas de retenção ou bloqueios da política de retenção aplicados a ela.
  • Não é possível usar o mesmo bucket personalizado com vários ambientes ao mesmo tempo. O Cloud Composer gera um erro quando se o bucket especificado já estiver sendo usado por outro ambiente. É possível excluir um ambiente e usar o mesmo bucket em outro.
  • Se você excluir um ambiente e depois usar o mesmo bucket para outro ambiente, o novo ambiente não exibirá registros de tarefas do Airflow do o ambiente anterior na interface do Airflow. Os registros permanecem no bucket, o novo ambiente não os associa a nenhuma execução do DAG.
.

criar um ambiente com um bucket personalizado

Console

Para especificar um bucket personalizado do Cloud Storage ao criar um ambiente:

  1. Na página Criar ambiente, em Configuração avançada clique em Mostrar configuração avançada.
  2. Selecione Bucket personalizado.
  3. No campo Nome do bucket, especifique ou selecione um bucket.

gcloud

Quando você cria um ambiente, o argumento --storage-bucket especifica a bucket personalizado do seu ambiente de execução.

gcloud composer environments create ENVIRONMENT_NAME \
    --location LOCATION \
    --storage-bucket CUSTOM_STORAGE_BUCKET

Substitua:

  • ENVIRONMENT_NAME: o nome do ambiente;
  • LOCATION: a região em que o ambiente está localizado.
  • CUSTOM_STORAGE_BUCKET: o nome de um bucket do Cloud Storage. Você também pode especificar o URI do bucket (com o prefixo gs://).

Exemplo:

gcloud composer environments create example-environment \
    --location us-cental1 \
    --storage-bucket us-central1-example-bucket

API

Quando você cria um ambiente, na seção Environment > StorageConfig, especifique um bucket personalizado para seu ambiente.

{
  "name": "projects/PROJECT_ID/locations/LOCATION/environments/ENVIRONMENT_NAME",
  "storageConfig": {
    "bucket": "CUSTOM_STORAGE_BUCKET"
  }
}

Substitua:

  • PROJECT_ID: o ID do projeto.
  • LOCATION: a região em que o ambiente está localizado.
  • ENVIRONMENT_NAME: o nome do ambiente;
  • CUSTOM_STORAGE_BUCKET: o nome de um bucket do Cloud Storage. (sem o prefixo gs://).

Exemplo:

// POST https://composer.googleapis.com/v1/{parent=projects/*/locations/*}/environments

{
  "name": "projects/example-project/locations/us-central1/environments/example-environment",
  "storageConfig": {
    "bucket": "us-central1-example-bucket"
  }
}

Terraform

Quando você cria um ambiente, o campo bucket na O bloco storage_config especifica o bucket personalizado do ambiente.

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "ENVIRONMENT_NAME"
  region = "LOCATION"

  storage_config {

    bucket = CUSTOM_STORAGE_BUCKET

  }
}

Substitua:

  • ENVIRONMENT_NAME: o nome do ambiente;
  • LOCATION: a região em que o ambiente está localizado.
  • CUSTOM_STORAGE_BUCKET: o nome de um bucket do Cloud Storage. Você também pode especificar o URI do bucket (com o prefixo gs://).

Exemplo:

resource "google_composer_environment" "example" {
  provider = google-beta
  name = "example-environment"
  region = "us-central1"

  storage_config {

    bucket = "gs://us-central1-example-bucket"

  }
}

A seguir