問題排查不再愁,Nacos 上線推送軌跡功能
?1?.背景
注冊配置千千萬,唯有推送軌跡最解愁。
微服務體系下,注冊中心的調用和配置變更是家常便飯,例如阿里每天就有百萬級變更、億級推送。可是,一旦出現調用或配置異常,問題排查就成了用戶最大的困惑:是注冊和配置中心導致的,還是上下游業務自身的問題呢?
微服務體系下用戶排查問題時的困惑
因此,長時間以來,用戶對注冊和配置中心推送功能的可觀測性,有了越來越強烈的需求。
2?.業內現有的開源方案
當前,業內其他主流的開源注冊或配置中心,例如 Zookeeper、Eureka、Consul、Apollo 在核心功能推送情況上,僅提供了一些散落的日志,并沒有查詢推送成功與否的能力。一旦出現調用或配置異常,只能通過手動登錄到注冊和配置中心的節點上,以較為原始的日志方式來查尋推送相關的信息。如果用戶對注冊和配置中心的源碼及日志內容的具體情況不了解,則會使問題排查的難度大大增加。
基于上述背景,Nacos 在業內首次推出注冊和配置中心的推送軌跡功能。
3.?推送軌跡功能介紹
推送軌跡,是指 Nacos 服務或配置從 server 端到 client 端的一次推送鏈路上的相關信息展示。推送軌跡可以讓用戶非常方便的查詢到:
注冊中心服務推送的信息
配置中心的配置變更發布和推送的信息
從而非常清晰地觀測到 Nacos 推送功能的履約情況,極大的提高問題的排查效率。
(1)注冊中心推送軌跡
注冊中心的推送軌跡,可以用來排查服務推送的相關問題,例如:
- 客戶端未收到服務推送
- 服務間調用出現異常
- 注冊中心是否正常將服務推送到客戶端
MSE - Nacos 注冊中心推送軌跡查詢頁面
MSE - Nacos 注冊中心推送軌跡,詳細展示了注冊中心服務推送的記錄信息。其中,推送時間字段是本次推送事件發生的時間,推送客戶端 IP 字段是本次推送所送達的客戶端 IP 地址,推送服務名稱是本次推送的服務名稱,推送服務分組是本次推送服務的所屬分組名稱,服務實例數量是只本次推送服務中所包含的實例 IP 數量,節點名稱是產生本次推送的 Naocs 節點名稱。
同時,MSE - Nacos 注冊中心推送軌跡也支持服務與 IP 多維度的查詢。
(2)配置中心推送軌跡
配置中心的推送軌跡,可以用來排查配置中心配置變更和發布的相關問題,例如:
- 配置發布異常
- 配置修改完發現某臺機器不生效
- 需要查看配置中心變更及推送事件
配置維度查詢
可以查詢和該配置相關的變更事件以及對客戶單端 IP 的推送記錄。
MSE - Nacos 配置中心推送軌跡配置維度查詢頁面
MSE - Nacos 配置中心推送軌跡詳細展示了配置中心配置變更的記錄信息。在推送軌跡頁面左側,展示當前時間段內的配置變更事件 ,點擊左側變更流水可以定位到右側的變更及推送事件記錄。頁面右側,展示當前時間段內的配置變更及推送事件,變更事件中顯示本次變更內容的 MD5 值,推送事件中展現推送發生事件,推送到的客戶端 IP。鼠標上移推送詳情圖標可以查看本地推送中,客戶端獲取到的配置內容 MD5。
IP 維度查詢
可以根據 IP 查詢所有和該 IP 地址相關的推送軌跡 。
配置中心推送軌跡 IP 維度查詢頁面
在推送軌跡 IP 查詢維度頁面,展示該 IP 地址相關的推送軌跡 。變更時間表示本次配置變更所發生的時間,變更時間表示本次配置變更事件類型,DataId 表示該配置變更事件的配置 DataId,Group 表示該配置變更事件的配置所屬分組,點擊詳情列信息按鈕可以看到詳情圖標可以看到本次變更事件詳細信息,點擊詳情列跳轉按鈕可以切換到配置維度查詢的入口查詢當前配置在該時間點的推送事件。
4?.推送軌跡最佳實踐
Aliware
(1)注冊中心推送軌跡
- 登錄 MSE 管理控制臺。
- 在頂部菜單欄選擇地域。
- 在左側菜單欄選擇注冊配置中心 > 實例列表。單擊目標實例名稱或操作列下方的管理。
- 在左側邊欄基礎信息頁面選擇服務管理 > 推送軌跡,進入推送軌跡功能頁面。
- 或者在左側邊欄基礎信息頁面選擇服務管理 > 服務列表,在每條服務信息的右側點擊推送軌跡按鈕,進入推送軌跡功能頁面。
- 進入推送軌跡功能頁面后,單擊查詢維度下拉框選擇查詢維度:服務,在左上角服務名稱輸入框輸入待查詢服務的名稱,在分組名稱輸入框輸入服務所屬的分組,然后再右上角時間控件中選擇要查詢的時間范圍,最后點擊查詢按鈕。
在查詢維度下拉框內,也可以選擇查詢維度:IP,則表示查詢該客戶端收到的全部推送信息。
(2)配置中心推送軌跡
- 登錄 MSE 管理控制臺。
- 在頂部菜單欄選擇地域。
- 在左側菜單欄選擇注冊配置中心 > 實例列表。單擊目標實例名稱或操作列下方的管理。
- 在基礎信息頁面選擇配置管理 > 推送軌跡。單擊查詢維度下拉框選擇查詢維度:配置,然后在 Data ID 輸入待查詢配置的數據 ID,在 Group 輸入配置所屬的分組,最后單擊搜索圖標進行搜索。
推送軌跡只是第一步,后續,MSE - Nacos 還將提供全新的自診系統,包括事件統計、健康審計等功能,幫助用戶更加全面的獲取注冊和配置中心運行時上更多的業務功能狀態數據信息,降低注冊和配置中心的問題排查難度、提升可用性。?