Automatize a configuração Unity Catalog usando o Terraform
Você pode automatizar a configuração Unity Catalog usando o provedor Databricks Terraform. Este artigo fornece links para o guia de implantação Unity Catalog do provedor Terraform e documentação de referência de recursos, juntamente com requisitos (“Antes de começar”) e dicas de validação e implantação.
Antes de começar
Para automatizar a configuração do Unity Catalog usando o Terraform, você deve ter o seguinte:
Sua account do Databricks deve estar no plano Premium ouacima.
Na AWS, você deve ter a capacidade de criar buckets do Amazon S3, IAM role, políticas do AWS IAM e relações de confiança entreaccount .
O senhor deve ter pelo menos um Databricks workspace que deseja usar com Unity Catalog. Consulte Criar manualmente uma conta workspace (conta Databricks existente).
Para usar o provedor Databricks Terraform para configurar um metastore para Unity Catalog, armazenamento para o metastore, qualquer armazenamento externo e todas as suas credenciais de acesso relacionadas, você deve ter o seguinte:
Uma conta do AWS.
Uma conta do Databricks no AWS.
Uma entidade de serviço que tem a função de administrador de conta em sua conta do Databricks.
A CLI do Terraform. Consulte Download do Terraform no site do Terraform.
As sete variáveis de ambiente do Databricks a seguir:
DATABRICKS_CLIENT_ID
definido como o valor da ID do cliente, também conhecida como ID do aplicativo, da entidade de serviço. Consulte Autenticar o acesso ao Databricks com uma entidade de serviço usando OAuth (OAuth M2M).DATABRICKS_CLIENT_SECRET
definido como o valor do segredo do cliente da entidade de serviço. Consulte Autenticar o acesso ao Databricks com uma entidade de serviço usando OAuth (OAuth M2M).DATABRICKS_ACCOUNT_ID
, definido como o valor da ID da sua conta do Databricks. Esse valor encontra-se no canto do console da sua conta no Databricks.TF_VAR_databricks_account_id
, também definido como o valor da ID da sua conta no Databricks.AWS_ACCESS_KEY_ID
, definido como o valor do ID da chave de acesso do usuário do AWS. Consulte Acesso programático no AWS General Reference.AWS_SECRET_ACCESS_KEY
, definido como o valor da chave de acesso secreta do usuário do AWS. Consulte Acesso programático no AWS General Reference.AWS_REGION
, definido como o valor do código da região do AWS para sua conta no Databricks. Consulte Endpoints regionais no AWS General Reference.
Para definir essas variáveis de ambiente, consulte a documentação do sistema operacional.
Observação
A autenticação básica usando um nome de usuário e senha da Databricks chegou ao fim da vida útil em 10 de julho de 2024. Consulte End of life para Databricks-gerenciar senhas.
Para usar o provedor Databricks Terraform para configurar todos os outros componentes de infraestrutura do Unity Catalog, você deve ter o seguinte:
Um Databricks workspace.
Em sua máquina de desenvolvimento local, você deve ter:
A CLI do Terraform. Consulte Download do Terraform no site do Terraform.
Um dos seguintes:
CLI do Databricks versão 0.205 ou acima, configurada com seu access tokenpessoal do Databricks executando
databricks configure --host <workspace-url> --profile <some-unique-profile-name>
. Consulte Instalar ou atualizar a CLI do Databricks e a autenticação access token pessoal do Databricks.Observação
Como prática recomendada de segurança ao se autenticar com ferramentas, sistemas, scripts e aplicativos automatizados, a Databricks recomenda que você use tokens OAuth.
Se o senhor usar a autenticação pessoal access token, a Databricks recomenda o uso de pessoal access tokens pertencente à entidade de serviço em vez de usuários workspace. Para criar o site tokens para uma entidade de serviço, consulte gerenciar tokens para uma entidade de serviço.
A seguinte variável de ambiente do Databricks:
DATABRICKS_HOST
, definido como o valor da URL da instância do workspace do Databricks, por exemplohttps://dbc-1234567890123456.cloud.databricks.com
DATABRICKS_CLIENT_ID
definido como o valor da ID do cliente, também conhecida como ID do aplicativo, da entidade de serviço. Consulte Autenticar o acesso ao Databricks com uma entidade de serviço usando OAuth (OAuth M2M).DATABRICKS_CLIENT_SECRET
definido como o valor do segredo do cliente da entidade de serviço. Consulte Autenticar o acesso ao Databricks com uma entidade de serviço usando OAuth (OAuth M2M).
Opcionalmente, utilize um token de acesso pessoal em vez do ID do cliente e do segredo do cliente de uma entidade de serviço:
DATABRICKS_TOKEN
, definido como o valor de seu Databricks pessoal access token. Consulte também Monitorar e revogar pessoal access tokens.
Para definir essas variáveis de ambiente, consulte a documentação do sistema operacional.
Observação
Como prática recomendada de segurança ao se autenticar com ferramentas, sistemas, scripts e aplicativos automatizados, a Databricks recomenda que você use tokens OAuth.
Se o senhor usar a autenticação pessoal access token, a Databricks recomenda o uso de pessoal access tokens pertencente à entidade de serviço em vez de usuários workspace. Para criar o site tokens para uma entidade de serviço, consulte gerenciar tokens para uma entidade de serviço.
Guia de implantação do Unity Catalog do provedor Terraform e documentação de referência de recursos
Para saber como implantar todos os pré-requisitos e habilitar Unity Catalog para um workspace, consulte recurso de pré-requisito implantado e habilitação Unity Catalog na documentação do provedor Databricks Terraform.
Se você já possui alguns componentes de infraestrutura do Unity Catalog, poderá usar o Terraform para implantar componentes adicionais de infraestrutura do Unity Catalog conforme necessário. Consulte cada seção do guia referenciado no parágrafo anterior e a seçãoUnity Catalog da documentação do provedor Databricks Terraform.
Validar, planejar, aprimorar ou destruir os recursos
Para validar a sintaxe das configurações do Terraform sem aprimorá-las, execute o comando
terraform validate
.Para mostrar as ações que o Terraform tomaria para implantar as configurações, execute o comando
terraform plan
. Este comando na verdade não implantou as configurações.Para aprimorar as configurações, execute o comando
terraform deploy
.Para excluir os recursos implantados, execute o comando
terraform destroy
.