Hi Support,
I've designed different microservices and each microservice I'm planning to deploy on its own cloud run instance. All the microservices are dockerized and able to communicate with each other fine on a TCP connection (Not using an HTTP connection for inter-communication between services) on local server. Basically, there will be one gateway with http connectivity and the rest of the services will talk with each other on a TCP connection.
However, after deploying these services on a cloud run, the gateway is accessible, but, it can not connect with other microservices resulting in a connection timed-out error after waiting for a long.
As these services are non-HTTP services, can cloud run or any other serverless architecture help me in my scenario?
Any help or guidance would be appreciated.
Regards
~Satish
Hi @SatishLakhani,
Welcome to Google Cloud Community!
You could try setting ingress by following this documentation. You could also check this documentation on private networking and Cloud Run for additional information and options to setup your connectivity.
You could also reach out to our Google Cloud Support hub for additional assistance with regards your concern.
Hope this helps.
Hi @robertcarlos ,
Thank you for your response.
In my situation, I am not restricting any connection to my service via private networking or anything. I have enabled "Allow direct access to your service from the Internet" in the ingress settings. Also, deployment goes well with the health check status as 'passed'. The issue is that when I try to connect it from any external service using the default cloud-run URL then it fails to connect and throws a connection timed-out error. So setting up any networking configs as per your suggestion, would really help? At the moment fully opened service (without any ingres restriction) it is failing to connect.
Moreover, my services are non-HTTP services and don't listen to HTTP connections. So is it even possible to host such services on the cloud run successfully? After researching on the internet, people say serverless architecture such as cloud run, and cloud function can serve only HTTP / HTTPS traffic. Is that correct? Cloud run won't be of any use for non-http services?
Looking forward to your valuable response.
Regards
~Satish