ElasticSearch+Logstash+Kibana+log4j2 官方6.1.1版安装配置简介

简介

         在搜索ELK资料的时候,发现这篇文章比较好,于是摘抄一小段

        日志主要包括系统日志、应用程序日志和安全日志。系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因。经常分析日志可以了解服务器的负荷,性能安全性,从而及时采取措施纠正错误。

        通常,日志被分散的储存不同的设备上。如果你管理数十上百台服务器,你还在使用依次登录每台机器的传统方法查阅日志。这样是不是感觉很繁琐和效率低下。当务之急我们使用集中化的日志管理,例如:开源的syslog,将所有服务器上的日志收集汇总。

        集中化管理日志后,日志的统计和检索又成为一件比较麻烦的事情,一般我们使用grep、awk和wc等Linux命令能实现检索和统计,但是对于要求更高的查询、排序和统计等要求和庞大的机器数量依然使用这样的方法难免有点力不从心。

        开源实时日志分析ELK平台能够完美的解决我们上述的问题,ELK由ElasticSearch、Logstash和Kiabana三个开源工具组成。

  • Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

  • Logstash是一个完全开源的工具,他可以对你的日志进行收集、过滤,并将其存储供以后使用(如,搜索)。

  • Kibana 也是一个开源和免费的工具,它Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。

        以上内容来自:开源实时日志分析ELK平台部署

本篇博文介绍elk的安装配置以及与log4j2结合的简单应用以下内容为原创

系统环境

ubuntu 14.04

jdk版本 1.8.0_144

ElasticSearch6.1.1

Logstash6.1.1

kibana6.1.1

网络环境

只做测试演示elk均部署在一台服务器上

ubuntu地址:10.32.23.253

前期准备

通过apt-get install 方式安装需要先运行以下命令

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
sudo apt-get install apt-transport-https
echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list

sudo apt-get update

ElasticSearch

1.安装elasticsearch命令:sudo apt-get install elasticsearch

2.查看文件及配置文件路径whereis elasticsearch

配置文件路径/etc/elasticsearch

文件路径/usr/share/elasticsearch

修改配置文件elasticsearch.yml

3.命令:vi /etc/elasticsearch/elasticsearch.yml

文件末添加以下内容保存(只做演示故大部分配置使用默认值不做配置,详细配置见:常用配置说明)

#数据存放目录

path.data: /var/lib/elasticsearch
#日志目录
path.logs: /var/log/elasticsearch

#当前hostname或IP,我这里是本机ip 如填写localhost则外部无法访问只可本机调用
network.host: 10.32.23.253

4.运行:service elasticsearch start 

常见异常:

运行命令返回:Could not find any executable java binary. Please install java in your PATH or set JAVA_HOME

配置elasticsearch的JAVA_HOME

运行命令:vi /etc/init.d/elasticsearch 在文件头添加:JAVA_HOME="JDK目录" 本机为/home/jdk 故添加为 JAVA_HOME="/home/jdk"

如果上一步出现异常则修改配置后再次运行:service elasticsearch start 如提示Ok

* Starting Elasticsearch Server                                                                                                                                                                     [ OK ]

5.运行:service elasticsearch status 查看运行状态

6.访问:服务器ip:9200 本次演示地址为:10.32.23.253:9200

命令:curl 10.32.23.253:9200

Logstash

1.安装Logstash命令:sudo apt-get install logstash

2.查看文件及配置文件路径whereis elasticsearch

3.配置文件路径/etc/logstash

 

文件路径/usr/share/logstash

4.修改配置文件,运行命令:vi /etc/logstash/logstash.yml

文件末尾添加 或取消注释

path.data: /var/lib/logstash

path.config: /etc/logstash/*.conf

path.logs: /var/log/logstash

5.进入/usr/share/logstash目录,添加文件logstash-test.conf

vi /usr/share/logstash/logstash-test.conf

input {
    stdin{}
}
filter {
}
output {
    stdout {
        codec => rubydebug
    }
    elasticsearch {
         hosts => "10.32.23.253:9200"
    }
}

运行命令:/usr/share/logstash/bin/./logstash -f /usr/share/logstash/logstash-test.conf,在控制台输入hello logstash,结果如下图则logstash配置成功

Kibana

1.安装 Kibana命令:sudo apt-get install kibana

 

2.查看文件及配置文件路径whereis kibana

3.修改配置文件 

运行命令:vi /etc/kibana.yml 

添加如下内容

server.port: 5601

server.host: "10.32.23.253" (服务器IP)

4.运行启动命令:service kibana start

测试访问 10.32.23.253:5601

 log4j日志输出到logstash

1.首先配置logstash

运行命令:vi /usr/share/logstah/logstash-tcp.conf

 

input {
tcp {
host => "10.32.23.253"
port => "4560"
mode => "server"
type => "microwiki"
add_field => {
"name" => "Routh"
}
}
}
filter {
}
output {
stdout {
codec => rubydebug
}
elasticsearch {
hosts => "10.32.23.253:9200"
}
}

2.进入logstash根目录 /usr/share/logstash

运行命令:nohup ./bin/logstash -f logstash-tcp.conf &

3.在集成了log4j的项目中修改log4j2.xml,host为logstash服务器ip port为logstash设置的端口号

添加

<Socket name="Logstash" host="10.32.23.253" port="4560" protocol="TCP">
 <PatternLayout>%d{HH:mm:ss,SSS} %-5level [%c{1.}] %C{1} %m%n</PatternLayout>
</Socket>
<Root level="info" includeLocation="true">
    <AppenderRef ref="Logstash"/>
</Root>

4.正常部署运行到与logstash服务器网络通畅的服务器后即可接收其日志推送

5.进入kibana设置

猜你喜欢

转载自blog.csdn.net/z369702770/article/details/78930541