Splunk 是機器數據的引擎。使用 Splunk 可收集、索引和利用所有應用程式、伺服器和設備生成的快速移動型計算機數據 。 使用 Splunking 處理計算機數據,可讓您在幾分鐘內解決問題和調查安全事件。監視您的端對端基礎結構,避免服務性能降低或中斷。以較低成本滿足合規性要求。關聯並分析跨越多個系統的複雜事件。獲取新層次的運營可見性以及 IT 和業務智慧型。
基本介紹
- 外文名:Splunk
- 類別:機器數據的引擎
- 性質:快速移動型計算機數據
- 功能:日誌聚合功能、搜尋功能等
功能,主機與源,搜尋,抽取,Piping,可視化功能,郵件提醒,特性,產品導覽,版本比較,獨特優勢,
功能
Splunk是一個託管的日誌檔案管理工具,它的主要功能包括:
· 日誌聚合功能
· 搜尋功能
· 提取意義
· 對結果進行分組,聯合,拆分和格式化
· 可視化功能
· 電子郵件提醒功能
主機與源
首先注意的是,日誌檔案分散在在主機和隨機的源中。這表示你可以從一台機器或一組機器中快速搜尋出所有的日誌。
搜尋
搜尋功能設定的非常簡單,只需輸入你想要搜尋的字元串,或者可以使用以下語句來進行高級搜尋:
· sourcetype="hsl-prod-fe" "Chase Seibert"
· sourcetype="hsl-prod-fe" e186f85c914261eec9e54d3767fdd3cc BEGIN
· sourcetype="hsl-prod-crawl" |regex _raw="fanmgmt\.(analytics|metrics)"
· sourcetype="hsl-prod-crawl" facebook OR twitter NOT linkedin
· sourcetype="hsl-prod-crawl" facebook OR linkedin OR twitter earliest=-24h
抽取
你可以使用內置的GUI來定義一個正則表達式,從每一行中抽取變數,可以對其進行過濾,分組和聚合操作。
如果變更日誌格式,你可以通過將鍵值對變成key=value格式,不用定義正則表達式。以下為示例:
def key_value(prefix, log_level='info', **kwargs):
log_message = '%s: %s' % (
prefix, ' '.join(['%s="%s"' % (k, v) for k, v in kwargs.items()]))
getattr(logging, log_level)(log_message.strip())
log_message = '%s: %s' % (
prefix, ' '.join(['%s="%s"' % (k, v) for k, v in kwargs.items()]))
getattr(logging, log_level)(log_message.strip())
Piping
同Unix類似,你可以將多個命令組合起來生成更複雜的查詢。比如sourcetype="hsl-prod-crawl" succeeded |stats count perc95(task_seconds) by python_module |sort count desc |head 10.
其他命令包括:
· | uniq
· | script python myscript myarg1 myarg2
· | bucket _time span=5m
· | eval name=coalesce(firstName, lastName)
· | rare, | anomalous
· | spath output=commit_author path=commits.author.name # extract xml/json values
其他可以調用的函式包括:
· avg()
· | eval description=case(error == 404, "Not found", error == 200, "OK")
· floor(), ceiling()
· len()
· isbool(), isint(), etc
· upper(), lower()
· trim(), ltrim(), rtrim()
· md5()
· now()
· random()
· replace()
· split()
· substr()
可視化功能
通過GUI builder點擊就可以創建可視化圖表,還可以通過命令行和函式來創建。包括餅圖,柱狀圖,行列圖以及計量圖等其他複雜的圖表。
郵件提醒
可以對Splunk進行設定,根據不同的事件來觸發郵件提醒。更多關於Splunk的使用方法,可以參考官方文檔以及論壇。
特性
1、多平台支持
Splunk是一個可以在所有主流作業系統上運行的獨立軟體包 - 只需選擇您的平台,然後下載並安裝即可。您需要處理和運行的是用戶使用的 Web 界面,以及用於索引計算機數據的引擎。
目前Splunk支持的平台有Windows XP, Vista, 7, and 8 (32-bit/64-bit)/Windows Server 2003, 2003 R2, 2008, and 2008 R2 (32-bit/64-bit)、2.6+ kernel Linux distributions(32-bit/64-bit)、Solaris(8,9,10,11)、OSX(10.5,10.6,10.7)、FreeBSD 7,8(32-bit/64-bit)、AIX (5.3,6.1,7.1) 、HP-UX(11i v2,11i v3).
2、從任意源索引任意數據
Splunk 可以從任何源實時索引任何類型的計算機數據。可以在 Splunk 中指向您的伺服器或網路設備的系統日誌、設定 WMI 輪詢、監視實時日誌檔案,並能夠監視您的檔案系統或 Windows 註冊表中的更改,或安排腳本獲取系統指標。Splunk 可以索引您的所有機器數據,而無需購買、編寫或維護任何特定的分析器或適配器。原始數據和豐富索引均存儲在高效、已壓縮的、基於檔案系統的數據存儲中,並提供可選數據簽名和數據的完整性審核。
3、從遠程系統轉發數據
在無法通過網路提供所需數據,或安裝了 Splunk 的伺服器上看不見所需數據的情況下,可以部署 Splunk Forwarder。Splunk forwarder 為成千上萬的端點提供安全、分散式實時全局數據收集。它們可以監視本地應用程式日誌檔案、捕獲有關時間表的狀態命令輸出、獲取來自虛擬或非虛擬來源的性能指標,或監控配置、許可權和屬性變化的檔案系統。它們都是屬於可以快速部署的輕量級伺服器,而且不會產生任何額外費用。
4、關聯複雜事件
藉助 Splunk,您可以跨許多數據來源關聯整個工作環境中的複雜事件。Splunk 支持五種關聯類型。基於時間的關聯,用於根據時間、接近性或距離來確定關係。基於交易的關聯,用於跟蹤構成單次交易的一系列相關事件,進而評估時間長度、狀態或進行其它分析。子搜尋,用於獲取其中一個搜尋的結果並在其它搜尋中使用這些結果。查找,用於關聯 Splunk 以外的外部數據來源。連線,用於支持類似 SQL 的內部和外部連線。關聯 Splunk 中的事件有助於從機器數據中獲得更豐富的分析和洞察力,為 IT 和業務提供更好的可見性和智慧型。
5、專為大型數據構建
使用 Splunk ,每天可收集和索引成千上萬太位元組的數據。其可擴展性體系結構基於 MapReduce,因此,隨著日常數據量和數據來源不斷增長,您只需添加更多商品伺服器即可擴展效能。自動負載平衡可以最佳化工作負載和回響時間,並提供內置故障轉移機制。開箱即用的報告和分析功能可避免部署第三方報告工具的需要。還可以配置 Splunk 使用 SAN 或其它存儲設備,以滿足長期存儲需求。
6、在整個數據中心擴展
Splunk 分散式體系結構可讓您在一個數據中心跨多個部署進行搜尋,或在您的所有數據中心進行全局搜尋。藉助基於角色的訪問,您可以控制指定用戶的搜尋將要跨越的範圍。區域用戶可以查看區域系統的數據,而企業範圍內用戶則可以查看所有數據中心的數據。Splunk 願景是讓每一位已授權員工都能夠看到他們需要的計算機數據;並將數據用於調查、報告和儀錶板或分析,以便不斷提高 IT 運營並獲得有價值的業務洞察力。花幾分鐘時間安全連線您的 Splunk 安裝,能讓您設計一個可管理的企業數據結構。
7、提供角色型的安全性
從各個方面來說,Splunk 均可謂是一種強大的安全模型。各項 Splunk 交易均會得到驗證,其中包括通過 Web 用戶界面和命令行接口執行的用戶活動,以及通過 Splunk API 執行的系統活動。使用一整套按用戶類型來限制功能的記錄控制點,您可以自己為 Splunk 用戶定義角色。這些精細的訪問控制可以限制搜尋、警報、報告、儀錶板以及不同 Splunk 角色可以查看的視圖。Splunk 還可以集成兼容 LDAP 的外部目錄伺服器和 Active Directory 伺服器,以執行企業範圍內的安全策略。此外,還提供單一登錄集成,以啟動對用戶憑據的傳遞身份驗證。由於進行故障排除、調查安全事件和證明合規所需的全部數據都保存在 Splunk 中,您可以嚴格限制訪問生產伺服器。
產品導覽
Splunk 實時收集並索引所有機器數據(物理、虛擬和雲中)。它允許您訪問、使用數據,並發掘數據價值。它能夠對各項事宜進行索引,以便深入了解、商討和解決問題。它可以在您與您的小組共享有用的搜尋時,進行智慧型輔助,並添加您的 IT 環境所特有的知識。它能創建臨時報告,以確認趨勢或證明合規控制;構建實時儀錶板,以便監視安全事件和攻擊、應用程式 SLA 和其他關鍵性能指標;實時分析用戶交易、客戶行為、機器行為、安全威脅、欺詐活動等。
1、索引任何數據
2、搜尋和調查
3、與搜尋結果互動
4、新增知識
5、關聯複雜事件
6、監視和警報
7、報告和分析
8、自定義儀錶板和視圖
9、構建和部署 Splunk 應用程式
版本比較
功能比較表
Splunk Free 專供個人使用。Splunk Enterprise 添加了支持多用戶和分散式部署的功能,並包括警報、基於角色的安全、單一登錄、預設的 PDF 交付以及對無限數據量的支持。
功能 | 說明 | Splunk Free | Splunk Enterprise |
索引量 | 每天的索引量 | 500MB/天 | 無限(基於許可證) |
全局索引 | 索引整個 IT 領域的任何數據 - 任何來源、格式或位置 | 支持 | 支持 |
搜尋 | 搜尋實時流式處理數據和歷史數據 | 支持 | 支持 |
報告 | 制定有關實時流式處理 IT 數據或歷史 IT 數據的專項報告 | 支持 | 支持 |
知識圖 | 新增有關事件、欄位、交易、模式和統計資料的知識至您的 IT 數據 | 支持 | 支持 |
儀錶板 | 創建集成多個圖表、報告和表格的實時儀錶板 | 支持 | 支持 |
監視和警報 | 預設針對不斷監視和警報簡單或複雜事件的搜尋 | 支持 | |
PDF 報表交付 | 預設任何 Splunk 儀錶板、視圖、搜尋或報告的 PDF 報表交付 | 支持 | |
分散式搜尋 | 搜尋整個分散式 Splunk 部署,支持負載平衡和故障轉移 | 支持 |
數據接收 | 接收來自其它 Splunk 實例的數據 | 支持 | 支持 |
數據轉發 | 將可靠數據實時轉發至其它 Splunk 實例 | 支持 | 支持 |
訪問控制 | 提供用戶驗證和基於角色的訪問控制 | 支持 | |
單一登錄 | 集成到企業單一登錄解決方案 | 支持 | |
社區應用程式 | 運行社區網站 Splunkbase 提供的應用程式和外掛程式 | 支持 | 支持 |
高級應用程式 | 支持由 Splunk 和合作夥伴分配的高級應用程式 | 支持 | |
開發人員 API | 記錄的 API 可將 Splunk 集成到任何業務或開發工作流程 | 支持 | 支持 |
標準支持 | 訪問完整的產品文檔、論壇和 IRC,以便對基本技術問題作出回答 | 支持 | 支持 |
企業級支持服務 | 通過電話直接訪問我們能夠線上管理案例(也提供定製的支持水平)的客戶支持團隊 | 支持 |
獨特優勢
1、無風險快速回報
作為一種免費下載或低成本的企業許可證,Splunk 部署簡單並可以從單一伺服器部署擴展至全局大規模運營,以及提供快速的投資回報。在您的筆記本電腦或任何商品伺服器上免費下載和安裝 Splunk 只需五分鐘,然後可以輸入任何機器數據並啟動 Splunking。Splunk 通常在緊急時刻首次部署。正在發生的重大服務中斷或安全事件會使人傷透腦筋,但您可以使用 Splunk 便能在幾分鐘內完成調查,而不是幾個小時或幾天。
2、受到用戶喜愛
大多數用戶很快就會成為 Splunk 的忠實用戶,因為我們的開發人員專注於開發他們自己想要使用的軟體。所有相關人員 - 系統管理員、安全分析師、網路工程師、開發人員、服務台和支持人員 - 均可以即刻部署 Splunk 並能夠更好、更快和更輕鬆地完成他們很難完成的部分工作。Splunk Web 界面非常直觀且快速,並支持快速、臨時深入分析搜尋結果。
3、處理您所有的機器數據
與其它需要您花費幾天或幾周時間來開發或配置特定分析器和自定義連線器的系統管理、SIEM 和日誌管理產品不同,Splunk 可以連線至任何數據來源。即時未提供連線器,您也無需依賴某個廠商來生產特定連線器。Splunk 能夠實時持續索引您的所有機器數據 - 日誌、配置數據、變化事件、診斷命令輸出、API 和訊息佇列中的數據,甚至自定義應用程式中的日誌。現在,您可以輕鬆處理對解決問題、調查安全事件、報告合法性和其它有價值的任務至關重要的企業數據。如果機器可以生成數據,則 Splunk 就可以對其進行索引、搜尋,並用其生成警報和報告。
4、適應動態環境
在當今動態和可視化的數據中心,唯一不變的常量就是變化。傳統的 IT 管理和安全技術假設您知道前方的所有可能失敗和風險,且您的數據格式將不會發生變化,但這種做法已經不再有效。Splunk 能夠實時持續索引您的所有計算機數據,不會依賴脆性架構來限制靈活性,當數據格式發生變化時也不會中斷。您需要對數據進行的任何解釋,例如提取共同的欄位或標記主機的子集,都可以在搜尋時輕鬆完成,無需格式轉換。這就是您從全球 Splunk 用戶了解到的重要事情之一,即 Splunk 擁有卓越的靈活性的原因。
5、適用於所有類型的用戶
Splunk 可以輕鬆創建自定義儀錶板和報告,使您能夠清楚地處理大量數據。將預定義的搜尋、圖表和報告合併成一個強大的儀錶板,或使用其它基於網路的應用程式創建聚合應用程式,例如 Tivoli、SAP、Oracle 和安全控制台等。Splunk 有助於網路工程師、系統管理員、安全和合法性分析師、開發人員、支持人員、服務台工作人員,甚至業務用戶及時了解在 IT 基礎結構中發生的任何事件。
6、滿足整個 IT 行業的策略需求
Splunk 發明了一種用來管理機器數據和釋放其巨大價值的新方法。將 Splunk 用作引擎來搜尋和分析計算機數據,不但能改變用戶完成其工作的方式,而且還能提升 IT 在組織中的作用。這樣能使用戶大大提高生產率,使企業增加更多正常運行時間並減少收入中斷,從而使客戶更加滿意。許多客戶開始使用 Splunk 來解決具體問題領域,使他們的初始使用案例快速成為內部成功案例,然後將 Splunk 部署到其它 IT 關鍵領域(如應用程式管理、安全與合規性、基礎結構與運營管理),並獲取新的商業智慧型。
7、從筆記本電腦擴展至數據中心
您必須以更低的成本、更快的速度,完成更多工作。Splunk 能讓您在一台商業伺服器上,在幾秒內便可搜尋數十億個事件。它的並行架構意味著,其搜尋和索引效能將跨整個 CPU 核心和商品伺服器線性攀升。Splunk 使用它自己的高效數據存儲,這樣不會受到傳統資料庫的吞吐量限制或僵化架構的限制,從而使它成為搜尋企業數據,進行警報和報告的最快和最靈活的方法。