一鍵體驗 Istio

背景介紹

Istio 是一種服務網格,是一種現代化的服務網路層,它提供了一種透明、獨立於語言的方法,以靈活且輕鬆地實現應用網路功能自動化。它是一種管理構成雲原生應用的不同微服務的常用解決方案。Istio 服務網格還支援這些微服務彼此之間的通訊和數據共享方式。Istio 的學習與使用具有一定的門檻,對初學者可能不太友好,官方示例也不一定能運行成功,本文將介紹一個開源工具讓你一鍵體驗 Istio。

 

伺服器準備

為了方便演示以及備案的煩惱,本文會在騰訊雲開通兩台 4 核 8 G 按量付費的香港競價實例,如果已有伺服器可跳過此步。

1. 開通香港競價實例

 

2. 選擇配置 – 4 核 8G

 

3. 選擇作業系統 – CentOS 7.9

 

4. 設置實例數量 – 2 台

 

5. 選擇網路 – Default,選擇頻寬 – 按使用流量 100Mbps

 

6. 選擇安全組 – 默認,放通所有埠

 

7. 設置密碼 – 這裡使用 @ErikXu1234

 

8. 開通

 

安裝 Kubernetes

準備好伺服器後,資訊如下:

角色 內網 IP 公網 IP
master 172.19.0.11 43.155.112.62
node 172.19.0.4 43.154.249.121

 

 

為了方便快速安裝 kubernetes,這裡使用 sealos 進行安裝。更多 sealos 的資訊,可查看://www.sealos.io/docs/getting-started/installation,也可以直接使用本文介紹的工具安裝,工具封裝了 sealos 。

 

1. 下載安裝工具

在 master 伺服器上,執行以下指令:

# 下載
wget https://github.com/ErikXu/power-ci/releases/download/0.1.1/power-ci.tar.gz

# 解壓
tar -xzvf power-ci.tar.gz

# 設置許可權
chmod +x power-ci

 

2. 安裝 kubernetes

執行以下指令安裝 kubernetes:

./power-ci k8s install --masters 172.19.0.11 --nodes 172.19.0.4 --password @ErikXu1234

等待 5-10 分鐘,完成 kubernetes 安裝:

 

安裝 Istio

在 master 伺服器上,執行以下指令,其中 erikxu.com 可以換成你的域名:

./power-ci istio install --domain erikxu.com

等待 5-10 分鐘,完成 Istio 安裝:

 

體驗 Istio

1. 修改本地 hosts

由於沒有 erikxu.com 的域名解析權,所以只能修改本地 hosts,把以下域名解析到 node 的公網 IP

43.154.249.121 bookinfo.erikxu.com
43.154.249.121 grafana.erikxu.com
43.154.249.121 jaeger.erikxu.com
43.154.249.121 kiali.erikxu.com
43.154.249.121 prometheus.erikxu.com

 

2. 訪問示例頁面 – //bookinfo.erikxu.com:30080/productpage

 

多次刷新頁面觸發不同版本(右邊多了星星):

 

3. 訪問 kiali 查看流量調用情況 – //kiali.erikxu.com:30080

 

4. 訪問 jaeger 查看調用鏈 – //jaeger.erikxu.com:30080 

調用鏈列表:

 

調用鏈細節:

 

調用關係:

 

5. 訪問 grafana 查看監控資訊 – //grafana.erikxu.com:30080 

 

 

6.訪問 prometheus 查看監控和 kiali 源數據 – //prometheus.erikxu.com:30080/

 

溫馨提示

如果使用騰訊雲競價實例,體驗完畢後請記得銷毀實例:

 

項目地址

目前計劃維護 golang 和 .Net 兩個版本,覺得好用請點個 star,回饋建議也歡迎提 issue,想一起做的開源項目的也可以留言聯繫或者提 pr。

  • golang 版本

//github.com/ErikXu/power-ci

 

  • .Net 版本

//github.com/ErikXu/PowerCI.Net

 

參考總結

以上就是本文希望分享的內容,如果大家有什麼問題,歡迎在公眾號 – 跬步之巔留言交流。