apt-get update
если ubuntu 16, то ставим Java 8
apt-get install openjdk-8-jre
если 12.10 - Java 7
apt-get install openjdk-7-jre
качаем дистрибутивы
wget https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/deb/elasticsearch/2.3.5/elasticsearch-2.3.5.deb wget https://download.elastic.co/logstash/logstash/packages/debian/logstash_2.3.4-1_all.deb wget https://download.elastic.co/kibana/kibana/kibana_4.5.4_amd64.deb
устанавливаем
dpkg -i elasticsearch-2.3.5.deb dpkg -i logstash_2.3.4-1_all.deb dpkg -i kibana_4.5.4_amd64.deb
прописываем в автозапуск
update-rc.d elasticsearch defaults 95 10 update-rc.d logstash defaults 96 9 update-rc.d kibana defaults 95 10
в файл /etc/elasticsearch/elasticsearch.yml добавляем/редактируем строки
cluster.name: elasticsearch node.name: node-1
создаем файл /etc/logstash/conf.d/agent.conf со следующим содержимым
input {
tcp {
port => 514
type => syslog
}
udp {
port => 514
type => syslog
}
}
filter {
if [message] =~ "access" {
mutate { replace => { "type" => "apache_access" } }
grok {
match => { "message" => "%{COMBINEDAPACHELOG}" }
}
} else if [message] =~ "named" {
grok {
pattern => "<%{POSINT:priority}>%{SYSLOGLINE}"
add_tag => [ "named" ]
}
}
date {
match => [ "timestamp" , "dd/MMM/yyyy:HH:mm:ss Z" ]
}
}
output {
# Example just to output to elasticsearch
elasticsearch {
}
}
елси порт как выше 514 (до 1024), то запускать logstash нужно от имени root для этого правим файл запуска /etc/init.d/logstash
#LS_USER=logstash #LS_GROUP=logstash LS_USER=root LS_GROUP=root
запуск
service elasticsearch start service logstash start service kibana start
проверка запущеных процессов
root@server:~# service elasticsearch status * elasticsearch is running root@server:~# service logstash status logstash is running root@server:~# service kibana status kibana is running root@server:~# ps -aux | grep logstash root 26275 0.0 0.1 10496 2260 pts/2 S+ 16:08 0:00 grep --color=auto logstash root 29235 0.0 8.3 2475272 175756 pts/2 SNl 12:26 1:06 /usr/bin/java -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly - XX:+HeapDumpOnOutOfMemoryError -Djava.io.tmpdir=/var/lib/logstash -Xmx1g -Xss2048k -Djffi.boot.library.path=/opt/logstash/vendor/jruby/lib/jni -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -Djava.awt.headless=true - XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -Djava.io.tmpdir=/var/lib/logstash -XX:HeapDumpPath=/opt/logstash/heapdump.hprof - Xbootclasspath/a:/opt/logstash/vendor/jruby/lib/jruby.jar -classpath : -Djruby.home=/opt/logstash/vendor/jruby -Djruby.lib=/opt/logstash/vendor/jruby/lib -Djruby.script=jruby -Djruby.shell=/bin/sh org.jruby.Main --1.9 /opt/logstash/lib/bootstrap/environment.rb logstash/runner.rb agent -f /etc/logstash/conf.d -l /var/log/logstash/logstash.log root@server:~# ps -aux | grep kibana kibana 9712 0.0 23.2 1660544 488024 pts/2 Sl 10:04 1:06 /opt/kibana/bin/../node/bin/node /opt/kibana/bin/../src/cli root 26318 0.0 0.1 10496 2256 pts/2 S+ 16:08 0:00 grep --color=auto kibana root@server:~# ps -aux | grep elasticsearch elastic+ 7703 0.0 18.0 2465764 378740 ? Sl 09:49 2:54 /usr/bin/java -Xms256m -Xmx1g -Djava.awt.headless=true -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 - XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -XX:+DisableExplicitGC -Dfile.encoding=UTF-8 -Djna.nosys=true -Des.path.home=/usr/share/elasticsearch -cp /usr/share/elasticsearch/lib/elasticsearch- 2.3.5.jar:/usr/share/elasticsearch/lib/* org.elasticsearch.bootstrap.Elasticsearch start -d -p /var/run/elasticsearch/elasticsearch.pid --default.path.home=/usr/share/elasticsearch --default.path.logs=/var/log/elasticsearch --default.path.data=/var/lib/elasticsearch --default.path.conf=/etc/elasticsearch root 26353 0.0 0.1 10496 2172 pts/2 S+ 16:08 0:00 grep --color=auto elasticsearch
проверка открытых портов
root@server:~# netstat -tpln Активные соединения с интернетом (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:5601 0.0.0.0:* LISTEN 9712/node tcp6 0 0 :::514 :::* LISTEN 29235/java tcp6 0 0 ::1:9200 :::* LISTEN 7703/java tcp6 0 0 127.0.0.1:9200 :::* LISTEN 7703/java tcp6 0 0 ::1:9300 :::* LISTEN 7703/java tcp6 0 0 127.0.0.1:9300 :::* LISTEN 7703/java
проверка работы elasticsearch
root@server:~# curl http://localhost:9200
{
"name" : "node-1",
"cluster_name" : "elasticsearch",
"version" : {
"number" : "2.3.5",
"build_hash" : "90f439ff60a3c0f497f91663701e64ccd01edbb4",
"build_timestamp" : "2016-07-27T10:36:52Z",
"build_snapshot" : false,
"lucene_version" : "5.5.0"
},
"tagline" : "You Know, for Search"
}
проверка работы kibana
переходим на сайт http://ip-address:5601
проверка работы logstash, с соседнего компа коннектимся телнетом
telnet ip-address 514 test test1 test2 ctrl+c
в kibana должны появиться эти строки
в windows устанавливается программа eventlog-to-syslog https://code.google.com/archive/p/eventlog-to-syslog/
качается exe файл нужной битности в system32 и запускается
evtsys -i -h 192.168.21.20 -f local3 -l 0 -p 514
после чего появляется служба, которую нужно запустить
cisco 2950
core#sh run | inc logg logging buffered 262144 debugging logging rate-limit 10 except warnings logging console critical logging monitor critical logging facility local2 logging 192.168.21.20 logging trap inf