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

配置Windows通过EIP访问集群Kafka

操作场景

该章节通过指导用户配置集群绑定EIP,并配置Kafka文件的方法,方便用户可以在本地对样例文件进行编译。

操作步骤

  1. 为集群的每个节点申请弹性公网IP,并将本地Windows的hosts文件添加所有节点的公网IP对应主机域名的组合(注意如果主机名中出现大写字母要改成小写)。

    1. 在虚拟私有云管理控制台,申请弹性公网IP(集群有几个节点就买几个),并分别单击MRS集群的节点名称,在节点的“弹性公网IP”页面绑定弹性公网IP。

      具体操作请参见“虚拟私有云 > 用户指南 > 弹性公网IP > 为弹性云服务器申请和绑定弹性公网IP”。

    2. 记录公网IP和私网IP的对应关系将hosts文件中的私网IP改为对应的公网IP。
    图1 配置hosts文件

  2. 将krb5.conf文件中的IP地址修改为对应IP的主机名称。
  3. 配置集群安全组规则。

    1. 在集群“概览”界面,选择“添加安全组规则 > 管理安全组规则”。
      图2 管理安全组规则
    2. 在“入方向规则”页签,选择“添加规则”,在“添加入方向规则”窗口配置Windows的IP和21007、21730TCP、21731TCP/UDP、21732TCP/UDP端口。
      图3 添加入方向规则

  4. 在Manager界面选择“集群 > 服务 > Kafka > 配置 > 全部配置”,搜索“kafka.config.expandor”,并添加参数名为“advertised.listeners”,值为“PLAINTEXT://:9092,SSL://:9093,TRACE://:21013”,修改配置保存后重启Kafka集群。

    如果当前集群为MRS 3.2.0-LTS.1,执行该步骤无法通过EIP访问Kafka时,可以参考如下操作进行处理:

    1. 登录到FusionInsight Manager页面,选择“集群 > 服务 > Kafka > 实例”,勾选所有Broker实例,选择“更多 > 停止实例”验证管理员密码后停止所有Broker实例。 (该操作对业务有影响,请在业务低峰期操作)
    2. root用户分别登录到Broker节点后台,修改“server.properties”配置。

      vi ${BIGDATA_HOME}/FusionInsight_HD_*/*_*_Broker/etc/server.properties

      将“host.name”修改为当前登录Broker节点的主机名称,将“listeners”及“advertised.listeners”参数值修改为“EXTERNAL_PLAINTEXT://{主机名称}:{port}”。

    3. 登录到FusionInsight Manager页面,选择“集群 > 服务 > Kafka > 实例”,勾选所有Broker实例,单击“启动实例”。
    4. 给MRS服务集群的Broker节点分别绑定EIP。
    5. 在Windows通过已配置的Broker节点EIP地址和端口连接到Kafka集群并调试代码。

  5. 运行样例代码前,修改样例代码中Kafka的连接串为hostname1:21007, hostname2:21007, hostname3:21007;修改代码中的域名;修改“用户自己申请的机机账号名称、keytab文件名称”。

    用户可登录FusionInsight Manager,选择“系统 > 权限 > 域和互信”,查看“本端域”参数,即为当前系统域名。