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á.
Configurar perfis de runtime do IAM para acesso ao cluster do Amazon EMR no Studio
Ao se conectar a um cluster do Amazon EMR a partir do seu caderno do Studio ou Studio Classic, você pode visualizar uma lista de perfis do IAM, conhecidos como funções de runtime, e selecionar uma delas rapidamente. Posteriormente, todos os seus trabalhos do Apache Spark, Apache Hive ou Presto criados no seu caderno do Studio acessarão somente os dados e recursos permitidos pelas políticas anexadas à função de runtime. Além disso, quando os dados são acessados a partir de data lakes gerenciados com AWS Lake Formation, você pode impor o acesso em nível de tabela e coluna usando políticas anexadas à função de tempo de execução.
Com esse recurso, você e seus colegas de equipe podem se conectar ao mesmo cluster, cada um usando uma função de runtime com permissões correspondentes ao seu nível individual de acesso aos dados. Suas sessões também são isoladas umas das outras no cluster compartilhado.
Para experimentar esse recurso usando o Studio Classic, consulte Aplicar controles refinados de acesso a dados com e o AWS Lake Formation Amazon EMR do Amazon
Pré-requisitos
Antes começar, certifique-se de que os seguintes pré-requisitos sejam atendidos:
-
Use o Amazon EMR versão 6.9 ou superior.
-
Para usuários do Studio Classic: Use a JupyterLab versão 3 na configuração do aplicativo do servidor Studio Classic Jupyter. Essa versão oferece apoio à conexão do Studio Classic com clusters do Amazon EMR usando funções de runtime.
Para usuários do Studio: use uma versão SageMaker de imagem de distribuição
1.10
ou superior. -
Permita o uso de funções de runtime na configuração de segurança do seu cluster. Para obter mais informações, consulte Funções de runtime para as etapas do Amazon EMR.
-
Crie um caderno com qualquer um dos kernels listados em Imagens e kernels compatíveis para se conectar a um cluster do Amazon EMR no Studio ou Studio Classic.
-
Não se esqueça de revisar as instruções em Configurar o Studio para usar funções do IAM em runtime para configurar as funções de runtime.
Cenários de conexão entre contas
A autenticação por função de runtime oferece apoio a vários cenários de conexão entre contas quando seus dados residem fora da sua conta do Studio. A imagem a seguir mostra três maneiras diferentes de atribuir seu cluster, dados e até mesmo a função de runtime do Amazon EMR entre seu Studio e suas contas de dados:

Na opção 1, seu cluster do Amazon EMR e a função de runtime do Amazon EMR estão em uma conta de dados separada da sua conta do Studio. Você define uma política de permissão de função de acesso do Amazon EMR (também referida como Assumable role
) separada que concede permissão ao seu perfil de execução do Studio ou Studio Classic para assumir a função de acesso do Amazon EMR. A função de acesso do Amazon EMR, então, chama a API GetClusterSessionCredentials
do Amazon EMR em nome do seu perfil de execução do Studio ou Studio Classic, dando acesso ao cluster.
Na opção 2, seu cluster do Amazon EMR e a função de runtime do Amazon EMR estão na sua conta do Studio. Sua função de execução do Studio tem permissão para usar a API do Amazon EMR GetClusterSessionCredentials
para obter acesso ao seu cluster. Para acessar o bucket do Amazon S3, conceda à função de runtime do Amazon EMR permissões de acesso ao bucket do Amazon S3 entre contas: você concede essas permissões dentro da sua política de bucket do Amazon S3.
Na opção 3, seus clusters do Amazon EMR estão na sua conta do Studio, e o perfil de runtime do Amazon EMR está na sua conta de dados. Seu perfil de execução do Studio ou Studio Classic tem permissão para usar a API GetClusterSessionCredentials
do Amazon EMR para obter acesso ao seu cluster. Adicione a função de runtime do Amazon EMR ao JSON de configuração da função de execução. Em seguida, você pode selecionar a função na interface do usuário ao escolher seu cluster. Para obter detalhes sobre como configurar seu arquivo JSON de configuração da função de execução, consulte Pré-carregar seus perfis de execução no Studio ou Studio Classic.
Configurar o Studio para usar funções do IAM em runtime
Para estabelecer a autenticação de função de runtime para seus clusters do Amazon EMR, configure as políticas do IAM, a rede e os aprimoramentos de usabilidade necessários. Sua configuração depende de você lidar com regras entre contas, se seus clusters do Amazon EMR, função de runtime do Amazon EMR ou ambos residirem fora da sua conta do Studio. A discussão a seguir orienta você sobre as políticas de instalação, como configurar a rede para permitir o tráfego entre contas e o arquivo de configuração local a ser configurado para automatizar sua conexão com o Amazon EMR.
Configure a autenticação da função de runtime quando o cluster do Amazon EMR e o Studio estiverem na mesma conta
Se seu cluster do Amazon EMR residir em sua conta do Studio, conclua as seguintes etapas para adicionar as permissões necessárias à sua política de execução do Studio:
-
Adicione a política do IAM necessária para se conectar aos clusters do Amazon EMR. Para obter detalhes, consulte Configurar a listagem de clusters do Amazon EMR.
-
Conceda permissão para chamar a API
GetClusterSessionCredentials
do Amazon EMR ao passar uma ou mais funções de runtime do Amazon EMR permitidas e especificadas na política. -
(Opcional) Conceda permissão para transmitir funções do IAM que sigam qualquer convenção de nomenclatura definida pelo usuário.
-
(Opcional) Conceda permissão para acessar clusters do Amazon EMR que são marcados com cadeias de caracteres específicas definidas pelo usuário.
-
Pré-carregue seus perfis do IAM para que você possa selecionar a função a ser usada ao se conectar ao seu cluster do Amazon EMR. Para saber detalhes sobre como pré-carregar suas funções do IAM, consulte Pré-carregar seus perfis de execução no Studio ou Studio Classic.
O exemplo de política a seguir permite que funções de runtime do Amazon EMR pertencentes aos grupos de modelagem e treinamento chamem GetClusterSessionCredentials
. Além disso, o segurado pode acessar clusters do Amazon EMR marcados com as sequências de caracteres modeling
ou training
.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "elasticmapreduce:GetClusterSessionCredentials", "Resource": "*", "Condition": { "StringLike": { "elasticmapreduce:ExecutionRoleArn": [ "arn:aws:iam::123456780910:role/emr-execution-role-ml-modeling*", "arn:aws:iam::123456780910:role/emr-execution-role-ml-training*" ], "elasticmapreduce:ResourceTag/group": [ "*modeling*", "*training*" ] } } } ] }
Configure a autenticação da função de runtime quando o cluster do Studio estiver em contas diferentes
Se seu cluster do Amazon EMR não estiver em sua conta do Studio, permita que sua função de execução de SageMaker IA assuma a função de acesso entre contas do Amazon EMR para que você possa se conectar ao cluster. Conclua as seguintes etapas para configurar sua configuração entre contas:
-
Crie sua política de permissão de função de execução de SageMaker IA para que a função de execução possa assumir a função de acesso ao Amazon EMR. Veja abaixo um exemplo de política:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAssumeCrossAccountEMRAccessRole", "Effect": "Allow", "Action": "sts:AssumeRole", "Resource": "arn:aws:iam::
emr_account_id
:role/emr-access-role-name
" } ] } -
Crie a política de confiança para especificar quais contas do Studio IDs são confiáveis para assumir a função de acesso ao Amazon EMR. Veja abaixo um exemplo de política:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCrossAccountSageMakerExecutionRoleToAssumeThisRole", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
studio_account_id
:role/studio_execution_role
" }, "Action": "sts:AssumeRole" } } -
Crie a política de permissão da função de acesso do Amazon EMR, que concede à função de runtime do Amazon EMR as permissões necessárias para realizar as tarefas pretendidas no cluster. Configure a função de acesso do Amazon EMR para chamar a API
GetClusterSessionCredentials
com as funções de runtime do Amazon EMR especificadas na política de permissão da função de acesso. Veja abaixo um exemplo de política:{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCallingEmrGetClusterSessionCredentialsAPI", "Effect": "Allow", "Action": "elasticmapreduce:GetClusterSessionCredentials", "Resource": "", "Condition": { "StringLike": { "elasticmapreduce:ExecutionRoleArn": [ "arn:aws:iam::
emr_account_id
:role/emr-execution-role-name
" ] } } } ] } -
Configure a rede entre contas para que o tráfego possa ir e voltar entre suas contas. Para obter instruções, consulte Configurar o Configurar o acesso à rede para o cluster do Amazon EMR. As etapas nessa seção ajudam você a concluir as seguintes tarefas:
-
VPC-Peer sua conta do Studio e sua conta do Amazon EMR para estabelecer uma conexão.
-
Adicione rotas manualmente às tabelas de rotas da sub-rede privada em ambas as contas. Isso permite a criação e a conexão de clusters do Amazon EMR da conta do Studio à sub-rede privada da conta remota.
-
Configure o grupo de segurança anexado ao seu domínio do Studio para permitir o tráfego de saída e o grupo de segurança do nó primário do Amazon EMR para permitir o tráfego TCP de entrada do grupo de segurança da instância do Studio.
-
-
Pré-carregar suas funções de runtime do IAM para que você possa selecionar a função a ser usada ao se conectar ao seu cluster do Amazon EMR. Para saber detalhes sobre como pré-carregar suas funções do IAM, consulte Pré-carregar seus perfis de execução no Studio ou Studio Classic.
Configurar o acesso ao Lake Formation
Ao acessar dados de data lakes gerenciados pelo AWS Lake Formation, você pode impor o acesso em nível de tabela e coluna usando políticas anexadas à sua função de tempo de execução. Para configurar a permissão para acesso ao Lake Formation, consulte Integrar o Amazon EMR com AWS Lake Formation.
Pré-carregar seus perfis de execução no Studio ou Studio Classic
Você pode pré-carregar suas funções de runtime do IAM para poder selecionar a função a ser usada ao se conectar ao seu cluster do Amazon EMR. Os usuários do JupyterLab in Studio podem usar o console de SageMaker IA ou o script fornecido.