Pular para o conteúdo principal

gerenciando Lakebase com Databricks ativos Bundles

Este guia ajuda você a começar com Databricks ativos Bundles para gerenciar recurso Lakebase usando infraestrutura como código. Você criará um projeto Lakebase, adicionará uma ramificação de desenvolvimento e endpoint, e aprenderá como gerenciar esses recursos de forma declarativa. Este é um fluxo de trabalho típico para o gerenciamento programático de recursos Databricks em ambientes de desenvolvimento e teste.

Para obter a referência completa do recurso de pacote e todas as opções de configuração disponíveis, consulte recurso de pacote.

Pré-requisitos

Antes de começar, você precisa de:

hierarquia de recursos

Os recursos do Lakebase seguem uma hierarquia pai-filho: você cria o recurso pai antes dos filhos. Para obter informações completas sobre o modelo de recursos (projetos, filiais, computação, bancos de dados e muito mais), consulte Como os projetos são organizados.

Ordem de operações para este guia: Projeto → Filial → endpoint

1. Criar uma configuração de pacote

Inicialize um pacote configurável usando o padrão -minimal default . Isso cria uma pasta de pacote com um databricks.yml e obtém sua configuração CLI (incluindo o host workspace ).

Bash
databricks bundle init default-minimal

Quando solicitado, insira um nome para o seu projeto de pacote (por exemplo, lakebase-bundle). A CLI cria um diretório com esse nome. Acesse o diretório do pacote:

Bash
cd lakebase-bundle

Modifique seu arquivo databricks.yml para definir um projeto, branch e endpoint do Lakebase. Adicione ou atualize a seção resources (e o nome do pacote, se desejar). Por exemplo:

YAML
bundle:
name: lakebase-app

resources:
postgres_projects:
my_app:
project_id: 'my-app'
display_name: 'My Application'
pg_version: 17

postgres_branches:
dev_branch:
parent: ${resources.postgres_projects.my_app.id}
branch_id: 'dev'
no_expiry: true

postgres_endpoints:
dev_endpoint:
parent: ${resources.postgres_branches.dev_branch.id}
endpoint_id: 'primary'
endpoint_type: 'ENDPOINT_TYPE_READ_WRITE'
autoscaling_limit_min_cu: 0.5
autoscaling_limit_max_cu: 2

Sobre o endpoint : Ao criar um projeto Lakebase, Databricks provisiona automaticamente uma branch de produção default com um endpoint de leitura e gravação. No entanto, quaisquer branches adicionais que você criar (como a branch dev acima) devem ter seu endpoint definido explicitamente na configuração do seu pacote.

Os valores project_id, branch_id e endpoint_id devem seguir as regras de nomenclatura de recursos (por exemplo, 1–63 caracteres, letras minúsculas, números e hífenes).

2. Valide o pacote

Verifique se a configuração do pacote é válida:

Bash
databricks bundle validate

Se um resumo da configuração do pacote for retornado, a validação foi bem-sucedida. Se algum erro for retornado, corrija-o e repita este passo. Consulte o comando `databricks bundle validate`.

3. implantar o feixe

Implante o projeto Lakebase em seu workspace Databricks :

Bash
databricks bundle deploy

Isso cria:

  • Um projeto Lakebase chamado "my-app"
  • Uma ramificação de produção default com um endpoint de leitura e gravação (criada automaticamente).
  • Uma ramificação de desenvolvimento chamada "dev"
  • Um endpoint primário para a branch de desenvolvimento com escalonamento automático de 0,5 a 2 CUs.

Veja pacote de databricks implantado.

4. Verifique a implantação

Confirme se os recursos foram criados:

  1. No seu workspace Databricks , navegue até LakebaseProjetos .
  2. Clique em Minha Candidatura .
  3. Verifique se você vê duas ramificações:
    • produção (padrão) - Criado automaticamente com 1 CU computeprimária
    • dev - Criado pelo seu pacote com computede escalonamento automático de 0,5 a 2 CUs

5. Atualize a configuração

Para modificar seu recurso, atualize o arquivo databricks.yml e reimplemente:

Bash
databricks bundle validate
databricks bundle deploy

O pacote atualizará apenas o recurso que foi alterado.

6. Limpar recurso

Quando terminar de usar o projeto Lakebase, você pode excluí-lo para liberar recursos.

O comando padrão para remover um recurso de pacote é databricks bundle destroy. No entanto, esse comando não funciona para projetos Lakebase porque os endpoints de leitura e gravação não podem ser excluídos individualmente. Em vez disso, use a CLI do Databricks para excluir o projeto Lakebase diretamente:

Bash
databricks postgres delete-project projects/my-app

Isso se propaga automaticamente para excluir todos os branches e endpoints.

substituições de recurso

A configuração do pacote usa substituições para referenciar o recurso:

  • ${resources.postgres_projects.my_app.id} - Faz referência ao nome do recurso do projeto Lakebase
  • ${resources.postgres_branches.dev_branch.id} - Faz referência ao nome do recurso da ramificação

Isso garante a ordenação correta das dependências durante a implantação. Para obter mais informações sobre substituições de pacotes, consulte Substituições.

Recurso disponível

Para obter a lista completa de recursos do Lakebase suportados em pacotes e suas opções de configuração, consulte o pacote recurso (postgres_projects, postgres_branches, postgres_endpoints).

Próximos passos