Как маршрутизировать gRPC в Истио?
Я новичок в сфере сервисных сеток, поэтому я сделал несколько PoC для базовой реализации микросервисов в kubernetes с istio.
У меня есть 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
1 ответ
Цитируя Istio Docs,
Сервисные порты должны быть названы. Имена портов должны иметь форму {protocol}[-{суффикс}] с http, http2, grpc, mongo или redis, чтобы использовать преимущества возможностей маршрутизации Istio.
Таким образом, конфигурация Сервиса должна быть:
apiVersion: v1
kind: Service
metadata:
name: grpcserver
labels:
app: grpcserver
spec:
ports:
- port: 8080
name: grpc
selector:
app: grpcserver