什么是Splunk?
Splunk是一个功能强大的日志管理工具,它不只能够用多种方式来添加日志,生产图形化报表,最厉害的是它的搜索功能 - 被称为“Google for IT”。Splunk有免费和收费版,最主要的差异在于天天的索引容量大小(索引是搜索功能的基础),免费版天天最大为500M。在使用免费版时,若是在30天以内,有7天的索引数据量超过500M,那么就不能够在搜索了(真是惋惜啊!)。根据你的须要,你能够选择购买天天的索引容量大小。
如何安装Splunk?
Splunk支持多种操做系统,但若是要经过WMI的方式来搜集Windows的日志的话,那么Splunk必须装在Windows操做系统上。我这里用的是Windows 2003 Standard服务器,具体的安装步骤很简单,根据向导一步步的进行就好。
如何配置Splunk?
如前面提到过的,Splunk能够经过多种方式来收集日志,主要包括监听syslog消息,访问WMI,监控日志文件,FIFO队列。我这里以几个典型配置为例:
1)经过syslog来收集Cisco网络设备的日志
在Cisco网络设备上的配置命令通常为:
logging <
syslog server IP Address>
logging trap <
severity>
Splunk默认使用UDP 514端口来监听syslog消息。
如:
logging 172.29.1.1
logging trap warning
2)经过syslog来收集Linux主机的日志
在Linux主机上的配置通常为:
修改/etc/syslog.conf配置,添加如下两行:
# Send syslog to Splunk server
*.<severity> @<
syslog server IP Address>
如:
# Send syslog to Splunk server
*.debug @172.29.1.1
3)经过WMI来收集Windows主机的日志
- 首先要确保运行Splunk服务(在服务管理器中显示为Splunkd)的账号有权限就去读取远程Windows机器的WMI信息。
- 而后就是要在Splunk服务器上作一下简单的配置:Splunk的安装路径默认为C:\Program Files\Splunk。在C:\Program Files\Splunk\etc\system\local文件下修改inputs.conf文件,添加如下内容:
[script://$SPLUNK_HOME\bin\scripts\splunk-wmi.py]
interval = 10
source = wmi
sourcetype = wmi
disabled = 0
- 接着在同一目录中新建一个文本文件,命名为wmi.conf,并添加如下内容:
[WMI:<
Name>]
server = <
Remote Windows Host IP Address>
interval = 60
event_log_file = <
Event log Type>
disabled = 0
好比监控IP地址为172.29.1.30的Windows主机上Application和System的Event Log:
[WMI:AppAndSys]
server = 172.29.1.30
interval = 60
event_log_file = Application, System
disabled = 0
如何使用Splunk?
Splunk采用B/S模式,默认端口为8000。如访问本文中的Splunk服务器,只须要在浏览器中输入
[url]http://172.29.1.1:8000[/url]。免费版的是不须要用户认证即可登陆的,30天试用企业版的是须要认证的,登陆账号是:用户为admin,密码为changeme。登陆后能够清楚的看到在过去的一小时内出现的日志报错状况。点击任何一个时间点,Splunk会打开相应的详细日志。这对咱们监控整个企业IT系统以及分析问题都提供了极大的帮助。
那么Google for IT是怎么体现的呢?Splunk提供一套关键字搜索的规则,利用这套规则能够进行很是精确的搜索。好比我想查看关于用户Jackie Chen和Michael Jordan在过去24小时内的全部相关日志的话,就能够在搜索处输入以下关键字。
Splunk还容许用户保留本身的搜索规则,这样就不用每次搜索同一内容都输入一遍关键字了。利用这一点,我分别为全部的网络设备,Windows主机和Linux主机创建的相应的搜索,并保存在一个新建的Dashboard中,这样我天天只要打开这个Dashboard就能够清楚的了解全部设备的日志状况。