《A2--楊杰 安思琪--B站端到端故障演練探索與實踐.pdf》由會員分享,可在線閱讀,更多相關《A2--楊杰 安思琪--B站端到端故障演練探索與實踐.pdf(28頁珍藏版)》請在三個皮匠報告上搜索。
1、B站端到端故障演練探索與實踐安思琪嗶哩嗶哩 質量保障中心 資深測試開發工程師楊杰嗶哩嗶哩 質量保障中心 資深測試開發工程師安思琪目前主要負責C端流量&動態業務,推進業務穩定迭代、持續交付、質量提效等質量保障體系的建設。8年互聯網測試開發經驗,有豐富的業務質量保障、穩定性治理、測試效能平臺工具開發經歷。嗶哩嗶哩 質量保障中心 資深測試開發工程師目錄CONTENTS故障演練背景01 故障演練實踐02 故障演練效率提升03 展望跟后續規劃04 01故障演練背景背景305 視頻無法播放B站崩了為什么要做故障演練?l 突發事件l 倉促止損l 風險高l 客訴輿情l.l 增強抵御突發事件的能力和信心l 提升
2、系統容錯性和可恢復性的能力l 有備無患l.被動挨打主動出擊驗證已知驗證已知 防范未然防范未然02故障演練實踐端到端故障演練的早期探索1.明確待演練業務核心場景2.抓包獲取該業務下的所有接口3.每個接口的一級依賴設計故障場景穩定狀態穩定狀態強強or 弱?弱?故障類型:歷時已知故障-相似鏈路-各種隨機故障演練維度:單接口-單集群-單機房演練時間:工作日下午-晚上-隨機時間演練環境:UAT-PRE-PRD確保演練可控觀測系統表現客戶端表現:業務功能是否符合預期空窗、兜底圖異常toast服務端表現:關鍵節點的監控指標演練接口對應的responseDB、topic、broadcast錯誤日志信息.優化監
3、控告警監控告警監控告警是否配置告警閾值是否合理告警接受入是否有效故障通報故障通保是否及時故障模板內容是否符合規范故障處理是否及時記錄演練結果終端表現服務表現強弱依賴故障注入1強依賴1演練10mins故障演練總結人工工程化演練效率低演練效率低、可復用性差可復用性差楊杰2021年加入嗶哩嗶哩,主要負責C端播放內核&創新業務,負責播放質量benchmark建設以及各類測試提效專項落地工作。有豐富的短視頻和直播的業務質量保障經驗。嗶哩嗶哩 質量保障中心 資深測試開發工程師03故障演練效率提升為什么要提效核心場景數業務接口數強弱依賴數人工執行耗時(分鐘)故障演練基礎故障配置:支持http,grpc,數據
4、庫,緩存等故障類型配置故障編排:根據業務場景需要,支持串行或并行編排故障爆炸半徑控制:支持基準環境,染色環境,頭部信息,用戶身份等多種隔離方式故障注入:通過平臺實現故障一鍵注入l 接口自動化l 客戶端UI自動化l 客戶端識別l 服務端日志l 告警信息l 檢測結果l 故障類型l 設備記錄l 執行日志流量注入穩態檢測演練記錄提效手段流量注入接口腳本改造 在前置腳本中增加故障平臺API調用邏輯 斷言檢測增加服務穩態檢查接口場景整合單接口case依據業務場景要求,進行場景化整合場景中的每個case都有明確的驗證點,方便出問題后快速定位流量注入接口常態化執行 接口場景case粒度接入流水線平臺 代碼合入
5、后,觸發常態化接口故障演練 演練結果作為測試準入標準代碼提交靜態掃描構建部署故障注入接口自動化演練記錄服務端日志檢測告警信息監測執行成功提測執行失敗停止合入流量注入客戶端自動化改造:單case場景化集合 UI自動化代碼中加入故障平臺API調用邏輯 增加圖像識別,錄制等客戶端穩態檢測手段 通過平臺手動觸發執行故障配置故障編排云真機故障注入UI自動化圖像識別操作視頻服務端日志檢測演練記錄Bug單服務端穩態檢測服務端日志基于日志系統API,根據關鍵字查詢,判斷日志輸出是否符合預期告警信息基于告警平臺API,根據已經配置對應的告警信息查詢,判斷故障是否正常觸發預期告警演練記錄檢測結果執行日志故障類型設備記錄快速定位現場回溯 客戶端表現 服務端表現 客戶端執行記錄 設備型號 設備系統 設備硬件信息 故障類型 故障詳情 故障節點 環境信息 過程信息 執行記錄提效成果6009提效前提效后單位:秒可操作性演練耗時04展望與規劃1.隨機注入故障,結合現有的自動化能力以及故障編排和配置能力,能在每次自動化執行時,對故障類型機型隨機組合并注入故障。2.全鏈路故障演練,不僅是根據業務場景劃分的故障演練,而是對整個上下游鏈路任意一個或多個節點注入故障,進行一個全局的演練和觀測展望與規劃感謝聆聽關注QECon公眾號