1. 整体架构
2. 环境、软件准备
虚拟机:VMware® Workstation 15 Pro
Centos7 镜像:CentOS-7-x86_64-DVD-2003
2.1 服务器信息
2.2 账户信息
3. 服务器基础配置
3.1 初始化配置
[root@elktest1 home]# yum install lrzsz # 下载上传下载工具
[root@elktest1 home]# yum install vim # 安装 vim
[root@elktest1 home]# yum install wget
[root@elktest2 kafka_2.13-2.6.0]# yum search ifconfig # 安装网络工具
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.nju.edu.cn
* extras: mirrors.nju.edu.cn
* updates: mirrors.nju.edu.cn
================================== 匹配:ifconfig ===================================
net-tools.x86_64 : Basic networking tools
[root@elktest2 kafka_2.13-2.6.0]# yum install net-tools
# 安装 NPM 环境
[root@elktest1 home]# yum install gcc gcc-c++
[root@elktest1 home]# wget https://npm.taobao.org/mirrors/node/v10.14.1/node-v10.14.1-linux-x64.tar.gz
[root@elktest1 home]# tar xzvf node-v10.14.1-linux-x64.tar.gz -C /usr/local/
[root@elktest1 home]# cd /usr/local/
[root@elktest1 local]# mv node-v10.14.1-linux-x64 node
[root@elktest1 local]# vim /etc/profile
配置
export NODE_HOME=/usr/local/node
export PATH=$NODE_HOME/bin:$PATH
# 刷新配置
[root@elktest1 local]# source /etc/profile
[root@elktest1 local]# node -v
v10.14.1
[root@elktest1 local]# npm -v
6.4.1
3.2 配置JDK环境
(kafka、zookeeper运行依赖) ----集群中所有节点均配置
[root@elktest1 home]# rz # 上传安装包
[root@elktest1 home]# tar -xzvf jdk-8u271-linux-x64.tar.gz -C /usr/local/
[root@kafka1 ~]# cd /usr/local/
[root@kafka1 local]# echo '
JAVA_HOME=/usr/local/jdk1.8.0_271
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH
' >>/etc/profile
[root@elktest1 local]# source /etc/profile
[root@elktest1 local]# java -version
java version "1.8.0_271"
Java(TM) SE Runtime Environment (build 1.8.0_271-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)
3.3 主机解析
[root@elktest1 local]# vim /etc/hosts (增加如下主机解析记录)
192.168.96.129 elktest1
192.168.96.131 elktest2
192.168.96.132 elktest3
192.168.96.133 elktest4
4. Filebeat 安装
4.1 下载解压
[root@elktest1 home]# wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.8.0-linux-x86_64.tar.gz
[root@elktest1 home]# tar xzvf filebeat-7.8.0-linux-x86_64.tar.gz -C /usr/local/elk/
[root@elktest1 home]# cd /usr/local/elk/filebeat-7.8.0-linux-x86_64/
4.2 修改配置
修改 Filebeat 配置,采集系统日志,并输出日志到 Kafka 集群中
[root@elktest1 filebeat-7.8.0-linux-x86_64]# mv filebeat.yml filebeat.yml.bak
[root@elktest1 filebeat-7.8.0-linux-x86_64]# vim filebeat.yml
filebeat.inputs:
- type: log
enabled: true
paths:
- /opt/filebeat/logs/2021.01.22-filebeat-test.log
close_inactive: 0.5h
json.ignore_decoding_error: true
output.kafka:
hosts: ["192.168.96.131:9092","192.168.96.132:9092","192.168.96.133:9092"]
topic: 'test-tmp'
4.3 启动
[root@elktest1 filebeat-7.8.0-linux-x86_64]# nohup ./filebeat -e -c filebeat.yml &
[1] 10751
[root@elktest1 filebeat-7.8.0-linux-x86_64]# nohup: 忽略输入并把输出追加到"nohup.out"
[root@elktest1 filebeat-7.8.0-linux-x86_64]# tail -50f nohup.out
5. Kafka 安装
5.1 环境准备
Centos 7.4 、 jdk8u271、kafka、lrszs
三台主机节点,网络 NAT 模式:
elktest2 kafka1 IP : 192.168.96.131
elktest3 kafak2 IP : 192.168.96.132
elktest4 kafka3 IP : 192.168.96.133
新版本的 kafka 自带有 zookeeper。为了实现高可用,高吞吐量,kafka 以集群方式部署,分別在 3 台虚拟机上安裝部署,因 Kafka 依赖于zookeeper,如果想要使用 Kafka,就必须安装 ZK,Kafka 中的消费偏置信息、Kafka集群、topic信息会被存储在 ZK 中。
这里采用 Kafka 內置的 Zookeeper,也是以集群方式部署,无需再单独安裝 Zookeeper。
5.2 解压安装
[root@elktest2 home]# wget https://mirror.bit.edu.cn/apache/kafka/2.6.0/kafka_2.13-2.6.0.tgz
[root@elktest2 home]