快速入门
本节介绍如何快速创建 RadonDB Kafka 实例并访问 Kafka。
前提条件
-
在 KubeSphere 企业版平台加入一个企业空间和一个项目。
-
KubeSphere 企业版平台需要安装 RadonDB DMP 扩展组件。
操作步骤
创建 Kafka 实例
-
以 platform-admin 角色登录 KubeSphere 企业版 Web 控制台并进入数据库管理平台。
-
在左侧导航栏选择 Kafka。
-
在页面右侧选择新建 Kafka 实例。
-
在基本信息页签,设置 RadonDB Kafka 实例的基本信息和位置,然后点击下一步。
-
在应用设置页签,设置 Kafka 的参数,然后点击确定。
备注 |
---|
有关参数的具体解释,请参阅创建 Kafka 实例。 |
创建 Kafka 主题
-
以 platform-admin 角色登录 KubeSphere 企业版 Web 控制台并进入数据库管理平台。
-
在左侧导航栏选择 Kafka。
-
在 Kafka 实例列表中,点击一个实例名称打开其详情页面。
-
在页面右侧点击主题页签,然后点击创建。
-
在创建主题对话框,输入主题名称,如 demo-topic, 并设置分区数量和副本数量,点击确定。
创建 Kafka 用户
-
在 Kafka 实例列表中,点击一个实例名称打开其详情页面。
-
在页面右侧点击 Kafka 用户页签,然后点击创建。
-
在创建用户对话框,设置用户名,如 demo-user1,并配置以下两条规则:
规则 1: 允许“主题”名称为 demo-topic 的所有操作权限。
规则 2: 允许“组”名称为 test-consumer-group 的所有操作权限。
-
点击确定。用户创建完成后将显示在用户列表中。
访问 Kafka
RadonDB Kafka 支持三种认证类型:TLS、SCRAM-SHA-512 和无需认证。此处以 TLS 为例。关于其它认证类型的登录方式,请参阅访问 Kafka。
-
下载 Kafka 客户端二进制包。
-
进入 Kafka 二进制包所在目录,执行以下命令解压 Kafka 包:
tar -xzvf <package_name>
-
在 Kafka 实例列表中,点击一个实例名称打开其详情页面。
-
在页面左侧的传输密码区域,下载 CA 证书并保存密码。
-
在页面右侧点击 Kafka 用户页签,下载用户证书并保存密码。
-
在解压后的 Kafka 包中的 config/producer.properties 和 config/consumer.properties 文件末尾添加下面的内容。
#在文件末尾添加以下内容。 security.protocol=ssl ssl.truststore.location=<ca.p12> ssl.truststore.password=<truststore_password> ssl.truststore.type=pkcs12 ssl.keystore.location=<user.p12> ssl.keystore.password=<keystore_password> ssl.keystore.type=pkcs12 ssl.endpoint.identification.algorithm=
参数说明如下:
-
<ca.p12>:CA 证书的保存路径。
-
<truststore_password>:CA 证书的密码。
-
<user.p12>:用户证书的保存路径。
-
<keystore_password>:用户证书的密码。
-
-
执行以下命令使用 Kafka 客户端生产和消费消息。
生产消息
# bin/kafka-console-producer.sh --bootstrap-server 192.168.100.2:31522 --topic demo-topic --producer.config config/producer.properties >hello >radondb >kafka
消费消息
# bin/kafka-console-consumer.sh --bootstrap-server 192.168.100.2:31522 --topic demo-topic --consumer.config config/consumer.properties hello radondb kafka
其中,bootstrap-server,即命令中的 192.168.100.2:31522,需要修改为 Kafka 实例详情页左侧的访问地址,如下图所示。topic,即命令中的 demo-topic,需要修改为实际使用的主题名称。
备注 上图框中第一个读写地址是使用 Kubernetes 节点网络访问 Kafka 服务时使用的地址,如在 Kubernetes 节点上访问 Kafka,或 Kubernetes 节点同网段主机上访问 Kafka 服务。第二个读写地址是使用 Kubernetes 集群中 pod 访问 kafka 服务时使用的地址。