Usando o padrão AWS CloudFormation Quickstart para se conectar a AWS S3
Esta página descreve como se conectar a um bucket AWS S3 criando um objeto de localização externa usando um padrão de início rápido do AWS CloudFormation fornecido. Quando o senhor cria um local externo usando o padrão AWS CloudFormation, o Databricks configura o local externo e cria uma credencial de armazenamento para o senhor.
A Databricks recomenda esse método se o senhor quiser configurar rapidamente uma nova conexão com um local do S3 e ainda não tiver uma credencial de armazenamento existente. Para obter uma visão geral de outros métodos compatíveis, consulte Conectar-se a um local externo do AWS S3.
Antes de começar
Pré-requisitos :
O senhor deve criar o bucket S3 que deseja usar como um local externo no AWS antes de criar o objeto de local externo no Databricks.
-
Não use notação de ponto (por exemplo,
incorrect.bucket.name.notation
) nos nomes de buckets do S3. Embora o AWS permita pontos em nomes de buckets, a Databricks não oferece suporte a buckets S3 com notação de pontos. Os buckets que contêm pontos podem causar problemas de compatibilidade com recursos como Delta Sharing devido a falhas na validação do certificado SSL. Para obter mais informações, consulte as práticas recomendadas de nomenclatura de buckets emAWS. -
Os caminhos de localização externos devem conter somente caracteres ASCII padrão (letras
A–Z
,a–z
, dígitos0–9
e símbolos comuns como/
,_
,-
). -
O bucket não pode ter uma lista de controle de acesso S3 anexada a ele.
-
Evite usar um caminho no S3 que já esteja definido como um local externo em outro metastore do Unity Catalog. O senhor pode ler dados com segurança em um único local externo S3 de mais de um metastore, mas gravações simultâneas no mesmo local S3 de vários metastores podem levar a problemas de consistência.
Requisitos de permissões do Databricks :
- Você deve ter o privilégio
CREATE STORAGE CREDENTIAL
na metastore. Os administradores do metastore têmCREATE STORAGE CREDENTIAL
no metastore por default. - Você deve ter o privilégio
CREATE EXTERNAL LOCATION
na metastore e na credencial de armazenamento referenciada no local externo. Os administradores do metastore têmCREATE EXTERNAL LOCATION
no metastore por default.
Requisitos de permissões do AWS :
- O senhor deve ter as permissões
iam:CreateRole
para criar o IAM role.
o passo 1: Criar um local externo para um bucket S3 usando um padrão AWS CloudFormation
-
Faça login em um site workspace que esteja anexado ao metastore.
-
Clique em
Catálogo para abrir o Catalog Explorer.
-
Clique em
e, em seguida, clique em Criar um local externo .
-
Na caixa de diálogo Criar um novo local externo , selecione AWS Quickstart (Recomendado) e clique em Next .
O AWS Quickstart configura o local externo e cria uma credencial de armazenamento para o senhor. Se o senhor optar por usar a opção Manual , deverá criar manualmente um IAM role que dê acesso ao bucket S3 e criar a credencial de armazenamento em Databricks.
-
Na caixa de diálogo Create external location with Quickstart (Criar local externo com início rápido ), digite o caminho para o bucket S3 no campo Bucket Name (Nome do bucket ).
-
Clique em Generate new tokens (Gerar novos tokens ) para gerar o access token pessoal que o senhor usará para se autenticar entre Databricks e seu AWS account.
-
Copie os tokens e clique em Launch in Quickstart .
-
No padrão AWS CloudFormation que é iniciado (rótulo Quick create stack ), cole os tokens no campo Databricks Personal access token .
-
Aceite os termos na parte inferior da página (reconheço que o AWS CloudFormation pode criar o recurso IAM com nomes personalizados ).
-
Clique em Criar pilha .
Pode levar alguns minutos para que o padrão CloudFormation termine de criar o objeto de localização externa em Databricks. Se o padrão CloudFormation não conseguir criar o local externo, verifique se sua função tem permissões
iam:CreateRole
.
o passo 2: Verificar a localização externa
-
Em seu site Databricks workspace, clique em Catalog para abrir o Catalog Explorer .
-
Na página Acesso rápido , clique no botão Dados externos > .
-
Em External Locations (Locais externos ) tab, confirme se o local externo foi criado.
Locais externos gerados automaticamente usam a sintaxe de nomenclatura
db_s3_external_databricks-S3-ingest-<id>
. -
Clique no nome do local externo e, em seguida, clique em Browse tab. Como proprietário do local externo, o senhor deve ver seus arquivos do bucket S3 no Catalog Explorer.
-
(Opcional) Vincule o local externo a um espaço de trabalho específico.
Em default, qualquer usuário privilegiado pode usar o local externo em qualquer workspace anexado ao metastore. Se o senhor quiser permitir o acesso somente a partir de um espaço de trabalho específico, acesse o espaço de trabalho tab e atribua o espaço de trabalho. Consulte Atribuir um local externo a um espaço de trabalho específico.
-
Conceda permissão para usar o local externo.
Para que qualquer pessoa use o local externo, você deve conceder permissões:
- Para usar o local externo para adicionar um local de armazenamento gerenciar ao metastore, catálogo ou esquema, conceda o privilégio
CREATE MANAGED LOCATION
. - Para criar tabelas ou volumes externos, conceda
CREATE EXTERNAL TABLE
ouCREATE EXTERNAL VOLUME
.
Para usar o Catalog Explorer para conceder permissões:
- Clique no nome do local externo para abrir o painel de detalhes.
- Em Permissions (Permissões ) tab, clique em Grant (Conceder ).
- Na caixa de diálogo Grant on
<external location>
, selecione usuários, grupos ou entidade de serviço no campo Principals e selecione o privilégio que deseja conceder. - Clique em Conceder .
- Para usar o local externo para adicionar um local de armazenamento gerenciar ao metastore, catálogo ou esquema, conceda o privilégio