Estoy intentando ejecutar un servicio gRPC escrito en Golang dentro de Kubernetes. Estoy implementando el servicio (sin SSL). Kubernetes también tiene nginx ejecutándose con flag --enable-ssl-passthrough . Tengo un cliente Go que intenta llamar al servicio gRPC (sin TLS) y recibo el siguiente error:
2020/03/20 18:12:54 rpc error: code = Unavailable desc = connection closed exit status 1 Cuando hago kubectl exec en el módulo de servicio de gRPC y ejecuto el código de cliente dentro del módulo (con la dirección: localhost:<port> ), obtengo el resultado correcto. Pero no puedo comunicarme con el servicio gRPC desde el exterior.
El pod del nginx controller esperaba que el servicio al que se redirige funcione en TLS. Debido a que no había habilitado gRPC seguro dentro del servidor/cliente, la comunicación no pasaba desde el controlador. Habilité el servicio interno TLS/SSL e hice una comunicación segura con el cliente, ¡así que funciona bien ahora!