ELK集群搭建

1.安装logstash-filter-multiline插件

网上下载logstash-filter-multiline-3.0.4.gem插件上传至服务器

新建文件夹 logstash-filter-multiline-3.0.4,并将gem文件移入新建的文件夹

使用zip命令进行压缩zip -r logstash-filter-multiline-3.0.4.zip logstash-filter-multiline-3.0.4

进入logstash的bin目录

执行./logstash-plugin installfile:///home/upp/elk/logstash-filter-multiline-3.0.4.zip安装成功

2. filebeat搭建

下载filebeat-7.6.1.tar.gz并解压,在每个需要收集日志的机器上都需要安装filebeat,filebeat本身很轻巧基本不占多少资源.

修改filebeat配置文件

filebeat.inputs为需要采集日志的目录.

filebeat.output为采集完的日志输出到哪里,这里是logstash,因为可靠性的需要,这里配置了两台logstash.

启动filebeat ./filebeat -c filebeat.yml

3 logstash集群搭建,下载logstash-7.6.1.tar.gz并解压

配置logstash的配置文件

input为filebeat输入的端口

filter为对输入的日志文本进行处理

图中如果日志类型是zk,那么进行如下处理

mulitine是处理多行日志的插件

如果日志开头不是以日期开头(目前日志的格式是以日期开头)则说明是换行。

grok为解析日志格式的插件

mutate插件先为输出增加字段Datetime,Datetime由grok解析的字段Date与Time组成

date插件将@timestamp日期替换为Datetime字段中的值

最后mutate删除Datetime,Date,Time字段


output为logstash的输出,logstash处理完输出到elasticsearch中

elasticsearch目前为两台,xunlian210,xunlian212

zookeeper的log在es上建立的索引名为zookeeper-%{+YYYY.MM} 最后的YYYY.MM为日期格式

最后使用./logstash -f ../config/logstash.conf启动logstash

4 elasticsearch 集群搭建

下载elasticsearch到服务器并解压

主节点配置:

编辑elasticsearch下config目录中的elasticsearch.yml配置文件

cluster.name集群名称upp-es-cluster


node.name节点名称 master

node.master 是否可以被选举为主节点

node.data 该节点是否可以存储数据


path.data: 存储数据的路径

path.logs: 存储日志的路径

discovery.seed_hosts: 集群中的节点

cluster.initial_master_node: 集群中的初始节点


http.cors: 设置跨域访问

从节点配置

与主节点不同的地方就是node.name名称

修改系统配置/etc/security/limits.conf

此配置用于修改linux默认的最大文件打开连接数

修改系统配置/etc/sysctl.conf

vm.max_map_count=262144

sysctl -p 使配置生效

elasticsearch -d 后台启动elasticsearch

5 配置kibana

server.port: 5601  服务端口5601

server.host: 0.0.0.0  允许其他任何ip服务接入kibana

配置elasticsearch地址

进入bin目录,执行./kibana启动kibana

浏览器输入对应ip于地址

你可能感兴趣的:(ELK集群搭建)