中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Istio 流量治理功能原理與實戰

發布時間:2020-06-10 10:01:58 來源:網絡 閱讀:639 作者:CCE華為云 欄目:云計算

一、負載均衡算法原理與實戰

負載均衡算法(load balancing algorithm),定義了幾種基本的流量分發方式,在Istio中共有4種標準負載均衡算法。

?Round_Robin: 輪詢算法,顧名思義請求將會依次發給每一個實例,來共同分擔所有的請求。

?Random: 隨機算法,將所有的請求隨機分發給健康的實例

?Least_Conn: 最小連接數,在所有健康的實例中任選兩個,將請求發給連接數較小的那一個實例。

接下來,我們將根據以上幾個算法結合APM(應用性能管理)的監控拓撲圖來實戰下。

·實戰環境·

華為云開啟了Istio服務網格的CCE集群

官方最佳時間Bookinfo應用,并且給Reviews配置了五個實例

開通APM測試服務(免費)

我們知道如果用戶不進行任何配置,負載均衡算法默認是輪詢算法,所以我們現將負載均衡算法設為隨機(Random)。

步驟 1
在云容器引擎界面點擊應用管理,選擇流量治理。

步驟 2
右側出現拓撲圖,在上面的選項欄中選擇集群,命名空間,應用。然后點擊我們想配置的組件,這里是 reviews,右側則會出現流量治理的界面。

步驟 3
在負載均衡算法中,由Round_Robin 改為random。

步驟 4
在左側導航欄中選擇流量治理下面的流量監控,再選擇相應的集群,命名空間,應用。多訪問幾次,或者后臺寫腳本一直curl productpage,可以從拓撲圖中觀察數據。

步驟 5
當有流量時,鼠標右鍵點擊reviews組件,選擇展開選項這時我們可以看到所有實例的被分發情況。

實例編號 1 2 3 4 5
訪問次數 62 38 39 42 52
其余負載均衡算法基本一樣,我們在步驟上不做贅述,直接展示結果。
輪詢算法:

實例編號 1 2 3 4 5
訪問次數 47 47 48 46 47

二、會話保持原理與實戰

會話保持(Session Affinity)是通過設定的某個指標來計算,將哈希值相同的請求分發至某個固定的實例來處理。現在支持基于HTTP頭部設定指標和Cookie鍵值設定指標。

我們當前還在輪詢算法中,所以所有請求會均勻的分配給所有實例,設置會話保持基于HTTP請求頭部,并且設為Cookie。我們后臺curl的請求cookie設為了一個固定值,理論上來講所有的請求都會分發至同一個pod。

我們依然采用流量監控,展開reviews組件來觀察分發情況。

所有的請求都分發至了第二個實例,因為cookie一致所以保持了這個會話鏈接。

三、故障注入原理與實戰

故障注入(Fault Injection)為開發和測試人員主動向系統中引入故障,來觀察系統在非正常狀態下的行為,是一種可靠性,穩定性的驗證手段。Istio也支持了非侵入式的注入故障,分為時延故障和中斷故障。

故障注入的步驟大致相同在流量治理頁面的下方,選擇時延故障,并且輸入觸發百分比和延時時間。然后再打開productpage 手動刷新幾次,能明顯感覺到延遲有了變化,當然也可以打開F12調試界面,觀察網絡請求狀況,不難發現productpage請求耗時都在2秒上下。

這時候我們打開流量監控界面觀察下發現productpage與reviews受到了明顯的影響。紅色表示請求狀態極差,虛線表示是由時延造成的。

接下來我們來測試并且使用中斷故障,我們對details配置中斷故障,中斷返回碼設為501。

配置完后,我們再去手動訪問幾次productpage來觀察下結果。

發現現在的右側details已經報了error

我們回到流量監控圖,可以看到組件之間的訪問情況。在給ratings配置了中斷故障后,原本調用ratings組件的reviews組件,已經無法和ratings通信了。

本文以華為云istio服務結合APM服務為大家演示了流量治理中的主要功能。希望大家在今后的開發和測試中可以利用istio靈活的非侵入的治理功能提高開發和測試的效率。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

原平市| 牡丹江市| 兴山县| 贡嘎县| 华池县| 祁阳县| 神农架林区| 天长市| 安康市| 涟水县| 祥云县| 舟曲县| 射阳县| 民权县| 靖远县| 大埔县| 甘泉县| 台北市| 洪洞县| 富裕县| 常德市| 潍坊市| 闵行区| 文水县| 丰原市| 东方市| 津市市| 镇赉县| 景东| 革吉县| 茌平县| 新巴尔虎左旗| 张家港市| 屯门区| 兴化市| 西宁市| 炎陵县| 黎城县| 开平市| 尼木县| 屏东市|