私は、グーグルマップの距離行列APIへのアクセスでistioが注入されたデプロイメントを持っています。 istioctlkube-injectを実行すると --includeIPRanges 10.0.0.0/8
うまくいくようです。このフラグを削除し、代わりに出力ルールを適用すると、機能しません。
apiVersion: config.istio.io/v1alpha2
kind: EgressRule
metadata:
name: google-egress-rule
namespace: microservices
spec:
destination:
service: "maps.googleapis.com"
ports:
- port: 443
protocol: https
- port: 80
protocol: http
デプロイメントと出力ルールの両方が同じ名前空間(マイクロサービス)にあります。
私のせいはどこにあるのでしょうか?
回答:
回答№1は2走って見たものから curl maps.googleapis.com
、にリダイレクトされます https://developers.google.com/maps/.
ここで2つの問題:
- 追加のEgressRuleを指定しました
developers.google.com
- 現在、ポート443にhttpリクエストを発行して、https外部サイトにアクセスする必要があります。
curl http://developers.google.com/maps:443
。 Istioプロキシはhttps接続を開きますdevelopers.google.com
あなたのために。残念ながら、現在、使用する以外にそれを行う他の方法はありません--includeIPRanges
.