Hello, I am running tyk with gRPC as proxy passthrough.
Tyk is deployed in k8s, using ingress
When I call using postman I am having issue, I always get
13 INTERNAL
Status code 13 INTERNAL Received RST_STREAM with code 0 (Call ended without gRPC status)
In tyk logs everything looks fine even I see logs in pod that tyk reached it. Can you help me please?
tyk logs
time="Sep 26 09:12:35" level=debug msg="Started proxy"
time="Sep 26 09:12:35" level=debug msg=Started api_id=grpc_test api_name=grpc_test mw=ReverseProxy org_id=default ts=1758877955178161976
time="Sep 26 09:12:35" level=debug msg="Upstream request URL: /Proto.Example/get" api_id=grpc_test api_name=grpc_test mw=ReverseProxy org_id=default
time="Sep 26 09:12:35" level=debug msg="Outbound request URL: h2c://xxxxxx" api_id=grpc_test api_name=grpc_test mw=ReverseProxy org_id=default
time="Sep 26 09:12:35" level=debug msg=Finished api_id=grpc_test api_name=grpc_test mw=ReverseProxy ns=2653747 org_id=default
time="Sep 26 09:12:35" level=debug msg="Upstream request took (ms): 2.718733"
time="Sep 26 09:12:35" level=debug msg="Done proxy"
api config
{
“name”: “grpc_test”,
“api_id”: “grpc_test”,
“org_id”: “default”,
“proxy”: {
“listen_path”: “/”,
“target_url”: “h2c://xxxx”,
“strip_listen_path”: true,
“transport”: {
“ssl_insecure_skip_verify”: true
}
},
“protocol”: “http”,
“use_keyless”: true,
“version_data”: {
“not_versioned”: true,
“versions”: {
“default”: {
“name”: “default”,
“global_size_limit”: 4048576
}
}
},
“enable_detailed_logging”: true
}
tyk config
{
“listen_port”: 8080,
“node_secret”: “”,
“secret”: “xxxxx”,
“allow_insecure_configs”: true,
“enable_admin_api”: true, #
Enable Admin API
“admin_api_path”: “/tyk”, #
Set correct Admin API path
“enable_analytics”: true,
“enable_debug”: true,
“http_server_options”: {
“max_request_body_size”: 20000 # in bytes
“enable_http2”: true,
“enable_websockets”: true,
“flush_interval”: 1
},
“proxy_enable_http2”: true,
“oauth_token_expire”: 7200,
“oauth_token_expired_retain_period”: 7200,
“log_level”: “debug”,
“storage”: {
“type”: “redis”,
“host”: “redis”,
“port”: 6379
},
“policies”: {
“policy_source”: “file”,
“policy_record_name”: “/etc/tyk/policies/policies.json”
}
}
Also tried to set protocol to h2c but after that api is not working at all. Dont see anything in logs a client finished with error
Thank you