上云无忧 > 文档中心 > 百度智能云MapReduce开源组件介绍 - Kafka
百度智能云MapReduce开源组件介绍 - Kafka

文档简介:
分布式概述: Kafka是一个分布式,多分区,多副本的流处理消息中间件,具备高吞吐量、高可扩展性、可持久化等特性,广泛应用于实时数据传输、日志收集、实时监控数据聚合等实际应用场景中。BMR中的Kafka是基于开源社区的Kafka,提供一种可快速部署,用户独享的Kafka集群。
*此产品及展示信息均由百度智能云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

分布式概述

Kafka是一个分布式,多分区,多副本的流处理消息中间件,具备高吞吐量、高可扩展性、可持久化等特性,广泛应用于实时数据传输、日志收集、实时监控数据聚合等实际应用场景中。BMR中的Kafka是基于开源社区的Kafka,提供一种可快速部署,用户独享的Kafka集群。

创建集群

登录百度云控制台,选择“产品服务->MapReduce BMR”,点击“创建集群”,进入集群创建页。购置集群时勾选 Kafka 模板,然后选择需要的kafka版本进行创建,如下图所示:

使用简介

创建Topic

可以通过两种如下两种方式创建Topic:

  1. 通过Kafka-Manager创建Topic
  2. 通过kafka命令行创建Topic

方式一.通过Kafka-Manager创建Topic

  1. 登录控制台,选择“产品服务->MapReduce BMR”,点击已创建的集群的管理按钮,进入Kafka-Manager登录页面。

  2. 输入用户名密码,成功登录Kafka-Manager后,选择Topic->Create进入Topic创建页面

    输入Topic名称,分区数和副本数(建议副本数设置为3),点击Create,就创建Topic完成了。

方式二.通过kafka命令行创建Topic

  1. 通过SSH连接到集群或使用OpenVPN访问集群方式登录集群主机。
  2. 进入kafka安装bin目录,通过kafka-topics.sh进行Topic的创建和管理。

生产和消费消息

BMR中的托管Kafka根据客户端所在网络场景提供了两种连接方式:

  1. 内网访问模式

    客户端与Kafka集群网络在同一个VPC内,使用PlanText协议,访问端口为9093,地址为Core节点的内网IP:9093拼接,例如:

    192.168.x.xx1:9093,192.168.x.xx2:9093,192.168.x.xx3:9093

    内网Kafka客户端直接使用上面的内网地址进行消息发送和消费即可。

  2. 公网访问模式

    客户端是通过公网访问Kafka集群,是通过EIP+SSL方式进行访问。操作步骤如下:

    (1).用户现在EIP侧建立EIP(参考创建EIP)后,在Core节点点击绑定公网来绑定EIP,所有的Core节点均需要绑定EIP

    (2).在集群管理页面,点击下载客户端证书SSL证书文件:

    Kafka访问地址为公网IP:9094拼接,例如:

    106.xxx.xxx.1x1:9094,106.xxx.xxx.1x2:9094,106.xxx.xxx.1x3:9094

    (3).解压bmr-kafka-ssl-key.zip文件,其中

    client.keystore.jks, client.truststore.jks, client.properties 用于kafka的java客户端ssl认证文件

    ca.pem, client.key, client.pem 用于kafka的非java(比如go, python)客户端ssl认证文件

    (4).java客户端使用ssl证书进行发送和接受消息

    将client.keystore.jks, client.truststore.jks, client.properties 放置正确目录下,并且设置bootstrap.servers地址为三台core节点的公网IP:9094连接串,例如180.76.38.89:9094,180.76.38.8:9094,180.76.38.41:9094

    启用ssl配置,如下图所示:

    (5).go客户端使用ssl证书进行发送和接受消息

    将ca.pem, client.key, client.pem拷贝到正确的配置目录下,设置 tls.Config 中 InsecureSkipVerify: true

    (6).python客户端使用ssl证书进行发送和接受消息

    将ca.pem, client.key, client.pem拷贝到正确的配置目录下,设置 ssl_check_hostname 为false

相似文档
  • 1.什么是Alluxio? Alluxio 是世界上第一个面向基于云的数据分析和人工智能的开源的数据编排技术。 它为数据驱动型应用和存储系统构建了桥梁, 将数据从存 储层移动到距离数据驱动型应用更近的位置从而能够更容易被访问。
  • 1.什么是Kudu? Kudu是一个用于结构化数据的开源存储引擎, 它支持低延迟的随机访问, 以及高效的分析存取模式. Kudu使用水平partition和副本技术来将数据分布式化, 每个partition的副本用Raft协议同步, 保证了低平均恢复时间和低长尾延迟. Kudu围绕着Hadoop生态圈设计, 支持多种存取方式如Apache Impala, Apache Spark和MapReduce。
  • 什么是Ooize? Oozie是一个用于管理Apache Hadoop作业的工作流调度程序系统。 Oozie Workflow job是由多个Action组成的有向无环图(DAG)。 Oozie Coordinator job是根据时间(频率)和数据可用性触发的可重复执行的Oozie Workflow job(简单讲就是根据时间或数据条件,规划workflow的执行)。
  • BMR提供两种创建集群的方法:创建自定义集群、使用系统预定义模板创建集群。 BMR将为用户保留一年的集群历史记录,包含正在运行中、已释放、已终止等全部状态的集群,超过一年的历史集群记录不做保留。
  • 对已创建的集群,可在“产品服务->MapReduce-集群列表”页查看所有集群。对已创建的集群您可做如下操作: 查看集群详情、 修改集群名称、 续费、 计费变更、 复制集群、 变更集群节点数量、 保存集群为模板、 释放集群、 删除已释放集群。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部