1. 安装最新版 jdk
-
查看 centos 自带的 openjdk 安装包:
rpm -qa | grep openjdk java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64 java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64 -
卸载 centos7 的 openjdk:
yum -y remove java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.8.el7.x86_64 java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64 -
下载 jdk1.8
注意:也可以使用yum安装,但相对的java路径会在对应的系统路径中。
-
解压 jdk 安装脚本
sh jdk-8u171-nb-8_2-linux-x64.sh vi /etc/profile JAVA_HOME=/home/xxx/software/jdk1.8.0_201 JRE_HOME=/home/xxx/software/jdk1.8.0_201/jre PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib export JAVA_HOME JRE_HOME PATH CLASSPATH -
使 profile 文件生效
source /etc/profile -
测试 Java 是否安装成功
java -version
2. Zookeeper 安装
-
下载正确版本的zookeeper
zookeeper的版本与使用的kafka版本有关,这里我们将使用最新版2.13-2.6.0kafka,对应则需要3.5.8版本的zookeeper。
-
解压:
tar xvf zookeeper-3.5.8.tar.gz -
配置:
进入zookeeper的解压目录
cd zookeeper-3.5.8拷贝并修改配置文件
cd conf cp zoo_sample.cfg zoo.cfg vim zoo.cfg # 存储快照文件的目录,默认情况下, 事务日志也会存储在该目录上 dataDir=/yourdirectory/zookeeper/data # 由于事务日志 的写性能直接影响 ZooKeeper 性能,因此 建议同时配置参数 dataLogDir dataLogDir=/yourdirectory/data/zookeeper/logs # 为避免出现端口冲突,需要补充以下端口 clientPort=2181 admin.serverPort=8080修改环境变量
vim ~/.bashrc export ZOOKEEPER_HOME=/yourdirectory/zookeeper-3.5.8 expoft PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$ZOOKEEPER_HOME/bin source ~/.bashrc -
验证:
zkServer.sh start zkServer.sh status输出下面类似结果表示安装成功
ZooKeeper JMX enabled by default Using config: /yourdirectory/zookeeper/bin/../conf/zoo.cfg Starting zookeeper ... STARTED -
错误日志:
cd /zookeeperdirectory/logs # 查看这个目录下的日志文件即可分析无法启动的错误
3. kafka 安装
-
下载正确版本的kafka
此处版本为kafka_2.13_2.6.0。
-
解压:
tar xvf kafka_2.13-2.6.0.tgz -
配置:
进入 kafka 的解压目录
cd kafka_2.13-2.6.0拷贝并修改配置文件
cd config vim server.properties # 如果出现端口冲突,请修改这里 listeners=PLAINTEXT://192.168.1.1:9092 # kafka 相关日志路径 log.dirs=/yourdirectory/logs/kafka # kafka 连接的zookeeper服务,与之前配置的zookeeper保持一致 zookeeper.connect=localhost:2181修改环境变量
vim ~/.bashrc export KAFKA_HOME=/yourdirectory/kafka_2.13-2.6.0 export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$ZOOKEEPER_HOME/bin:$KAFKA_HOME/bin source ~/.bashrc -
启动:
kafka-server-start.sh -daemon /kafkadirectory/config/server.properties -
错误日志:
cd /kafkadi/logs # 查看这个目录下的日志文件即可分析无法启动的错误
4. rdkafka 库编译安装
-
下载最新稳定版rdkafka
-
解压:
tar zxvf v1.5.3.tar.gz -
编译:
cd librdkafka mkdir build && cd build cmake -DCMAKE_BUILD_TYPE=Release .. make -j 8在centos下可能会报告如下错误导致编译报错:
-- No package 'libsasl2' found此时需要手动安装sasl库
yum install cyrus-sasl cyrus-sasl-devel cyrus-sasl-lib cyrus-sasl-gssapi -
测试:
编译完成后,即可参考examples目录下的程序进行编程开发。
5. kafka 的使用
参考此链接,自行创建topic,再借助rdkafka或者kafka自身的脚本工具,即可完成队列的消费与生产。
参考文献:
kafka 安装:https://www.jianshu.com/p/c74e0ec577b0
jdk 安装:https://www.jianshu.com/p/093413f2a04f
kafka 官网:https://kafka.apache.org/downloads