解析网络诊断利器SreCli-Net
1.背景
SRE運維團隊致力于通過自動化來提高運維的工作生產效率,推動向智能化運維方向迭代轉變,解決傳統運維的痛點。傳統運維雖具有完整的運維體系,但運維方式各異,運維操作復雜,耗時長。如何提高混合云項目的運維效率,提高運維附加值和客戶滿意度,仍是我們的攻堅難題。
主要需面對以下幾點挑戰:
- 客戶業務的快速發展與演進,傳統運維滯后性被拉大
隨著客戶業務的發展和業務模式的不斷演進,業務數據量也在逐年增加。給運維帶來了更多機會與挑戰,如何保障云內數據、云內外業務交互的穩定、安全、高效運行,是運維人員值得思考的問題。
- 平臺各系統運行復雜,運維學習成本提高
隨著云平臺云產品版本的快速迭代,熟悉平臺難度加大,隨著云產品版本更迭和新功能的出現,新手學習的成本提高,熟悉云平臺的各種運維操作難度加大。但不能從根本上解決快速賦能運維能力的問題。所有一切將會引發一連串的“蝴蝶效應”,甚至引發項目高風險或P級故障出現,將會直接影響客戶云上業務的正常使用。
- 運維人員能力參差不齊,運維操作復雜
目前運維方式存在人工經驗判斷、平臺各種手工操作、處理問題低效、故障應急處理耗時長等主要問題。由于系統的復雜性,技術人員在操作平臺運維時,會浪費大量的時間在機器登入、工具使用等基礎問題指導上。登錄之后又面臨各種增刪改查操作指令的不統一。隨著運維長時間的消耗,也會引起現場運維人員的心神俱疲,無法專注線上操作。尤其是面對一些沒有經驗的駐場或客戶,常常會出現找不到目標機器,命令敲錯等現象,使得整體運維低效和安全隱患頻發。
?
綜合以上關于客戶、平臺、運維三方面的運維問題, 提高運維效率、降低運維人員學習成本是當前的主要任務。在此大背景下,推出了SRE-CLI工具,該工具是一款支持shell功能、命令補全、問題診斷、故障止血等功能的srecli工具,逐步解決和完善當前的問題現狀。
?
2.SRE-CLI基本介紹
SRE Command Line Interface (SRE CLI) 是一種運維工具,讓您能夠在命令行Shell 中使用命令對混合云進行運維操作。僅需最少的配置,即可使用 SRE CLI 運行命令,以便從終端程序中的命令提示符實現日常運維過程中復雜的命令?;赟RE 在日常工作中的問題處理、故障應急沉淀的“老中醫”的經驗,并通過命令行工具的方式集成在混合云中,無需配置,即可運行SRE CLI,通過簡單命令,實現日常運維過程中復雜操作。
CLI交互能力模型,主要是由訪問層、交互層、后端、基礎設施四個部分組成。首先終端用戶通過登錄SRECLI后,進入交互層界面,通過選擇相應的場景指令和輔助功能完成指定的動作,該動作會調用后端的各工具能力,以及數據源中數據,通過基礎設施層進行計算,計算診斷的結果將直接輸出至終端CLI黑屏界面上,完成一整個交互流程,如下圖所示。
圖1
- 問題診斷(ali_diag)
從服務單、工單、故障單中提煉高頻操作,將常用操作、問題&故障點工具化成原子項。通過日常運維查詢產品原子項,問題點、故障點、快速查詢關鍵指標定位問題點。
圖2
- 場景診斷(ali_scene)
以故障場景沉淀出一系列排查思路,以“三板斧”形式輸出,精確定位問題所在。在此基礎上進行故障點組裝、故障精確定位。
圖3
- 應急止血(ali_cure)
真實故障和風險止血恢復手段沉淀,發生并解決方案確定后,需要快速恢復,恢復動作包括重啟、降級、限流、切換等。幫助客戶業務快速恢復。
- 日常查詢(ali_query)
日常查詢、關聯數據展示、常用信息獲取,通過精確的查詢方式,查詢云內IP地址定位對應的產品、路由、容量、策略等信息。目前覆蓋物理網絡的各類IP維度查詢。
- 智能抓流(ali_trace)
滿足CLI在云平臺內各點抓包的能力,通過定制化的抓包組合命令,快速落在抓包點,進行指定的進或出方向的網絡流量抓包。覆蓋經典網絡類型抓包、VPC網絡類型抓包兩種。
3.Cli-Net概念
Cli-Net是CLI體系中的一個分支功能,主要負責處理混合云內物理網絡方向的診斷排查,通過統一格式的指令,在物理網絡環境中進行具體方面的排查診斷。Cli-Net主要覆蓋混合云物理網絡四大方面,包括云內通用網絡設備性能診斷、云邊界網絡狀態診斷、云內網絡狀態診斷、物理機網絡狀態診斷。涉及云內所有產品物理機和交換機網絡運行狀態,以及互聯網、云外IDC網絡等云外網絡訪問云內網絡的排查診斷,具體診斷覆蓋如下表所示。
?
Cli-Net診斷覆蓋 | 通用網絡設備性能診斷 | 云邊界網絡狀態診斷 | 云內網絡狀態診斷 | 物理機網絡狀態診斷 |
ISW | ● | ● | ? | ? |
DSW | ● | ? | ● | ● |
CSW | ● | ● | ? | ? |
LSW | ● | ? | ● | ● |
ASW | ● | ? | ● | ● |
? | input | input | input | input |
4.Cli-Net主要功能
- 快速登錄網絡設備
通過CLI工具訪問天基查詢,快速獲取交換機IP地址,并通過CLI工具內置的“密碼庫”依次遍歷通用密碼快速登錄到網絡設備上,如果通用密碼遍歷均不成功,則判斷為已被修改成項目個性密碼。則CLI工具提示請向用戶申請并授權后輸入個性密碼,手動“填入個性密碼”,再執行后續內容。
通過該功能,能夠節約查詢交換機IP地址和登錄密碼的時間,方便網絡設備的登錄。
圖4
演示指令:ali_tools login switch $交換機角色名稱
圖5
- 通用網絡設備性能診斷
Cli-Net能夠檢查交換機自身硬件運行指標性能,例如cpu、板卡、溫度、風扇、內存、電源狀態。
圖6
演示指令:
ali_diag network hardware COMMAND? [cpu_usage]? [device]?[environment]? [fan]? [memory] [power]
圖7
- 云邊界網絡互聯狀態診斷
云平臺交換機ISW、CSW、DSW、ASW、LSW之間的互聯物理鏈路健康檢查。具體檢查各角色之間經典鏈路互聯狀態,VPC專線鏈路互聯狀態和互聯光衰狀態。
圖8
演示指令:
ali_diag network interface COMMAND ?[classic_link] ?[transceiver] ?[vpc_link]
圖9
- 云內網絡互聯狀態診斷
云平臺交換機路由協議互聯狀態檢查,通過檢查BGP和OSPS協議狀態,如異常則直接輸出異常狀態。
圖10
演示指令:
ali_diag network route [bgp] [ospf]
圖11
- 連通性狀態診斷
云平臺物理服務器、交換機等連通性檢查。通過ping針對某個物理機名、集群名、交換機等進行連通性測試。
圖12
演示指令:
ali_diag network ping COMMAND ?[nc] ?[project] ?[switch] ?[virtual_nc]
圖13?
5.Cli-Net場景診斷
Cli-Net場景集合了混合云物理網絡中主要的業務數據流方向途徑的檢查點,通過Cli-scene場景中指定的排查指令,通過一鍵診斷的方式,快速排查物理網絡環境的各種檢查項狀態,檢查診斷項主要分為五個場景:單機自檢、核心網絡方向診斷、專線方向診斷、公網方向診斷、物理虛擬方向診斷。
具體功能如下表所示:
中文名稱 | Cli英文名稱 | 含義 |
單機自檢功能 | device_check | 檢查每臺交換機本身的健康狀態,包含硬件、接口、路由、連通性,去判斷輸出網絡設備本身的異常項目。 |
核心網絡方向診斷 | core-network | 通過檢查涉及所有云內物理服務器路由通路、互聯線路、路由狀態的整體或指定具體物理機去判斷輸出網絡異常項。 |
專線方向診斷 | Private direction | 通過檢查用戶IDC與云內VPC網絡(含所有實例級資源)間涉及到的物理網絡整體狀況去判斷輸出網絡異常項。 |
公網方向診斷 | Internet Direction | 通過檢查互聯網與云內VPC網絡(含所有實例級資源)間的涉及到的物理網絡整體狀況去判斷輸出網絡異常項。 |
物理虛擬方向診斷 | physics virtual | 通過檢查VPC網絡(含所有實例級資源)與經典網絡(包含所有云服務資源)之間的物理整體狀況去判斷輸出網絡異常項。 |
?
6.Cli-Net場景結構
- 單機全量自檢場景結構如下圖所示。
圖14
?
- Core-network場景結構如下圖所示。
圖15
- Private direction場景結構如下圖所示。
圖16
?
- Internet Direction場景結構如下圖所示。
圖17
診斷指令:
ali_scene network COMMAND ?[core_network] ?[device_check] ?[internet_direction] ?[physics_virtual]
圖18
演示指令:
ali_scene network COMMAND ?[core_network] ?[device_check] ?[internet_direction] ?[physics_virtual]
圖19
圖20
7.Cli-Net應用實踐
應用場景 | 排查指令 | 指令結果 |
機房整體掉電 | ali_diag network ping project {product name} | 檢查云內各集群物理機連通性是否正常 |
ali_diag network ping switch{name} | 檢查云內交換機連通性是否正常 | |
ali_diag network hardware power {switch} | 檢查各交換機電源運行狀態是否正常 | |
ali_diag network route bgp {switch} | 交換機bpg路由協議狀態檢查 | |
ali_scene network device_check | 交換機硬件自檢 | |
ECS訪云外不通 | ali_scene network internet_direction | 檢查公網方向網絡問題 |
ali_scene network private_direction | 檢查專線方向鏈路問題 | |
base訪問vpc內數據源失敗 | ali_scene network core_network | 設備網絡連通性檢查 |
ali_scene network physics_virtual | 綜合接入區網絡檢查 | |
物理機故障后上線 | ali_scene network core_network | 物理機所在網絡檢查 |
ali_diag network route bgp {switch} | 云內bgp網絡狀態檢查 |
?
上表列舉出了不同場景參考的不同排查指令,通過排查指令去診斷云內物理環境的情況,判斷是否存在異?,F象。以上僅是物理網絡環境部分的檢查,如需檢查具體的產品側狀態,還需結合具體的產品診斷狀態。網絡側和產品側結合使用方能達到快速診斷和排查的效果。
我們是阿里云智能全球技術服務-SRE團隊,我們致力成為一個以技術為基礎、面向服務、保障業務系統高可用的工程師團隊;提供專業、體系化的SRE服務,幫助廣大客戶更好地使用云、基于云構建更加穩定可靠的業務系統,提升業務穩定性。我們期望能夠分享更多幫助企業客戶上云、用好云,讓客戶云上業務運行更加穩定可靠的技術,您可用釘釘掃描下方二維碼,加入阿里云SRE技術學院釘釘圈子,和更多云上人交流關于云平臺的那些事。
原文鏈接:https://developer.aliyun.com/article/784871?
版權聲明:本文內容由阿里云實名注冊用戶自發貢獻,版權歸原作者所有,阿里云開發者社區不擁有其著作權,亦不承擔相應法律責任。具體規則請查看《阿里云開發者社區用戶服務協議》和《阿里云開發者社區知識產權保護指引》。如果您發現本社區中有涉嫌抄襲的內容,填寫侵權投訴表單進行舉報,一經查實,本社區將立刻刪除涉嫌侵權內容。總結
以上是生活随笔為你收集整理的解析网络诊断利器SreCli-Net的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Edge X Kubernetes Me
- 下一篇: 开放下载!阿里云开发者学堂配套教材《JV