适合新手的elk + kafka 配置实战

总的思路:
所有安装配置步骤基本都一样下载tar包,解压,修改配置文件,启动。
下载tar包和解压的过程就不再赘述,直接去官网上下载。
elk的安装包我用的是6.7.1。kafka用的2.1.1。
kafka -> logstash -> elasticsearch 这是我的数据流向。
所有解压后的软件装在/opt/module目录下 。
opt目录是linux系统中的软件存放目录。
软件解压后在的位置

kafka配置启动

kafka依赖于zookeeper。我们先配置然后启动zookeeper。
切换目录到zookeeper-3.4.13。 目录下有如下文件:
在这里插入图片描述
我们通常只需要软件目录下的bin目录和conf或者config目录。
bin目录下面是启动程序的一些文件。
conf/config目录下是配置文件,一般的配置文件后缀有.conf .properties。

所以我们要运行一个软件,首先应该进入conf目录下修改配置参数,然后到bin目录下启动。后面所说的所有配置与启动都是在这两个目录中。不再赘述。
1.zookeeper配置启动
配置文件有的有固定名称,不可更改,启动程序时不需要指定要加载的配置文件。有的没有固定名称(但有固定后缀),启动时需指定要加载的配置文件。
zookeeper的配置文件没有固定名称,但给了一个配置样本叫zoo_sample.cfg。
样本的作用就是给我们一个参考的格式。我们可以直接用这个样本也可以复制一个改为另一个名字。我复制了一份。
在这里插入图片描述
然后修改配置
在这里插入图片描述
修改了zookeeper的数据保存目录,默认是在/tmp目录下,tmp是linux的临时文件夹。临时文件夹用来存储zookeeper的数据显然不太合适。但这就像windows中系统文件放在c盘感觉是很自然的,如果你硬要放其他盘也没问题。所以这不是强制的,只为了分类以后好找,和防止误删。
配置好以后启动。到bin目录里面找到zkServer.sh。这个就是启动命令。
在这里插入图片描述
启动命令的调用方式通常是 ./ 开头 + 启动命令相对于当前目录的相对路径或者直接写绝对路径。+ 参数。 ./是指命令是局部的,命令在当前目录下,不用./直接写的是全局命令,比如cd,ls,mkdir,java等等。这些都注册在了全局。
zkServer.sh如下的目录下:

在这里插入图片描述
如果我当前处于bin目录下和zkServer.sh同一级。我要启动的话,命令就是:
./zkServer.sh
如果我处于zookeeper-3.4.1下,要启动的话,命令就是:
./bin/zkServer.sh

这个以后不再赘述,请按照自己所在目录灵活调用命令。下面启动
在这里插入图片描述
命令其实相当于编程语言里面的函数/方法,我的函数/方法时不需要参数就可以执行,
有的函数需要参数才能执行,./bin/zkServer.sh需要两个参数,这里传的两个参数是start和conf/zoo.cfg,多个参数由空格隔开。至于在此处两个参数是什么意思,我们看参数的名称大概可以猜到第一个是决定命令启用哪种模式,第二个是启动时加载配置文件的位置(可以写相对也可以以/开头写绝对位置)。当然不同的命令,传参的个数与意义都是变化的。

zookeeper配置文件没有固定名称,所以启动要指定(不指定到哪找去)。
2.kafka的配置与启动
kakfa配置
切换到kafka软件目录,找到配置文件目录config。有四个文件需要配置如下:server.properties
在这里插入图片描述
写上本机的ip不要写成localhost,这个应该是给外部调用的地址。
在这里插入图片描述
–改一下日志输出地址
zookeeper.properties
在这里插入图片描述
–改下跟zookeeper有关的数据存放地址
consumer.properties
在这里插入图片描述
–指定下消费者group的id
provider.properties
在这里插入图片描述
–提供者是本身。这里的消费者提供者应该是相对于集群来说的,现在是单个kafka都设为自己。
kafka启动
在这里插入图片描述
服务器启动命令文件是 kafka-server-start.sh。 但是kafka启动默认是前台运行,这么开启会将当前窗口卡在kafka控制台出不去,要出去就得停止kafka! -daemon选项是将程序后台运行,这是个比较通用的选项。 server.properties是kafka服务启动的配置文件。
所有的启动都可以用ps -ef | grep + 进程名称 查询当前进程是否运行
在这里插入图片描述
如果出现了一大堆前面有个数字,这个数字就是pid进程id,说明进程在运行,想要结束某个程序但又不知道具体的结束命令,通用的做法是用ps -ef | grep +进程名称查出进程id,然后kill -9 + 进程id,简单粗暴。最后一行通常会出现如下的一刚数据:
在这里插入图片描述
这个暂时不知道是什么,这个最后面虽然有个kafka,但是并不是代表kafka的进程。ps -ef 这个命令总会有这么一行东西显示,如果只显示这么一行,就代表进程并未启动。

elasticsearch配置与启动

elasticsearch配置
进入es目录下的config目录下,配置文件为elasticsearch.yml
在这里插入图片描述
–修改数据存储目录和日志目录
在这里插入图片描述
–设置为0.0.0.0允许外部访问
elasticsearch启动
启动文件在es的bin目录下
在这里插入图片描述
执行elasticsearch命令,启动es 不需要指定配置文件
在这里插入图片描述
–哦豁,启动报错,不能用root账号启动,换一下其他账号。
在这里插入图片描述
在这里插入图片描述
–后面加个&,好像是可以开启允许后台运行。不加这个又会卡住。
在这里插入图片描述
–查看一下,es有两个进程。

kibana配置于启动

kibana装在windows本地就行,不在赘述。

logstash启动与配置

logstash配置在logstash目录下的config目录下。配置文件名称不固定,有一个样本配置文件logstash-sample.conf。 复制一下重命名一个,我取的名字为这个:
在这里插入图片描述
然后修改配置文件kafka-logstash-es.conf
在这里插入图片描述
输入是kafka,输出时es。
配置输入对象kafka的地址,消费者的group_id,(这个跟kafka配置文件中的groud.id要一样?),还有要消费的topics。后面kafka provider只要往这个topic里面放数据就能被logstash消费了。
配置输出对象es的地址,目的index。
启动logstash
启动文件在logstash的bin目录下的logstash ,有个-f的选项,目的不晓得,指定配置文件。
在这里插入图片描述
–哦豁又报错,Permisson denied,权限不足,无法读取某些文件。转为root账号再启动。root账号一般拥有文件的最高权限,就没得这些问题。

在这里插入图片描述
在这里插入图片描述
–后面加个&设为允许转为后台运行(加上&后,Ctrl + c就可以进入后台运行
启动的时候等一等,我们要注意启动日志,注意哪些级别为[warn]的日志,那些通常能够找到启动失败的原因。 这次启动没有错误,我注意某些[info]日志。
在这里插入图片描述
–这个说明连上了es。
在这里插入图片描述
–这个说明连上了kafka。
启动成功。

测试是否畅通

kafka provider -> kafka -> logstash -> elasticsearch
我在java用kafka provider测试
在这里插入图片描述
在这里插入图片描述
–循环往kafka发送数据。
然后kibana查看数据的接收。

在这里插入图片描述
成功接收了3535条数据。完结撒花。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值