阿里云容器服务cni网络插件terway非官方网络性能测试
作者:張榮濱,酷劃在線后端架構師,關注微服務治理,容器化技術,Service Mesh等技術領域
terway網絡性能測試
酷劃在線成立于2014年,是國內激勵廣告行業的領軍者。酷劃致力于打造一個用戶、廣告主、平臺三方共贏的激勵廣告生態體系,旗下產品“酷劃鎖屏”“淘新聞”分別為鎖屏、資訊行業的領跑者。
伴隨著公司服務端架構向微服務演進的過程中,服務增多,運維成本提高,資源利用率低,等問題日益凸顯,目前公司服務器規模超過700+臺ECS,服務數量1000+,隨著容器化技術的成熟,計劃在近期大規模將生產環境遷移到阿里云容器服務平臺上,但由于VxLan等主機轉發模式的Overlay網絡均有一定的性能損耗,所以我們將目光瞄準阿里云容器服務平臺開源的terway網絡插件,期望使用能夠動態綁定彈性網卡的容器服務達到ECS的網絡性能,進而對terway網絡性能進行詳細的評估。
測試說明
本測試基于阿里云容器服務Kubernetes版(1.12.6-aliyun.1),Kubernetes集群使用阿里云控制臺創建,測試分兩部分:
- 同可用區網絡性能測試
- 跨可用區網絡性能測試
本測試的所有網絡流量均為跨節點通信(容器分布在不同的宿主機節點上)
本測試的所有測試均穿插測試超過3組取結果平均值
關鍵指標
- 吞吐量(Gbit/sec)
- PPS(Packet Per Second)
- 延時(ms)
測試方法
吞吐量,PPS測試使用iperf3
版本信息如下:
測試機命令:
# 啟動服務器模式,暴露在端口16000,每1秒輸出一次統計數據 iperf3 -s -i 1 -p 16000陪練機命令:
# 測試吞吐量 # 客戶端模式,默認使用tcp通信,目標機為172.16.13.218,持續時間45,-P參數指定網卡隊列數為4(跟測試的機型有關),目標端口16000 iperf3 -c 172.16.13.218 -t 45 -P 4 -p 16000 # 測試PPS # 客戶端模式,使用udp發包,包大小為16字節,持續時間45秒,-A指定CPU親和性綁定到第0個CPU iperf3 -u -l 16 -b 100m -t 45 -c 172.16.13.218 -i 1 -p 16000 -A 0 # 測試延遲 # ping目標機30次 ping -c 30 172.16.13.218測試結果
同可用區網絡性能測試
機型說明
測試機型選用ecs.sn1ne.2xlarge,規格詳情如下
測試結果
說明:縱軸表達流量流出方向,橫軸表達流量流入方向,所以組合情況一共有9種
名詞解釋:
- terway-eni:代表動態創建彈性網卡并綁定POD的terway網絡模式
- terway:代表默認的terway網絡模式
結果解讀
- 各種模式下均可將網卡帶寬打滿,從吞吐量上看結果無明顯區別
- 從流量流入容器角度看數據,流向terway-eni模式在各項指標均接近甚至超過流向宿主機的性能
- 從流量流出容器角度看數據,terway-eni模式性能接近但略低于宿主機流量流出性能,但明顯高于terway默認網絡
跨可用區網絡性能測試
測試機型選用ecs.sn1ne.8xlarge,規格詳情如下
測試結果
說明:縱軸表達流量流出方向,橫軸表達流量流入方向,所以組合情況一共有9種
名詞解釋:
- terway-eni:代表動態創建彈性網卡并綁定POD的terway網絡模式
- terway:代表默認的terway網絡模式
結果解讀
- 由于增加了跨可用區的調用,使影響結果的因素變多
- host to host的吞吐量,并沒有達到網卡的理論最大值,但是流入terway-eni的吞吐量基本達到了機型的帶寬6 Gbit/sec,需要進一步調查宿主機間吞吐量上不去的原因
- 從容器流出的流量角度看,terway-eni模式整體明顯高于terway默認網絡模式,但低于宿主機網絡性能
- 從流入容器的流量角度看,terway-eni的PPS結果數據優勢比較明顯,接近甚至超越宿主機網卡性能
總體結論
terway的網絡性能測試中表現出了與宣傳一致的性能,通過與作者的溝通中了解到,由于將彈性網卡直接放入POD的namespace內,雖然網卡驅動的中斷依然由宿主機內核完成,但是網絡包不會出現在宿主機namespace的網絡棧,減少了宿主機的一層cni網橋轉發及復雜路由的性能損失,這也是為什么在某些場景下超過宿主機網絡棧性能的表現。
總結
以上是生活随笔為你收集整理的阿里云容器服务cni网络插件terway非官方网络性能测试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 云栖社区Ruby技术社群建立啦!大家都想
- 下一篇: Postgresql数据库主从备份教程