阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

如何在Ubuntu 16.04上配置Apache Kafka集群

259次阅读
没有评论

共计 3314 个字符,预计需要花费 9 分钟才能阅读完成。

在本教程中,我们将学习如何在基于 Ubuntu 的环境中安装开源 Apache Kafka 平台以及 Java SDK。

介绍

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

下面关于 Kafka 的文章您也可能喜欢,不妨参考下:

CentOS 7.2 部署 Elasticsearch+Kibana+Zookeeper+Kafka  http://www.linuxidc.com/Linux/2016-11/137636.htm

CentOS 7 下安装 Logstash ELK Stack 日志管理系统  http://www.linuxidc.com/Linux/2016-08/134165.htm

Kafka 集群部署与配置手册 http://www.linuxidc.com/Linux/2017-02/141037.htm

CentOS 7 下 Kafka 集群安装  http://www.linuxidc.com/Linux/2017-01/139734.htm

CentOS 7 下安装 Kafka 单机版  http://www.linuxidc.com/Linux/2017-01/139732.htm

CentOS7.0 安装配置 Kafka 集群  http://www.linuxidc.com/Linux/2017-06/144951.htm

Apache Kafka 2.3 发布,大数据分布式流式平台  https://www.linuxidc.com/Linux/2019-06/159175.htm

Kafka 单机环境搭建简记 https://www.linuxidc.com/Linux/2019-03/157651.htm

Kafka 的详细介绍:请点这里
Kafka 的下载地址:请点这里

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计3314字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中