3. 3
My Career
Apr
‘99
Dec
‘02
HP Japan
IT Consultant
Future System
Consultant
Apr
‘04
BEA Systems
Presales
Jan
‘07
IBM Japan
Presales
Aug
‘13
freelance
Architect
Jul
‘14
Venture(IoT PF)
Chief Architect
Apr
‘17
Red Hat
Sol. Architect
JavaEE
JavaEE
JavaEE
JavaEE Mobile
JavaEE
IoT
BigData
DevOps
Container
ML
DevOps
Delivery Presales DevOps Presales
DevOpsContainer
8. 問題
• システム構成が複雑
ü サービス追加やスケールアウトの手順が複雑
• スローダウンや停止などサービス障害への対応が困難
ü タイムアウトの発生頻度がどれくらいなら障害?
ü 1サービス停止が連鎖的にシステム全体に波及
ü サービス障害原因の特定に時間がかかる
• サービスレベル確保の難しさ
ü リソースの利用状況の一元的な把握が困難
ü 複数サービスを経由したリクエスト・レスポンスの内訳を解析すること
が困難
ü 流量制御とエラーハンドリングを見通しよく実装することが困難
8
18. まとめ
• マイクロサービス化の流れは止められない
ü Cloud Native時代にはコンテナとマイクロサービスが当たり前
ü Polyglot対応など技術的リスク分散の側面もあり
• マイクロサービスの運用管理は簡単ではない
ü 本質的には「超分散システム」
ü 順調に動いていればよいが、問題が起こったときの対応や、問題の防止、
問題の兆候を把握する仕組みを考えておくべき
• サービスメッシュ: マイクロサービスに対応した新たなミドルウェア
ü 運用管理の課題の大部分を解決できる可能性あり
ü コンテナ界隈での最重要プロダクト
ü CNCFの動向は要チェック
18
19. 参考) Envoy(Istio)によるマイクロサービスパターン
l Kubernetes(OpenShift)の"Sidecar Proxy"を利用したマイクロサー
ビスデザインパターンの紹介
Ø "Microservices Patterns with Envoy Sidecar Proxy, Part I: Circuit
Breaking"
https://blog.openshift.com/microservices-patterns-envoy-part-i/
Ø "Microservices Patterns with Envoy Proxy, Part II: Timeouts and
Retries"
https://blog.openshift.com/microservices-patterns-envoy-proxy-
part-ii-timeouts-retries/
Ø "Microservices Patterns With Envoy Proxy, Part III: Distributed
Tracing"
https://blog.openshift.com/microservices-patterns-envoy-proxy-
part-iii/
19
20. 参考) SpringBootマイクロサービス on OpenShiftの
リファレンスアーキテクチャ
l OpenShift(Kubernetes)上でSpringBootベースのマイクロサービスを実
装するためのリファレンスアーキテクチャとサンプルコードを提供
Ø Netflix OSSを中心とした、比較的な保守的なテクノロジスタックを採
用しており、今すぐ使いたいという用途には最適
Ø 最新動向については比較検討のための情報のみ提供
l "Spring Boot Microservices on Red Hat OpenShift Container Platform 3"
Ø https://access.redhat.com/articles/3155471
2
0