Spark大数据学习笔记_第5篇_kafka集群环境搭建
配置Scala环境变量下载地址
配置方式类似于JAVA_HOME配置方式,参见
1. 安装Kafka包
1、将kafka_2.9.2-0.8.1.tgz使用WinSCP拷贝到sparkproject1的/usr/local目录下: 下载地址
2、对kafka_2.9.2-0.8.1.tgz进行解压缩:
tar -zxvf kafka_2.9.2-0.8.1.tgz
3、对kafka目录进行改名:
mv kafka_2.9.2-0.8.1 kafka
4、配置kafka
vi /usr/local/kafka/config/server.properties
broker.id:依次增长的整数,0、1、2,集群中Broker的唯一id
zookeeper.connect=192.168.1.105:2181,192.168.1.106:2181,192.168.1.107:2181
5、安装slf4j
将slf4j-1.7.6.zip上传到/usr/local目录下
unzip slf4j-1.7.6.zip
把slf4j中的slf4j-nop-1.7.6.jar复制到kafka的libs目录下面
2. 搭建kafka集群
1、按照上述步骤在另外两台机器分别安装kafka。用scp把kafka拷贝到sparkproject2和sparkproject3即可。
2、唯一区别的,就是server.properties中的broker.id,要设置为1和2
3. 启动kafka集群
1、解决kafka Unrecognized VM option 'UseCompressedOops’问题
vi /usr/local/kafka/bin/kafka-run-class.sh
if [ -z "$KAFKA_JVM_PERFORMANCE_OPTS" ]; then
KAFKA_JVM_PERFORMANCE_OPTS="-server -XX:+UseCompressedOops -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -XX:+CMSScavengeBeforeRemark -XX:+DisableExplicitGC -Djava.awt.headless=true"
去掉 -XX:+UseCompressedOops 即可
2、在三台机器上的kafka目录下,分别执行以下命令:
nohup bin/kafka-server-start.sh config/server.properties &
3、使用jps检查启动是否成功
4. 测试kafka集群
使用基本命令检查kafka是否搭建成功
bin/kafka-topics.sh --zookeeper 192.168.1.105:2181,192.168.1.106:2181,192.168.1.107:2181 --topic TestTopic --replication-factor 1 --partitions 1 --create
bin/kafka-console-producer.sh --broker-list 192.168.1.105:9092,192.168.1.106:9092,192.168.1.107:9092 --topic TestTopic
bin/kafka-console-consumer.sh --zookeeper 192.168.1.105:2181,192.168.1.106:2181,192.168.1.107:2181 --topic TestTopic --from-beginning