更新时间:2024-10-08 GMT+08:00

创建Kafka Topic

操作场景

用户可以根据业务需要,使用集群客户端或KafkaUI创建Kafka的主题。启用Kerberos认证的集群,需要拥有管理Kafka主题的权限。

前提条件

已安装客户端。

使用Kafka客户端创建Kafka Topic

  1. 进入ZooKeeper实例页面:

    登录FusionInsight Manager,具体请参见访问集群Manager。然后选择“集群 > 服务 > ZooKeeper > 实例”。

  2. 查看ZooKeeper角色实例的IP地址。

    记录ZooKeeper角色实例其中任意一个的IP地址即可。

  3. 根据业务情况,准备好客户端,参考使用MRS客户端章节,登录安装客户端的节点。
  4. 执行以下命令,切换到客户端目录,例如“/opt/client/Kafka/kafka/bin”。

    cd /opt/client/Kafka/kafka/bin

  5. 执行以下命令,配置环境变量。

    source /opt/client/bigdata_env

  6. 执行以下命令,进行用户认证。(普通模式跳过此步骤)

    kinit 组件业务用户

  7. 使用kafka-topics.sh创建Kafka主题。

    ./kafka-topics.sh --create --topic 主题名称 --partitions 主题占用的分区数 --replication-factor 主题的备份数 --zookeeper ZooKeeper的任意一个节点的业务IP:clientPort/kafka

    ./kafka-topics.sh --create --topic 主题名称 --partitions 主题占用的分区数 --replication-factor 主题的备份数 --bootstrap-server Kafka集群IP:21007 --command-config ../config/client.properties

使用KafkaUI创建Kafka Topic

  1. 进入KafkaUI界面。

    1. 使用具有KafkaUI页面访问权限的用户登录FusionInsight Manager,选择“集群 > 服务 > Kafka”。

      如需在页面上进行相关操作,例如创建Topic,需同时授予用户相关权限,请参考Kafka用户权限说明

    2. 在“KafkaManager WebUI”右侧,单击URL链接,访问KafkaUI的页面。

  2. 单击“Create Topic”进入创建Topic页面。在弹出的页面中参考表1填写信息,单击“Create”,完成Topic创建。

    表1 创建Topic信息

    参数名称

    参数描述

    备注

    Topic

    Topic的名称,只能包含英文字母、数字、中划线和下划线,且不能多于249个字符。

    例如:kafka_ui

    Partitions

    Topic的分区数量,取值范围大于等于1,默认为3。

    -

    Replication Factor

    Topic的副本因子,取值范围为1~N,N为当前集群Broker个数,默认为2。

    -

    • 用户可根据业务需要单击“Advanced Options”配置topic相关高级参数,通常保持默认即可。
    • 安全模式集群下,执行Create Topic操作的用户需属于“kafkaadmin”用户组,否则将会由于鉴权失败导致无法创建。
    • 非安全模式集群下,执行Create Topic操作不作鉴权,即任意用户都可执行Create Topic操作。