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