搭建ELK日志分析系统

下载ELK
地址:https://www.elastic.co/downloads
命令:wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.4.3.tar.gz
解压:tar -zxvf elasticsearch-6.4.3.tar.gz
有的需要使用unzip解压,需要使用: yum install unzip 下载安装unzip工具
搭建ELK日志分析系统_第1张图片

elasticsearch配置启动
安装jdk1.8:yum install tomcat就行,会自动安装好tomcat和jdk1.8
解压后进入config目录:cd elasticsearch-6.4.2/config,vim elasticsearch.yml 修改配置文件,在最下面加入如下几行:

network.host: 0.0.0.0
http.port: 9200
http.cors.enabled: true
http.cors.allow-origin: “*”

注意,root用户是不能直接启动elasticsearch的,需要新建用户,然后切换用户去启动elasticsearch,如下:

创建elsearch用户组及elsearch用户
1、groupadd elsearch
2、useradd elsearch -g elsearch -p elasticsearch
更改elasticsearch-6.4.2文件夹及内部文件的所属用户及组为elsearch:elsearch
1、cd切换到elasticsearch-6.4.2的父路径下
2、chown -R elsearch:elsearch elasticsearch-6.4.2
切换到elsearch用户再启动
1、su elsearch
2、cd elasticsearch-6.4.2/bin
3、sh elasticsearch &

elasticsearch配置启动完毕,可以在浏览器输入url: 服务器外网ip:9200 查看是否成功启动:
搭建ELK日志分析系统_第2张图片

kibana配置启动
按照上面的操作,可以先切回root用户了:su root 需要输入root密码

然后cd kibana-6.4.2-linux-x86_64/config/ 进入kibana的配置文件夹,

vim kibana.yml 编辑配置文件,在最后面加上如下配置就行:

server.port: 5601
server.host: “0.0.0.0”
elasticsearch.hosts: “http://localhost:9200”
kibana.index: “.kibana”

cd命令进入bin目录,

sh kibana & 启动kibana

启动完毕,可以浏览器输入url: 服务器外网ip:5601 查看是否成功启动:
搭建ELK日志分析系统_第3张图片

logstash配置启动

现在可以配置logstash了

cd logstash-6.4.2/bin/进入bin目录

新建文件 vim logstash1.conf ,写入内容(监听tomcat的日志):

input {
     
    file {
     
        path => "/usr/share/tomcat/logs/*.log"
        start_position => “beginning”
    }
}
filter {
     
 
}
output {
     
    elasticsearch {
     
    hosts => "localhost:9200"
    }
 
}
 

启动logstash:sh logstash -f logstash1.conf &

如果提示–path.data的问题,则需要指定path.data的路径,随便找个路径就行,

我的是这样启动:sh logstash -f logstash1.conf --path.data=/home/elk/logstash-6.4.2/logs &

完了可以看到kibana上面有logstash推送过去的日志了

logstash配置mysql数据同步到elasticsearch:我参考的(https://blog.csdn.net/hatlonely/article/details/79945539)

获取 jdbc mysql 驱动:

wget https://cdn.mysql.com//Downloads/Connector-J/mysql-connector-java-5.1.46.zip
unzip mysql-connector-java-5.1.46.zip

可以把解压后的mysql-connector-java-5.1.46-bin.jar复制到bin目录,方便启动

在bin目录新建配置文件 vim mysql-logstash.cnf ,写入:

 
input {
     
  jdbc {
     
    jdbc_driver_library => "mysql-connector-java-5.1.46-bin.jar"
    jdbc_driver_class => "com.mysql.jdbc.Driver"
    jdbc_connection_string => "jdbc:mysql://ip:3306/db_name"
    jdbc_user => "jdbc_user"
    jdbc_password => "jdbc_password"
    schedule => "* * * * *"
    statement => "SELECT * FROM table WHERE 时间字段 >= :sql_last_value"
    use_column_value => true
    tracking_column_type => "timestamp"
    tracking_column => "时间字段"
    last_run_metadata_path => "syncpoint_table"
  }
}
 
 
output {
     
  elasticsearch {
     
    hosts => "localhost:9200"
    index => "索引名称"
    document_id => "%{主键字段}"
  }
}
 

需要先把logstash停了,在重启

netstat -ntlp 命令查看端口为9600的进程,

然后kill 线程id,我的是 kill 25437
搭建ELK日志分析系统_第4张图片
使用命令 sh logstash -f mysql-logstash.cnf --path.data=/home/elk/logstash-6.4.2/logs &

启动logstash

完了在kibana可以看到同步过去的数据,我的是这样的:
搭建ELK日志分析系统_第5张图片

你可能感兴趣的:(elasticsearch,linux)