TOC

Confluent 社区版安装和使用

Confluent 是一家将 Apache Kafka 商业化的基础设施软件公司。
其核心产品 Confluent Platform 是一个全面的流计算平台,能够让用户轻松地访问、存储和管理实时数据流。
Confluent 还提供 Confluent Cloud,这是其完全托管的原生云产品,可在主流云服务商(如 AWS、GCP、Microsoft Azure)上使用。
通过这些产品,Confluent 帮助企业实时处理和集成数据,构建现代的事件驱动型应用程序,成为企业数据的“中枢神经系统”。

发展历史

  • 2011 年:Jay Kreps、Neha Narkhede 和饶军在 LinkedIn 担任工程师期间创建了 Apache Kafka。
  • 2014 年:他们围绕 Apache Kafka 成立了 Confluent 公司,最初名为 InfiniteM,同年改名为 Confluent。
  • 2017 年底:推出 Confluent Platform 的企业级自我管理软件产品的同时,推出了 Confluent Cloud。
  • 2019 年:进行 D 轮融资,融资金额达 1.25 亿美元,公司总估值高达 25 亿美元。
  • 2021 年:在纳斯达克上市,股票代码为“CFLT”,融资 8.28 亿美元。

Confluent 社区版

Confluent 平台的商业版和社区版有以下区别:

  • 社区版:包含 Connectors、Rest Proxy、KSQL、Schema Registry 等基础服务。提供基本的 Kafka 连接功能,可连接常见的数据来源和数据存储;支持通过 REST 接口与 Kafka 交互,方便非 Java 等语言访问;能用类似 SQL 的语法对 Kafka 流数据进行处理和分析;能管理和验证数据模式,确保数据一致性。
  • 商业版:在社区版基础上,增加了控制面板、负载均衡、跨中心数据备份、安全防护等高级特性。有可视化的控制面板,方便管理员全面监控和管理 Kafka 集群;可实现负载均衡,提高集群性能和稳定性;支持跨数据中心的数据备份,保障数据的高可用性;提供更高级的安全防护功能,如加密、认证、授权等。

技术支持

  • 社区版:依靠社区力量提供支持,用户可在社区论坛、问答平台等交流,获取开源社区的帮助和资源。
  • 商业版:Confluent 公司提供专业的技术支持团队,为企业用户提供及时、高效的技术支持,包括故障排除、性能优化等服务,还可根据企业需求提供定制化的解决方案。

适用场景

  • 社区版:适合学习、实验和小规模生产环境,数据量小、功能需求不复杂、对技术支持依赖度低的用户和团队。如开发者学习 Kafka 技术、小型企业构建简单的实时数据处理系统。
  • 商业版:适用于对数据处理有高要求的企业级场景,如金融、电信等行业的大规模数据处理、关键业务系统的数据集成和流处理,需要高可靠性、高安全性和专业技术支持的场景。

许可与成本

  • 社区版:永久免费使用,可自由下载、安装和部署。
  • 商业版:面向企业收费,根据使用的功能模块、集群规模、数据量等因素定价。

与 Kafka 的关系

Confluent 社区版是 Apache Kafka 的一个专业发行版,它增加了许多额外的功能和 API。

  • 技术基础:Confluent 以 Apache Kafka 为核心和技术基础进行开发。
    Apache Kafka 是一个开源的分布式流处理平台,提供了高吞吐量、低延迟的消息传递和流处理能力。
    Confluent 在 Kafka 的基础上进行了功能扩展和优化。
  • 功能扩展:Confluent Kafka 可以看作是 Kafka 的一个专业发行版,它增加了许多额外的功能和 API。
    比如 Schema Registry 用于管理数据模式,Rest Proxy 方便与非 Kafka 支持的语言进行交互,还有预构建的 Kafka 连接器和 KSQLDB 等。
  • 商业支持:Confluent 公司为 Kafka 提供了商业支持和服务,使企业能够更方便地在生产环境中使用 Kafka。
    Confluent 通过提供培训、技术支持、咨询等服务,帮助企业解决在使用 Kafka 过程中遇到的问题,降低企业的使用成本和风险。

安装

1. 准备工作

确保你的系统已经安装了 Java(Kafka 依赖 Java 运行环境),并且具备基本的网络连接和权限。

# 检查是否安装了Java
java -version

# 如果未安装Java,可使用以下命令安装OpenJDK 11
sudo apt update
sudo apt install openjdk-11-jdk -y

2. 下载 Confluent 社区版

访问 Confluent 官方下载页面(https://www.confluent.io/download/ ),获取社区版的下载链接。也可以使用以下命令直接下载最新版本:

wget https://packages.confluent.io/archive/7.5/confluent-community-7.5.0.tar.gz

3. 解压文件

# 解压下载的文件
tar -xzf confluent-community-7.5.0.tar.gz

# 进入解压后的目录
cd confluent-7.5.0

4. 配置环境变量(可选但推荐)

为了方便在任意目录下使用 Confluent 命令,你可以将 Confluent 的bin目录添加到系统的PATH环境变量中。

# 编辑~/.bashrc文件
nano ~/.bashrc

# 在文件末尾添加以下内容
export PATH=$PATH:/path/to/confluent-7.5.0/bin

# 使配置生效
source ~/.bashrc

5. 启动 Confluent 服务

Confluent 依赖多个组件,如 Zookeeper、Kafka、Schema Registry 等,你可以使用confluent local命令来管理这些服务。

# 启动所有Confluent服务
confluent local services start

6. 验证安装

可以通过创建一个简单的 Kafka 主题和发送消息来验证 Confluent 是否安装成功。

# 创建一个名为test_topic的Kafka主题
kafka-topics --create --topic test_topic --bootstrap-server localhost:9092

# 启动一个生产者,向test_topic主题发送消息
kafka-console-producer --topic test_topic --bootstrap-server localhost:9092

# 在另一个终端窗口中,启动一个消费者,接收test_topic主题的消息
kafka-console-consumer --topic test_topic --from-beginning --bootstrap-server localhost:9092

7. 停止 Confluent 服务

当你不需要使用 Confluent 服务时,可以使用以下命令停止所有服务:

confluent local services stop

通过以上步骤,你就可以在 Ubuntu 系统上成功安装并使用 Confluent 社区版了。

如果你有魔法,你可以看到一个评论框~