在復(fù)雜的云中實現(xiàn)可觀測性的五個技巧

開源云中文社區(qū)
可觀測性與IT監(jiān)控的不同之處在于,它關(guān)注于應(yīng)用程序和豐富儀表的開發(fā),以便運維人員可以就軟件在生產(chǎn)中如何工作提出有意義的問題。提出新問題的能力使IT部門能夠從不同角度了解應(yīng)用程序的行為,從而進行優(yōu)化和改進。

2020年,IT運維中的可觀測性概念得到了人們的認同,IT領(lǐng)導(dǎo)者正在尋找新的方法來控制隨著云計算和快速數(shù)字化而有機增長的復(fù)雜性。

可觀測性與IT監(jiān)控的不同之處在于,它關(guān)注于應(yīng)用程序和豐富儀表的開發(fā),以便運維人員可以就軟件在生產(chǎn)中如何工作提出有意義的問題。提出新問題的能力使IT部門能夠從不同角度了解應(yīng)用程序的行為,從而進行優(yōu)化和改進。

另一種思考可觀測性的方式是,它完全是關(guān)于用戶視角的,這需要以用戶為中心的思維方式和方法。雖然傳統(tǒng)的(黑匣子)監(jiān)控提供了指示系統(tǒng)是否已啟動和運行的指標,而可觀測性通過顯示系統(tǒng)是否真的能夠滿足業(yè)務(wù)和用戶需求,進一步說明了這一點。

可觀測性的作用

可觀測性通過解決以下問題,與基礎(chǔ)設(shè)施監(jiān)控的業(yè)務(wù)價值建立更緊密的聯(lián)系

——服務(wù)器在線且可用,但其支持的應(yīng)用程序出現(xiàn)故障

——網(wǎng)絡(luò)已啟動,但用戶的交易可能無法進行,或者網(wǎng)站行為異常

——你的站點在一個瀏覽器中運行良好,但在另一個瀏覽器中運行不正常

在用戶開始抱怨或離開你的網(wǎng)站/應(yīng)用程序以獲得更好的服務(wù)之前,IT組織需要立即了解這些問題。這對用戶留存和員工來說都是可怕的,它可能會導(dǎo)致成本高昂、不安全的影子IT。

無論哪種方式,缺乏可觀測性意味著你的組織很容易用戶滿意度低和支持成本高??捎^測性需要一種現(xiàn)代的監(jiān)控方法,當開發(fā)人員接受并參與監(jiān)控活動時,它會更成功。

以下是一些加強可觀測性的建議:

擴展數(shù)據(jù)

不限于傳統(tǒng)的資源監(jiān)控指標,如CPU利用率和網(wǎng)絡(luò)延遲。還包括來自每個基礎(chǔ)設(shè)施組件的日志、跟蹤、指標和警報,以便對應(yīng)用程序有新的了解。

團隊應(yīng)該有適當?shù)穆酚珊蜏贤ㄇ?,以便在事件發(fā)生時,快速訪問能夠最佳補救的系統(tǒng),或者提供額外的上下文。

將可觀測性作為開發(fā)原則

這遲早會成為開發(fā)人員工作的一部分。應(yīng)用程序運行狀況長期以來一直是IT運維部門的事,但從邏輯上講,真正了解應(yīng)用程序運行狀況的人是開發(fā)人員,因為他們構(gòu)建了應(yīng)用程序運,并且知道代碼應(yīng)該如何在生產(chǎn)環(huán)境中工作。通常,在開發(fā)沖刺的后期,會有人提出這樣一個問題:“我們?nèi)绾卧谏a(chǎn)中監(jiān)控這個服務(wù)?”

開發(fā)團隊爭先恐后地尋找一個可行的解決方案,最終有人在應(yīng)用服務(wù)器上運行了一個開源監(jiān)控工具的實例。這種情況并不少見。通過將可觀測性作為CI/CD管道中的一個關(guān)鍵步驟,而不是事后考慮,可以避免這種情況。

采購用于可觀測性的監(jiān)控工具

APM工具或越來越多的開源監(jiān)控工具(如Prometheus)可以幫助度量運維指標,如應(yīng)用程序、客戶端和服務(wù)器端錯誤(應(yīng)用程序正常運行期間可能發(fā)生的)。綜合或數(shù)字體驗管理工具提供了另一種理解系統(tǒng)輸出的方法。這有助于回答以下問題:用戶是否可以訪問應(yīng)用程序,以及體驗中是否存在任何事務(wù)性失???有一些功能強大的、小眾的可觀測性工具,但它們可能很難使用,并且需要許多開發(fā)人員不具備的監(jiān)控專業(yè)知識。請忽略供應(yīng)商的嗡嗡聲,采用在技能水平、資源等方面適合你的組織的工具。它應(yīng)該易于部署和管理。

簡化工具

跨越ITOps和DevOps組織的一個常見陷阱是復(fù)制工具的泛濫。這些工具之間的數(shù)據(jù)通常不是聯(lián)合的,這使得簡單而全面地實現(xiàn)可觀測性策略的工作成為一個大難題。

最常見的情況是,監(jiān)控和可觀測性工具受到追捧,并用于解決緊迫的問題(如準備發(fā)布、排除特定客戶端錯誤等)。隨著時間的推移,很容易會有20多個監(jiān)控工具來解決重疊的用例。該做的是,整合、集成,并考慮一個平臺解決方案來管理和統(tǒng)一所有數(shù)據(jù),為開發(fā)人員和運維人員節(jié)省時間。

圍繞改善最終用戶體驗而努力

可觀測性及其解決的問題不僅對開發(fā)人員、工程師和管理人員有意義。觀測工具產(chǎn)生的許多洞察可以為從事銷售、營銷、支持或?qū)I(yè)服務(wù)的同事提供豐富的背景。

一些例子包括:一年中哪一天或哪一時間網(wǎng)站流量最大?是否有某個用戶最常訪問的網(wǎng)頁?在啟動或網(wǎng)頁更改之后,我們是否看到了交易的增加?網(wǎng)頁加載速度慢嗎?如果慢,是什么原因造成的?

回答這些問題通常會涉及非技術(shù)團隊可以訪問的工具,并且需要對應(yīng)用程序本身有更深入的了解。DevOps和ITOps團隊應(yīng)該與非技術(shù)性涉眾協(xié)作,以了解哪些業(yè)務(wù)問題可以通過可觀測性工具來解決,以及解決這些問題的最佳方法。

THEEND

最新評論(評論僅代表用戶觀點)

更多
暫無評論