0

grpc を介して相互に通信する 2 つのサービスを実行しています。

[ Service A ] ------ grpc -----> [ Service B ]

サービス B は、 で通常の k8s イングレスを介して公開されexample.comます。これが、サービス A がリクエストを確認したときに B に対処する方法です。

Istio コントロール プレーンをインストールし、サービス B でサイドカー インジェクションを有効にしました。

[ Service A ] ------ grpc -----> [ Istio / Envoy sidecar ]
                                      |
                                      |-> [ Service B ]

ここで、サービス B の異なるバージョン間でトラフィックを分割したいと思います。仮想サービスと宛先ルールを展開しました。どちらも<service_name>.<namespace>、入力エンドポイント ( example.com) の代わりに形式を使用してサービス B を参照します。後者は「サービス」につながるためです。 Kiali で「見つかりませんでした」というエラーが表示されます。<service_name>.<namespace>ただし、フォーマットを使用するとうまくいくようです。

問題は、仮想サービスに含めた加重トラフィック分割ルールが有効にならないことです。これが機能するために、通常の k8s イングレスの代わりにイングレス ゲートウェイが必要かどうか疑問に思っています。そうでない場合、問題をトラブルシューティングするために他に何を参照することをお勧めしますか?

前もって感謝します。

4

0 に答える 0