kafka及zookeeper安装部署

来源:互联网 发布:中国的阿拉伯之春 知乎 编辑:程序博客网 时间:2024/05/25 16:40

因为kafka启动依靠zookeeper所以博主先配置zookeeper

zookeeper部署

Step1:以root账号登陆,创建shaka用户

[root@localhost home]# useradd shaka
[root@localhost  home]# passwd shaka 
Step2:切换为shaka账号
[shaka@localhost ~]$  su - shaka
Step3:创建zookeeper目录
[shaka@localhost ~]$ mkdir zookeeper
Step4:进入zookeeper目录
[shaka@localhost  ~]$ cd zookeeper;
Step5:从阿帕奇官网下载安装包

Step6:解压安装包
[shaka@localhost  zookeeper]$ tar -xvf zookeeper-3.3.6.deploy.tar.gz 
Step7:获取本地IP,方法有多种,下面为常用的命令:

[shaka@localhost conf]$ ifconfig 得到IP

Step8:修改zookeeper的配置文件

[shaka@localhost zookeeper]$ vim  /home/shaka/zookeeper/zookeeper-3.3.6/conf/zoo.cfg


Step10:修改配置文件中的dataDir、dataLogDir、server.1


# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial 
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
dataDir=/home/shaka/zookeeper/zookeeper-3.3.6/logs      //改成自己的目录
# the port at which the clients will connect
clientPort=2181
# set logs
dataLogDir=/home/shaka/dep/zookeeper-3.3.6/logs
# set server
server.1=192.168.37.128:4887:5887      //改成自己的ip
#server.2=10.162.219.52:4887:5887
#server.3=10.163.15.119:4887:5887
# add by shaka
# set max client connects
maxClientCnxns=300


Step11:启动zookeeper 
                      [shaka@localhost zookeeper]$ bin/zkServer.sh start
 
Step12:启动后查看状态:
                      [shaka@localhost zookeeper]$ bin/zkServer.sh status


停止ZK服务:        [shaka@localhostzookeeper]$ bin/zkServer.sh stop


重启ZK服务:        [shaka@localhost zookeeper]$ bin/zkServer.sh restart


Step13:启动zookeeper的客户端
bin/zkCli.sh -server 127.0.0.1:2181


zk客户端命令

命令行工具的一些简单操作如下:
    1. 显示根目录下、文件: ls / 使用 ls 命令来查看当前 ZooKeeper 中所包含的内容
    2. 显示根目录下、文件: ls2 / 查看当前节点数据并能看到更新次数等数据
    3. 创建文件,并设置初始内容: create /zk "test" 创建一个新的 znode节点“ zk ”以及与它关联的字符串
    4. 获取文件内容: get /zk 确认 znode 是否包含我们所创建的字符串
    5. 修改文件内容: set /zk "zkbak" 对 zk 所关联的字符串进行设置
    6. 删除文件: delete /zk 将刚才创建的 znode 删除
    7. 退出客户端: quit
    8. 帮助命令: help



kafka安装部署


Kafka架构包括以下组件:
    话题(Topic)是特定类型的消息流。消息是字节的有效负载(Payload),话题是消息的分类名或种子(Feed)名。
    生产者(Producer)是能够发布消息到话题的任何对象。
    已发布的消息保存在一组服务器中,它们被称为代理(Broker)或Kafka集群。
    消费者可以订阅一个或多个话题,并从Broker拉数据,从而消费这些已发布的消息。

kafka部署

step1:阿帕奇官网现在安装包,博主用的是kafka_2.9.2-0.8.1.1
step2:解压
     tar -xvf kafka_2.9.2-0.8.1.1.tgz ,
修改配置文件conf/server.properties:
broker.id=0;host.name=localhost;zookeeper.connect=localhost:2181可逗号分隔配置多个   (  ip为主机ip)
step3.启动zk服务:
bin/zkServer.sh start  (按照zk部署步骤进行)

确保zk的配置是正确的:
zookeeper.connect=localhost:2181


Step4:启动kafka服务
sbin/start-kafka.sh 


step7.创建topic主题:
bin/kafka-create-topic.sh --zookeeper 10.100.5.9:2181 --replica 3 --partition 1 --topic mykafka

到此kafka基本部署完成,下面是一些基本的命令

//kafka启动命令
bin/kafka-server-start.sh config/server.properties &

//list查看topic
bin/kafka-topics.sh --list --zookeeper localhost:2181

//创建一个topic(--topic后面的可以改 ,,ip也可以改)。
bin/kafka-topics.sh --create --zookeeper 127.0.0.1:2181 --replication-factor 1 --partitions 1 --topic  topic--003

//删除话题,,指定topic,ip
bin/kafka-run-class.sh kafka.admin.DeleteTopicCommand --topic topic--003 --zookeeper localhost:2181

//创建消费者
bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic topic-003
//创建生产者(再新建一终端)
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic topic-003
测试:
      在生产者控制界面输入文字,,消费者界面同时打印出来


1 0