简单记录下 es + kibana + filebeat + logstash + kafka 部署过程 (安装版本都选取最新版)
操作系统版本 : centos7 两台
一、java安装
oracle java官网 自行下载java安装包 jdk-8u201-linux-x64.tar.gz
tar zxf jdk-8u201-linux-x64.tar.gz
mv jdk1.8.0_201 /opt
vim /etc/profile
内容如下:
#Java Env
export JAVA_HOME=/opt/jdk1.8.0_201
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile
java -version
出现如下图内容即安装成功
每个节点都需要安装
二、安装elasticsearch es集群内的机器都需要安装
由于es不能在root用户下运行,所以我们新建用户
groupadd elasticsearch
useradd elasticsearch -g elasticsearch
cd /opt
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.7.0.tar.gz
tar zxf elasticsearch-6.7.0.tar.gz
vim elasticsearch-6.7.0/config/elasticsearch.yml
主要配置内容如下:
cluster.name: es-puxu #集群名称,加入一个集群的名称需保持一致
node.name: es-puxu-node1 #节点名称
path.data: /path/to/data
path.logs: /path/to/logs
network.host: yourip #此节点ip
http.port: 9200
discovery.zen.ping.unicast.hosts: ["yourip", "yourip2"] #集群各节点的ip写入此处
# Prevent the "split brain" by configuring the majority of nodes (total number of master-eligible nodes / 2 + 1):
discovery.zen.minimum_master_nodes: 2 #为防止脑裂现象,master选举只会在至少有n个能参与master选举的节点存在才会发生,n为此参数的值,为可参与选举的节点数/2+1
mkdir -p /path/to/data
mkdir -p /path/to/logs
chown -R elasticsearch:elasticsearch /opt/elasticsearch-6.7.0
chown -R elasticsearch:elasticsearch /path/to
cd elasticsearch-6.7.0
bin/elastichsearch &
到此es应该启动成功,访问http://yourip:9200 出现下图显示即启动成功
其余节点机器皆为此方式部署,只需更改配置文件中得节点名称和节点ip
三、安装kibana
下载 kibana-6.7.0-linux-x86_64
cd kibana-6.7.0-linux-x86_64
vim config/kibana.yml
bin/kibana &
四、安装zookeeper
下载zookeeper-3.5.4-beta
cd zookeeper-3.5.4-beta/
vim conf/zoo.cfg
bin/zkServer.sh start
五、安装kafka
下载 kafka_2.12-2.2.0
cd kafka_2.12-2.2.0
vim config/server.properties
bin/kafka-server-start.sh config/server.properties &
六、安装filebeat
cd /opt
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-6.7.0-linux-x86_64.tar.gz
tar zxf filebeat-6.7.0-linux-x86_64.tar.gz
vim /opt/filebeat-6.7.0-linux-x86_64/filebeat.yml
配置如下,采集的数据这边output kafka
cd filebeat-6.7.0-linux-x86_64/
./filebeat &
每个存放有日志的节点都需要安装
ps :用vim编辑保存文件会先写入内存,删除老文件,创建新的空文件,最后将内存里的内容写入空文件,结果导致文件的inode号发生变化。所以测试时如果用vim去修改日志文件会发生filebeat重复采集数据的情况,因为filebeat发现inode号不一样就认定该文件是新文件会从头采集数据而不是增量采集。
七、安装logstash
下载 logstash-6.7.0
cd logstash-6.7.0
vim config/file.conf
输出到es,还可以对日志进行分类,保存到不同索引。
bin/logstash -f config/file.conf &
访问 http://192.168.198.132:5601
创建访问的内容,从不同机器上的收集的日志展示如下。