- Newest
- Most votes
- Most comments
The issue you're experiencing with connecting Azure SQL Server as a source for AWS Glue jobs is related to network access restrictions. The error message indicates that the client IP address (in this case, an AWS Glue IP) is not allowed to access the Azure SQL Server.
To resolve this issue, you have a few options:
-
VPC Endpoint: Instead of relying on public IP addresses, you can set up a VPC endpoint for AWS Glue to establish a private connection between your VPC and Azure SQL Server. This approach provides a more secure and stable connection.
-
IP Range Allowlist: If using a VPC endpoint is not feasible, you can try to determine the IP range used by AWS Glue in your region and add that range to the Azure SQL Server's firewall rules. However, as you've noticed, this can be challenging due to the dynamic nature of AWS Glue's IP addresses.
-
Azure Service Endpoint: On the Azure side, you can configure a service endpoint for Azure SQL that allows secure access from your AWS VPC. This would require setting up Azure ExpressRoute or a VPN connection between AWS and Azure.
-
Temporary Firewall Rule: As a temporary solution for testing, you could open the Azure SQL Server firewall to allow all IP addresses. However, this is not recommended for production use due to security risks.
-
Azure SQL Managed Instance: If your setup allows, consider using Azure SQL Managed Instance instead of Azure SQL Server. It provides more flexible networking options and can be easier to integrate with AWS services.
Before implementing any of these solutions, ensure that your AWS Glue job's IAM role has the necessary permissions to access the Azure SQL connection details stored in AWS Secrets Manager.
Remember to review and adjust your network security groups and firewall rules on both AWS and Azure sides to allow the necessary traffic while maintaining security best practices.
Sources
Troubleshooting connection issues in AWS Glue - AWS Glue
Azure SQL connections - AWS Glue
Creating a Azure SQL connection - AWS Glue
AWS Glue connection properties - AWS Glue
Hi,
I think that this article gives you the solution you're after: assigning a fixed public IP address to your Glue client so that you can easily allowlist it on the Azure side.
See https://repost.aws/knowledge-center/glue-route-etl-traffic-static-ip
Best,
Didier
If your not using site to site VPN between AWS and azure and using public IP address as you are in your screen shot, then connect your Glue job to your VPC and use a NAT gateway. You will have an elastic IP associated which will never change.
White list the NAT gateway public IP. If you have multiple AZs and NAT gateways, white list each NAT gateway.
Relevant content
asked 2 years ago
asked 3 years ago

A lot of these answers are incorrect and not plausable.