ELK 作为交换机和路由器日志管理系统的简单实践!
硬件环境:[*]
[*] IBM System X3650m3
[*] CPU:Xeon E5620 2.4GHz
[*] 内存:8G
[*] 硬盘:300G(RAID1)
软件环境:
a. 系统:CentOS6.5
b. E : elasticsearch-2.1.1.rpm
L : logstash-2.1.1-1.noarch.rpm
k : kibana-4.3.1-linux-x64.tar.gz
c.python-meld3-0.6.7-1.el6.x86_64.rpm
d. supervisor-3.0-1.gf.el6.noarch.rpm
注: logstash自带的启动脚本有问题,所以使用supervisor来管理logstash的服务器进程
一.
1. 安装logstash:
yum -y localinstall logstash-2.1.1-1.noarch.rpm 2. 配置logstash(/etc/logstash/conf.d/logstash.conf,默认没有需要自己编写)
input{
udp{
port => 514#用于接收交换机和路由器的日志的服务器端口
type => "switch_route"
}
}
filter{
if == "switch_route" {
grok{
#用于过滤日志信息,NUMBER等大写字母表示的是logstash自带的正则模式,冒号后面的表示自定义的显示字段
match => ["message", "%{NUMBER:internal_id}: %{SYSLOGTIMESTAMP:message_timestamp}: %{GREENDATA"}]
}
#用于解析syslog的severity 和 facility
syslog_pri{}
}
}
output{
#stdout{
# codec => rubydebug #将数据输出到标准输出,主要用于调试
#}
elasticsearch{
hosts => ['127.0.0.1:9200'] #指定elasticsearch的服务器,可以指定多个用逗号分隔
workers => 5 #elasticsearch初始启动多少工作进程
template_overwirte => true #表示当单独指定模版文件的时候是否覆盖默认的模板
}
} 3. 配置supervisor并启动logstash服务
1. supervisor配置(/etc/supervisord.d/logstash.ini):
directory = /opt/logstash
command = /opt/logstash/bin/logstash -f /etc/logstash/conf.d/logstash -l /var/log/logstash/logstash.log
2. 启动logstash服务器
supervisorctl start logstash
3. 验证已经监听UDP的514端口
lsof -i:514 二.
1. 安装elasticsearch:
yum -y localinstall elasticsearch-2.1.1.rpm 2. 启动elasticsearch服务
service elasticsearch start 3. 验证是否已经启用9200和9300端口
lsof -i:9200/9300 三.
[*] 解压kibana到/opt目录下
tar xf kibana-4.3.1-linux-x64.tar.gz -C /opt
ln -s kibana-4.3.1-linux-x64 kibana 2. 配置supervisor用于启动kibana进程
配置文件路径:/etc/supervisord.d/kibana.ini
directory = /opt/kibana
command = /opt/kibana/bin/kibana 3. 启动kibana服务
supervisorctl start kibana 4. 验证kibana服务进程是否已经监听5601端口
lsof -i:5601 四.
此时,可以在浏览器中输入http://127.0.0.1:5601 既可以访问kibana了
其他:
elasticsearch提供了restAPI可以通过浏览器来查看elasticsearch服务是否已经有包含数据,以及其他一些信息,例如查看是否已经接受到了数据:
curl http://127.0.0.1:9200/_search?pretty elasticsearch数据的存储路径是:
/var/lib/elasticsearch/elasticsearch/
页:
[1]