Kafka集群搭建与配置

作者: 杨赟快跑 | 来源:发表于2018-10-08 20:06 被阅读86次
    1. 准备工作
    2. 安装java环境
    3. 搭建zookeeper集群
    4. 搭建kafka集群

    1. 准备工作

    1.1 安装包

    jdk-8u162-linux-x64.tar
    zookeeper-3.4.12.tar
    kafka_2.11-2.0.0 .tgz

    1.2 准备至少3台主机(ubuntu系统)

    如果没有物理机,也可以弄3台虚拟机。ubuntu系统不会安装的话可以自己百度哦,这里就不细说了。

    作者用的是虚拟机,下面是3台电脑的配置

    主机名 IP地址 硬件配置
    kafka-1 192.168.1.42 4CPU、4G内存、128G存储
    kafka-2 192.168.1.41 4CPU、4G内存、128G存储
    kafka-3 192.168.1.47 4CPU、4G内存、128G存储

    2. 安装JAVA环境

    准备安装包 jdk-8u162-linux-x64.tar

    在每台主机下执行下面步骤:

    将安装包移到/usr/local目录下

    mv jdk-8u162-linux-x64.tar.gz /usr/local
    

    解压文件

    tar -zxvf jdk-8u162-linux-x64.tar.gz
    

    重命名文件夹为java

    mv jdk-8u162-linux-x64 java
    

    用vim打开/etc/profile文件(Linux下配置系统环境变量的文件)

    vim /etc/profile
    

    按i进入编辑模式,在文件末尾添加如下JAVA环境变量

    export JAVA_HOME=/usr/local/java
    export JRE_HOME=/usr/local/java/jre
    export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
    export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
    

    添加环境变量后,结果如下图所示,按 esc 退出编辑模式,然后输入:+wq ,按回车保存(也可以按shift + zz 进行保存)。


    配置环境变量

    最后,需要让该环境变量生效,执行如下代码:

    source /etc/profile
    

    检验JAVA是否安装成功

    echo $JAVA_HOME     # 检验变量值
    java -version
    java
    javac
    

    如果设置正确的话,java -version 会输出 java 的版本信息,java 和 javac 会输出命令的使用指导。

    3. 搭建zookeeper集群

    准备安装包 zookeeper-3.4.12.tar

    在每台主机上执行下面步骤:

    将安装包移到/usr/local目录下

    mv zookeeper-3.4.12.tar /usr/local
    

    解压文件

    tar -zxvf zookeeper-3.4.12.tar
    

    重命名文件夹为zookeeper

    mv zookeeper-3.4.12 zookeeper
    

    配置zookeeper环境变量,首先打开profile文件

    vim /etc/profile
    

    按i进入编辑模式,在文件末尾添加zookeeper环境变量

    #set zookeeper environment
    export ZK_HOME=/usr/local/zookeeper
    export PATH=$ZK_HOME/bin:$PATH
    

    保存文件后,让该环境变量生效

    source /etc/profile
    

    打开zookeeper配置文件

    cp /usr/local/zookeeper/conf/zoo_sample.cfg /usr/local/zookeeper/conf/zoo.cfg
    vim /usr/local/zookeeper/zoo.cfg
    

    修改zookeeper配置文件

    #修改数据文件夹路径
    dataDir=/usr/local/zookeeper/data
    #在文件末尾添加
    server.1=192.168.1.42:2888:3888
    server.2=192.168.1.41:2888:3888
    server.3=192.168.1.47:2888:3888
    #其它不变
    

    创建数据文件夹

    mkdir /usr/local/zookeeper/data
    

    创建myid文件

    mkdir /usr/local/zookeeper/data/myid
    

    在myid文件中添加本机的 server ID,在本例中对应关系如下

    主机名 IP地址 zookeeper myid
    kafka-1 192.168.1.42 server.1 1
    kafka-2 192.168.1.41 server.2 2
    kafka-3 192.168.1.47 server.3 3

    所以,在kafka-1中执行下面命令

    echo "1" > /usr/local/zookeeper/data/myid  #kafka-1主机myid
    

    在kafka-2中执行下面命令

    echo "2" > /usr/local/zookeeper/data/myid  #kafka-2主机myid
    

    在kafka-3中执行下面命令

    echo "3" > /usr/local/zookeeper/data/myid  #kafka-3主机myid
    

    在每台电脑上启动zookeeper

     /usr/local/zookeeper/bin/zkServer.sh start
    

    全部启动后,查看启动结果

     /usr/local/zookeeper/bin/zkServer.sh status
    
    kafka-1启动结果 kafka-2启动结果 kafka-3启动结果

    4. 搭建kafka集群

    准备安装包 kafka_2.11-2.0.0 .tgz

    在每台主机上执行下面步骤:

    将安装包移到/usr/local目录下

    mv kafka_2.11-2.0.0 .tgz /usr/local
    

    解压文件

    tar -zxvf kafka_2.11-2.0.0 .tgz
    

    重命名文件夹为zookeeper

    mv kafka_2.11-2.0.0 kafka
    

    配置kafka环境变量,首先打开profile文件

    vim /etc/profile
    

    按i进入编辑模式,在文件末尾添加kafka环境变量

    #set kafka environment
    export KAFKA_HOME=/usr/local/kafka
    PATH=${KAFKA_HOME}/bin:$PATH
    

    保存文件后,让该环境变量生效

    source /etc/profile
    

    在kafka-1主机中修改server.properties配置文件

    打开配置文件

    vim /usr/local/kafka/config/server.properties
    

    修改配置如下(IP地址应该根据实际情况填写)

    broker.id=1
    listeners=PLAINTEXT://192.168.1.42:9092
    zookeeper.connect=192.168.1.41:2181,192.168.1.42:2181,192.168.1.47:2181
    

    在kafka-2主机中修改server.properties配置文件

    打开配置文件

    vim /usr/local/kafka/config/server.properties
    

    修改配置如下(IP地址应该根据实际情况填写)

    broker.id=2
    listeners=PLAINTEXT://192.168.1.41:9092
    zookeeper.connect=192.168.1.41:2181,192.168.1.42:2181,192.168.1.47:2181
    

    在kafka-3主机中修改server.properties配置文件

    打开配置文件

    vim /usr/local/kafka/config/server.properties
    

    修改配置如下(IP地址应该根据实际情况填写)

    broker.id=3
    listeners=PLAINTEXT://192.168.1.47:9092
    zookeeper.connect=192.168.1.41:2181,192.168.1.42:2181,192.168.1.47:2181
    

    启动kafka(要确保zookeeper已启动)

    在每台主机上分别启动kafka

    /usr/local/kafka/bin/kafka-server-start.sh -daemon config/server.properties 
    

    在其中一台虚拟机(192.168.1.47)创建topic

    /usr/local/kafka/bin/kafka-topics.sh --create --zookeeper 192.168.1.47:2181 --replication-factor 3 --partitions 1 --topic test-topic
    

    查看创建的topic信息

    /usr/local/kafka/bin/kafka-topics.sh --describe --zookeeper 192.168.1.47:2181 --topic test-topic
    

    结果如下图所示:

    topic信息

    搭建成功啦

    相关文章

      网友评论

        本文标题:Kafka集群搭建与配置

        本文链接:https://www.haomeiwen.com/subject/etpioftx.html