簡介:網絡診斷利器SreCli-Net
SRE運維團隊致力於經過自動化來提升運維的工做生產效率,推進向智能化運維方向迭代轉變,解決傳統運維的痛點。傳統運維雖具備完整的運維體系,但運維方式各異,運維操做複雜,耗時長。如何提升混合雲項目的運維效率,提升運維附加值和客戶滿意度,還是咱們的攻堅難題。shell
主要需面對如下幾點挑戰:後端
隨着客戶業務的發展和業務模式的不斷演進,業務數據量也在逐年增長。給運維帶來了更多機會與挑戰,如何保障雲內數據、雲內外業務交互的穩定、安全、高效運行,是運維人員值得思考的問題。安全
隨着雲平臺雲產品版本的快速迭代,熟悉平臺難度加大,隨着雲產品版本更迭和新功能的出現,新手學習的成本提升,熟悉雲平臺的各類運維操做難度加大。但不能從根本上解決快速賦能運維能力的問題。全部一切將會引起一連串的「蝴蝶效應」,甚至引起項目高風險或P級故障出現,將會直接影響客戶雲上業務的正常使用。服務器
目前運維方式存在人工經驗判斷、平臺各類手工操做、處理問題低效、故障應急處理耗時長等主要問題。因爲系統的複雜性,技術人員在操做平臺運維時,會浪費大量的時間在機器登入、工具使用等基礎問題指導上。登陸以後又面臨各類增刪改查操做指令的不統一。隨着運維長時間的消耗,也會引發現場運維人員的心神俱疲,沒法專一線上操做。尤爲是面對一些沒有經驗的駐場或客戶,經常會出現找不到目標機器,命令敲錯等現象,使得總體運維低效和安全隱患頻發。網絡
綜合以上關於客戶、平臺、運維三方面的運維問題, 提升運維效率、下降運維人員學習成本是當前的主要任務。在此大背景下,推出了SRE-CLI工具,該工具是一款支持shell功能、命令補全、問題診斷、故障止血等功能的srecli工具,逐步解決和完善當前的問題現狀。運維
SRE Command Line Interface (SRE CLI) 是一種運維工具,讓您可以在命令行Shell 中使用命令對混合雲進行運維操做。僅需最少的配置,便可使用 SRE CLI 運行命令,以便從終端程序中的命令提示符實現平常運維過程當中複雜的命令。基於SRE 在平常工做中的問題處理、故障應急沉澱的「老中醫」的經驗,並經過命令行工具的方式集成在混合雲中,無需配置,便可運行SRE CLI,經過簡單命令,實現平常運維過程當中複雜操做。工具
CLI交互能力模型,主要是由訪問層、交互層、後端、基礎設施四個部分組成。首先終端用戶經過登陸SRECLI後,進入交互層界面,經過選擇相應的場景指令和輔助功能完成指定的動做,該動做會調用後端的各工具能力,以及數據源中數據,經過基礎設施層進行計算,計算診斷的結果將直接輸出至終端CLI黑屏界面上,完成一整個交互流程,以下圖所示。 性能
圖1學習
從服務單、工單、故障單中提煉高頻操做,將經常使用操做、問題&故障點工具化成原子項。經過平常運維查詢產品原子項,問題點、故障點、快速查詢關鍵指標定位問題點。測試
圖2
以故障場景沉澱出一系列排查思路,以「三板斧」形式輸出,精肯定位問題所在。在此基礎上進行故障點組裝、故障精肯定位。
圖3
真實故障和風險止血恢復手段沉澱,發生並解決方案肯定後,須要快速恢復,恢復動做包括重啓、降級、限流、切換等。幫助客戶業務快速恢復。
平常查詢、關聯數據展現、經常使用信息獲取,經過精確的查詢方式,查詢雲內IP地址定位對應的產品、路由、容量、策略等信息。目前覆蓋物理網絡的各種IP維度查詢。
知足CLI在雲平臺內各點抓包的能力,經過定製化的抓包組合命令,快速落在抓包點,進行指定的進或出方向的網絡流量抓包。覆蓋經典網絡類型抓包、VPC網絡類型抓包兩種。
Cli-Net是CLI體系中的一個分支功能,主要負責處理混合雲內物理網絡方向的診斷排查,經過統一格式的指令,在物理網絡環境中進行具體方面的排查診斷。Cli-Net主要覆蓋混合雲物理網絡四大方面,包括雲內通用網絡設備性能診斷、雲邊界網絡狀態診斷、雲內網絡狀態診斷、物理機網絡狀態診斷。涉及雲內全部產品物理機和交換機網絡運行狀態,以及互聯網、雲外IDC網絡等雲外網絡訪問雲內網絡的排查診斷,具體診斷覆蓋以下表所示。
<span class="lake-fontsize-10"><span>Cli-Net</span></span><span class="lake-fontsize-10"><span>診斷覆蓋</span></span> | <span class="lake-fontsize-10"><span>通用網絡設備性能診斷</span></span> | <span class="lake-fontsize-10"><span>雲邊界網絡狀態診斷</span></span> | <span class="lake-fontsize-10"><span>雲內網絡狀態診斷</span></span> | <span class="lake-fontsize-10"><span>物理機網絡狀態診斷</span></span> |
<span class="lake-fontsize-10">ISW</span> | <span class="lake-fontsize-10">●</span> | <span class="lake-fontsize-10">●</span> | <span class="lake-fontsize-10"> </span> | <span class="lake-fontsize-10"> </span> |
<span class="lake-fontsize-10">DSW</span> | <span class="lake-fontsize-10">●</span> | <span class="lake-fontsize-10"> </span> | <span class="lake-fontsize-10">●</span> | <span class="lake-fontsize-10">●</span> |
<span class="lake-fontsize-10">CSW</span> | <span class="lake-fontsize-10">●</span> | <span class="lake-fontsize-10">●</span> | <span class="lake-fontsize-10"> </span> | <span class="lake-fontsize-10"> </span> |
<span class="lake-fontsize-10">LSW</span> | <span class="lake-fontsize-10">●</span> | <span class="lake-fontsize-10"> </span> | <span class="lake-fontsize-10">●</span> | <span class="lake-fontsize-10">●</span> |
<span class="lake-fontsize-10">ASW</span> | <span class="lake-fontsize-10">●</span> | <span class="lake-fontsize-10"> </span> | <span class="lake-fontsize-10">●</span> | <span class="lake-fontsize-10">●</span> |
<span class="lake-fontsize-10"> </span> | <span class="lake-fontsize-10">input</span> | <span class="lake-fontsize-10">input</span> | <span class="lake-fontsize-10">input</span> | <span class="lake-fontsize-10">input</span> |
<span>中文名稱</span> | <span>Cli</span><span>英文名稱</span> | <span>含義</span> |
<span>單機自檢功能</span> | <span>device_check</span> | <span>檢查每臺交換機自己的健康狀態,包含硬件、接口、路由、連通性,去判斷輸出網絡設備自己的異常項目。</span> |
<span>核心網絡方向診斷</span> | <span>core-network</span> | <span>經過檢查涉及全部雲內物理服務器路由通路、互聯線路、路由狀態的總體或指定具體物理機去判斷輸出網絡異常項。</span> |
<span>專線方向診斷</span> | <span>Private direction</span> | <span>經過檢查用戶IDC與雲內VPC網絡(含全部實例級資源)間涉及到的物理網絡總體情況去判斷輸出網絡異常項。</span> |
<span>公網方向診斷</span> | <span>Internet Direction</span> | <span>經過檢查互聯網與雲內VPC網絡(含全部實例級資源)間的涉及到的物理網絡總體情況去判斷輸出網絡異常項。</span> |
<span>物理虛擬方向診斷</span> | <span>physics virtual</span> | <span>經過檢查VPC網絡(含全部實例級資源)與經典網絡(包含全部雲服務資源)之間的物理總體情況去判斷輸出網絡異常項。</span> |
<span>應用場景</span> | <span>排查指令</span> | <span>指令結果</span> |
<span>機房總體掉電</span> | <span>ali_diag network ping project </span><span>{product name}</span> | <span>檢查雲內各集羣物理機連通性是否正常</span> |
<span>ali_diag network ping switch</span><span>{name}</span> | <span>檢查雲內交換機連通性是否正常</span> | |
<span>ali_diag network hardware power </span><span>{switch}</span> | <span>檢查各交換機電源運行狀態是否正常</span> | |
<span>ali_diag network route bgp </span><span>{switch}</span> | <span>交換機bpg路由協議狀態檢查</span> | |
<span>ali_scene network device_check</span> | <span>交換機硬件自檢</span> | |
<span>ECS</span><span>訪雲外不通</span> | <span>ali_scene network internet_direction</span> | <span>檢查公網方向網絡問題</span> |
<span>ali_scene network private_direction</span> | <span>檢查專線方向鏈路問題</span> | |
<span>base</span><span>訪問vpc內數據源失敗</span> | <span>ali_scene network core_network</span> | <span>設備網絡連通性檢查</span> |
<span>ali_scene network physics_virtual</span> | <span>綜合接入區網絡檢查</span> | |
<span>物理機故障後上線</span> | <span>ali_scene network core_network</span> | <span>物理機所在網絡檢查</span> |
<span>ali_diag network route bgp </span><span>{switch}</span> | <span>雲內bgp網絡狀態檢查</span> |