Conceder aos trabalhos de transformação em lotes acesso aos recursos em sua Amazon VPC - Amazon SageMaker

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Conceder aos trabalhos de transformação em lotes acesso aos recursos em sua Amazon VPC

Para controlar o acesso aos seus dados e trabalhos de transformação de lotes, recomendamos criar uma Amazon VPC privada e configurá-la para que eles não sejam acessíveis pela Internet pública. Especifique a configuração de sua VPC privada ao criar um modelo. Basta especificar sub-redes e grupos de segurança. Em seguida, você especifica o mesmo modelo ao criar uma tarefa de transformação em lote. Quando você especifica as sub-redes e os grupos de segurança, SageMaker cria interfaces de rede elásticas associadas aos seus grupos de segurança em uma das sub-redes. As interfaces de rede permitem que seus contêineres de modelo sejam conectados aos recursos em sua VPC. Para obter mais informações sobre interfaces de rede, consulte Interfaces de rede elástica no Guia do usuário da Amazon VPC.

Este documento explica como adicionar configurações da Amazon VPC para trabalhos de transformação de lotes.

Configurar um trabalho de transformação de lotes para acesso à Amazon VPC

Para especificar sub-redes e grupos de segurança em sua VPC privada, use o parâmetro de VpcConfig solicitação da CreateModelAPI ou forneça essas informações ao criar um modelo no console. SageMaker Em seguida, especifique o mesmo modelo no parâmetro de ModelName solicitação da CreateTransformJobAPI ou no campo Nome do modelo ao criar um trabalho de transformação no SageMaker console. SageMaker usa essas informações para criar interfaces de rede e anexá-las aos contêineres do modelo. As interfaces de rede concedem aos contêineres de modelo uma conexão de rede na sua VPC, sem acesso à Internet. Além disso, permitem que o trabalho de transformação conecte-se aos recursos da VPC privada.

Veja a seguir um exemplo do parâmetro VpcConfig incluído na sua chamada para CreateModel:

VpcConfig: { "Subnets": [ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2" ], "SecurityGroupIds": [ "sg-0123456789abcdef0" ] }

Se você estiver criando um modelo usando a operação de API CreateModel, o perfil de execução do IAM usado para criar o modelo deverá incluir as permissões descritas no CreateModel API: Permissões da função de execução, incluindo as seguintes permissões necessárias para uma VPC privada.

Ao criar um modelo no console, se você selecionar Criar uma nova função na seção Configurações do modelo, a AmazonSageMakerFullAccess política usada para criar a função já conterá essas permissões. Se você selecionar Inserir um ARN de perfil do IAM personalizado ou Usar perfil existente, o ARN do perfil que você especificar deverá ter uma política de execução anexada com as seguintes permissões.

{ "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:DeleteNetworkInterfacePermission", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DescribeDhcpOptions", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups"

Configure sua VPC privada para Batch Transform SageMaker

Ao configurar a VPC privada para SageMaker seus trabalhos de transformação em lote, use as diretrizes a seguir. Para obter informações sobre como configurar uma VPC, consulte Como trabalhar com VPCs e sub-redes no Guia do usuário da Amazon VPC.

Garanta que as sub-redes tenham endereços IP suficientes

As sub-redes da VPC devem ter pelo menos dois endereços IP privados para cada instância em um trabalho de transformação. Para obter mais informações, consulte Dimensionamento da VPC e da sub-rede para IPv4 no Guia do usuário da Amazon VPC.

Criar um endpoint de VPC do Amazon S3

Se você configurar sua VPC para que os contêineres de modelos não tenham acesso à Internet, eles não poderão se conectar aos buckets do Amazon S3 que contêm os dados, a menos que você crie um endpoint de VPC que permita o acesso. Ao criar um endpoint de VPC, você permite que seus contêineres de modelo acessem os buckets em que você armazena seus dados e artefatos de modelo. Recomendamos que você também crie uma política personalizada para que apenas solicitações da sua VPC privada acessem os buckets do S3. Para obter mais informações, consulte Endpoints para Amazon S3.

Criação de um VPC endpoint do S3
  1. Abra o console do Amazon VPC em https://console.aws.amazon.com/vpc/.

  2. No painel de navegação, selecione Endpoints e Criar endpoint.

  3. Em Nome do serviço, escolha com.amazonaws.region.s3, em que a região é o nome da região em que a VPC reside.

  4. Em VPC, escolha a VPC que você deseja usar para esse endpoint.

  5. Para Configurar tabelas de rotas, selecione as tabelas de rotas a serem usadas pelo endpoint. O serviço VPC adiciona automaticamente uma rota a cada tabela de rotas selecionada que aponta qualquer tráfego do S3 para o novo endpoint.

  6. Em Política, escolha Acesso total para permitir acesso total ao serviço do S3 por qualquer usuário ou serviço dentro da VPC. Escolha Personalizar para restringir ainda mais o acesso. Para obter mais informações, consulte Use uma política de endpoint personalizada para restringir o acesso ao S3.

Use uma política de endpoint personalizada para restringir o acesso ao S3

A política de endpoint padrão permite acesso total ao S3 para qualquer usuário ou serviço em sua VPC. Para restringir ainda mais o acesso ao S3, crie uma política de endpoint personalizada. Para obter mais informações, consulte Usar políticas de endpoint para o Amazon S3. Você também pode usar uma política de buckets para restringir o acesso aos seus buckets do S3 somente ao tráfego proveniente da sua Amazon VPC. Para obter informações, consulte Usar as Políticas do Bucket do Amazon S3.

Restringir a instalação do pacote no contêiner do modelo

A política de endpoint padrão permite que os usuários instalem pacotes dos repositórios do Amazon Linux e do Amazon Linux 2 no contêiner de treinamento. Se você não deseja que os usuários instalem pacotes, crie uma política de endpoint personalizada que negue explicitamente o acesso a esses repositórios. Veja a seguir um exemplo de política que nega acesso somente a esses repositórios:

{ "Statement": [ { "Sid": "AmazonLinuxAMIRepositoryAccess", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Deny", "Resource": [ "arn:aws:s3:::packages.*.amazonaws.com/*", "arn:aws:s3:::repo.*.amazonaws.com/*" ] } ] } { "Statement": [ { "Sid": "AmazonLinux2AMIRepositoryAccess", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Deny", "Resource": [ "arn:aws:s3:::amazonlinux.*.amazonaws.com/*" ] } ] }

Configurar tabelas de rotas

Use as definições padrão de DNS da sua tabela de rotas de endpoint para que os URLs padrão do Amazon S3 (por exemplo, http://s3-aws-region.amazonaws.com/MyBucket) resolvam. Se você não usar as configurações de DNS padrão, certifique-se de que as URLs usadas para especificar os locais dos dados em seus trabalhos de transformação em lote sejam resolvidas configurando as tabelas de rota do endpoint. Para obter informações sobre as tabelas de rotas de endpoints da VPC, consulte Roteamento para endpoints do gateway no Guia do usuário da Amazon VPC.

Configuração do grupo de segurança da VPC

Na transformação em lote distribuída, você deve permitir a comunicação entre os diferentes contêineres no mesmo trabalho de transformação em lote. Para fazer isso, configure uma regra para seu grupo de segurança que permita conexões de entrada e saída entre membros do mesmo grupo de segurança. Membros do mesmo grupo de segurança devem ser capazes de se comunicar entre eles em todas as portas. Para obter mais informações, consulte Regras de grupos de segurança.

Conectar-se a recursos fora de sua VPC

Se você configurar sua VPC para que ela não tenha acesso à Internet, os trabalhos de transformação em lote que usarem essa VPC não terão acesso a recursos fora da sua VPC. Se o seu trabalho de transformação em lote precisar acessar recursos fora da VPC, conceda o acesso com uma das seguintes opções:

  • Se seu trabalho de transformação em lote precisar acessar um AWS serviço que ofereça suporte a endpoints VPC de interface, crie um endpoint para se conectar a esse serviço. Para obter uma lista dos serviços compatíveis com endpoints de interface, consulte Endpoint de VPCs no Guia do usuário da Amazon VPC. Para obter informações sobre a criação de uma interface VPC endpoint, consulte Interface VPC Endpoints () no Guia do usuário AWS PrivateLink da Amazon VPC.

  • Se sua tarefa de transformação em lote precisar acessar um AWS serviço que não ofereça suporte a endpoints VPC de interface ou a um recurso externo AWS, crie um gateway NAT e configure seus grupos de segurança para permitir conexões de saída. Para obter informações sobre como configurar um gateway NAT para sua VPC, consulte Cenário 2: VPC com sub-redes pública e privada (NAT) no Guia do usuário da Amazon Virtual Private Cloud.