• Kafka0.10.2.0分布式集群安装


    一、依赖文件安装

        1.1 JDK

             参见博文:http://www.cnblogs.com/liugh/p/6623530.html

        1.2 Scala

             参见博文:http://www.cnblogs.com/liugh/p/6624491.html

        1.3 Zookeeper

             参见博文:http://www.cnblogs.com/liugh/p/6671460.html

    二、文件准备

         2.1 文件名称

           kafka_2.11-0.10.2.0.tgz 

         2.2 下载地址

           http://kafka.apache.org/downloads

        

    三、工具准备

        3.1 Xshell

          一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议。

          Xshell 通过互联网到远程主机的安全连接以及它创新性的设计和特色帮助用户在复杂的网络环境中享受他们的工作。

        3.2 Xftp

         一个基于 MS windows 平台的功能强大的SFTPFTP 文件传输软件。

        使用了 Xftp 以后,MS windows 用户能安全地在UNIX/Linux 和 Windows PC 之间传输文件。

    四、部署图

    五、Kafka安装

        以下操作,均使用root用户

       5.1 通过Xftp将下载下来的Kafka安装文件上传到Master及两个Slave的/usr目录下

       5.2 通过Xshell连接到虚拟机,在Master及两个Slave上,执行如下命令,解压文件:

            # tar zxvf kafka_2.11-0.10.2.0.tgz 

       5.3 在Master上,使用Vi编辑器,设置环境变量

            # vi /etc/profile

            在文件最后,添加如下内容:       

    #Kafka Env

    export KAFKA_HOME=/usr/kafka_2.11-0.10.2.0
    export PATH=$PATH:$KAFKA_HOME/bin

       5.4 退出vi编辑器,使环境变量设置立即生效

           # source /etc/profile

           通过scp命令,将/etc/profile拷贝到两个Slave节点:

           #scp /etc/profile root@DEV-SH-MAP-02:/etc

           #scp /etc/profile root@DEV-SH-MAP-03:/etc

           分别在两个Slave节点上执行# source /etc/profile使其立即生效

    六、Kafka配置

        以下操作均在Master节点,配置完后,使用scp命令,将配置文件拷贝到两个Slave节点即可。

       6.1 server.properties配置文件

        切换到/usr/kafka_2.11-0.10.2.0/config目录下

        使用vi编辑器,打开server.properties,主要设置BrokerId、listeners、LogDir、Zookeeper,如下所示:

    broker.id=1
    
    listeners=PLAINTEXT://DEV-SH-MAP-01:9092
    
    log.dirs=/usr/kafka_2.11-0.10.2.0/log
    
    zookeeper.connect=DEV-SH-MAP-01:2181,DEV-SH-MAP-02:2181,DEV-SH-MAP-03:2181

         其中:

           1)broker.id:broker的id,必需是一个全局(集群)唯一的整数值,即集群中每个kafka server的配置不能相同

           2)listeners:socket监听的地址,格式为listeners = security_protocol://host_name:port,端口默认为9092 

           3)log.dirs:日志保存目录

           4)zookeeper.connect:zookeeper连接地址

       拷贝配置文件到两个Slave节点:

       在Master节点,执行如下命令:   

       # scp server.properties root@DEV-SH-MAP-02:/usr/kafka_2.11-0.10.2.0/config

       # scp server.properties root@DEV-SH-MAP-03:/usr/kafka_2.11-0.10.2.0/config

      【注意】需要结合具体的Slave节点,修改borker.Id、listeners

    七、Kafka使用

       7.1 启动Kafka集群

           分别在Master及两个Slave上执行命令:

           kafka-server-start.sh -daemon server.properties

      7.2 创建Topic

         kafka-topics.sh --zookeeper DEV-SH-MAP-01:2181 --create --replication-factor 1 --partitions 1 --topic test

     7.3 查看Topic

         kafka-topics.sh --zookeeper DEV-SH-MAP-01:2181 --list

     7.4 创建Producer

          kafka-console-producer.sh --broker-list DEV-SH-MAP-01:9092 --topic test

     7.5 创建Consumer

          kafka-console-consumer.sh --bootstrap-server DEV-SH-MAP-01:9092 --topic test --from-beginning

     7.6 删除Topic

          kafka-topics.sh --zookeeper DEV-SH-MAP-01:2181 --delete --topic test

  • 相关阅读:
    Docker 0x05: Dockerfile制作镜像
    Docker 0x04: Docker 基本使用
    Docker 0x03:Install Docker
    Docker 0x02: Docker生态
    Docker 0x01:Docker Container容器技术
    Axios发送AJAX请求
    Django学习之十三:提高页面开发效率减少冗余的模板系统
    javascript获取指定区间范围随机数
    完美解决eclipse编辑器中文字符过小问题
    mysql查询表所有列名,并用逗号分隔
  • 原文地址:https://www.cnblogs.com/liugh/p/6691589.html
Copyright © 2020-2023  润新知