Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
What is service mesh?
Search
threetreeslight
September 22, 2018
0
32
What is service mesh?
What is service mesh? on shinjuku-mokumoku vol.15
threetreeslight
September 22, 2018
Tweet
Share
More Decks by threetreeslight
See All by threetreeslight
実録 採用一投入魂
threetreeslight
0
11
Bottleneck is You
threetreeslight
0
87
Japan Office Society オフィスはスタートアップの成長を助長するのか?阻害するのか?
threetreeslight
0
100
スタートアップは見極められたくない
threetreeslight
0
36
VPoEの責務とは
threetreeslight
0
67
CiecleCIでもくもく会を支える技術
threetreeslight
0
48
Ego vs higher self
threetreeslight
0
37
Performance Hack 101
threetreeslight
0
82
複数のスタートアップを 通して得た失敗と学び
threetreeslight
0
66
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Into the Great Unknown - MozCon
thekraken
35
1.6k
The Invisible Side of Design
smashingmag
299
50k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
The Cost Of JavaScript in 2023
addyosmani
47
7.4k
Building Applications with DynamoDB
mza
93
6.2k
Being A Developer After 40
akosma
89
590k
Embracing the Ebb and Flow
colly
84
4.6k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
Designing for humans not robots
tammielis
250
25k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
Transcript
What is service mesh? @threetreeslight on shinjuku mokumoku programming #15
1 / 24
Who VP of Engineering at Event Organizer おじさん Repro 2
/ 24
ネットワーク上の異なるコンピュータ上にコンポー ネントが配置されているシステム e.g. cloud 系のmanaged service を使ったsystem Distributed System? 3
/ 24
牧歌的な分散システム シンプルなサービスであればこんなイメージで⾏け るが、考えるべきことは多い 4 / 24
1. ネットワークは落ちない 2. 遅延はゼロ 3. 無限の帯域 4. セキュア 5. 変更されないトポロジ
6. ⼀⼈の管理者 7. 転送コストはゼロ 8. 均⼀なネットワーク Fallacies of distributed computing 5 / 24
誤った考えに は対策しなき ゃいかん 6 / 24
さらに求められること Rapid provisioning of compute resources Basic monitoring Rapid deployment
Easy to provision storage Easy access to the edge Authentication/Authorisation Standardised RPC etc... 7 / 24
これはやばい 8 / 24
対策としての 1. service discovery 2. circuit breakers 9 / 24
Service Discovery 10 / 24
What's Service Discovery 特定の要求を満たすサービスのインスタンスやコン テナを⾃動的に⾒つけるプロセスのこと 11 / 24
Typically Service Discovery 以下のhealth check によって実現される事が多い 1. DNS 2. load
balancer 12 / 24
more complex requirement 1. client の負荷分散 2. staging, production などの異なる環境
3. 別リージョン、クラウドに散らばる となると典型的な⽅法では苦しい、、、 13 / 24
circuit brakers 14 / 24
concern of remote request Remote Request は、timeout になるまでhang する その状態で多数のrequest
がくるとresource を⾷いつぶ して死ぬかもしれない ref Martin Fowler - CircuitBreaker 15 / 24
何度も同じことをする すべてのサービスにおいて同じようなコードを同じ ように書きまくる必要がある 16 / 24
こんな感じ 開発者はこれを意識しなければいけない 17 / 24
上記を踏まえ た昨今 18 / 24
サービス規模・⼈員規模がそれなりになってくると 出てくること マイクロサービスいっぱい AWS, GCP の楽しいマルチクラウド いわゆる distributed microservice architecture
19 / 24
開発者もDevOps も死ぬ 可搬性・スケーラビリティを考えたマイクロサービス設 計 必要とされている知識は利⽤するクラウドとサービス数 だけある 監視のための各種サービスのlog, metrics の収集、そのフ ォーマットの共通化
サービス間の認証・認可によるアクセス制御 20 / 24
特に認証認可は、、、 上記の問題を解決するために⾔語向けSDK を提供して いた。が サービスごとにリリースサイクルは異なる SDK 提供する⾔語でしか効果がない 結果、SDK が揃わない。開発者はこれを意識しなけれ ばいけない
21 / 24
しょうがないから、、、 service と分離し、sidecar でいく 22 / 24
そこでIstio 1. 勝⼿にサイドカー⽴てる 2. 上記の問題を解決するための設定を外部から注⼊ provides a uniform way to
secure, connect, and monitor microservices. 23 / 24
ref SOTA - Service mesh とは何か Phil Calçado - Pattern:
Service Mesh The mechanics of deploying Envoy at Lyft Orilly - seeking SRE Introducing Istio Service Mesh for Microservices Martin Fowler - CircuitBreaker 24 / 24