今回は、前回のIstio記事の構成について思っていた疑問点を、GoogleNextにせっかく参加したので聞いてみましたという記事です。
前回構成の疑問点
前回の構成図は下記のようなものでした。
これにて一見落着っぽいのですが、
ふと「あれ、これマルチクラスタとかできないのでは?」
Regional IPをそのまま istio-ingressgatewayのserviceに紐づけてしまったので、
Istioを使うためにはマルチクラスタ構成ができないのか…?GCLB使いたいときは…?
これが疑問点でした。
The Expert Response
Ask the Expertブースにはかの有名なイアン氏がいたので(日本語ペラペラ)、聞いてみました。
Istioはあまり把握していないとのことだったのですが、
「istio-ingressgatewayもserviceなのだから、LoadBalancerIPでexposeするのでなく、NodePortで公開してしまって、GCLBからはGKEのinstance groupに対してトラフィックを流せばいいのでは?」とのこと。
ズバリ下記構成です(podは省略)。
た、たしかに。
Istioの公式にも、istio-ingressgatewayをそのまま公開すべし、といった話はなく、NodePort使う場合には?みたいな説明もありました。
https://istio.io/docs/tasks/traffic-management/ingress/#determining-the-ingress-ip-and-ports-when-using-a-node-port
まだ試してませんが、こうすればGlobal IPも使えるし、マルチクラスタもできそうです。
どのみち既存構成からダウンタイムなしでIstio化することはなかなか難しそうではあります。
この記事は元記事の転載です。