配置Windows通过EIP访问普通模式集群Kafka
操作场景
该章节通过指导用户配置集群绑定EIP,并配置Kafka文件的方法,方便用户可以在本地对样例文件进行编译。
操作步骤
- 为集群的每个节点申请弹性公网IP,并将本地Windows的hosts文件添加所有节点的公网IP对应主机域名的组合(注意如果主机名中出现大写字母要改成小写)。
- 在虚拟私有云管理控制台,申请弹性公网IP(集群有几个节点就买几个),并分别单击MRS集群的节点名称,在节点的“弹性公网IP”页面绑定弹性公网IP。
- 记录公网IP和私网IP的对应关系将hosts文件中的私网IP改为对应的公网IP。
图1 配置hosts文件
- 配置集群安全组规则。
- 在集群“概览”界面,选择“添加安全组规则 > 管理安全组规则”。
图2 管理安全组规则
- 在“入方向规则”页签,选择“添加规则”,在“添加入方向规则”窗口配置Windows的IP和9092端口。
图3 添加入方向规则
- 在集群“概览”界面,选择“添加安全组规则 > 管理安全组规则”。
- 在Manager界面选择“集群 > 服务 > Kafka > 配置 > 全部配置”,搜索“kafka.config.expandor”,并添加参数名为“advertised.listeners”,值为“PLAINTEXT://:9092,SSL://:9093,TRACE://:21013”,修改配置保存后重启Kafka集群。
如果当前集群为MRS 3.2.0-LTS.1,执行该步骤无法通过EIP访问Kafka时,可以参考如下操作进行处理:
- 登录到FusionInsight Manager页面,选择“集群 > 服务 > Kafka > 实例”,勾选所有Broker实例,选择“更多 > 停止实例”验证管理员密码后停止所有Broker实例。 (该操作对业务有影响,请在业务低峰期操作)
- 以root用户分别登录到Broker节点后台,修改“server.properties”配置。
vi ${BIGDATA_HOME}/FusionInsight_HD_*/*_*_Broker/etc/server.properties
将“host.name”修改为当前登录Broker节点的主机名称,将“listeners”及“advertised.listeners”参数值修改为“EXTERNAL_PLAINTEXT://{主机名称}:{port}”。
- 登录到FusionInsight Manager页面,选择“集群 > 服务 > Kafka > 实例”,勾选所有Broker实例,单击“启动实例”。
- 给MRS服务集群的Broker节点分别绑定EIP。
- 在Windows通过已配置的Broker节点EIP地址和端口连接到Kafka集群并调试代码。
- 运行样例代码前,修改样例代码中Kafka的连接串为hostname1:9092, hostname2:9092, hostname3:9092;修改代码中的域名。
用户可登录FusionInsight Manager,选择“系统 > 权限 > 域和互信”,查看“本端域”参数,即为当前系统域名。