Solucionar problemas de grupos de trabalho habilitados para Spark
Use as informações apresentadas a seguir para solucionar problemas de grupos de trabalho habilitados para Spark no Athena.
Sessão deixa de responder ao usar um perfil do IAM existente
Se você não criou um novo AWSAthenaSparkExecutionRole
para o grupo de trabalho habilitado para Spark e, em vez disso, atualizou ou escolheu um perfil do IAM existente, sua sessão pode deixar de responder. Nesse caso, pode ser necessário adicionar as seguintes políticas de confiança e permissões ao perfil de execução do grupo de trabalho habilitado para Spark.
Adicione a política de confiança exemplificada a seguir. A política inclui uma verificação adjunta confundida para o perfil de execução. Substitua os valores de
, 111122223333
e aws-region
pelo ID da Conta da AWS, pela Região da AWS e pelo grupo de trabalho que você está usando.workgroup-name
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "athena.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "
111122223333
" }, "ArnLike": { "aws:SourceArn": "arn:aws:athena:aws-region
:111122223333
:workgroup/workgroup-name
" } } } ] }
Adicione uma política de permissões como a política padrão a seguir para os grupos de trabalho habilitados para cadernos. Modifique os locais reservados do Amazon S3 e os IDs da Conta da AWS para corresponder aos que você está usando. Substitua os valores de amzn-s3-demo-bucket
,
, aws-region
e 111122223333
pelo bucket do Amazon S3, pela Região da AWS, pelo ID da Conta da AWS e pelo grupo de trabalho que você está usando.workgroup-name
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:ListBucket", "s3:DeleteObject", "s3:GetObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*", "arn:aws:s3:::amzn-s3-demo-bucket" ] }, { "Effect": "Allow", "Action": [ "athena:GetWorkGroup", "athena:CreatePresignedNotebookUrl", "athena:TerminateSession", "athena:GetSession", "athena:GetSessionStatus", "athena:ListSessions", "athena:StartCalculationExecution", "athena:GetCalculationExecutionCode", "athena:StopCalculationExecution", "athena:ListCalculationExecutions", "athena:GetCalculationExecution", "athena:GetCalculationExecutionStatus", "athena:ListExecutors", "athena:ExportNotebook", "athena:UpdateNotebook" ], "Resource": "arn:aws:athena:
:
aws-region
111122223333
:workgroup/workgroup-name
" }, { "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:DescribeLogStreams", "logs:CreateLogGroup", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs::
aws-region
111122223333
:log-group:/aws-athena:*", "arn:aws:logs::
aws-region
111122223333
:log-group:/aws-athena*:log-stream:*" ] }, { "Effect": "Allow", "Action": "logs:DescribeLogGroups", "Resource": "arn:aws:logs::
aws-region
111122223333
:log-group:*" }, { "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData" ], "Resource": "*", "Condition": { "StringEquals": { "cloudwatch:namespace": "AmazonAthenaForApacheSpark" } } } ] }