iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 12
0
自我挑戰組

SDN/NFV 網路虛擬化調度平台系列 第 12

Day 12 - Kubernetes Istio 簡介

  • 分享至 

  • xImage
  •  

前言

接下來來介紹一下Kubernetes中,Service Mesh 的一個開源解決方案 "Istio"

為什麼要使用Istio

Istio 可以為我們建立具有負載平衡、Service之間個身分驗證、Monitoring 等功能的微服物網路,而服務代碼中的代碼更改很少或沒有更改。Istio 透過在 Kubernetes 環境中部署一個特殊的 sidecar proxy 來擷取微服務之間的所有網路通訊,然後使用 Control Plane 功能設定和管理 Istio,其功能如下所述:

  • 支援 HTTP,gRPC,WebSocket和TCP等自動負載平衡。
  • 支援透過多樣化的路由規則、重試、故障轉移和故障注入對流量進行控制。
  • 支援請求控制及速率限制。
  • 支援叢集內所有流量的自動測量、Log追蹤。
  • 透過支援身分驗證及授權,在叢集之間能夠安全的通訊。

Istio 的核心功能

流量管理

Istio 的規則配置和路由可以使得我們可以控制服務之間的流量。Istio 簡化了像是circuit breaker、timeouts 和 retries 之類的屬性設定,並使得他能夠簡單地完成一些重要的任務,像是A/B測試、金絲雀部署及分階段部署。

藉由對於流量有更好的觀察性及故障恢復能力,不論遇到什麼情況,都可以在引起問題發生前及時發生問題,使得微服務網路更加可靠。

安全性

Istio 提供基本的安全通道,並可管理服務通訊的身分驗證、授權及加密。藉由 Istio,在預設的情況下可以保護通訊的安全,無須更改應用程式,就可以使得我們微服務之間有基本的安全保障。

雖然 Istio 沒有相依於 Kubernetes,但將 Istio 配合 Kubernetes 使用,能在網路的 OSI 模型中的第七層保護 POD 與 POD 之間或服務與服務之間的通訊能力

具可觀察性

Istio 擁有強大的追蹤、和Log記錄能力,能夠使的管理者更了解 Service Mesh 的運作狀況。我們藉由 Istio 的監控能力,可以真正的了解到微服務的效能如何影響到整個通訊的傳遞,也可透過自定義視覺化面板來監控整體 Service Mesh的狀況。

而 Istio 的 Mixer 元件就是負責 Policy Control 及 Telemetry Collection,它提供了Backend Abstraction 和 Intermediation,使得 Istio 的基礎架構的後端實作具有較低的耦合性。

這些功能都能讓我們更有效地來配置Istio,能夠使我們快速有效的檢測及修復 Service Mesh 通訊的問題。

平台支援度

Istio 是可以在多種雲環境中運作的,包括跨Cloud、Kubernetes、Mesos等環境中都可是可以運作的。

Istio的策略執行組件可以擴展和定制,以與現有的ACL,日誌記錄,監控,配額,審核等解決方案集成。

Reference

https://istio.io


上一篇
Day 11 - Service Mesh 簡介
下一篇
Day 13 - Istio 架構介紹
系列文
SDN/NFV 網路虛擬化調度平台30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言