kafka安装

Kafka安装

  • 下载安装包,此次安装的kafka版本为0.11.0.3
wget https://archive.apache.org/dist/kafka/0.11.0.3/kafka_2.11-0.11.0.3.tgz
  • 解压并设置软链接
tar -xzvf kafka_2.11-0.11.0.3.tgz -C /opt/module/
ln -s kafka_2.11-0.11.0.3 kafka
  • 设置环境变量
# KAFKA_HOME
export KAFKA_HOME=/opt/module/kafka
export PATH=$PATH:$KAFKA_HOME/bin

配置kafka集群

  • 编辑server.properties文件
# broker.id为唯一的集群节点标识,必须为整数
broker.id=201
# 是否允许删除topic,此处设置为允许
delete.topic.enable=true
# kafka数据暂存目录,用于将数据和日志分开存储,数据会存放到/opt/module/kafka/data
# 日志会存放到/opt/module/kafka/logs目录
log.dirs=/opt/module/kafka/data
# 数据保存时间,此处为7天,超过7天数据会被删除
log.retention.hours=168
# zookeeper集群地址
zookeeper.connect=hadoop201:2181,hadoop202:2181,hadoop203:2181
  • server.properties文件分发到其他节点,并且修改broker.id的值
  • 启动kafka集群
# 启动kafka集群之前需要先启动zookeeper集群
zookeeper-cluster start
kafka-server-start.sh -daemon config/server.properties
设置日志输出路径

默认Kafka运行的时候都会通过log4j打印很多日志文件,比如server.log, controller.log, state-change.log等,而都会将其输出到$KAFKA_HOME/logs目录下,这样很不利于线上运维,因为经常容易出现打爆文件系统,一般安装的盘都比较小,而数据和日志会指定打到另一个或多个更大空间的分区盘
具体方法是,打开$KAFKA_HOME/bin/kafka-run-class.sh,找到下面标示的位置,并定义一个变量,指定的值为系统日志输出路径,重启broker即可生效。
在这里插入图片描述

Kafka集群启动脚本

#!/bin/bash

. /etc/rc.d/init.d/functions

KAFKA_CLUSTER=(
    hadoop201
    hadoop202
    hadoop203
)

do_start(){
    for host in ${KAFKA_CLUSTER[@]}; do
        ssh $host "source /etc/profile; kafka-server-start.sh -daemon /opt/module/kafka/config/server.properties"
        if [ $? -eq 0 ]
        then
            action "$host start"    /bin/true
        else
            action "$host start"    /bin/false
        fi
    done
}

do_stop(){
    for host in ${KAFKA_CLUSTER[@]}; do
       ssh $host "source /etc/profile;kafka-server-stop.sh"
       if [ $? -eq 0 ]
       then
            action "$host stop"    /bin/true
       else
            action "$host stop"    /bin/false
       fi
    done
}

do_jps(){
    for host in ${KAFKA_CLUSTER[@]}; do
        echo "$host jps reporting: "
        ssh $host "source /etc/profile; jps"
    done
}

case $1 in
    start) do_start
    ;;

    stop) do_stop
    ;;

    jps) do_jps
    ;;

    restart)
        do_stop
        sleep 3s
        do_start
    ;;
    *) echo "Usage: $0 {start|stop|restart|jps}" >&2
esac
  • 将上述脚本放入/home/bin目录下,添加可执行权限
chmod +x kafka-cluster.sh
  • 编辑~/.bash_profile文件,设置环境变量,执行source ~/.bash_profile命令,使之生效
PATH=$PATH:$HOME/bin
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值