Zookeeper及kafka认识及常用命令
Zookeeper认识:
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,ZooKeeper是以FastPaxos算法为基础,实现同步服务,配置维护和命名服务等分布式应用
Zookeeper 从程序员的角度来讲可以理解为Hadoop的整体监控系统。如果namenode,HMaster宕机后,这时候Zookeeper 的重新选出leader,这是它最大的作用所在。
zookeeper作用:
Zookeeper实现了高性能,高可靠性,和有序的访问。高性能保证了zookeeper能应用在大型的分布式系统上。高可靠性保证它不会由于单一节点的故障而造成任何问题。有序的访问能保证客户端可以实现较为复杂的同步操作。
组成Zookeeper的各个服务器必须要能相互通信。他们在内存中保存了服务器状态,也保存了操作的日志,并且持久化快照。只要大多数的服务器是可用的,那么Zookeeper就是可用的
安装:
1、官网下载安装包(3.5以后需要下载bin安装包)
Kafka认识:
1、安装
下载 http://kafka.apache.org/downloads安装包,解压进行安装。
2、配置环境变量
3、改配置 。修改$KAFKA_HOME/config 目录下的 server.prope叫es文件,为了便于后 续集群环境搭建的配置, 需要保证同一个集群下 broker.id要唯一,因此这里手动配置 broker.id, 直接保持与ZooKeeper的myid值一致, 同时配置日志存储路径。server.properties修改的配置 如下 :
broker.id=l #指定代理的 id
log.dirs=/opt/data/kafka- logs #指定 Log 存储路径
zookeeper . connect=server-1:2181 , server - 2:2181 , server-3:2181
在三台机器上分别修改配置文件server.properties, 并修改对应的broker.id.
4、启动
kafka-server-start.sh -daemon ../config/server.properties
执行 jps命令查看 Java进程,此时进程信息至少包括以下几项:
15976 Jps
14999 QuorumPeerMain
15906 Kafka
Kafka命令:
1.查看所有topic
kafka-topics.sh --zookeeper had1:2181 --list
2.查看kafka特定topic的详情,使用--topic与--describe参数
kafka-topics.sh --zookeeper had1:2181 --topic lx_test_topic --describe
3.查看consumer group列表,使用--list参数
kafka-consumer-groups.sh --new-consumer --bootstrap-server had1:9292 --list --新版本命令
kafka-consumer-groups.sh --zookeeper had1:2181 --list --旧版本命令
4.查看特定consumer group 详情,使用--group与--describe参数
kafka-consumer-groups.sh --new-consumer --bootstrap-server 127.0.0.1:9292 --group lx_test --describe --新版本命令
kafka-consumer-groups.sh --zookeeper had1:2181 --group lx_test --describe --旧版本命令
5.实时查看kafka消息