1. 介绍
logkafka是一个可以配合kafka manager使用的日志收集工具。具体的介绍可以查看官方文档
虽然花了好几个小时完了下这个,但是觉得还是用flume(高可用的,大而全)或者logstash(小而精)比较好。
2. 准备工作
logkafka需要安装以下内容:
- librdkafka
- libzookeeper_mt
- libuv
- libpcre2
- PHP 5.3 and above (with zookeeper extension)
2.1 librdkafka
官网点我查看
使用git clone下来,然后进去后使用./configure查看自己有哪些包是没安装的。
一般来说会缺编译C++相关的包等。可以使用如下代码来安装缺少的包
yum install gcc
yum install gcc-c++
yum install cmake
##安装好编译环境,然后直接编译安装即可
./configure
make
make install
2.2 libzookeeper_mt
安装方式在logkafka中已经给出:
cd /tmp
wget -N http://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz; tar zxvf zookeeper-3.4.6.tar.gz; rm -f zookeeper-3.4.6.tar.gz
cd zookeeper-3.4.6/src/c
./configure --prefix=/usr/local/zookeeper
make
sudo make install
PS:下载很慢的话,建议迅雷下载好再通过RZ工具传到LINUX上
有其他问题可以点击这里查看
2.3 libuv
可以按照如下过程安装
cd /tmp
git clone https://github.com/libuv/libuv.git
cd libuv
sh autogen.sh
./configure
make
sudo make install
PS: 执行autogen.sh的时候注意下报错,可能缺少某些包。例如automake和libtool,所以先下载安装下。
yum install automake
yum install libtool
2.4 libpcre2
cd /tmp
wget -N http://sourceforge.net/projects/pcre/files/pcre2/10.20/pcre2-10.20.tar.gz; tar zxvf pcre2-10.20.tar.gz; rm -f pcre2-10.20.tar.gz
cd pcre2-10.20
./configure
make
sudo make install
3. 安装logkafka
进入logkafka的目录,执行如下命令。这里作者给出了两种方式,第一种是手动安装上面的依赖,第二种是自动安装依赖。问了避免自动下载依赖的网络问题,我使用了手动安装依赖。下面我把两种方式都罗列出来。
第一种:
cmake -H. -B_build -DCMAKE_INSTALL_PREFIX=_install
cd _build
make -j4
make install
cmake -H. -B_build -DCMAKE_INSTALL_PREFIX=_install \
-DINSTALL_LIBRDKAFKA=ON \
-DINSTALL_LIBZOOKEEPER_MT=ON \
-DINSTALL_LIBUV=ON \
-DINSTALL_LIBPCRE2=ON
cd _build
make -j4
make install
PS: cmake的时候提示缺少libz,为了保险起见我们也还是装下zlib这个工具
进入zlib官网下载一个新版的zlib即可,解压后使用./configure, make ,make install命令来安装即可。
再执行安装,发现cmake版本太低:
执行以下操作安装个新点的cmake再安装logkakfa
首先进到cmake官网下载个最新的,然后执行./bootstrap,make,make install即可
然后再到log kafka下执行之前的安装命令即可。
4. 在logkafka manager中使用logkafka
4.1 修改配置文件
修改logkafka中conf下的logkakfa.conf文件,主要是以下内容。注意这里的ZK必须使用IP。
# 建议配置下id,可以拿自己的机器IP来配
logkafka.id =
zookeeper.connect = 127.0.0.1:2181
# 可以用kafka manager当中的集群名字来命名
pos.path = ../data/pos.myClusterName
4.2 启动线程,后台运行
进入logkafka安装目录,执行如下命令:
_install/bin/logkafka --daemon -f _install/conf/logkafka.conf -e _install/conf/easylogging.conf
4.3 配置kafka manager
创建cluster的时候开启logkafka,然后注意logkafkaid保持一致即可。