我是服务网格事物的新手,所以我使用istio在kubernetes中对微服务的基本实现进行了一些PoC。
我有2个部署,应该使用gRPC相互通信。当我呼叫grpc服务器时,它返回错误rpc error: code = Internal desc = server closed the stream without sending trailers
这是我的grpc服务配置:
apiVersion: v1
kind: Service
metadata:
name: grpcserver
labels:
app: grpcserver
spec:
ports:
- port: 8080
name: http
selector:
app: grpcserver
答案 0 :(得分:4)
引用Istio docs,
必须命名服务端口。为了使用Istio的路由功能,端口名称必须采用{protocol} [-{suffix}]的形式,并带有http,http2,grpc,mongo或redis作为。
因此,服务配置应为:
apiVersion: v1
kind: Service
metadata:
name: grpcserver
labels:
app: grpcserver
spec:
ports:
- port: 8080
name: grpc
selector:
app: grpcserver