一種新型管理工具正在IT組織中成為主流。和繁瑣的測試或評估方法不同,這些新興工具關(guān)注的是系統(tǒng)和應(yīng)用程序最常見的共同點:日志文件。
在復(fù)雜而嚴(yán)苛的數(shù)據(jù)中心環(huán)境中,通常會使用一些成熟的管理工具來查找隱患,但是這些工具無法感知細(xì)微的因果關(guān)聯(lián),數(shù)據(jù)中心的日常排錯和優(yōu)化目標(biāo)難以實現(xiàn)。日志分析工具可以填補這些空缺,讓IT專業(yè)人員在面對復(fù)雜的數(shù)據(jù)中心基礎(chǔ)架構(gòu)時能做出更有效和正確的決策。
幾乎所有的系統(tǒng)和應(yīng)用程序都會產(chǎn)生日志文件。日志是帶時間標(biāo)記的足跡,記錄行為、條件和事件。在實際環(huán)境中,單獨的日志文件價值有限。但當(dāng)日志工具自動歸納和比較各種不同的日志文件之后,管理員就能擁有一個關(guān)于重點和問題的全新視圖,并能對根本不可能手工處理的巨量日志實現(xiàn)深入分析。
泛濫的日志
在計算機程序執(zhí)行過程中記錄關(guān)鍵事件并非什么新發(fā)明。自從軟件開發(fā)職業(yè)出現(xiàn),程序員們就一直使用“output”語句(具體語句取決于編程語言)來報告重要的事件,將所有事件保存到一個文件供以后參考也就成了標(biāo)準(zhǔn)做法。如今的操作系統(tǒng)和應(yīng)用程序通常會例行公事地記錄一切事件,無論是好事還是壞事。例如,Web服務(wù)器可能會記錄每個成功或失敗的頁面請求;微軟Active Directory會跟蹤記錄用戶的登錄嘗試或變動;數(shù)據(jù)庫服務(wù)器會記錄查詢請求和結(jié)果,等等。
單純的日志記錄有其局限性。每個日志文件只與其所屬的應(yīng)用程序或操作系統(tǒng)關(guān)聯(lián),因此,管理員需要單獨打開并查看每一個相關(guān)的日志。想在某個特定的日志中找到錯誤或關(guān)鍵事件并不難,但想要確定不同的系統(tǒng)或應(yīng)用程序之間事件的因果關(guān)系則極其困難。即便是最厲害的管理員也無法在有生之年完成對多個日志的逐一篩查;讓人類來處理海量事件的全部記錄并要求看透其中復(fù)雜的關(guān)聯(lián),這是根本不可能的。
日志管理和分析工具負(fù)責(zé)對整個數(shù)據(jù)中心內(nèi)的硬件系統(tǒng)、操作系統(tǒng)、虛擬化平臺和應(yīng)用產(chǎn)生的日志數(shù)據(jù)進行篩選、處理和生成報告。分析的最終結(jié)果能成為關(guān)鍵決策的有力支持。
日志分析有助于找出事件之間的關(guān)聯(lián)和排除故障。例如,網(wǎng)絡(luò)交換機配置的改變可能會導(dǎo)致某些應(yīng)用程序用戶的存儲子系統(tǒng)出現(xiàn)超時問題。日志分析能展示問題點,并提示問題產(chǎn)生之前的任何事件記錄。這種做法提高了尋找問題根源的能力,鎖定變化多端或看似無關(guān)的問題原因以便對癥修復(fù)。
“我開始對組織內(nèi)部的IT運維分析工作產(chǎn)生興趣,是因為只需匯總各種基礎(chǔ)設(shè)施的功能日志文件條目就能輕松識別各種問題,而這些問題之前只能從單個服務(wù)器或單個應(yīng)用程序上找原因,”Reach IPS IT主管和顧問委員會成員Tim Noble表示。Noble熱愛和擅長大規(guī)模系統(tǒng)的故障排查和優(yōu)化工作。
安全是日志分析的另一個重要目的。例如,Active Directory中新增用戶的操作可能會伴隨非法存儲訪問嘗試記錄顯著增長。日志分析能報告這些嘗試,并關(guān)聯(lián)值得注意的事件,提供關(guān)于安全隱患的重要線索或者提示惡意用戶的身份。作為另一個例子,受政府或行業(yè)監(jiān)管的組織可以依靠日志分析來確保自己在安全、系統(tǒng)訪問權(quán)限等各方面遵從管理法規(guī)。
為了維持或提高服務(wù)性能,日志報告和錯誤消息可以成為容量規(guī)劃或架構(gòu)變動的有效依據(jù)。
選擇工具
面對種類繁多的日志分析工具,IT決策者必須根據(jù)自身數(shù)據(jù)中心和業(yè)務(wù)需求來選擇最適合的一種或一套工具。這需要仔細(xì)比較每個產(chǎn)品的功能集和要求。
“我會從價格、安全性、可靠性和功能幾個方面來評估SaaS日志工具。我需要歸納數(shù)據(jù)、創(chuàng)建明晰的儀表板,通過Api進行交互,并設(shè)置日志監(jiān)視和警報,”舊金山灣地區(qū)技術(shù)顧問Ben Whaley表示。
在選擇最佳工具時要重點考慮以下內(nèi)容:
1. 評估日志分析需求。不同的工具在收集、解析和處理日志文件方面的能力各不相同,所以應(yīng)該理清自己需要針對哪種日志文件進行管理和分析處理。不同類型日志的例子包括:來自Windows或Linux服務(wù)器的操作系統(tǒng)日志;Windows Active Directory日志以及來自DHCP服務(wù)器、防火墻、VPN、路由器和交換機的網(wǎng)絡(luò)日志。日志管理和分析工具必須具備虛擬化感知能力。側(cè)重安全的日志分析可能需要配合端點安全或身份驗證工具,例如LDAP輕量級目錄訪問協(xié)議、Trustwave Data Loss Prevention網(wǎng)絡(luò)數(shù)據(jù)丟失防范、Vormetric數(shù)據(jù)安全系列產(chǎn)品等。您還可能需要通過特定的商業(yè)應(yīng)用程序(如 Microsoft SharePoint)、數(shù)據(jù)庫平臺(如Oracle 或SQL)、電子醫(yī)療記錄等來源獲取日志。
2. 權(quán)衡分析和報告功能。只能兼容當(dāng)前的日志文件是不夠的。因為日志管理和分析工具種類的急劇增長,這些工具也會變得專用化,適合不同專長的IT團隊。例如,如果你的基本目標(biāo)是安全事件的識別和調(diào)查,請考慮采用針對安全信息和事件管理的SIEM工具,而不需要考慮額外的容量預(yù)測等功能。
留意數(shù)據(jù)處理、訪問和報告的途徑。一些工具提供直觀的駕駛艙式的儀表盤,而其它工具則會生成詳細(xì)的、正式的、可配置的報告。
支持搜索功能的分析工具允許用戶隨時按需定位和關(guān)聯(lián)事件。“整合日志分析讓我們能夠使用‘成功啟動’和‘處理失敗’等關(guān)鍵字搜索和鑒別系統(tǒng)中發(fā)生的好事和壞事,從而通過收集事件來評估我們的升級是否成功,定位和跟蹤發(fā)生的問題,”某聯(lián)邦政府承包商CTO表示。
3. 選擇平臺。和多數(shù)傳統(tǒng)管理工具一樣,某些日志管理和分析工具會使用本地安裝和部署模式。本地安裝的例子包括ManageEngine的EventLog Analyzer、SolarWinds的Log和Event Manager以及AWStats。本地安裝模式下,用戶直接操作安裝過程,包括數(shù)據(jù)采集、儲存、處理和報告相關(guān)的設(shè)定。
越來越多的工具可以作為云服務(wù)或軟件即服務(wù)(SaaS)提供在線使用,例如Loggly、Splunk、Sumo Logic和Sematext等等。這些服務(wù)按月收取費用,不再需要任何硬件,也不會產(chǎn)生安裝或維護管理工具的IT人員開銷。
別忘了接口API,它們是企業(yè)的工具和各種日志或其它應(yīng)用程序之間的橋梁。
4. 審查工具的擴展性。無論選擇哪種平臺,都應(yīng)確保所選的日志管理和分析平臺足夠應(yīng)對當(dāng)前和可預(yù)見的未來規(guī)模。確定自己是希望從數(shù)以萬計的需求各異的服務(wù)器和設(shè)備收集、存儲、處理、關(guān)聯(lián)和報告日志數(shù)據(jù),還是只需要管理幾百個系統(tǒng)。
5. 評估安裝的前期條件。任何日志管理和分析軟件都會增加運算和環(huán)境壓力,所以請確認(rèn)您有足夠的服務(wù)器和存儲資源來支持該工具的正常部署。例如,SolarWinds的Log and Event Manager安裝要求中指出,要求VMware ESXi 4.0或Hyper-V Server 2008 R2和更高版本,一個雙處理器服務(wù)器,3MHz計算資源、8GB系統(tǒng)內(nèi)存和250MB的應(yīng)用程序存儲空間。更高的數(shù)據(jù)采集速率,或涉及大型數(shù)據(jù)中心基礎(chǔ)設(shè)施的部署往往對應(yīng)更高的要求,例如更多的處理器和更多的網(wǎng)絡(luò)帶寬。
另一種選擇是:以一體化設(shè)備形式部署的工具:例如,SevOne的Performance Log Appliance采用整機部署,不需要額外的計算機硬件。
規(guī)避日志分析誤區(qū)
這聽起來很簡單:只要將所有的日志文件導(dǎo)入工具,分析向?qū)Ь蜁o你展示事件和關(guān)聯(lián)。
實際上并不簡單。
日志的兼容性是最值得注意的問題。不同硬件設(shè)備、操作系統(tǒng)、應(yīng)用程序和其它來源產(chǎn)生的日志文件在結(jié)構(gòu)、格式、上下文和內(nèi)容各方面差異巨大。面對由整個基礎(chǔ)架構(gòu)的方方面面產(chǎn)生的紛繁的日志類型和格式,單個日志管理和分析工具可能難以全部打開和提取。事先評估組織的分析需求可以減少兼容性問題,但仍然難以完全避免。
Whaley表示:“大多數(shù)廠商的多行格式的日志似乎并不好對付。如果一個日志的語句包含多行,在管理界面中信息就會分散,而且很難拼湊完整。”
第二個問題和日志底層的時間標(biāo)識有關(guān)。日志工具通常根據(jù)時間戳來為不同日志之間的事件建立關(guān)聯(lián)(尤其是非實時執(zhí)行的的事后分析)。時鐘誤差并不會阻礙嚴(yán)重事件被記錄或報告,但可能會導(dǎo)致日志工具錯過不同日志之間潛在的因果關(guān)聯(lián)——這可是你使用此工具的主要目的。檢查你是否需要同步設(shè)備的時鐘,或者是否需要使用工具來讓不同日志之間的時間能正常對應(yīng)。
第三個限制來自分析結(jié)果。查看每一個事件的流水帳幾乎毫無意義;你可能只需要關(guān)注負(fù)面事件,或者找出特定的事件。搜索功能的有限或缺失會使特定問題的定位非常困難,例如查找存儲錯誤或失敗的登錄嘗試等等。在發(fā)現(xiàn)一個問題并產(chǎn)生警報的同時,該工具還應(yīng)該能夠提供可操作的指導(dǎo),如果沒有搜索能力,這一點也難以實現(xiàn)。在檢測到問題時能夠向你發(fā)出問題警報,按需定位問題提供可操作的建議,這樣的日志管理和分析工具才真正有用。查看關(guān)聯(lián)動作會有收獲,但要想解決一些嚴(yán)重故障,或需要仔細(xì)排查以確定實際問題,最需要的不是工具,而是你的用心投入。
盡職盡責(zé),就一定能阻止每一個潛在的問題。利用供應(yīng)商提供的免費演示來測試最新的日志管理和分析產(chǎn)品,長期在理論驗證項目上投資,通過這些措施來仔細(xì)審核日志工具。尋找最有利于你的組織的產(chǎn)品或服務(wù),并且一定要檢查產(chǎn)品路線圖,考察日志工具的未來版本發(fā)展是否能跟上你自己的數(shù)據(jù)中心規(guī)劃。
挖掘?qū)毑?/strong>
經(jīng)歷幾年的積累之后,日志內(nèi)容的潛在規(guī)律會逐步顯露,這會讓工具在發(fā)現(xiàn)和報告問題方面有更好的表現(xiàn)。
“我希望在檢測到異常時能有自動警報,”Whaley表示,“我希望看到一些獲得全部廠商支持的標(biāo)準(zhǔn),然后開發(fā)人員們就可以利用內(nèi)部應(yīng)用程序為每條日志消息的涵義給出通用的解釋。”
對于許多IT組織已經(jīng)在使用的各類系統(tǒng)或基礎(chǔ)設(shè)施管理工具而言,日志管理和分析工具并不是替代品。但是,篩選并利用已有的各種(通常被忽視的)日志信息,挖掘潛在價值——這無疑是一項能與當(dāng)前的管理措施并存的備受期待的新功能。