Table of Contents

Splunk

Install

Server (Host Name:splunkserver)

On the server download rpm file and run

rpm -ivh splunk-6.2.2-255606-linux-2.6-x86_64.rpm

Full start-up log

# /opt/splunk/bin/splunk start
 
Splunk> Finding your faults, just like mom.
 
Checking prerequisites...
        Checking http port [8000]: open
        Checking mgmt port [8089]: open
        Checking appserver port [127.0.0.1:8065]: open
        Checking kvstore port [8191]: open
        Checking configuration...  Done.
        Checking critical directories...        Done
        Checking indexes...
                Validated: _audit _blocksignature _internal _introspection _thefishbucket history main summary
        Done
        Checking filesystem compatibility...  Done
        Checking conf files for problems...
        Done
All preliminary checks passed.
 
Starting splunk server daemon (splunkd)...
Done
                                                           [  OK  ]
 
Waiting for web server at http://127.0.0.1:8000 to be available... Done
 
 
If you get stuck, we're here to help.
Look for answers here: http://docs.splunk.com
 
The Splunk web interface is at http://splunkserver:8000

Agent (Host Name:splunkclient)

On the client download rpm file and run

rpm -ivh splunkforwarder-6.2.2-255606-linux-2.6-x86_64.rpm

Configuration

Server

Define Listen Port

On the web console:

Setting -> Forwarding and Receiving -> Add Receiving -> Define listen Port (9997)

New Index

Create new index rts on splunk enterprise web

New Source Type

In this example we are creating a new source type for haproxy as that is not available by default for splunk. Steps

[haproxylog]
category = Web
pulldown_type = true
EXTRACT-haproxy_httplog = haproxy\b.*? (?<client_ip>\d+\.\d+\.\d+\.\d+):(?<client_port>\d+) \[[^\]]+\] (?<frontend_name>\S+) (?<backend_name>[^/]+)/(?<server_name>\S+) (?<request_time>\d+)/(?<queue_time>\d+)/(?<connect_time>\d+)/(?<response_time>\d+)/(?<total_time>\d+) (?<status_code>\d+) (?<response_size>\d+) \S+ \S+ (?<flags>\S{4}) (?<process_connections>\d+)/(?<frontend_connections>\d+)/(?<backend_connections>\d+)/(?<server_connections>\d+)/(?<retries>\d+) (?<server_queue_size>\d+)/(?<backend_queue_size>\d+)(?: \{(?<request_headers>[^\}]*)\})?(?: \{(?<response_headers>[^\}]*)\})? "(?<method>\S+)\s+(?<uri>[^"]+?)(?: HTTP\S+)?"
NO_BINARY_CHECK = true
SHOULD_LINEMERGE = false
description = HAProxy single line log
disabled = false

Other settings

Changed minimum disk free space required to 2GB from 5GB.

Client

Configure to monitor haproxy.log

Add forward server as the splunkserver on the designated port

/opt/splunkforwarder/bin/splunk add forward-server splunkserver:9997 -auth admin:changeme
Log forwarding

Modify /opt/splunkforwarder/etc/system/local/inputs.conf and add a monitor stanza to monitor haproxy.log, specified sourcetype and index

[default]
host = splunkclient

[monitor:///var/log/haproxy.log]
sourcetype = haproxylog
index = rts

Modify /opt/splunkforwarder/etc/system/local/outputs.conf to add forwarding

[tcpout]
defaultGroup = default-autolb-group

[tcpout:default-autolb-group]
server = splunkserver:9997

[tcpout-server://splunkserver:9997]

Restart forwarder

/opt/splunkforwarder/bin/splunk restart