当前位置:   article > 正文

Kafka从上手到实践 - 实践真知:搭建单机Kafka | 凌云时刻

kafka单机实践

凌云时刻 · 技术

导读:这一节介绍如何在Linux服务器上搭建单机Kafka。

作者 | 计缘

来源 | 凌云时刻(微信号:linuxpk)

租赁服务器

为了更加真实,本小册的实践内容都搭建在云服务器上。可以在阿里云或者腾讯云租赁服务器,如果想租赁国外的服务器,可以在Vultr租赁。我选择在阿里云租赁了一台Linux服务器。配置不需要太高,入门级的就可以,系统可以选择CentOS或者Ubuntu。

注意:在配置ECS时,宽带计费方式要选择按量计费,这样可以自动分配公网IP,并且价格实惠。

安装JDK

使用终端登录服务器,首先安装JDK:

  1. apt update
  2. apt install openjdk-8-jdk

下载Kafka

然后去Kafka官网下载2.0.0版本的Kafka,Scala版本为2.12(kafka_2.12-2.0.0.tgz)。解压:

tar -xvf kafka_2.12-2.0.0.tgz

解压完之后,将Kafka的bin目录配置到PATH中:

export PATH=/root/kafka_2.12-2.0.0/bin:$PATH

(左右滑动查看代码)

配置Kafka

接下来进行最基本的配置。我们需要创建三个目录,用来存放Zookeeper和Kafka的数据:

  • /root/kafka_2.12-2.0.0/data

  • /root/kafka_2.12-2.0.0/data/zookeeper

  • /root/kafka_2.12-2.0.0/data/kafka

然后更新Zookeeper配置文件(/root/kafka_2.12-2.0.0/config/zookeeper.properties)中的Data路径(dataDir)为/root/kafka_2.12-2.0.0/data/zookeeper

接着更新Kakfa Broker配置文件(/root/kafka_2.12-2.0.0/config/server.properties)中的日志路径(log.dirs)为/root/kafka_2.12-2.0.0/data/kafka

设置阿里云ECS安全组规则

最后我们要对阿里云ECS进行一些配置,才可以让本地的Kafka Client通过外网IP连接到部署在ECS上的Kafka。

打开阿里云控制台/云服务器ECS/实例,在更多选项里选择网络和安全组/安全组配置:

然后进入配置规则:

添加安全组规则:

因为是自己用的,所以为了方便起见,将授权对象设置为0.0.0.0/0

设置完ECS之后,我们还需要配置一下Kafka Broker的信息,打开config/server.properties文件,添加如下信息:

advertised.listeners=PLAINTEXT://ECS外网IP:9092

(左右滑动查看代码)

advertised.listeners这个属性的作用是告诉Zookeeper,该Broker将以这里配置的IP作为Host。这样,本地Kafka Client就可以通过ECS的外网IP连接到Broker了。

启动Kafka

在上文中,我们知道Kafka离开Zookeeper是玩不转的,所以首先要启动Zookeeper:

/root/kafka_2.12-2.0.0/bin/zookeeper-server-start.sh config/zookeeper.properties 

(左右滑动查看代码)

然后再启动Kafka Broker:

/root/kafka_2.12-2.0.0/bin/kafka-server-start.sh config/server.properties &

(左右滑动查看代码)

至此,Kafka最基本的搭建和启动就成功了。

总结

这一章节介绍了如何使用Linux服务器搭建单机Kafka,因为后续的Kafka CLI要基于单机Kafka进行实操。所以希望大家都能自己动手先搭建单机Kafka。希望能给小伙伴们带来帮助。

END

往期精彩文章回顾

Kafka从上手到实践 - 庖丁解牛:Consumer

Kafka从上手到实践 - 庖丁解牛:Producer

Kafka从上手到实践 - 庖丁解牛:Partition

Kafka从上手到实践 - 庖丁解牛:Topic & Broker | 凌云时刻

Kafka从上手到实践 - 初步认知:MQ系统

进阶之路:深入解读 Java 堆外内存

干货:一文看懂Apache Ranger

吴翰清:有变革的需求,才有技术的诞生

云原生时代,消息中间件的演进路线

长按扫描二维码关注凌云时刻

每日收获前沿技术与科技洞见

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/喵喵爱编程/article/detail/907499
推荐阅读
相关标签
  

闽ICP备14008679号