温馨提示×

温馨提示×

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

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

Ubuntu-16.04中怎么配置Apache Kafka集群

发布时间:2021-07-13 14:44:22 来源:亿速云 阅读:138 作者:Leah 栏目:开发技术

这期内容当中小编将会给大家带来有关Ubuntu-16.04中怎么配置Apache Kafka集群,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

Apache Kafka是一个免费的开源流处理软件平台,由Apache软件基金会用Scala编写。它是一种分布式消息代理,专门用于有效处理大量实时信息。与其他消息代理系统(如ActiveMQ和RabbitMQ)相比,Apache Kafka具有更高吞吐量。Apache Kafka基于提交日志,允许用户订阅并将数据发布到任意数量的系统或实时应用程序。

Apache Kafka可以部署在单个Web服务器上,也可以部署在分布式集群环境中。Apache Kafka有四个主要的API:Producer API,Consumer API,Connector API和Streams API。

特征:

  • 支持并行数据加载到Hadoop;

  • 高吞吐量,即便使用适中的硬件,也能支持每秒数十万条消息;

  • 持久的消息传递与O(1)磁盘结构,提供稳定的时间性能,即使有数TB的存储消息;

  • 分布式系统可轻松扩展,无需停机。

本教程要求

  • 安装Ubuntu 16.04服务器的云ECS平台;

  • 配置静态IP地址192.168.0.103;

  • 在服务器上设置Root密码。

启动云ECS实例

首先,登录云ECS控制台,你可以选择喜欢的云平台。创建一个新的ECS实例,选择Ubuntu 16.04作为具有至少2GB RAM的操作系统。 连接到ECS实例并以root用户身份登录。

登录到Ubuntu 16.04实例后,运行以下命令以使用最新的可用软件包更新基本系统:

apt-get update -y

安装Java

Apache Kafka需要Java运行时环境,因此需要在系统中安装最新版本的Java。默认情况下,Ubuntu 16.04存储库中不提供最新版本的Java。因此,我们需要将Java存储库添加到系统中,可以通过运行以下命令来执行此操作:

add-apt-repository ppa:webupd8team/java

接下来,通过运行以下命令更新存储库并安装Java:

apt-get install oracle-java8-installer -y

安装Java后,可以使用以下命令检查Java版本:

java -version

输出:

java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)

安装Zookeeper

Apache Kafka依靠Zookeeper维护配置信息,提供分布式同步,命名和提供组服务。因此,我们需要将Zookeeper安装到系统中,可以通过运行以下命令来安装它:

apt-get install zookeeperd -y

默认情况下,Zookeeper侦听端口2181,可以通过运行以下命令来检查它:

netstat -nlpt | grep ':2181'

你应该可以看到以下输出:

tcp6       0      0 :::2181                 :::*                    LISTEN

安装Apache Kafka

首先,你需要从Apache网站下载最新版本的Kafka,可以通过运行以下命令来下载:

wget  http://redrockdigimark.com/apachemirror/kafka/1.1.0/kafka_2.12-1.1.0.tgz

下载完成后,使用以下命令解压缩文件:

tar -xvzf kafka_2.12-1.1.0.tgz

接下来,将解压缩目录复制到/ opt:

cp -r kafka_2.12-1.1.0 /opt/Kafka

通过运行以下脚本启动Kafka服务器:

/opt/Kafka/bin/kafka-server-start.sh /opt/Kafka/config/server.properties

你应该可以看到以下输出:

[2018-05-20 08:13:54,271] INFO [/config/changes-event-process-thread]: Starting (kafka.common.ZkNodeChangeNotificationListener$ChangeEventProcessThread)
[2018-05-20 08:13:54,449] INFO Kafka version : 1.1.0 (org.apache.kafka.common.utils.AppInfoParser)
[2018-05-20 08:13:54,461] INFO Kafka commitId : fdcf75ea326b8e07 (org.apache.kafka.common.utils.AppInfoParser)
[2018-05-20 08:13:54,466] INFO [KafkaServer id=0] started (kafka.server.KafkaServer)

Kafka服务器正在侦听端口9092。

测试Apache Kafka

现在,通过运行以下命令,使用单个分区和仅一个副本创建名为Topic1的第一个主题:

/opt/Kafka/bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1  --partitions 1 --topic Topic1

应该看到以下输出:

Created topic "Topic1".

现在,你可以通过运行以下命令在Kafka上查看已创建的主题:

/opt/Kafka/bin/kafka-topics.sh --list --zookeeper localhost:2181

应该可以看到以下输出:

Topic1

现在,使用以下命令将示例消息发布到名为Topic1的Apache kafka主题:

/opt/Kafka/bin/kafka-console-producer.sh --broker-list localhost:9092 --topic Topic1
>>Hello Kafka
>How R You
>Ok
>

接下来,运行Kafka consumer命令从Kafka集群读取数据并将消息显示到标准输出:

/opt/Kafka/bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic Topic1 --from-beginning

以下输出应该可以看到发布的消息:

Hello Kafka
How R You
OK

上述就是小编为大家分享的Ubuntu-16.04中怎么配置Apache Kafka集群了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。

向AI问一下细节

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

AI