运行Kafka作业
用户可将自己开发的程序提交到MRS中,执行程序并获取结果。本章节教您在Kafka主题中产生和消费消息。
暂不支持通过界面提交Kafka作业,请通过后台功能来提交作业。
通过后台提交作业
先查询ZooKeeper和Kafka的实例地址,再运行Kafka作业。
查询实例地址(3.x版本)
- 登录MRS管理控制台。
- 选择“集群列表 > 现有集群”,选中一个运行中的集群并单击集群名称,进入集群信息页面。
- 请参考访问FusionInsight Manager(MRS 3.x及之后版本),跳转至FusionInsight Manager页面。然后选择“服务 > ZooKeeper > 实例”,查看ZooKeeper角色实例的IP地址。记录ZooKeeper角色实例中任意一个的IP地址即可。
- 选择“服务 > Kafka > 实例”,查看Kafka角色实例的IP地址。记录Kafka角色实例中任意一个的IP地址即可。
查询实例地址(3.x之前版本)
- 登录MRS管理控制台。
- 选择“集群列表 > 现有集群”,选中一个运行中的集群并单击集群名称,进入集群信息页面。
- 在MRS集群详情页面,选择“组件管理 > ZooKeeper > 实例”,查看ZooKeeper角色实例的IP地址。记录ZooKeeper角色实例中任意一个的IP地址即可。
- 选择“组件管理 > Kafka > 实例”,查看Kafka角色实例的IP地址。记录Kafka角色实例中任意一个的IP地址即可。
运行Kafka作业
MRS 3.x及之后版本客户端默认安装路径为“/opt/Bigdata/client”,MRS 3.x之前版本为“/opt/client”。具体以实际为准。
- 在集群信息页面的“节点管理”页签中单击Master2节点名称,进入弹性云服务器管理控制台。
- 单击页面右上角的“远程登录”。
- 根据界面提示,输入Master节点的用户名和密码,用户名、密码分别为root和创建集群时设置的密码。
- 执行如下命令初始化环境变量。
source /opt/Bigdata/client/bigdata_env
- 如果当前集群已开启Kerberos认证,执行以下命令认证当前用户。如果当前集群未开启Kerberos认证,则无需执行该步骤。
kinit MRS集群用户
例如, kinit admin
- 执行如下命令,创建kafka topic。
kafka-topics.sh --create --zookeeper <ZooKeeper角色实例IP:2181/kafka> --partitions 2 --replication-factor 2 --topic <Topic名称>
- 在topic test中产生消息。
首先执行命令kafka-console-producer.sh --broker-list <Kafka角色实例IP:9092> --topic <Topic名称> --producer.config /opt/Bigdata/client/Kafka/kafka/config/producer.properties。
然后输入指定的内容作为生产者产生的消息,输入完成后按回车发送消息。如果需要结束产生消息,使用“Ctrl + C”退出任务。
- 消费topic test中的消息。
kafka-console-consumer.sh --topic <Topic名称> --bootstrap-server <Kafka角色实例IP:9092> --consumer.config /opt/Bigdata/client/Kafka/kafka/config/consumer.properties
如果集群开启Kerberos认证,则执行如上两个命令时请修改端口号9092为21007,详见开源组件端口列表。