2018-11-10-Istio Traffic Management on shinjuku mokumoku proguramming vol.21
Istio Tra cManagement@threetreeslighton shinjuku mokumoku programming #211 / 19
View Slide
WhoVP of Engineering at最近は⼈事部⻑やEventおじさんと揶揄されます Repro2 / 19
最近はtypingおじさんとまで 3 / 19
やっていきっ4 / 19
今⽇やることIstio pilotのresouceが多いので、そこらへんの調整Istioの設定、および監視の設定5 / 19
できたことIstio pilotのresouceが多いので、そこらへんの調整Istioの設定、および監視の設定6 / 19
なにをしていたかGKEを1.9.7-gke.5 -> 1.9.7-gke.7にupgradeしたらいろいろ死んだ!なのでIstioのtraffic managementについて学び直す7 / 19
What is Istio?kubernetes上にservice meshを実現するフレームワークです8 / 19
Istio tra c management can ...9 / 19
ここが嬉しい1. compornent間の通信を宣⾔的に書ける2. canary releaseが簡単にできる3. trafficをmirreringできる4. latencyを仮想的に実現できる5. circit braker機能を宣⾔的に書ける10 / 19
それが実現できるということはそれなりに設定を書く必要がある1.定義したpodは基本的にenvoy (sidecar proxy server)にしかアクセスできない2.基本的にenvoyは外部へも通信を許可しない(どこ向けのアクセスか把握できないため?)3.トラフィックルーティングを定義することで通信が可能となる11 / 19
kubernetesのservice, ingressの考えを⼀旦捨てる必要がある12 / 19
Custom Resource新たに登場するresourceたち1. DestinationRule2. VirtualService3. Gateway4. ServiceEntry5. DestinationPolicy13 / 19
DestinationRule通信先として仮想的なhost名を定義するsubsetsを更に定義でき、content(userなど)やversion(canary)など通信先を細かく制御できる14 / 19
VirtualService公開する通信先を定義する15 / 19
GatewayIstio ingressへの通信をどこにproxyするか決める16 / 19
ServiceEntry外部への通信について設定を記述する17 / 19
DestinationPolicy通信先ごとのcircit braker機能を記述18 / 19
遊んでみて⼤体イメージが付いたので頑張っていく19 / 19