1、启动zookeeper集群
Kafka最新版本2.8.0可以不依赖zookeeper,但是仍然测试阶段,所以官方不推荐使用,因此还是要使用zookeeper集群。
[root@node1 ~]# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@node1 ~]#
[root@node2 ~]# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@node2 ~]#
[root@node3 ~]# zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.4.10/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@node3 ~]#
2、下载与上传
http://kafka.apache.org/downloads
当前最新版本是2.8.0
此处下载了 kafka_2.12-2.8.0.tgz,2.12是Scala的版本,2.8.0是kafka的版本。
然后上传到服务器
[root@node1 opt]# tar -zxvf kafka_2.12-2.8.0.tgz
[root@node1 opt]# mv kafka_2.12-2.8.0 kafka-2.8.0
[root@node1 opt]# cd kafka-2.8.0/
[root@node1 kafka-2.8.0]# ls
bin config libs LICENSE licenses NOTICE site-docs
[root@node1 kafka-2.8.0]#
3、配置Kafka集群
(1)基本配置
[root@node1 kafka-2.8.0]# vi conf/server.properties
配置内容
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# see kafka.server.KafkaConfig for additional details and defaults
############################# Server Basics #############################
# The id of the broker. This must be set to a unique integer for each broker.
broker.id=1
############################# Socket Server Settings #############################
# 参考:https://www.codercto.com/a/68756.html、https://www.cnblogs.com/ElEGenT/p/12891114.html
# The address the socket server listens on. It will get the value returned from
# java.net.InetAddress.getCanonicalHostName() if not configured.
# FORMAT:
# listeners = listener_name://host_name:port