#istio
#istio
Вопрос:
Я использую Istio в качестве сервисной сетки в AKS и устанавливаю внедрение sidecar для всех служб внутри сетки. Меня попросили использовать только имена служб (без номеров их портов) для взаимодействия в кластере между службами. У меня есть две службы gRPC: клиентская служба gRPC и служба gRPC (которая была определена для прослушивания порта 5003). Когда я использую следующий адрес от клиента, он отлично работает: «http: //{имя службы}: 5003», но когда я использую следующий адрес: «http://{namesapce}.{имя службы}», я продолжаю получать ошибку 500 и могу передать ее. Согласно тому, что я прочитал, предполагается, что для работы с текстом wstrong без номера порта, но это не так. Может ли кто-нибудь помочь мне решить эту проблему?
Ниже приведены службы gRPC yaml и установленные мной правила шлюза, виртуальной службы и назначения: введите описание изображения здесь
Комментарии:
1. Я думаю, что адрес должен быть
service-name.namespace.svc.cluster.local
, не могли бы вы попробовать с этим? 1. Они оба находятся в одном пространстве имен? 2. Не могли бы вы попробовать добавить сетчатый шлюз, как здесь ?2. Привет, 1) Обе службы принадлежат к пространству имен «clipper» (одному и тому же). 2) Я добавил шлюз (он прикреплен к моему сообщению) Спасибо
3. Кроме того, я попробовал ваше предложение использовать «vice-name.namespace.svc.cluster.local», и я все еще получаю ошибку 500
4. Привет @N.Rotner тебе удалось заставить это работать? Насколько я проверяю, ошибка grpc 500 является внутренней ошибкой сервера. Обычно ошибка сервера. Поэтому я не уверен, связано ли это с istio.
gateways.mesh
Я имею в виду, что вы можете добавить его в свой шлюз для связи внутри сетки. Взгляните на приведенный ниже кодhosts: - reviews.prod.svc.cluster.local - uk.bookinfo.com gateways: - some-config-namespace/my-gateway - mesh # applies to all the sidecars in the mesh
.5. Спасибо, Якуб. Я не понял, какую оболочку я пишу в части «- mesh»?