温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

CentOS7中怎么安装kafka环境

发布时间:2021-06-21 17:54:52 来源:亿速云 阅读:217 作者:Leah 栏目:大数据

这篇文章将为大家详细讲解有关CentOS7中怎么安装kafka环境,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

第一步:安装zookeeper环境

1、下载zookeeper包 zookeeper-3.4.5.tar.gz
2、解压至  /usr/local/zookeeper-3.4.5
3、在 /usr/local/zookeeper-3.4.5 创建两个文件夹 

   #mkdir data #数据文件保存目录
   #mkdir logs #日志文件保存目录

4、在conf目录下新增zoo.cfg配置文件  内容如下

# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial 
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just 
# example sakes.
dataDir=/usr/local/zookeeper-3.4.5/data
dataLogDir=/usr/local/zookeeper-3.4.5/logs
# the port at which the clients will connect
clientPort=2181

5、把zookeeper注册为centos服务

#在/usr/lib/systemd/system 目录下创建zookeeper.service文件

#vim /usr/lib/systemd/system/zookeeper.service

[Unit]
Description=zookeeper service
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/zookeeper-3.4.5/bin/zkServer.sh start
ExecReload=/usr/local/zookeeper-3.4.5/bin/zkServer.sh restart
ExecStop=/usr/local/zookeeper-3.4.5/bin/zkServer.sh stop
PrivateTmp=true

[Install]
WantedBy=multi-user.target

6、后续在文件/zookeeper/apache-zookeeper-3.5.6-bin/bin/zkEnv.sh开头处插入JAVA环境路径:

JAVA_HOME="/usr/java/jdk1.8.0_231"

二、kafka安装

1、把文件解压到 /usr/local/kafka_2.12-1.0.2

2、修改配置文件/usr/local/kafka_2.12-1.0.2/config/server.properties

broker.id=1     # 唯一ID同一集群下broker.id不能重复
listeners=PLAINTEXT://localhost:9092   # 监听地址
log.dirs=/opt/kafka_2.11-1.0.1/data      # 数据目录
log.retention.hours=168   # kafka数据保留时间单位为hour 默认 168小时即 7天 
log.retention.bytes=1073741824  #(kafka数据量最大值,超出范围自动清理,和 log.retention.hours配合使用,注意其最大值设定不可超磁盘大小)
zookeeper.connect:192.168.8.13:2181  #(zookeeper连接ip及port,多个以逗号分隔)

3、注册kafka为服务

#在/etc/systemd/system 目录下创建kafka.service文件

#vim /etc/systemd/system/kafka.service

[Unit]
Description=kafka service
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/kafka_2.12-1.0.2/bin/kafka-server-start.sh -daemon /usr/local/kafka_2.12-1.0.2/config/server.properties
ExecStop=/usr/local/kafka_2.12-1.0.2/bin/kafka-server-stop.sh
PrivateTmp=true

[Install]
WantedBy=multi-user.target

4、设置sasl加密

# 1.新建配置文件
vi ./config/kafka_server_jaas.conf
# 文件内容
# username定义一个公共的用户名,用于节点之间进行通信,user_xxxx主要是客户端用来连接kafka的,等号后面是密码,xxxxx是用户名,这里大小写一个字都不能差,除了用户名和密码
KafkaServer {
  org.apache.kafka.common.security.plain.PlainLoginModule required
    username="admin"
    password="admin-sec"
    user_admin="admin-sec"
    user_producer="prod-sec"
    user_consumer="cons-sec";
};
# 2.修改kafka启动时的配置文件,server.properties
# 我的做法是复制一份
cp ./config/server.properties ./config/server_sasl.properties
# 修改内容如下,在文末添加如下内容:
# 注意点:192.168.8.13是我当前主机ip,9092是kafka通信端口,其他的地方保持一致
listeners=SASL_PLAINTEXT://192.168.8.13:9092
security.inter.broker.protocol=SASL_PLAINTEXT
sasl.enabled.mechanisms=PLAIN
sasl.mechanism.inter.broker.protocol=PLAIN
authorizer.class.name=kafka.security.auth.SimpleAclAuthorizer
allow.everyone.if.no.acl.found=true
# 3.修改启动脚本
vi ./bin/kafka-server-start.sh
# 找到  export KAFKA_HEAP_OPTS
#添加jvm 参数,注意kafka_server_jaas.conf文件是之前第一步创建的安全认证文件
#-Djava.security.auth.login.config=/usr/local/software/kafka/config/kafka_server_jaas.conf

if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
    export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G -Djava.security.auth.login.config=/usr/local/software/kafka/config/kafka_server_jaas.conf"
fi

关于CentOS7中怎么安装kafka环境就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI