接下來五天會介紹一下Service Mesh,並介紹在kubernetes上Service Mesh的應用,以下是針對Service Mesh做一個筆記
Service Mesh又譯作“服務網格”,作為服務間通信的基礎設施層。Buoyant 公司的CEO Willian Morgan 在他的這篇文章WHAT'S A SERVICE MESH? AND WHY DO I NEED ONE? 中解釋了什麼是Service Mesh,為什麼Cloud Native應用需要Service Mesh。
Service Mesh 通常指的是微服務與微服務之間的通訊,而隨著我們現代的網路及應用程式的複雜度提高,微服務也變得越來越難管理,因此就產生一些 Service Mesh 的解決方案,在kubernetes上有Istio、Linkerd、Envoy等開源的解決方案。而這些開源專案就是要解決以下問題: Service Discovery、Load Balance、Fault Tolerance、Monitoring等問題。
Service Mesh有以下幾個特點:
Service Mesh 的觀念沒有讓我們帶來革新,而是將Service Mesh 加入到 Kubernetes 當中能提升整個 Kubernetes 的應用能力,像是增強水平擴展能力、編排複雜環境的能力及建立應用程式之間的相依能力,將 Service Mesh 運用在 Kubernetes 上能夠減少開發人員所關心的一些服務與服務之間的問題,得以快速解決。
https://www.servicemesher.com/istio-handbook/concepts-and-principle/what-is-service-mesh.html
https://buoyant.io/2017/04/25/whats-a-service-mesh-and-why-do-i-need-one/