天天看點

Istio安裝以及部署示例微服務

安裝

提前準備好k8s環境,下載下傳Istio安裝包,我這裡使用的1.6.14版本,k8s版本為v1.19.8

檢視不同安裝模式的配置檔案清單

可以列印配置檔案内容(選做)

使用demo模式的配置安裝

驗證是否安裝成功

以端口轉發模式臨時暴露20001端口,進入kiali界面

若想直接暴露端口,則設定以NodePort暴露端口

改為下圖部分

檢視istio裡安裝的其他服務,比如grafana、Jaeger(tracing)也可以這樣暴露出來

運作示例微服務Bookinfo

架構圖:

Istio安裝以及部署示例微服務

Bookinfo 應用分為四個單獨的微服務, 這些服務對 Istio 并無依賴,但是構成了一個有代表性的服務網格的例子:它由多個不同語言編寫的服務構成,并且其中有一個應用會包含多個版本。

<code>productpage</code> 會調用 <code>details</code> 和 <code>reviews</code> 兩個微服務,用來生成頁面。

<code>details</code> 中包含了書籍的資訊。

<code>reviews</code> 中包含了書籍相關的評論。它還會調用 <code>ratings</code> 微服務。

<code>ratings</code> 中包含了由書籍評價組成的評級資訊。

<code>reviews</code> 微服務有 3 個版本,可用來展示各服務之間的不同的調用鍊路:

v1 版本不會調用 <code>ratings</code> 服務。

v2 版本會調用 <code>ratings</code> 服務,并使用 1 到 5 個黑色星形圖示來顯示評分資訊。

v3 版本會調用 <code>ratings</code> 服務,并使用 1 到 5 個紅色星形圖示來顯示評分資訊。

建立命名空間

Istio] 預設自動注入 Sidecar,為 <code>bookinfo</code> 命名空間打上标簽 <code>istio-injection=enabled</code>:

部署服務

檢視pod

部署網關

檢視暴露的端口

通路,就可以看到頁面

加壓

然後檢視kiali、grafana、Jaeger(tracing)就會出現資料,kiali預設賬戶密碼都是admin

Istio安裝以及部署示例微服務

每個人都有潛在的能量,隻是很容易被習慣所掩蓋,被時間所迷離,被惰性所消磨~

繼續閱讀