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á.
Personalização de perfis do IAM com o Amazon EMR
Talvez seja útil personalizar as permissões e os perfis de serviço do IAM para limitar os privilégios de acordo com seus requisitos de segurança. Para personalizar as permissões, recomendamos que você crie novas funções e políticas. Comece com as permissões nas políticas gerenciadas para as funções padrão (por exemplo, AmazonElasticMapReduceforEC2Role
e AmazonElasticMapReduceRole
). Em seguida, copie e cole o conteúdo em novas declarações de política, modifique as permissões conforme apropriado e anexe as políticas de permissões modificadas às funções que criar. Você deve ter as permissões apropriadas do IAM para trabalhar com perfis e políticas. Para obter mais informações, consulte Permitir que usuários e grupos criem e modifiquem perfis.
Se você criar uma função personalizada do EMR para EC2, siga o fluxo de trabalho básico, que cria automaticamente um perfil de instância com o mesmo nome. A Amazon EC2 permite que você crie perfis e funções de instância com nomes diferentes, mas o Amazon EMR não oferece suporte a essa configuração e isso resulta em um erro de “perfil de instância inválido” quando você cria o cluster.
Importante
As políticas em linha não são atualizadas automaticamente quando os requisitos do serviço são alterados. Se você criar e anexar políticas em linha, lembre-se de que podem ocorrer atualizações de serviço que causem erros de permissão repentinamente. Para obter mais informações, consulte Políticas gerenciadas e em linha no Guia do usuário do IAM e em Especificar perfis personalizados do IAM ao criar um cluster.
Para obter mais informações sobre como trabalhar com perfis do IAM, consulte os seguintes tópicos no Guia do usuário do IAM:
Especificar perfis personalizados do IAM ao criar um cluster
Você especifica a função de serviço para o Amazon EMR e a função para o perfil de EC2 instância da Amazon ao criar um cluster. O usuário que está criando clusters precisa de permissões para recuperar e atribuir funções ao Amazon EMR EC2 e às instâncias. Caso contrário, ocorrerá um EC2 erro na conta não autorizada a fazer chamadas. Para obter mais informações, consulte Permitir que usuários e grupos criem e modifiquem perfis.
Usar o console para especificar perfis personalizados
Ao criar um cluster, você pode especificar uma função de serviço personalizada para o Amazon EMR, uma função personalizada para o perfil da EC2 instância e uma função personalizada do Auto Scaling usando as opções avançadas. Quando você usa as opções rápidas, a função de serviço padrão e a função padrão para o perfil da EC2 instância são especificadas. Para obter mais informações, consulte Perfis de serviço do IAM usados pelo Amazon EMR.
Use o AWS CLI para especificar funções personalizadas
Você pode especificar explicitamente uma função de serviço para o Amazon EMR e uma função de serviço para EC2 instâncias de cluster usando opções com o create-cluster
comando do. AWS CLI Use a opção --service-role
para especificar a função de serviço. Use o InstanceProfile
argumento da --ec2-attributes
opção para especificar a função do perfil da EC2 instância.
O perfil do Auto Scaling é especificado usando uma opção separada, --auto-scaling-role
. Para obter mais informações, consulte Uso do ajuste de escala automático com uma política personalizada para grupos de instâncias no Amazon EMR.
Para especificar funções personalizadas do IAM usando o AWS CLI
-
O comando a seguir especifica a função de serviço personalizada,
MyCustomServiceRoleForEMR
, e uma função personalizada para o perfil da EC2 instância,MyCustomServiceRoleForClusterEC2Instances
, ao iniciar um cluster. Este exemplo usa o perfil padrão do Amazon EMR.nota
Os caracteres de continuação de linha do Linux (\) são incluídos para facilitar a leitura. Eles podem ser removidos ou usados em comandos do Linux. No Windows, remova-os ou substitua-os por um sinal de interpolação (^).
aws emr create-cluster --name "Test cluster" --release-label
emr-7.7.0
\ --applications Name=Hive Name=Pig --service-roleMyCustomServiceRoleForEMR
\ --ec2-attributes InstanceProfile=MyCustomServiceRoleForClusterEC2Instances
,\ KeyName=myKey --instance-type m5.xlarge --instance-count 3
Você pode usar essas opções para especificar funções padrão explicitamente em vez de usar a opção --use-default-roles
. A --use-default-roles
opção especifica a função de serviço e a função do perfil de EC2 instância definido no config
arquivo para o. AWS CLI
O exemplo a seguir demonstra o conteúdo de um config
arquivo para as funções personalizadas especificadas para AWS CLI o Amazon EMR. Com esse arquivo de configuração, quando a --use-default-roles
opção é especificada, o cluster é criado usando MyCustomServiceRoleForEMR
e MyCustomServiceRoleForClusterEC2Instances
. Por padrão, o arquivo config
especifica a service_role
padrão como AmazonElasticMapReduceRole
e o instance_profile
padrão como EMR_EC2_DefaultRole
.
[default] output = json region = us-west-1 aws_access_key_id =
myAccessKeyID
aws_secret_access_key =mySecretAccessKey
emr = service_role =MyCustomServiceRoleForEMR
instance_profile =MyCustomServiceRoleForClusterEC2Instances