1、大規模云原生應用網絡問題定位與排查實踐網易資深云計算解決方案架構師服務分層應用層虛擬網絡物理網絡應用服務調用關系云計算服務多機房,多可用區服務壓力測試測試資源管理場景管理任務管理版本管理性能測試平臺機器管理成員管理測試腳本和數據管理腳本上傳腳本下發測試執行和報告管理單接口壓測腳本編寫測試數據業務場景壓測實時報告分析資源監控風險分析歷史報告 采用梯度壓力,看服務的性能變化情況,評估出服務的最大容量值容量測試 在達到停止條件之后,繼續增加壓力,檢驗服務集群在失效狀態下的表現摸高壓測 在峰值壓力下,保持30分鐘(可討論)穩定峰值穩定性測試 針對秒殺類業務,制定秒殺測試場景秒殺場景測試 多級限流,保護
2、系統穩定提供服務限流演練 非核心業務降級,提升整體服務能力降級演練系統服務化平臺內部服務調用統計 應用報錯 錯誤日志搜集、告警 系統 QPS 上不去 系統處理效率變“慢”問題拋出 通過錯誤日志追查調用鏈路的源頭集群 查看源頭集群的錯誤告警信息 是否是處理變慢?!集群流量負載是否均衡 分析集群整體負載:CPU、內存使用量、網卡流量、存儲 IOWhy?是否有近期變更,發布上線 查看日志告警信息,確定報錯點 分析報錯原因:Bug?死鎖?緩存穿透業務降級?內存泄露,垃圾回收?調用超時?應用層初步定位90%問題都與變更有直接關系 業務調用出現超時報錯 集群處理響應 RT 增加 集群上下游業務網絡重傳增加
3、 特別是緩存集群網絡問題應用層表現為什么一定要解決網絡問題!簡單通過擴容解決,帶來的是成本的增長集群擴容已經不再是簡單線性增加吞吐量的有效辦法壓測周期時間短,業務變化快,風險高 Nginx 云主機軟中斷隊列滿,出現丟包超時 壓測云主機客戶端到 Nginx 建鏈慢 緩存集群調用 RT 高,集群重傳高,商品、庫存、交易出現調用緩存超時 相比緩存使用云外物理機,云內的緩存云主機集群表現差距較大 云主機 Steal 高 虛擬網卡丟包 壓測出現的一些問題排查難度大壓測消耗大服務集群分析常用工具 監控平臺 云主機操作系統檢查網絡狀態nstat 使用 perf 在宿主機上跟蹤 KVMperf,火焰圖 網絡虛
4、擬化性能分析對比iperfsar 全鏈路抓包分析tcpdumpovs-tcpdump全鏈路抓包分析tcpdump 參數選擇,減少 pcap 大小使用 VXLAN 內層包 IP 過濾使用-s 70(vm),-s 130(宿主機)程序分析找出 TCP 的數據包與 ACK 相差超過 10ms+的包人工檢查根據抓包的時戳、TCP 序列號、TCP Timestamp、IP 的 ID 域分析比對GSO,GRO,不能一一對應服務集群分析策略云內業務調用computeVmVswitch(flow)VXLANVmVmcomputecomputeTORTORCSWCSWTORTORcompute 云內服務調用不出
5、 VPC 流量線路可以在同一臺計算節點內、流量繞 TOR 到另一臺計算節點、繞 CSW 到另一組TOR 下 機房服務器放置的規劃,一般有存儲區、網關區、計算區、公共服務區云內服務集群流量分析computeVmVswitch(flow)VXLANVmVmTORTORCSWCSW應用層限流虛擬網卡丟包連接隊列溢出網卡流量超過 QOSDPDK PMD CPU 占用率過高安全組配置網卡流量超過 QOS流表配置GuestOS虛擬交換物理網絡網段路由配置網卡 bond 狀態接入交換機VPC核心監控協議調用頻率過高影響交換機轉發性能網卡流量過載線路故障,CRC 校驗異?;A監控云內服務監控機房物理網絡監控
6、早期交換機監控通過 SNMP 協議,交換機監控粒度維持在分鐘級 新一代基于 gRPC 協議的監控協議,由交換機主動 push 監控數據到監控平臺,可支持秒級 物理網絡層面帶寬流量的監控,由于粒度在分鐘級,所以壓測峰值流量很可能無法發現物理網絡瓶頸 新的支持秒級監控的機器需要有廠商定制,改造成本和采購成本很高交換機監控現狀 交換機上聯口到核心帶寬假如打滿,可能導致丟包 物理交換機 CPU 比較弱,監控無法做到秒級,因此沒有發現問題 物理層面容量規劃,打散高轉發流量的物理機器(Nginx、緩存等)一組 TOR 下不超過 3 臺高性能機器分鐘級監控下的機器布置策略云內與云外網絡調用computeTO
7、RTORCSWCSWTORTORcomputephyphyTORTORBRBR 出云的網絡流量,必須會經過網關服務器做 NAT 網關服務器提供包括 DNAT 映射、SNAT 等 公網網絡出口:BGP、聯通、電信 出云訪問可以通過 VPC SNAT 訪問或者綁定公網地址訪問 外部訪問應用系統主要通過 NLB服務訪問云內云外服務網絡流量分析computeTORTORCSWCSWTORTORcomputephyphyBRBR公網出口網關節點機房網絡機房核心公網出口、運營商網絡計算節點運營商線路狀態運營商割接公網網絡質量監控路由配置出口帶寬Vswitch 流表配置問題PMD CPU 占用率過高網卡帶寬過高導致丟包SNAT 新建連接性能瓶頸同云內服務集群流量分析網絡質量監控全國范圍,覆蓋所有省份24 小時不間斷各省份用顏色標明網絡質量大數據分析處理,實時掌握全網質量異常告警VPC網關及負載均衡 BGP ECMP網絡高可用水平擴展及負載均衡 OVS-DPDK虛擬交換機,DPDK 驅動提升網絡轉發性能 SSL Offload 加速SSL 握手異步化+Intel QAT 資源池壓力大時優化明顯、壓力小時反而增加延時CPU 計算消耗減少 50%清晰的應用邏輯調用關系 明確的網絡鏈路拓撲 完善的監控系統總結