Criar um workspace com configurações manuais AWS
Esta página explica como implantar um workspace clássico usando um recurso AWS criado manualmente. Use este método se você quiser criar seu próprio recurso AWS ou precisar implantar um workspace com configurações personalizadas, como sua própria VPC, políticas IAM específicas ou buckets S3 preexistentes.
Para a maioria das implementações, Databricks recomenda o uso da configuração automatizada, que utiliza a delegação temporária AWS IAM para provisionar automaticamente todos os recursos necessários.
Requisitos
Para criar um workspace com configuração manual, você deve:
- Seja um account da sua account Databricks .
- Tenha permissões para provisionar funções IAM , buckets S3 e políticas de acesso em sua account AWS .
- Tenha uma VPC e um gateway NAT disponíveis em sua account AWS na região do workspace. Você pode view suas cotas disponíveis e solicitar aumentos usando o console de cotas do serviçoAWS.
- Tenha o endpoint STS ativado para
us-west-2. Para obter detalhes, consulte a documentação da AWS.
Crie um workspace Databricks com configurações manuais AWS
Para criar um workspace com um recurso AWS configurado manualmente:
- Vá para o consoleaccount e clique no ícone do espaço de trabalho .
- Clique em Criar espaço de trabalho .
- No campo Nome do workspace , insira um nome legível por humanos para este workspace. Pode conter espaços.
- No campo Região , selecione uma região AWS para a rede e os recursos compute do seu workspace.
- Na dropdown de credenciais na nuvem , selecione ou crie uma configuração de credenciais. Se você criar uma nova configuração de credenciais, consulte Criar uma configuração de credenciais.
- No dropdown de armazenamento em nuvem , selecione ou crie a configuração de armazenamento que você usará para este workspace. Se você criar uma nova configuração de armazenamento, consulte Criar uma configuração de armazenamento.
- (Opcional) Defina todas as configurações avançadas . Consulte Configurações avançadas.
- Clique em Avançar .
- Revise os detalhes do site workspace e clique em Create workspace .
Crie uma configuração de credencial
A configuração da credencial dá acesso a Databricks para iniciar compute recurso em seu AWS account. Esta etapa exige que o senhor crie um novo siteaccount IAM role com uma política de acesso.
Etapa 1: Criar um cruzamento -account IAM role
- Obtenha sua ID Databricks account . Consulte Localizar sua account ID.
- Faça login no console do AWS como um usuário com privilégios de administrador e acesse o console do IAM .
- Clique na guia Funções na barra lateral.
- Clique em Criar função .
- Em Selecionar tipo de entidade confiável , clique no bloco da conta da AWS .
- Marque a caixa de seleção Outra conta AWS .
- No campo account ID (ID da conta), digite Databricks account ID
414351767826. Esse não é o ID da conta que o senhor copiou do console Databricks account . Se o senhor estiver usando Databricks on AWS GovCloud use o Databricks account ID044793339203para AWS GovCloud ou170661010020para AWS GovCloud DoD. - Marque a caixa de seleção Exigir ID externa .
- No campo ID externo , digite o ID da sua conta Databricks, que foi copiado do console da conta Databricks.
- Clique no botão Avançar .
- Na página Adicionar permissões , clique no botão Avançar . Agora você deve estar na página Nome, revisão e criação .
- No campo Nome da função , insira um nome de papel.
- Clique em Criar papel . A lista de funções é exibida.
Etapa 2: criar uma política de acesso
A política de acesso que você adiciona à função depende do seu tipo de implantação Amazon VPC (Virtual Private Cloud). Para obter informações sobre como Databricks usa cada permissão, consulte PermissõesIAM para Databricks- gerenciar VPCs.
- Na seção Funções do console do IAM , clique no IAM role que você criou na Etapa 1.
- Clique no menu suspenso Adicionar permissões e selecione Criar política em linha .
- No editor de políticas, clique na guia JSON .
- Copie e cole a política de acesso apropriada para o seu tipo de implantação:
- Databricks-managed VPC
- Customer-managed VPC with default restrictions
- Customer-managed VPC with custom restrictions
Uma única VPC que o Databricks cria e configura em sua conta da AWS.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1403287045000",
"Effect": "Allow",
"Action": [
"ec2:AllocateAddress",
"ec2:AssignPrivateIpAddresses",
"ec2:AssociateDhcpOptions",
"ec2:AssociateIamInstanceProfile",
"ec2:AssociateRouteTable",
"ec2:AttachInternetGateway",
"ec2:AttachVolume",
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:CancelSpotInstanceRequests",
"ec2:CreateDhcpOptions",
"ec2:CreateFleet",
"ec2:CreateInternetGateway",
"ec2:CreateLaunchTemplate",
"ec2:CreateLaunchTemplateVersion",
"ec2:CreateNatGateway",
"ec2:CreateRoute",
"ec2:CreateRouteTable",
"ec2:CreateSecurityGroup",
"ec2:CreateSubnet",
"ec2:CreateTags",
"ec2:CreateVolume",
"ec2:CreateVpc",
"ec2:CreateVpcEndpoint",
"ec2:DeleteDhcpOptions",
"ec2:DeleteFleets",
"ec2:DeleteInternetGateway",
"ec2:DeleteLaunchTemplate",
"ec2:DeleteLaunchTemplateVersions",
"ec2:DeleteNatGateway",
"ec2:DeleteRoute",
"ec2:DeleteRouteTable",
"ec2:DeleteSecurityGroup",
"ec2:DeleteSubnet",
"ec2:DeleteTags",
"ec2:DeleteVolume",
"ec2:DeleteVpc",
"ec2:DeleteVpcEndpoints",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeFleetHistory",
"ec2:DescribeFleetInstances",
"ec2:DescribeFleets",
"ec2:DescribeIamInstanceProfileAssociations",
"ec2:DescribeInstanceStatus",
"ec2:DescribeInstances",
"ec2:DescribeInternetGateways",
"ec2:DescribeLaunchTemplates",
"ec2:DescribeLaunchTemplateVersions",
"ec2:DescribeNatGateways",
"ec2:DescribePrefixLists",
"ec2:DescribeReservedInstancesOfferings",
"ec2:DescribeRouteTables",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSpotInstanceRequests",
"ec2:DescribeSpotPriceHistory",
"ec2:DescribeSubnets",
"ec2:DescribeVolumes",
"ec2:DescribeVpcs",
"ec2:DetachInternetGateway",
"ec2:DisassociateIamInstanceProfile",
"ec2:DisassociateRouteTable",
"ec2:GetLaunchTemplateData",
"ec2:GetSpotPlacementScores",
"ec2:ModifyFleet",
"ec2:ModifyLaunchTemplate",
"ec2:ModifyVpcAttribute",
"ec2:ReleaseAddress",
"ec2:ReplaceIamInstanceProfileAssociation",
"ec2:RequestSpotInstances",
"ec2:RevokeSecurityGroupEgress",
"ec2:RevokeSecurityGroupIngress",
"ec2:RunInstances",
"ec2:TerminateInstances"
],
"Resource": ["*"]
},
{
"Effect": "Allow",
"Action": ["iam:CreateServiceLinkedRole", "iam:PutRolePolicy"],
"Resource": "arn:aws:iam::*:role/aws-service-role/spot.amazonaws.com/AWSServiceRoleForEC2Spot",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "spot.amazonaws.com"
}
}
}
]
}
Crie seu espaço de trabalho Databricks em sua própria VPC, usando um recurso conhecido como customer-gerenciar VPC.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1403287045000",
"Effect": "Allow",
"Action": [
"ec2:AssociateIamInstanceProfile",
"ec2:AttachVolume",
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:CancelSpotInstanceRequests",
"ec2:CreateTags",
"ec2:CreateVolume",
"ec2:DeleteTags",
"ec2:DeleteVolume",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeIamInstanceProfileAssociations",
"ec2:DescribeInstanceStatus",
"ec2:DescribeInstances",
"ec2:DescribeInternetGateways",
"ec2:DescribeNatGateways",
"ec2:DescribeNetworkAcls",
"ec2:DescribePrefixLists",
"ec2:DescribeReservedInstancesOfferings",
"ec2:DescribeRouteTables",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSpotInstanceRequests",
"ec2:DescribeSpotPriceHistory",
"ec2:DescribeSubnets",
"ec2:DescribeVolumes",
"ec2:DescribeVpcAttribute",
"ec2:DescribeVpcs",
"ec2:DetachVolume",
"ec2:DisassociateIamInstanceProfile",
"ec2:ReplaceIamInstanceProfileAssociation",
"ec2:RequestSpotInstances",
"ec2:RevokeSecurityGroupEgress",
"ec2:RevokeSecurityGroupIngress",
"ec2:RunInstances",
"ec2:TerminateInstances",
"ec2:DescribeFleetHistory",
"ec2:ModifyFleet",
"ec2:DeleteFleets",
"ec2:DescribeFleetInstances",
"ec2:DescribeFleets",
"ec2:CreateFleet",
"ec2:DeleteLaunchTemplate",
"ec2:GetLaunchTemplateData",
"ec2:CreateLaunchTemplate",
"ec2:DescribeLaunchTemplates",
"ec2:DescribeLaunchTemplateVersions",
"ec2:ModifyLaunchTemplate",
"ec2:DeleteLaunchTemplateVersions",
"ec2:CreateLaunchTemplateVersion",
"ec2:AssignPrivateIpAddresses",
"ec2:GetSpotPlacementScores"
],
"Resource": ["*"]
},
{
"Effect": "Allow",
"Action": ["iam:CreateServiceLinkedRole", "iam:PutRolePolicy"],
"Resource": "arn:aws:iam::*:role/aws-service-role/spot.amazonaws.com/AWSServiceRoleForEC2Spot",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "spot.amazonaws.com"
}
}
}
]
}
Crie seus espaços de trabalho do Databricks em sua própria VPC com restrições personalizadas para ID da conta, ID da VPC, região da AWS e grupo de segurança.
Substitua os valores a seguir na política pelos seus próprios valores de configuração:
ACCOUNTID— O ID da sua conta da AWS, que é um número.VPCID— ID do AWS VPC onde você deseja iniciar workspaces.REGION— Nome da região AWS para sua implementação VPC, por exemplous-west-2.SECURITYGROUPID- ID do seu grupo de segurança do AWS. Quando o senhor adiciona uma restrição de grupo de segurança, não é possível reutilizar o crossaccount IAM role ou fazer referência a um ID de credenciais (credentials_id) para outro workspace. O senhor deve criar funções, políticas e objetos de credenciais separados para cada workspace.
Se o senhor tiver requisitos personalizados configurados para grupos de segurança com o seu vpc gerenciador de clientes, entre em contato com a equipe Databricks account para obter assistência com as personalizações da política IAM.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "NonResourceBasedPermissions",
"Effect": "Allow",
"Action": [
"ec2:AssignPrivateIpAddresses",
"ec2:CancelSpotInstanceRequests",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeIamInstanceProfileAssociations",
"ec2:DescribeInstanceStatus",
"ec2:DescribeInstances",
"ec2:DescribeInternetGateways",
"ec2:DescribeNatGateways",
"ec2:DescribeNetworkAcls",
"ec2:DescribePrefixLists",
"ec2:DescribeReservedInstancesOfferings",
"ec2:DescribeRouteTables",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSpotInstanceRequests",
"ec2:DescribeSpotPriceHistory",
"ec2:DescribeSubnets",
"ec2:DescribeVolumes",
"ec2:DescribeVpcAttribute",
"ec2:DescribeVpcs",
"ec2:CreateTags",
"ec2:DeleteTags",
"ec2:GetSpotPlacementScores",
"ec2:RequestSpotInstances",
"ec2:DescribeFleetHistory",
"ec2:ModifyFleet",
"ec2:DeleteFleets",
"ec2:DescribeFleetInstances",
"ec2:DescribeFleets",
"ec2:CreateFleet",
"ec2:DeleteLaunchTemplate",
"ec2:GetLaunchTemplateData",
"ec2:CreateLaunchTemplate",
"ec2:DescribeLaunchTemplates",
"ec2:DescribeLaunchTemplateVersions",
"ec2:ModifyLaunchTemplate",
"ec2:DeleteLaunchTemplateVersions",
"ec2:CreateLaunchTemplateVersion"
],
"Resource": ["*"]
},
{
"Sid": "InstancePoolsSupport",
"Effect": "Allow",
"Action": [
"ec2:AssociateIamInstanceProfile",
"ec2:DisassociateIamInstanceProfile",
"ec2:ReplaceIamInstanceProfileAssociation"
],
"Resource": "arn:aws:ec2:REGION:ACCOUNTID:instance/*",
"Condition": {
"StringEquals": {
"ec2:ResourceTag/Vendor": "Databricks"
}
}
},
{
"Sid": "AllowEc2RunInstancePerTag",
"Effect": "Allow",
"Action": "ec2:RunInstances",
"Resource": ["arn:aws:ec2:REGION:ACCOUNTID:volume/*", "arn:aws:ec2:REGION:ACCOUNTID:instance/*"],
"Condition": {
"StringEquals": {
"aws:RequestTag/Vendor": "Databricks"
}
}
},
{
"Sid": "AllowEc2RunInstanceImagePerTag",
"Effect": "Allow",
"Action": "ec2:RunInstances",
"Resource": ["arn:aws:ec2:REGION:ACCOUNTID:image/*"],
"Condition": {
"StringEquals": {
"aws:ResourceTag/Vendor": "Databricks"
}
}
},
{
"Sid": "AllowEc2RunInstancePerVPCid",
"Effect": "Allow",
"Action": "ec2:RunInstances",
"Resource": [
"arn:aws:ec2:REGION:ACCOUNTID:network-interface/*",
"arn:aws:ec2:REGION:ACCOUNTID:subnet/*",
"arn:aws:ec2:REGION:ACCOUNTID:security-group/*"
],
"Condition": {
"StringEquals": {
"ec2:vpc": "arn:aws:ec2:REGION:ACCOUNTID:vpc/VPCID"
}
}
},
{
"Sid": "AllowEc2RunInstanceOtherResources",
"Effect": "Allow",
"Action": "ec2:RunInstances",
"NotResource": [
"arn:aws:ec2:REGION:ACCOUNTID:image/*",
"arn:aws:ec2:REGION:ACCOUNTID:network-interface/*",
"arn:aws:ec2:REGION:ACCOUNTID:subnet/*",
"arn:aws:ec2:REGION:ACCOUNTID:security-group/*",
"arn:aws:ec2:REGION:ACCOUNTID:volume/*",
"arn:aws:ec2:REGION:ACCOUNTID:instance/*"
]
},
{
"Sid": "EC2TerminateInstancesTag",
"Effect": "Allow",
"Action": ["ec2:TerminateInstances"],
"Resource": ["arn:aws:ec2:REGION:ACCOUNTID:instance/*"],
"Condition": {
"StringEquals": {
"ec2:ResourceTag/Vendor": "Databricks"
}
}
},
{
"Sid": "EC2AttachDetachVolumeTag",
"Effect": "Allow",
"Action": ["ec2:AttachVolume", "ec2:DetachVolume"],
"Resource": ["arn:aws:ec2:REGION:ACCOUNTID:instance/*", "arn:aws:ec2:REGION:ACCOUNTID:volume/*"],
"Condition": {
"StringEquals": {
"ec2:ResourceTag/Vendor": "Databricks"
}
}
},
{
"Sid": "EC2CreateVolumeByTag",
"Effect": "Allow",
"Action": ["ec2:CreateVolume"],
"Resource": ["arn:aws:ec2:REGION:ACCOUNTID:volume/*"],
"Condition": {
"StringEquals": {
"aws:RequestTag/Vendor": "Databricks"
}
}
},
{
"Sid": "EC2DeleteVolumeByTag",
"Effect": "Allow",
"Action": ["ec2:DeleteVolume"],
"Resource": ["arn:aws:ec2:REGION:ACCOUNTID:volume/*"],
"Condition": {
"StringEquals": {
"ec2:ResourceTag/Vendor": "Databricks"
}
}
},
{
"Effect": "Allow",
"Action": ["iam:CreateServiceLinkedRole", "iam:PutRolePolicy"],
"Resource": "arn:aws:iam::*:role/aws-service-role/spot.amazonaws.com/AWSServiceRoleForEC2Spot",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "spot.amazonaws.com"
}
}
},
{
"Sid": "VpcNonresourceSpecificActions",
"Effect": "Allow",
"Action": [
"ec2:AuthorizeSecurityGroupEgress",
"ec2:AuthorizeSecurityGroupIngress",
"ec2:RevokeSecurityGroupEgress",
"ec2:RevokeSecurityGroupIngress"
],
"Resource": "arn:aws:ec2:REGION:ACCOUNTID:security-group/SECURITYGROUPID",
"Condition": {
"StringEquals": {
"ec2:vpc": "arn:aws:ec2:REGION:ACCOUNTID:vpc/VPCID"
}
}
}
]
}
Nota adicional : A account AWS de produção Databricks da qual Amazon Machine Images (AMI) são originadas é 601306020600. Você pode usar esse ID account para criar políticas de acesso personalizadas que restringem as AMIs que podem ser usadas em sua account AWS . Para obter mais informações, entre em contato com a equipe da sua account Databricks .
- Clique em Revisar política .
- No campo Nome , insira um nome de política.
- Clique em Criar política .
- (Opcional) Se o senhor usar Políticas de controle de serviço para negar determinadas ações no nível AWS account , certifique-se de que
sts:AssumeRoleesteja na lista de permissões para que o Databricks possa assumir a função cruzadaaccount. - No resumo da função, copie o ARNda função para colar na configuração de credenciais ou passo.
Etapa 3: criar a configuração da credencial
A configuração de credenciais é um objeto de configuração Databricks que representa a IAM role que você criou na etapa anterior.
Para criar uma configuração de credencial:
- Ao criar o novo workspace, no menu dropdown de credenciais na nuvem , selecione Adicionar credencial cloud .
- Selecione Adicionar manualmente .
- No campo "Nome da credencial na nuvem" , insira um nome legível para sua nova configuração de credencial.
- No campo ARNda função , cole o ARN da função que você copiou na etapa anterior.
- Clique em OK .
A Databricks valida a configuração da credencial durante essa etapa. Os possíveis erros podem incluir um ARN inválido ou permissões incorretas para a função, entre outros.
Crie uma configuração de armazenamento
Na configuração de armazenamento, você cria um bucket de armazenamento para guardar seu workspace ativo Databricks , como dados, biblioteca e logs. É também aqui que o catálogo default do workspace é armazenado. Como parte da configuração de armazenamento, você também cria uma IAM role que Databricks usa para acessar o local de armazenamento.
Etapa 1: Criar um bucket S3
-
Faça login no console AWS como usuário com privilégios de administrador e acesse o serviço S3 .
-
Clique no botão Criar bucket .
-
Insira um nome para o bucket.
-
Selecione a região AWS que o senhor usará para sua implementação Databricks workspace .
-
Clique em Criar bucket .
-
Clique na guia Permissões .
-
Na seção Política de bucket , clique em Editar .
-
Adicione a seguinte política de bucket, substituindo
<BUCKET-NAME>pelo nome do seu bucket e<YOUR-DATABRICKS-ACCOUNT-ID>pelo seu ID Databricks account .JSON{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Grant Databricks Access",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::414351767826:root"
},
"Action": [
"s3:GetObject",
"s3:GetObjectVersion",
"s3:PutObject",
"s3:DeleteObject",
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": ["arn:aws:s3:::<BUCKET-NAME>/*", "arn:aws:s3:::<BUCKET-NAME>"],
"Condition": {
"StringEquals": {
"aws:PrincipalTag/DatabricksAccountId": ["<YOUR-DATABRICKS-ACCOUNT-ID>"]
}
}
},
{
"Sid": "Prevent DBFS from accessing Unity Catalog metastore",
"Effect": "Deny",
"Principal": {
"AWS": "arn:aws:iam::414351767826:root"
},
"Action": ["s3:*"],
"Resource": ["arn:aws:s3:::<BUCKET-NAME>/unity-catalog/*"]
}
]
} -
Salve o bucket.
Etapa 2: Criar um IAM role com uma política de confiança personalizada
Essa política de confiança e IAM role estabelece uma relação de confiança entreaccount para que Databricks possa acessar dados no bucket S3 em nome de usuários Databricks. O ARN na seção Principal é um valor estático que faz referência a uma função criada pela Databricks. O site ARN é ligeiramente diferente se o senhor usar Databricks on AWS GovCloud.
-
Em seu site AWS account, crie um IAM role com uma política de confiança personalizada .
-
No campo Custom Trust Policy (Política de confiança personalizada ), cole o JSON da política a seguir:
A política define a ID externa como
0000como espaço reservado. O senhor atualiza isso para o ID account do seu Databricks account em uma etapa posterior.
- Databricks on AWS
- Databricks on AWS GovCloud
- Databricks on AWS GovCloud DoD
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": ["arn:aws:iam::414351767826:role/unity-catalog-prod-UCMasterRole-14S5ZJVKOTYTL"]
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"sts:ExternalId": "0000"
}
}
}
]
}
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": ["arn:aws-us-gov:iam::044793339203:role/unity-catalog-prod-UCMasterRole-1QRFA8SGY15OJ"]
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"sts:ExternalId": "0000"
}
}
}
]
}
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": ["arn:aws-us-gov:iam::170661010020:role/unity-catalog-prod-UCMasterRole-1DI6DL6ZP26AS"]
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"sts:ExternalId": "0000"
}
}
}
]
}
-
Salve a IAM role.
Agora que você criou a função, atualize sua política de confiança para torná-la presunçosa.
-
No site IAM role que o senhor acabou de criar, acesse Trust Relationships tab e edite a política de relacionamento de confiança da seguinte forma, substituindo os valores
<YOUR-AWS-ACCOUNT-ID>,<THIS-ROLE-NAME>e<YOUR-DATABRICKS-ACCOUNT-ID>.
- Databricks on AWS
- Databricks on AWS GovCloud
- Databricks on AWS GovCloud DoD
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws:iam::414351767826:role/unity-catalog-prod-UCMasterRole-14S5ZJVKOTYTL",
"arn:aws:iam::<YOUR-AWS-ACCOUNT-ID>:role/<THIS-ROLE-NAME>"
]
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"sts:ExternalId": "<YOUR-DATABRICKS-ACCOUNT-ID>"
}
}
}
]
}
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws-us-gov:iam::044793339203:role/unity-catalog-prod-UCMasterRole-1QRFA8SGY15OJ",
"arn:aws:iam::<YOUR-AWS-ACCOUNT-ID>:role/<THIS-ROLE-NAME>"
]
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"sts:ExternalId": "<YOUR-DATABRICKS-ACCOUNT-ID>"
}
}
}
]
}
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": [
"arn:aws-us-gov:iam::170661010020:role/unity-catalog-prod-UCMasterRole-1DI6DL6ZP26AS",
"arn:aws:iam::<YOUR-AWS-ACCOUNT-ID>:role/<THIS-ROLE-NAME>"
]
},
"Action": "sts:AssumeRole",
"Condition": {
"StringEquals": {
"sts:ExternalId": "<YOUR-DATABRICKS-ACCOUNT-ID>"
}
}
}
]
}
-
Ignore a configuração da política de permissões. Você voltará para adicionar isso em uma etapa posterior.
-
Copie o ARN IAM role , que você colará na configuração de armazenamento o passo.
Etapa 3: Crie uma política de IAM para conceder acesso de leitura e gravação
-
Crie uma política IAM no mesmo account que o bucket S3, substituindo os seguintes valores:
<BUCKET>: nome do depósito S3.<AWS-ACCOUNT-ID>: ID de account da sua account da AWS (não da sua account do Databricks).<AWS-IAM-ROLE-NAME>: nome da IAM role AWS que você criou na passo anterior.<KMS-KEY>(Opcional): Se a criptografia estiver ativada, forneça o nome do KMS key que criptografa o conteúdo do bucket S3. Se a criptografia estiver desativada, remova toda a seção KMS da política de IAM.
Esta policy de IAM concede acesso de leitura e gravação. Você também pode criar uma policy que conceda acesso somente de leitura. No entanto, isso pode ser desnecessário, pois você pode marcar a credencial de armazenamento como somente leitura, e qualquer acesso de gravação concedido por essa IAM role será ignorado.
JSON{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": ["s3:GetObject", "s3:PutObject", "s3:DeleteObject"],
"Resource": "arn:aws:s3:::<BUCKET>/unity-catalog/*"
},
{
"Effect": "Allow",
"Action": ["s3:ListBucket", "s3:GetBucketLocation"],
"Resource": "arn:aws:s3:::<BUCKET>"
},
{
"Action": ["kms:Decrypt", "kms:Encrypt", "kms:GenerateDataKey*"],
"Resource": ["arn:aws:kms:<KMS-KEY>"],
"Effect": "Allow"
},
{
"Action": ["sts:AssumeRole"],
"Resource": ["arn:aws:iam::<AWS-ACCOUNT-ID>:role/<AWS-IAM-ROLE-NAME>"],
"Effect": "Allow"
}
]
}
Se você precisar de uma policy de IAM mais restritiva para o Unity Catalog, entre em contato com a equipe da sua account do Databricks para obter ajuda.
- Crie uma política IAM separada para eventos de arquivo no mesmo account que o bucket S3.
Essa etapa é opcional, mas altamente recomendada. Se o senhor não conceder acesso ao Databricks para configurar eventos de arquivo em seu nome, deverá configurar os eventos de arquivo manualmente para cada local. Se não o fizer, o senhor terá acesso limitado aos recursos críticos que o site Databricks liberará no futuro.
A política de IAM concede à Databricks permissão para atualizar a configuração de notificação de eventos do seu bucket, criar um tópico de SNS, criar uma fila de SQS e assinar a fila de SQS no tópico de SNS. Esses são recursos necessários para os recursos que usam eventos de arquivo. Substitua <BUCKET> pelo nome do bucket S3.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "ManagedFileEventsSetupStatement",
"Effect": "Allow",
"Action": [
"s3:GetBucketNotification",
"s3:PutBucketNotification",
"sns:ListSubscriptionsByTopic",
"sns:GetTopicAttributes",
"sns:SetTopicAttributes",
"sns:CreateTopic",
"sns:TagResource",
"sns:Publish",
"sns:Subscribe",
"sqs:CreateQueue",
"sqs:DeleteMessage",
"sqs:ReceiveMessage",
"sqs:SendMessage",
"sqs:GetQueueUrl",
"sqs:GetQueueAttributes",
"sqs:SetQueueAttributes",
"sqs:TagQueue",
"sqs:ChangeMessageVisibility",
"sqs:PurgeQueue"
],
"Resource": ["arn:aws:s3:::<BUCKET>", "arn:aws:sqs:*:*:*", "arn:aws:sns:*:*:*"]
},
{
"Sid": "ManagedFileEventsListStatement",
"Effect": "Allow",
"Action": ["sqs:ListQueues", "sqs:ListQueueTags", "sns:ListTopics"],
"Resource": "*"
},
{
"Sid": "ManagedFileEventsTeardownStatement",
"Effect": "Allow",
"Action": ["sns:Unsubscribe", "sns:DeleteTopic", "sqs:DeleteQueue"],
"Resource": ["arn:aws:sqs:*:*:*", "arn:aws:sns:*:*:*"]
}
]
}
-
Retorne ao site IAM role que o senhor criou na Etapa 2.
-
Em Permission tab, anexe as políticas IAM que o senhor acabou de criar.
Etapa 4: criar a configuração de armazenamento
Agora, retorne ao fluxo de criação workspace para que você possa criar manualmente a configuração de armazenamento no Databricks:
- No menu dropdown de armazenamento em nuvem , selecione Adicionar novo armazenamento cloud .
- Selecione Adicionar manualmente .
- No campo Nome da configuração de armazenamento , insira um nome legível para a configuração de armazenamento.
- No campo Nome do bucket , insira o nome do bucket S3 que você criou em sua account AWS .
- No campo ARNIAM role , cole o ARN da IAM role que você criou na etapa 2.
- Clique em OK .
Configurações avançadas
As configurações a seguir são opcionais quando o senhor cria um novo workspace. Para view essas configurações, clique em Advanced configurations (Configurações avançadas ) dropdown na etapa Credentials (Credenciais ).
- Metastore : Confirme a atribuição do metastore para seu workspace. O metastore é selecionado automaticamente se já existir um metastore Unity Catalog na região do workspace e se o metastore estiver configurado para ser atribuído automaticamente ao novo espaço de trabalho. Se este for o primeiro workspace que o senhor estiver implantando em uma região, o metastore será criado automaticamente. Os metastores são criados sem armazenamento em nível de metastore pelo site default. Se você quiser armazenamento em nível de metástore, você pode adicioná-lo. Consulte Adicionar armazenamento gerenciar a um metastore existente.
- Configuração de rede : Para criar o workspace em sua própria VPC, selecione ou adicione uma configuração de rede . Para obter instruções sobre como configurar sua própria VPC, consulte Configurar uma VPCde gerenciamento de clientes. Se você estiver usando uma VPC gerenciadora de clientes, certifique-se de que sua IAM role utilize uma política de acesso que suporte VPCs gerenciadoras de clientes.
- Link privado : para ativar o PrivateLink, selecione ou adicione uma configuração de acesso privado. Para isso, é necessário que o senhor crie o endpoint VPC regional correto, registre-o e faça referência a ele na configuração da rede.
- Chave de gerenciamento do cliente : Você pode adicionar uma chave de criptografia à sua implantação workspace para o serviço de gerenciamento e o armazenamento workspace . A key para o serviço gerenciado criptografa Notebooks, segredos e dados de consulta Databricks SQL no plano de controle. A key para o armazenamento workspace criptografa o bucket de armazenamento workspace e os volumes EBS do recurso compute no plano compute clássico. Para obter mais orientações, consulte Configurar chave de gerenciamento do cliente para criptografia.
- Segurança e compliance : Essas caixas de seleção permitem que o senhor ative o perfil de segurança compliance, adicione padrões compliance e ative o monitoramento de segurança aprimorado para o seu workspace. Para obter mais informações, consulte Configure enhanced security and compliance settings.
Ver o status do site workspace
Depois de criar um workspace, você pode visualizar seu status na página Workspaces .
- Provisionamento : em andamento. Aguarde alguns minutos e atualize a página.
- Em execução : implantação bem-sucedida do workspace.
- Falha : falha na implantação.
- Conta banida : entre em contato com a equipe da sua account Databricks .
- Cancelamento : em processo de cancelamento.
fazer login em um workspace
- Vá para o consoleaccount e clique no ícone do espaço de trabalho .
- Na linha com seu workspace, clique em Abrir .
- Para log in como administrador de workspace, log in com seu endereço e senha de proprietário ou administrador de account account email . Se o senhor configurou o login único, clique no botão Single Sign On .
Próximas etapas
Agora que o senhor implantou o site workspace, pode começar a desenvolver sua estratégia de dados. A Databricks recomenda os seguintes artigos:
- Adicione usuários, grupos e entidades de serviço ao seu workspace. gerenciar usuários, entidades de serviço e grupos.
- Saiba mais sobre governança de dados e gerenciamento de acesso a dados no Databricks. Consulte O que é o Unity Catalog?
- Conecte seu Databricks workspace à fonte de dados externa. Consulte Conectar à fonte de dados e ao serviço externo.
- Faça a ingestão de seus dados no site workspace. Consulte Conectores padrão em LakeFlow Connect.
- Aprenda a gerenciar o acesso a objetos do site workspace, como Notebook, compute, dashboards e consultas. Consulte Listas de controle de acesso.