• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
⁰¹.₂₂梁℘࿐的博客
博客园    首页    新随笔    联系   管理    订阅  订阅

kafka安装部署

修改master主机名字

[root@server1 ~]# hostname master
[root@server1 ~]# hostname slave1
[root@server1 ~]# hostname slave2

修改hosts文件

[root@server1 ~]# vim /etc/hosts
192.168.66.128 master
192.168.66.129 slave1
192.168.66.130 slave2

修改完成后保存执行如下命令

[root@server1 ~]# source /etc/hosts

配置Master无密码登录所有Salve

  在Master节点上生成密码对

[root@server1 ~]# ssh-keygen -t rsa -P ''

  把id_rsa.pub追加到授权的key里面去

[root@server1 ~]# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

修改ssh配置文件"/etc/ssh/sshd_config"

[root@server1 ~]# vim /etc/ssh/sshd_config
RSAAuthentication yes # 启用 RSA 认证
PubkeyAuthentication yes # 启用公钥私钥配对认证方式

重启ssh服务

[root@server1 ~]# systemctl restart ssh

验证无密码登录本机是否成功

[root@server1 ~]# ssh master

将公钥复制到所有的Slave机器上

[root@server1 ~]# scp -r /root/.ssh/id_rsa.pub root@slave1:/root/
[root@server1 ~]# scp -r /root/.ssh/id_rsa.pub root@slave2:/root/

接着配置server1节点,以下是在server2、server3节点的配置操作

在"/root/"下创建".ssh"文件夹
[root@server2 ~]# mkdir /root/.ssh
将server1的公钥追加到server2、server3的授权文件"authorized_keys"中
[root@server2 ~]# cat /root/id_rsa.pub >> /root/.ssh/authorized_keys
修改"/etc/ssh/sshd_config"
[root@server2 ~]# vim /etc/ssh/sshd_config
RSAAuthentication yes # 启用 RSA 认证
PubkeyAuthentication yes # 启用公钥私钥配对认证方式

创建" server2、server3"自己的公钥和私钥,并把自己的公钥追加到"authorized_keys"文件中

[root@server2 ~]# ssh-keygen -t rsa -P ''
[root@server2 ~]# cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys

将server2、server3节点的公钥"id_rsa.pub"复制到server1节点的"/root/"目录下

[root@slave1 ~]# scp -r /root/.ssh/id_rsa.pub root@master:/root/

以下是在server1节点的配置操作

将server2、server3的公钥追加到Master的授权文件"authorized_keys"中去。
[root@server1 ~]# cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

删除Slave1复制过来的"id_rsa.pub"文件

[root@server1 ~]# rm –r /root/id_rsa.pub

jdk-8u121安装部署

上传压缩包并解压

jdk-8u121-linux-x64.tar.gz
[root@server1 ~]# tar xvf jdk-8u121-linux-x64.tar.gz
[root@server1 ~]# mv jdk1.8.0_121/ /usr/local/

添加Java环境变量,在/etc/profile中添加

[root@server1 ~]# vim /etc/profile
export JAVA_HOME=/usr/local/jdk1.8.0_121
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/rt.jar
export JAVA_HOME PATH CLASSPATH

保存后刷新配置

[root@localhost ~]# source /etc/profile

复制master节点的profile文件夹到server2和server3上

[root@localhost ~]# scp -r /etc/profile/ root@slave1:/etc/
[root@localhost ~]# scp -r /etc/profile/ root@slave2:/etc/

复制master节点的jdk1.8.0_121文件夹到server2和server3上

[root@localhost ~]# scp -r /usr/local/jdk1.8.0_121/ root@slave1:/usr/local/
[root@localhost ~]# scp -r /usr/local/jdk1.8.0_121/ root@slave2:/usr/local/

zookeeper-3.5.8安装部署

上传压缩包并解压

zookeeper-3.4.14.tar.gz
[root@localhost ~]# tar -zxvf zookeeper-3.4.14.tar.gz
[root@localhost ~]# mv zookeeper-3.4.14 /opt/zookeeper
[root@localhost ~]# cd /opt/zookeeper/conf/

拷贝模板文件

[root@localhost conf]# cp zoo_sample.cfg zoo.cfg

修改配置文件,并添加

[root@localhost conf]# vim zoo.cfg
server.1=192.168.66.128:2888:3888
server.2=192.168.66.129:2888:3888
server.3=192.168.66.130:2888:3888

修改profile文件

[root@localhost ~]# vim /etc/profile
export ZOOKEEPER_HOME=/opt/zookeeper/
export PATH=$ZOOKEEPER_HOME/bin:$PATH

刷新profile

[root@localhost ~]# source /etc/profile

复制master节点的zookeeper文件夹到server2和server3上

[root@localhost zookeeper]# scp -r /opt/zookeeper/ root@slave1:/opt/
[root@localhost zookeeper]# scp -r /opt/zookeeper/ root@slave2:/opt/

创建myid文件

server1上执行:echo "1" > /opt/zookeeper/myid
server2上执行:echo "2" > /opt/zookeeper/myid
server3上执行:echo "3" > /opt/zookeeper/myid

启动zookeeper

[root@localhost zookeeper]# ./bin/zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

查看状态

[root@localhost zookeeper]# ./bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: leader
[root@server1 zookeeper]# jps
9941 Jps
9725 QuorumPeerMain

kafka_2.10-0安装部署

上传解压包并压缩

kafka_2.11-2.2.0.tgz
[root@server1 ~]# tar -zxvf kafka_2.11-2.2.0.tgz
[root@server1 ~]# mv kafka_2.11-2.2.0 /opt/kafka
[root@server1 ~]# cd /opt/kafka/config/

修改kafka的主配置文件     server1、server2、server3

[root@server1 config]# vim server.properties
broker.id=1         # 20行
advertised.listeners=PLAINTEXT://server1:9092       # 35行
zookeeper.connect=192.168.112.140:2181,192.168.112.138:2181,192.168.112.139:2181/kafka      # 112行
[root@server2 config]# vim server.properties
broker.id=2         # 20行
advertised.listeners=PLAINTEXT://server2:9092       # 35行
zookeeper.connect=192.168.112.140:2181,192.168.112.138:2181,192.168.112.139:2181/kafka          # 112行
[root@server3 config]# vim server.properties
broker.id=3         # 20行
advertised.listeners=PLAINTEXT://server3:9092       # 35行
zookeeper.connect=192.168.112.140:2181,192.168.112.138:2181,192.168.112.139:2181/kafka          # 112行

启动三台kafka

[root@server1 bin]# ./kafka-server-start.sh -daemon ../config/server.properties
[root@server2 bin]# ./kafka-server-start.sh -daemon ../config/server.properties
[root@server3 bin]# ./kafka-server-start.sh -daemon ../config/server.properties

创建一个topic主题

创建一个名为liangzg的主题,并指定该主题的分区数为3,副本数为2
[root@kafka02 bin]# /opt/kafka/bin/kafka-topics.sh --create --zookeeper 192.168.66.130:2181 --replication-factor 2 --partitions 3 --topic my-topic
Created topic "liangzg".        # 创建成功

报错

Error while executing topic command : Topic "liangzg" already exists.
[2020-12-04 10:32:31,716] ERROR kafka.common.TopicExistsException: Topic "liangzg" already exists.
        at kafka.admin.AdminUtils$.createOrUpdateTopicPartitionAssignmentPathInZK(AdminUtils.scala:420)
        at kafka.admin.AdminUtils$.createTopic(AdminUtils.scala:404)
        at kafka.admin.TopicCommand$.createTopic(TopicCommand.scala:110)
        at kafka.admin.TopicCommand$.main(TopicCommand.scala:61)
        at kafka.admin.TopicCommand.main(TopicCommand.scala)
 (kafka.admin.TopicCommand$)

查看当前有多少个topic主题

[root@kafka02 bin]# /opt/kafka/bin/kafka-topics.sh --list --zookeeper 192.168.66.130:2181
my-topic

模拟生产者

[root@kafka02 bin]# /opt/kafka/bin/kafka-console-producer.sh --broker-list 192.168.66.129:9092 --topic my-topic

模拟消费者

[root@kafka03 bin]# /opt/kafka/bin/kafka-console-consumer.sh --bootstrap-server 192.168.66.130:9092  --topic my-topic --from-beginningb

 

 

posted @ 2020-12-04 16:25  ⁰¹.₂₂梁℘࿐  阅读(20)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3