ELK的搭建--非集群

1、ELK日志系统介绍

1、ELK分别是Elasticsearch、Logstash、Kibana三个开源框架缩写。
Elasticsearch:接收搜集的海量结构化日志数据,并提供给kibana查询分析
Logstash:用于收集日志,对日志进行过滤形成结构化数据,并转发到elasticsearch中
Kibana:对elasticsearch提供的数据进行分析展示

2、ELK经典应用
在这里插入图片描述
如图:
Logstash部署至服务主机,对各个服务的日志进行采集、过滤、推送。
Elasticsearch存储Logstash传送的结构化数据,提供给Kibana。
Kibana提供用户UIweb页面进行,数据展示和分析形成图表等。

2、ELK搭建(非集群)

介绍ELK非集群的搭建,主要分为一下几个方面:ELK资源下载,新建elk用户,elasticsearch配置启动,kibana配置启动,logstash配置启动,elk日志收集验证

2.1、ELK资源下载

ELK资源需要保持版本一致,本文使用的是6.3.0
Elasticsearch elasticsearch-6.3.0.tar.
Kibana kibana-6.3.0.tar.
Logstash logstash-6.3.0.tar.

2.2、新建ELK用户

启动elk,需要新建用户,不能在root下启动

1.新建用户elk
useradd elk 
2.给elk赋权
修改文件去掉头部#
vi /etc/sudoers 
## Allows people in group wheel to run all commands
%wheel    ALL=(ALL)    ALL
3.然后修改用户,使其属于root组
usermod -g root elk
4切换用户elk
su elk

2.3、Elasticsearch配置启动

1.解压

tar -zxvf elasticsearch-6.3.0.tar.gz 

2.修改配置文件

vi /root/elk/elasticsearch-6.3.0/config/elasticsearch.yml 
底部增加(注意空格)
network.host: 0.0.0.0
http.port: 9200

3.启动elasticsearch

后台启动
/root/elk/elasticsearch-6.3.0/bin/elasticsearch -d
查看日志
tail -100f /root/elk/elasticsearch-6.3.0/logs/elasticsearch.log 

发现报错如下在这里插入图片描述
4.解决报错:
[1]: max number of threads [1024] for user [elk] is too low, increase to at least [4096]
切换到root用户,进入limits.d目录下修改配置文件。
#vi /etc/security/limits.d/90-nproc.conf
修改如下内容:

  • soft nproc 1024
    修改为
  • soft nproc 2048

[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
切换到root用户修改配置sysctl.conf
#vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
并执行命令:
#sysctl -p

[3]: system call filters failed to install; check the logs and fix your configuration or disable system call filters at your own risk
修改elasticsearch.yml 底部增加两行参数
vi /root/elk/elasticsearch-6.3.0/config/elasticsearch.yml
bootstrap.memory_lock: false
bootstrap.system_call_filter: false

5.启动elasticsearch
/root/elk/elasticsearch-6.3.0/bin/elasticsearch -d
访问9200端口
在这里插入图片描述

2.4、Kibana配置启动

1.解压

tar -zxvf kibana-6.3.0-linux-x86_64.tar.gz

2.修改配置文件

vi /root/elk/kibana-6.3.0-linux-x86_64/config/kibana.yml
底部增加
server.port: 5601       
server.host: "0.0.0.0"  
elasticsearch.url: "http://localhost:9200" 

3.启动

nohup /root/elk/kibana-6.3.0-linux-x86_64/bin/kibana & 

4.验证
访问5601端口,发现初始化的kibana页面
在这里插入图片描述

2.4、Logstash配置启动

1.解压

tar -zxvf logstash-6.3.0.tar.gz

2.配置文件
新建配置文件logback-es.conf



添加
input {
    tcp {  
        port => 4560  
        codec => json_lines         
    }
}
output {
        elasticsearch {
                hosts => "localhost:9200"
                index  => "ecom" 
        }
        stdout { codec => rubydebug}
}

修改配置文件

vi /root/elk/logstash-6.3.0/config/logstash.yml
底部添加
http.host: "0.0.0.0"
http.port: 9600

3.启动

nohup /root/elk/logstash-6.3.0/bin/logstash -f /root/elk/logstash-6.3.0/config/logback-es.conf &  
查询日志
tail -100f /root/elk/logstash-6.3.0/logs/logstash-plain.log 

4.验证
访问9600 端口
在这里插入图片描述

2.5、Elk日志收集验证

1.添加logstash的pom依赖

 <logstash-logback.version>6.3</logstash-logback.version>
<dependency>
				<groupId>net.logstash.logback</groupId>
				<artifactId>logstash-logback-encoder</artifactId>
				<version>${logstash-logback.version}</version>
</dependency>

2.配置logback.xml

logstash监听地址配在/root/elk/logstash-6.3.0/config/logback-es.conf 中,需保持一致
<!-- logstash配置 -->
	<appender name="logstash" class="net.logstash.logback.appender.LogstashTcpSocketAppender">
		<destination>192.168.**.**:4560</destination>
		<encoder charset="UTF-8" class="net.logstash.logback.encoder.LogstashEncoder" />
	</appender>
	
<!--系统操作日志-->
	<root level="info">
		<appender-ref ref="file_info" />
		<appender-ref ref="logstash"/>
	</root>

3.简单的接口打印日志

 log.info("测试elk日志打印, 时间{}", System.currentTimeMillis());

4.验证
kibana创建index,index为logback-es.conf中的output.index
在这里插入图片描述
发现页面搜索“测试”,即日志内容
在这里插入图片描述
至此非集群的ELK搭建完毕

文章参考Mars’Ares的ELK搭建.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值