初學Splunk

 splunk簡介html

https://www.splunk.com/zh-hans_cn/download.htmllinux

 

splunk 簡體中文版手冊ios

http://docs.splunk.com/Documentation/Splunk/6.5.0/Translated/SimplifiedChinesemanuals
========================================================web

 


Splunk 是面向雲的日誌搜索引擎。使用 Splunk 可收集、索引和利用全部應用程序、服務器和設備
(物理、虛擬和雲中)生成的快速移動型計算機數據 。從一個位置搜索並分析全部實時和歷史數據。使
用 Splunking 處理計算機數據,可以讓您在幾分鐘內(而不是幾個小時或幾天)解決問題和調查安全事件。
監視您的端對端基礎結構,避免服務性能下降或中斷。以較低成本知足合規性要求關聯並分析跨越多個系
統的復瑣事件。獲取新層次的運營可見性以及 IT 和業務智能。shell

功能特性
一、多平臺支持
二、從任意源索引任意數據
三、從遠程系統轉發數據
四、關聯復瑣事件
五、專爲大型數據構建
六、在整個數據中心擴展
七、提供角色型的安全性vim

 

Splunk安裝瀏覽器

若是你是第一次訪問Splunk網站,須要先註冊一個Splunk用戶,默認下載的是60天Enterprise試用版,60天試用以後將自動轉化爲Free版,安全

轉化位Free版後每日處理的日誌量最高位500M。bash

========================================================
安裝Splunk
1. 確保/opt有足夠的空間
2. 安裝Splunk服務器

[root@root rpms]# ls splunk-5.0.2-149561-linux-2.6-x86_64.rpm splunkforwarder-5.0.2-149561-linux-2.6-x86_64.rpm [root@root rpms]# rpm -ivh splunk-5.0.2-149561-linux-2.6-x86_64.rpm [root@root rpms]# ls /opt/splunk/ bin lib share etc license-eula.txt splunk-5.0.2-149561-Linux-i686-manifest ftr openssl include README-splunk.txt

 

啓動Splunk

[root@root rpms]# /opt/splunk/bin/splunk start [root@root rpms]# /opt/splunk/bin/splunk status splunkd is running (PID: 9116). splunk helpers are running (PIDs: 9118). splunkweb is running (PID: 9167).

 

配置環境變量:

[root@root ~]# vim .bash_profile SPLUNK_HOME=/opt/splunk PATH=$PATH:$SPLUNK_HOME/bin export SPLUNK_HOME PATH 
[root@root ~]# source .bash_profile [root@root ~]# env |grep SPLUNK SPLUNK_HOME=/opt/splunk

 

設置開機啓動:

[root@root ~]# splunk enable boot-start Init script installed at /etc/init.d/splunk. Init script is not configured to run at boot. [root@root ~]# chkconfig splunk --list
splunk 0:關閉 1:關閉 2:啓用 3:啓用 4:啓用 5:啓用 6:關閉 [root@root ~]# service splunk restart

 

登陸Web管理界面

[root@root ~]# firefox http://localhost:8000 &

 

Splunk受權使用


第一次安裝好splunk後,Splunk會給你一個60天試用Enterprise版的受權,其容許最多天天500M的日誌索引量,這個受權包含着咱們的安裝包中。
Enterprise受權提供以下Free版中沒有的功能功能:
1.多用戶使用和存取控制
2.分佈式檢索和數據路由
3.快捷管理部署及以tcp/http方式傳輸
4.告警和監控
60天后你將沒法使用Enterprise版功能,splunk系統自動降級位Free版,若是你在試用後很喜歡splunk,而且須要更多的受權日誌檢索量,你能夠向Splunk公司購買相應的受權。你付款成功後將收到由Splunk發送來的電子郵件,郵件中將以附件的形式發送受權文件,保存受權文件後,你能夠進入splunk.uplooking.com頁面添加受權文件來完成受權的動做。
打開瀏覽器後,登錄splunk,在右上角點擊「管理器」,找到「系統」項目,點擊其中的「受權」項目,點擊「添加許可證」,找到你的受權文件,並添加入許可證組。

 

Splunk導入本地日誌
========================================================

1、添回數據
添加數據---->選擇數據類型(syslog) ---->使用此 Splunk 服務器上的任何 syslog 文件或目錄---->
在索引以前預覽數據(/var/log/messages)---->繼續 ---->繼續 ---->保存

 

2、搜索日誌示例

source="/var/log/secure" 192.168.2.125 source="/var/log/secure" AND 192.168.2.125 source="/var/log/secure" AND 192.168.2.125 AND user=root NOT failures source="/var/log/secure" AND 192.168.2.125 AND user=root AND failures

 

Splunk導入遠程Apache日誌
========================================================

Splunk server 192.168.2.126 端口9997
Splunk Forwarders 192.168.2.125

1、服務器端配置接收
管理器---->數據(轉發和接收) ---->接收數據(新增) ---->端口9997 ---->保存
注意iptables

 

2、客戶端配置Forward
0. 目標將該目錄中的全部日誌轉發到Splunk server

[root@web_splunk ~]# ls /var/log/httpd/ access_log error_log

 

1. 安裝&啓動

[root@web_splunk rpms]# rpm -ivh splunkforwarder-5.0.2-149561.i386.rpm [root@web_splunk rpms]# /opt/splunkforwarder/bin/splunk enable boot-start [root@web_splunk rpms]# chkconfig splunk on
[root@web_splunk rpms]# service splunk start

 

2. 配置轉發日誌

[root@web_splunk ~]# /opt/splunkforwarder/bin/splunk add forward-server 192.168.5.240:9997 Splunk username: admin Password: changeme Added forwarding to: 192.168.2.126:9997. [root@web_splunk ~]# cd /opt/splunkforwarder/etc/system/local/
[root@web_splunk local]# ls inputs.conf outputs.conf README server.conf [root@web_splunk local]# cat outputs.conf //轉發目標地址 [tcpout] defaultGroup = default-autolb-group    

[tcpout:default-autolb-group] server = 192.168.2.126:9997    
[tcpout-server://192.168.2.126:9997]

[root@web_splunk local]# cat inputs.conf [default] host = web_splunk [monitor:///var/log/httpd]    //要轉發的日誌 [root@web_splunk ~]# service splunk restart

 

測試:

注意:0字節的日誌文件不會被轉發
咱們屢次訪問網站後,日誌會不斷更新,splunk中也會不斷更新。

 

Splunk應用擴展
========================================================

Splunk做爲一個可擴展的日誌分析平臺目前支持基於API的擴展,第三方能夠基於
Splunk的API編寫Splunk應用擴展。經過Splunk 應用擴展,能夠加強Splunk對數據的進一步分析。
安裝Splunk應用能夠經過Splunk的web界面,也能夠經過Splunk的文本控制界面。
鏈接https://192.168.2.126:8000, 點選「管理器」:

點擊「應用」,打開「應用管理界面」頁:

此界面頁中是已經安裝的「應用」,包括Splunk默認應用。
咱們能夠經過三種方式安裝或建立新應用:
1. 聯機查找更多應用:若是你能夠鏈接互聯網,這是一個方便的安裝應用方式
2. 從文件安裝應用:若是你沒法鏈接互聯網,能夠經過這種方式將下載好的應用安裝到Splunk中
3. 建立應用:若是你是splunk第三方開發或是有本身的使用系統,能夠經過這個選型建立本身的應用
在此頁中,咱們能夠控制「應用」的狀態,能夠經過web界面「啓用」或「禁用」應用,而且配置應用的某些屬性。
   
已經下載好的「Splunk for Unix and Linux」應用包,文件名爲「unix.tar.gz」。能夠經過「從文件安裝應用」來安裝它。
點擊「應用管理界面」頁裏的「從文件安裝應用」,進入「上載應用」頁。

 

 

splunk服務重啓完成後,會要求你在瀏覽器中從新登錄。
登錄後在右上角的「應用」下拉菜單中,咱們會發現一個新的應用「*NIX 4.6」,點擊「*NIX 4.6」,進入「Splunk For Unix and Linux」應用。因爲是第一次進入,咱們須要去設置這個應用:

點擊」Configure」,進入配置界面
這個界面基本上須要咱們改動的是在「Scripted Inputs:」中打開須要監控的項目,
點擊「Enable」就是打開,後面的「interval」是檢查週期單位爲秒。
咱們按下圖打開cpu、內存、I/O等檢測項。

點擊「save」保存。看到下面的界面就算安裝正確了,點擊「ok」

接下來,你們能夠等上3~5分鐘後,查看「CPU」、「Memory」、「Disk」等下拉菜
單預約義的視圖,經過它們分析splunk.master.com主機的運行狀態。
「Cpu Overview」 以下圖所示:

「Memory Overview」以下圖所示:

 

實例:Splunk Unix 異地性能監視應用
從運維的角度來說,咱們須要收集因此服務器的運行狀態,而且將這些性能狀態數據彙總起來。
接下來咱們須要配置其餘主機上的Splunk應用來轉發其性能數據,而且在192.168.2.126 上彙總它們。
下載「Splunk for Unix and Linux technology add-on」應用文件,而且放置在web.master.com服務上,應用文件名爲」Splunk_TA_nix.tar.gz」

    「Splunk for Unix and Linux technology add-on」,這個應用並不安裝在splunk.master.com主機上,而是安裝在須要轉發數據的服務器上,例如:web.master.com 服務器,轉發服務器須要安裝Splunk Forwarder,而且容許轉發數據送達Splunk服務器。



被監控端:  
安裝:

# tar xvzf Splunk_TA_nix.tar.gz -C /opt/splunkforwarder/etc/apps # chown splunk.splunk /opt/splunkforwarder/etc/apps/Splunk_TA_nix –R

 

配置:

# mkdir /opt/splunkforwarder/etc/apps/Splunk_TA_nix/local # cp /opt/splunkforwarder/etc/apps/Splunk_TA_nix/default/inputs.conf /opt/splunkforwarder/etc/apps/Splunk_TA_nix/local 將inputs.conf 文件從default目錄下拷貝到local目錄下,而後編輯inputs.conf文件。 將你須要轉發的數據項disabled = 1改成disabled = 0。 :%s/disabled = 1/disabled = 0 # Copyright (C) 2005-2011 Splunk Inc. All Rights Reserved. [script://./bin/vmstat.sh] interval = 60 sourcetype = vmstat source = vmstat index = os disabled = 0s [script://./bin/iostat.sh] interval = 60 sourcetype = iostat source = iostat index = os disabled = 0
[script://./bin/ps.sh] interval = 30 sourcetype = ps source = ps index = os disabled = 0
[script://./bin/top.sh] interval = 60 sourcetype = top source = top
index = os disabled = 0
[script://./bin/netstat.sh] interval = 60 sourcetype = netstat source = netstat index = os disabled = 0
[script://./bin/protocol.sh] interval = 60 sourcetype = protocol source = protocol index = os disabled = 0
[script://./bin/openPorts.sh] interval = 300 sourcetype = openPorts source = openPorts index = os disabled = 0
[script://./bin/time.sh] interval = 21600 sourcetype = time source = time index = os disabled = 1
[script://./bin/lsof.sh] interval = 600 sourcetype = lsof source = lsof index = os disabled = 0
[script://./bin/df.sh] interval = 300 sourcetype = df source = df index = os disabled = 0 # Shows current user sessions [script://./bin/who.sh] sourcetype = who source = who interval = 150
index = os disabled = 1 # Lists users who could login (i.e., they are assigned a login shell) [script://./bin/usersWithLoginPrivs.sh] sourcetype = usersWithLoginPrivs source = usersWithLoginPrivs interval = 3600
index = os disabled = 1 # Shows last login time for users who have ever logged in
[script://./bin/lastlog.sh] sourcetype = lastlog source = lastlog interval = 300
index = os disabled = 0 # Shows stats per link-level Etherner interface (simply, NIC) [script://./bin/interfaces.sh] sourcetype = interfaces source = interfaces interval = 60
index = os disabled = 0 # Shows stats per CPU (useful for SMP machines) [script://./bin/cpu.sh] sourcetype = cpu source = cpu interval = 30
index = os disabled = 0 # This script reads the auditd logs translated with ausearch [script://./bin/rlog.sh] sourcetype = auditd source = auditd interval = 60
index = os disabled = 1 # Run package management tool collect installed packages [script://./bin/package.sh] sourcetype = package source = package interval = 3600
index = os disabled = 0
[script://./bin/hardware.sh] sourcetype = hardware source = hardware interval = 36000
index = os disabled = 0

 


被監控端重啓服務  
保存文件後,須要從新啓動splunk forwarder 服務。

# /opt/splunkforwarder/bin/splunk restart

 

若是你的配置一切正常,你會在http://splunk.uplooking.com:8000上,「*NIX
4.6」應用頁上看到「主機」部分新增了「web」服務器。

在「CPU by Host」標籤頁中,將看到兩臺主機cpu數據信息以下圖示:

 

 在「Memory by Host」標籤頁中,咱們將看到兩臺主機內存數據信息以下圖示

相關文章
相關標籤/搜索