Не удалось подключиться к AWS Glue для подключения к DataBrew.
Я пытаюсь начать работу с AWS Databrew, используя подключение к Redshift. Я добавил подключение к AWS Glue, и оно работает во время тестирования. Когда databrew пытается использовать это соединение, выдается следующая ошибка. И датабрю, и клей находятся в одном регионе.
{"error":"Failure reading from input connection AwsGlueDataBrew-databrew-to-redshift with \"public.table\": Unable to reach AWS Glue to get connection AwsGlueDataBrew-databrew-to-redshift. Exception: Connect timeout on endpoint URL: \"https://glue.us-west-2.amazonaws.com/\""}
Политика, связанная с проектами, выглядит следующим образом:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"glue:GetDatabases",
"glue:GetPartitions",
"glue:GetTable",
"glue:GetTables",
"glue:GetConnection"
],
"Resource": [
"*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::databrew-public-datasets-*"
]
},
{
"Effect": "Allow",
"Action": [
"ec2:DescribeVpcEndpoints",
"ec2:DescribeRouteTables",
"ec2:DescribeNetworkInterfaces",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSubnets",
"ec2:DescribeVpcAttribute",
"ec2:CreateNetworkInterface"
],
"Resource": [
"*"
]
},
{
"Effect": "Allow",
"Action": "ec2:DeleteNetworkInterface",
"Condition": {
"StringLike": {
"aws:ResourceTag/aws-glue-service-resource": "*"
}
},
"Resource": [
"*"
]
},
{
"Effect": "Allow",
"Action": [
"ec2:CreateTags",
"ec2:DeleteTags"
],
"Condition": {
"ForAllValues:StringEquals": {
"aws:TagKeys": [
"aws-glue-service-resource"
]
}
},
"Resource": [
"arn:aws:ec2:*:*:network-interface/*",
"arn:aws:ec2:*:*:security-group/*"
]
},
{
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Resource": [
"arn:aws:logs:*:*:log-group:/aws-glue-databrew/*"
]
},
{
"Effect": "Allow",
"Action": [
"lakeformation:GetDataAccess"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"secretsmanager:GetSecretValue"
],
"Resource": "arn:aws:secretsmanager:*:*:secret:databrew!default-*"
}
]
}
Может ли кто-нибудь помочь мне решить эту проблему?
Спасибо.
1 ответ
Это происходит из-за того, что сервис DataBrew пытается получить доступ к конечной точке сервиса AWS Glue, когда вы пытаетесь использовать проект/задание. (Функциональность тестового подключения AWS Glue работает иначе)
У вас есть два способа решить эту проблему
- Подключите конечную точку VPC для сервиса AWS Glue в своем VPC. Это обеспечит безопасный доступ к сервису Glue.
- Откройте свое VPC для общедоступного Интернета, чтобы любой трафик из вашего VPC мог проходить через Интернет, а вызовы API к службе Glue выполнялись успешно.
Я рекомендую вариант № 1, так как он более безопасен (и проще), но сопряжен с некоторыми накладными расходами.