kafka安装部署
kafka的libs下有包,包含了版本信息 kafka_2.11-2.1.1.jar
2.11是Scala版本,2.1.1是Kafka版本
一、安装java,如JDK1.8
二、安装zookeeper
1、下载安装
https://mirror.bit.edu.cn/apache/zookeeper/
或 https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/
下载想要的版本的tar包
解压后即可用
新建数据目录和日志目录
2、配置
在conf中cp zoo_sample.cfg zoo.cfg 如果是单机多实例集群 就zoo1.cfg zoo2.cfg zoo3.cfg
配置目录位置,集群需每台都配置所有服务器
dataDir=/lingtian/data/zookeeper1
dataLogDir=/lingtian/logs/zookeeper1
server.{id}={ip}:{port1}:{port1}
id 是1-255 第一个端口是从follower连接到leader机器的端口,第二个端口是用来进行leader选举时的端口
所以集群配置中有三个非常重要的端口: clientPort:2181 单机伪集群三个clientPort也不同
并且需要将id写入到服务器对应的dataDir目录下的myid文件中
echo ‘1’ > /lingtian/data/zookeeper1/myid
三台服务器的话
server.1=10.54.255.11:2888:3888
server.2=10.54.255.12:2888:3888
server.3=10.54.255.13:2888:3888
一台的话
server.1=10.166.2.158:2887:3887
server.2=10.166.2.158:2888:3888
server.3=10.166.2.158:2889:3889
3、配置环境变量
vi /etc/profile
export ZOOKEEPER_HOME=/lingtian/opt/zookeeper
export PATH=
Z
O
O
K
E
E
P
E
R
H
O
M
E
/
b
i
n
:
ZOOKEEPER_HOME/bin:
ZOOKEEPERHOME/bin:PATH
4、相关命令 命令后面可以指定配置文件
zkServer.sh start /lingtian/opt/zookeeper/conf/zoo1.cfg
zkServer.sh start
zkServer.sh stop
zkServer.sh restart
zkServer.sh status
连接服务器 zkCli -server IP:PORT
zkCli -server 127.0.0.1:2181
帮助命令
help
获取根节点列表,默认会有一个zookeeper节点,节点列表就像linux目录一样,根节点为/
ls /
创建znode并关联值, create /节点名称 “值”
create /myZnode “my znode”
获取znode
get /myZnode
修改znode
set /myZnode “my znode value string”
删除单个znode
delete /myZnode
递归删除(删除myZnode的子节点和myZnode节点)
rmr /myZnode
也可以通过nc等提交四字命令
echo stat |nc 127.0.0.1 2181 可以查到版本等信息
三、安装Scala
https://www.scala-lang.org/
选择版本
解压后即可用
vi /etc/profile
export SCALA_HOME=/lingtian/opt/scala
export PATH=
S
C
A
L
A
H
O
M
E
/
b
i
n
:
SCALA_HOME/bin:
SCALAHOME/bin:PATH
source /etc/profile
四、安装kafka
https://mirror.bit.edu.cn/apache/kafka
kafka_2.11-2.1.1.tgz
解压后即可用
修改server.properties 单机伪集群要三个文件server1.properties server2.properties 9092 9093 9094
broker.id=1 #唯一
listeners=PLAINTEXT://10.166.7.139:9092
advertised.listeners=PLAINTEXT://10.166.7.139:9092
zookeeper.connect=10.166.7.139:2181,10.166.7.139:2182,10.166.7.139:2183
启动kafka
./kafka-server-start.sh -daemon …/config/server.properties &
查看脏数据
cat /proc/vmstat|egrep “dirty|writeback”
kafka基本操作
创建topic
语法
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic topic-name
副本因子个数,与代理数一致
示例
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 3
–partitions 1 --topic Hello-Kafka
获取topic列表
bin/kafka-topics.sh --list --zookeeper localhost:2181
检查哪个代理正在侦听当前主题
bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic Multibrokerappli-cation
修改主题 alter
改变分区数
bin/kafka-topics.sh —zookeeper localhost:2181 --alter --topic topic_name
–parti-tions count
示例
bin/kafka-topics.sh --zookeeper localhost:2181 --alter --topic Hello-kafka --parti-tions 2
删除主题
bin/kafka-topics.sh --zookeeper localhost:2181 --delete --topic topic_name
!!!注意 - 如果 delete.topic.enable 未设置为true,则此操作不会产生任何影响