By using AWS re:Post, you agree to the AWS re:Post Terms of Use

AWS Glue Test Connection: Failed with ''InvalidInputException: Unable to resolve any valid connection"

0
  1. RDS oracle DB is created in account A and publicly access is enabled

  2. Oracle DB can be accessed via SQL Developer using Hostname = <Endpoint> of oracle DB in step 1 Port = 1521 SID = xx

  3. Under AWS Glue, Data connection is created in account B using JDBC to access oracle DB in step 1 --- JDBC URL = jdbc:oracle:thin:@//<Endpoint>:1521:<sid>

  4. However, testing the connection gives error ''InvalidInputException: Unable to resolve any valid connection"

Please advise what is missing or incorrect. Thank you

2 Answers
0

If your trying to access the Oracle Instance in Account A over the public internet, then your Glue Subnet needs to be on a private subnet with a route to a NAT gateway for 0.0.0.0/0.

Also if your doing VPC Peering and you want to use the Peering link and not the public IP, then ensure you have enabled Private DNS Resoution on the peering connection

profile picture
EXPERT
answered 2 months ago
  • @Gary Mclean Below are additional steps taken. But it is giving error Failed to test connection <connectionName> due to FAILED status. ERROR StatusLogger Unrecognized format specifier [d] ERROR StatusLogger Unrecognized conversion specifier [d] starting at position 16 in conversion pattern. .......

    Any idea?

    1. VPC Peering is configured with VPC of Account B as Requester VPC and VPC of Account A as Accepter VPC.
    2. Allow accepter VPC to resolve DNS of hosts in requester VPC to private IP addresses - Enabled.
    3. Allow requester VPC to resolve DNS of hosts in accepter VPC to private IP addresses - Enabled.
    4. Security group of Account B is configured with self-referencing inbound & outbound rule
    5. VPC endpoint is configured in Account B to access S3
    6. Connection to use JDBC driver - ojdbc11.jar OR ojdbc8.jar
0

Based on the information provided, there are a few potential reasons for the "InvalidInputException: Unable to resolve any valid connection" error when testing the AWS Glue connection. Here are some points to consider and potential solutions:

  1. Cross-Account Access: Since the RDS Oracle DB is in Account A and the AWS Glue connection is being created in Account B, you need to ensure proper cross-account access is set up. This may involve:
  • Configuring the security group of the RDS instance to allow inbound traffic from Account B's VPC or specific IP ranges.
  • Setting up appropriate IAM roles and policies in both accounts to allow cross-account access.
  1. Network Configuration: Even though the RDS Oracle DB has public access enabled, AWS Glue might not be able to connect directly over the public internet. Consider:
  • Setting up a VPC peering connection between Account A and Account B.
  • Using AWS PrivateLink to establish a private connection between the two accounts.
  1. Connection Properties: Ensure that all required connection properties are correctly specified in the AWS Glue connection. For an Oracle JDBC connection, you typically need:
  • CONNECTION_URL (JDBC URL)
  • USERNAME
  • PASSWORD
  • JDBC_DRIVER_CLASS_NAME (usually oracle.jdbc.driver.OracleDriver)
  1. Security Groups and Firewall Rules: Verify that the security groups associated with the RDS instance allow inbound traffic on port 1521 from the appropriate sources (e.g., AWS Glue's IP ranges or VPC).

  2. SSL/TLS Configuration: If the RDS instance requires SSL/TLS connections, ensure that the appropriate SSL parameters are included in the JDBC URL or connection properties.

  3. Custom JDBC Driver: If you're using a specific version of the Oracle JDBC driver, you may need to upload it to an S3 bucket and specify it in the Glue connection properties.

  4. Secrets Manager: If you're storing connection credentials in AWS Secrets Manager, ensure that the Glue service role has permission to access the secret.

To troubleshoot further:

  • Double-check all connection parameters, especially the JDBC URL, username, and password.
  • Review the network configuration and security settings in both accounts.
  • Check AWS Glue logs for more detailed error messages.
  • Consider using a custom JDBC driver if the issue persists with the default driver.

If the problem continues after verifying these points, you may need to engage AWS support for further assistance, as there could be account-specific or service-related issues that are not immediately apparent.

Sources
Troubleshooting connection issues in AWS Glue - AWS Glue
JDBC connections - AWS Glue
ConnectionInput - AWS Glue
Connection API - AWS Glue

profile picture
answered 2 months ago
profile picture
EXPERT
reviewed 2 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions