ELK、Kafka

filebeat轻量级日志采集器

ansibe剧本:实现es的批量部署

ELK集群

kibana安装filebeat

上传filebeat

解压,改名

vi filebeat.yml

修改配置

修改

添加

注意:不加*会出不来但不报错

运行

案例:搜集nginx的日志:metricbeat(要搜集哪台服务器的日志就安装在哪,这台有nginx)

kibana服务器

上传meticbeat

参考官方文档

vi /etc/metricbeat/metricbeat.yml

ls /etc/metricbeat/modules.d

参考官方文档的下一步

vi /etc/metricbeat/modules.d/nginx.yml

vi /etc/nginx/nginx.conf

nginx -t

nginx -s reload

官方文档的下一步

浏览器访问:kibana的ip地址:xingdian

根据官方文档启动metricbeat

cd /var/log/metricbeat

cat metricbeat

Kafka

Kafka的特性:

- 高吞吐量、低延迟:kafka每秒可以处理几十万条消息,它的延迟最低只有几毫秒,每个topic可以分多个partition, consumer group 对partition进行consumer操作。
- 可扩展性:kafka集群支持热扩展
- 可靠性:消息被持久化到本地磁盘,并且支持数据备份防止数据丢失
- 容错性:允许集群中节点失败(若副本数量为n,则允许n-1个节点失败)
- 高并发:支持数千个客户端同时读写

Kafka部署

本地解析

scp ....  kafaka-2:/etc/hosts

kafka-1,kafka-2,kafka-3

三台kafka节点:

安装jdk

解压

vi /etc/profile

source /etc/profile

java -version

上传kafka安装包

安装kafka(解压即安装)

将配置文件中的内容都添加为注释

修改配置文件

vi /usr/local/kafka/config/zookeeper.properties

dataDir=/opt/data/zookeeper/data
dataLogDir=/opt/data/zookeeper/logs
clientPort=2181
tickTime=2000
initLimit=20
syncLimit=10
server.1=kafka-1:2888:3888   //kafka集群IP:Port
server.2=kafka-2:2888:3888        
 

创建data、log目录
mkdir -p /opt/data/zookeeper/{data,logs}
创建myid文件


 

4.配置kafka

vi /usr/local/kafka/config/server.properties
broker.id=1
listeners=PLAINTEXT://kafka-1:9092
num.network.threads=3
num.io.threads=8
socket.send.buffer.bytes=102400
socket.receive.buffer.bytes=102400
socket.request.max.bytes=104857600
log.dirs=/opt/data/kafka/logs
num.partitions=6
num.recovery.threads.per.data.dir=1
offsets.topic.replication.factor=2
transaction.state.log.replication.factor=1
transaction.state.log.min.isr=1
log.retention.hours=168
log.segment.bytes=536870912
log.retention.check.interval.ms=300000
zookeeper.connect=kafka-1:2181,kafka-2:2181   //改
zookeeper.connection.timeout.ms=6000
group.initial.rebalance.delay.ms=0
 

创建log目录 

先运行zookeeper(两个节点都运行)

cd  /usr/local/kafka

安装nc命令

yum provides nc

yum -y install 

验证:

echo conf | nc 127.0.0.1 2181

echo stat | nc 127.0.0.1 2181  //返回zookeeper的相关信息

启动kafka(两个节点都启动)

ss -antpl : 可以看到端口9092和2181

以上是已经创建好的集群框架

验证kafka:

创建

在kafka第3个节点(任何一个终端)查看

节点1模拟生产者产生数据:给话题test写入数据

生产者产生数据

输入hello

节点3消费者获取数据

filebeat部署

cd /etc/filebeat

配置

关掉nginx模块

kafka端:创建话题

排错:查看已有话题

logstash端:创建输入输出

vi /opt/kafak.conf

排错:删掉consumer消费者线程数、类型、auto

           es-1改为ip地址

排错:pkill -9 杀掉正在运行的

先启动logstash,再启动filebeat

排错:更换logstash版本

           在filebeat上加上kafka本地解析          

           清理环境:cd /usr/local/logstash/data

                             ll -a

                             rm -rf .lock

然后,运行filebeat

执行filebeat.yml文件

./filebeat -c filebeat.yml

刷新elasticsearch插件出现cloud-xingdain的索引就成功运行,并传入数据成功

kibana的web界面,创建索引cloud-xingdain 

为什么用filebeat作为搜集日志,而不选logstash?

logstash占用大量资源,而filebeat是轻量级

logstash数据过滤----grok插件

官网:elasti.co----->文档

案例:

停掉logstash和filebeat

filebeat端:

kafka端:创建话题

回到filebeat

vi filebeat.yml

vi /opt/grok.conf

运行logstash:

filebeat端:

启动filebeat

模拟数据

el插件中刷新,出现grok的索引

查看日志:

模拟数据

kibana的web界面,创建索引grok

查看10.9.12.222的访问量

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值