• linux 环境下,kafka_2.123.0.0 集群搭建


    十年河东,十年河西,莫欺少年穷

    学无止境,精益求精

    卡夫卡优秀的消息队列,各大公司都在使用

    1、准备三台虚拟机,分别为:192.168.182.128、192.168.182.129、192.168.182.130

    2、下载kafka安装包,我使用的是3.0版本,https://kafka.apache.org/downloads

     3、讲kafka传入到三台liunx服务器,放在 /root/software/ 文件夹下

     4、解压压缩包

    tar -xzvf kafka_2.12-3.0.0.tgz

    5、重命名解压缩生成的文件夹名称

    mv kafka_2.12-3.0.0 kafka

    6、在kafka文件夹中新建logs 目录备用 

    [root@localhost software]# cd kafka
    
    [root@localhost kafka]# mkdir logs
     
    
    

     7、进入kafka 子文件夹config中,修改 server.properties 配置文件

    [root@localhost kafka]# cd config
    [root@localhost config]# ls
    connect-console-sink.properties    connect-file-sink.properties    connect-mirror-maker.properties  kraft                server.properties       zookeeper.properties
    connect-console-source.properties  connect-file-source.properties  connect-standalone.properties    log4j.properties     tools-log4j.properties
    connect-distributed.properties     connect-log4j.properties        consumer.properties              producer.properties  trogdor.conf
    [root@localhost config]# vim server.properties

    分别将 192.168.182.128 服务器中的 server.properties 文件 配置项 broker.id 设置为 0,192.168.182.129 服务器中的 server.properties 文件 配置项 broker.id 设置为 1,192.168.182.130 服务器中的 server.properties 文件 配置项 broker.id 设置为 2

    log.dirs 三台服务器均设置为  /root/software/kafka/logs  【logs就是第6步建的文件夹】

    zookeeper.connect 三台服务器均设置为 192.168.182.128:2181,192.168.182.129:2181,192.168.182.130:2181 【代表kafka集群】

     wq保存

     8、主机名解析(三台服务器均要执行)并关闭防火墙、Iptables 、selinux

    vim /etc/hosts

    在三台虚拟机的 hosts 文件中增加如下配置

    192.168.182.128  broker0
    192.168.182.129  broker1
    192.168.182.130  broker2

    关闭防火墙和Iptables 

    查看防火墙状态

    systemctl status firewalld

    关闭防火墙

    [root@localhost etc]# systemctl stop firewalld
    [root@localhost etc]# systemctl disable firewalld
    Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
    Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

    关闭iptables

    [root@localhost ~]# systemctl stop iptables
    [root@localhost ~]# systemctl disable iptables

    禁用selinux ,这是个奇葩的服务,一定要坚决关掉

    临时关闭selinux服务

    setenforce [1|0]    --- 1表示临时开启Enforcing,0表示临时关闭Permissive
    getenforce    --- 关闭后确认
    [root@server ~]# setenforce 0
    [root@server ~]# getenforce 
    Permissive

    永久关闭selinux服务 【推荐永久关闭】

    修改/etc/selinux/config文件

    复制代码
    复制代码
    # This file controls the state of SELinux on the system.
    # SELINUX= can take one of these three values:
    #     enforcing - SELinux security policy is enforced.    --- 服务处于正常开启状态
    #     permissive - SELinux prints warnings instead of enforcing.    --- 服务被临时关闭了
    #     disabled - No SELinux policy is loaded.    --- 服务被永久关闭
    SELINUX=enforcing

    9、三台服务器下配置kafka环境变量

    vi /etc/profile

    增加如下内容

    export KAFKA_HOME=/root/software/kafka
    export PATH=$PATH:$KAFKA_HOME/bin

     刷新配置文件

    source /etc/profile

    检测环境变量是否配置成功

    [root@localhost bin]# echo $KAFKA_HOME
    /root/software/kafka

    10、启动kafka

    kafka集群启动前要启动zookeeper集群 

    然后三台服务器上执行

    [root@localhost config]# /root/software/kafka/bin/zookeeper-server-start.sh -daemon  /root/software/kafka/config/zookeeper.properties 

     三台服务器启动kafka

    [root@localhost config]# /root/software/kafka/bin/kafka-server-start.sh -daemon  /root/software/kafka/config/server.properties

    11、安装Jps插件,验证Kafak是否启动成功

    我这里是才有yum来安装jdk的,方法如下:

    yum install -y java-1.8.0-openjdk.x86_64

    然后配置环境变量:

    echo 'export JAVA_HOME=/usr/lib/jvm/jre
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/tools.jar' >> /etc/profile

    重新加载配置

    source /etc/profile

    验证:

    java -version

    当我输入jps命令后,竟然报命令找不到?
    错误原因:默认安装完只有运行环境,java安装目录下只有jre文件夹。

    继续安装开发环境:

    yum install java-1.8.0-openjdk-devel.x86_64

    成功后再输入jps:

    jps

     看到Kafka进程后,就证明咱们的KAFKA安装并启动成功了。

    12、停止kafka时,和启动时正好相反,应先停止kafka,在停止zookeeper

    停止kafka  【我使用的绝对路径】

    /root/software/kafka/bin/kafka-server-stop.sh

    停止zk

    /root/software/kafka/bin/zookeeper-server-stop.sh

     13、安装telnet,ping 9092 端口,是否畅通

    yum list telnet*  查看有哪些telnet命令

    查看到之后用yum install telnet-server.x86_64进行安装telnet-server.x86_64

    yum install telnet-server.x86_64

    查看到之后用yum install telnet.x86_64进行安装

    yum install telnet.x86_64

    最后在去telnet即可

    telnet smtp.qq.com 25

    @天才卧龙的博客

  • 相关阅读:
    MRC和ARC混合开发
    创建静态库.a
    IOS 数据存储之 FMDB 详解
    AFNETWorking的使用
    日历demo
    iOS开发系列--通知与消息机制
    paypal支付说明
    支付宝路径的问题
    iOS开发多线程篇—GCD介绍
    回调的具体最弱智的解释
  • 原文地址:https://www.cnblogs.com/chenwolong/p/kfk.html
Copyright © 2020-2023  润新知