I am trying to establish a connection from the Datastream console to the Oracle database in the Oracle Cloud (OCI). I have already created a VPN tunnel it seems to be working since I connected to the same database by VM in the GCP. But when I try to connect through the Datastream it fails with a timeout connection error. Please the screenshot below
I am using a private connection and in this case the IP range (/29) used by Datastream, we opened in the OCI firewall.
Too, i tested the connectivity used reverse proxy, and happened the same problem. I saw in the VM instance with proxy configured (used tcpdump), that the connection returned to GCP, but showed the same error in the Datastream.
Is there a way I can solve this?
Is there a way I can see logs or something more detailed from the GCP environment to know exactly what's causing the error?
Hello,
Thank you for reaching the Google community. Based on your error it looks like Datastream failed to reach the Oracle server (e.g. no connectivity established) and gave ORA-12170 error. Can you please confirm you have followed this GCP [1] documentation to use Datastream to create a stream from the source database to the destination? You can also follow this Doc[2] to diagnose your issue further.
Hope this helps
Sincerely,
Anik
Reference:
[1] https://cloud.google.com/datastream/docs/network-connectivity-options
[2] https://cloud.google.com/datastream/docs/diagnose-issues
Hi Anik,
I followed the documentation to create the private connectivity and none suggestions in the diagnose issues helped me.
When i try run test connectivity, i see this error message in the log:
I simulate the execution this api in the developers.google.com/oauthplayground and i received the response below. It seems that the API returns "invalid argument" and consequently generates the timeout to the database.
I tried to create the MySql Database in the Cloud SQL and used private connectivity and i received the same error.
API Post https://datastream.googleapis.com/v1alpha1/projects/XXX/locations/XXX/connectionProfiles:discover
Request:
{
"connectionProfile": {
"oracleProfile": {
"username": "XXXXX",
"password": "XXXX",
"databaseService": "XXX",
"hostname": "XXX",
"port": 1521
}
},
"recursive": true
}
{
"error": {
"status": "INVALID_ARGUMENT",
"message": "com.google.apps.framework.request.StatusException: <eye3 title='INVALID_ARGUMENT'/> generic::INVALID_ARGUMENT: ",
"code": 400,
"details": [
{
"reason": "CONNECTION_TIMEOUT",
"@type": "type.googleapis.com/google.rpc.ErrorInfo",
"domain": "datastream.googleapis.com",
"metadata": {
"message": "We timed out trying to connect to the data source. Make sure that the hostname and port configuration is correct, and that the data source is available.",
"uuid": "ce0a8f1a-ac9d-44cc-aa4b-e943b543573d",
"originalMessage": "ORA-12170: TNS:Connect timeout occurred",
"time": "2022-01-27T11:49:19.973302Z"
}
}
]
}
}
were you able to fix the issue? We ended up same issue. Same setup, Oracle DB onpremise.