概要
前回書いた構成をKubernetesで実装してみます。
環境
- minikube v0.26.1
- kubernetes v1.10.0
成果物
今回のソースです。
続きを読むマイクロサービス化したシステムを運用する上で出てくる課題を解決するパターンとしてService Meshというものがあります。
このService Meshというものは以下の2つのコンポーネントで構成されます。
このData plane
のproxyはSidecarパターンという形で構築します。
今回はそれが生まれた背景などをEnvoyを用いて説明していこうと思います。
そもそもどういった問題背景から生まれたのかを考えます。
最初はシンプルな機能であったため、モノリシックなAPIで十分でした。
しかし機能が増え、チーム人数も増えたためドメイン毎に機能を分けてマイクロサービス化する事を考えます。
また通信のレイテンシを下げるため、gRPCの導入も考えます。
以前はGraceful shutdownをするために以下のようなライブラリを使用していました。
しかしながらGo 1.8 からGraceful Shutdown機能が標準で提供されるようになりました。
今回はその導入方法を紹介します。