
# 准备连接Kafka集群配置文件
 #### 准备集群认证用户信息
对于开启Kerberos认证的MRS集群，需提前准备具有相关组件操作权限的用户用于程序认证。
以下Kafka权限配置示例供参考，在实际业务场景中可根据业务需求灵活调整。
1. 登录FusionInsight Manager。
2. 选择"集群 \> 服务 \> Kafka \> 更多 \> 启用Ranger鉴权"，查看该参数是否置灰。 
   - 是，创建用户并在Ranger中赋予该用户相关操作权限：
     1. 选择"系统 \> 权限 \> 用户 \> 添加用户"，在新增用户界面创建一个机机用户，例如**developuser** 。
        "用户组"需加入"kafkaadmin"用户组。
        
     
     2. 使用Ranger管理员用户**rangeradmin**登录Ranger管理页面。
     
     3. 在首页中单击"KAFKA"区域的组件插件名称如"Kafka"。
     
     4. 单击"Policy Name"名称为"all - topic"操作列的![](https://support.huaweicloud.com/devg3-mrs/zh-cn_image_0000001547043800.png)。
     
     5. 在"Allow Conditions"区域新增策略允许条件，"Select User"列勾选[2.a]新建的用户名称，"Permissions"列勾选"Select/Deselect All"。
     
     6. 单击"Save"。
      
   
   - 否，创建用户并在Manager赋予用户相关操作权限：
     1. 选择"系统 \> 权限 \> 用户 \> 添加用户"，在新增用户界面，创建一个机机用户，例如**developuser**，"用户组"需加入"kafkaadmin"用户组。
     
     2. 单击"确定"。
      
   
   
   
   
3. 使用**admin** 用户登录FusionInsight Manager，选择"系统 \> 权限 \> 用户"，在用户名为**develop** **user**的操作列选择"更多 \> 下载认证凭据"下载认证凭据文件，保存后解压得到该用户的"user.keytab"文件与"krb5.conf"文件。
 
 #### 准备运行环境配置文件
应用程序开发或运行过程中，需通过集群相关配置文件信息连接MRS集群，配置文件通常包括集群组件信息文件以及用于安全认证的用户文件，可从已创建好的MRS集群中获取相关内容。
用于程序调测或运行的节点，需要与MRS集群内节点网络互通，同时配置hosts域名信息。
- 场景一：准备本地Windows开发环境调测程序所需配置文件。
  1. 登录FusionInsight Manager，选择"集群 \> 概览 \> 更多 \> 下载客户端"，"选择客户端类型"设置为"仅配置文件"，单击"确定"，等待客户端文件包生成后根据浏览器提示下载客户端到本地并解压。 例如，客户端配置文件压缩包为"FusionInsight_Cluster_1_Services_Client.tar"，解压后得到"FusionInsight_Cluster_1_Services_ClientConfig_ConfigFiles.tar"，继续解压该文件。
     
  
  2. 进入客户端配置文件解压路径的"Kafka\\config"，获取Kafka[表1]中相关配置文件。
      表1配置文件 
     | 配置文件                | 作用                   |
     |:---|:---|
     | client.properties   | Kafka的客户端的配置信息。      |
     | consumer.properties | Kafka的consumer端配置信息。 |
     | kafkaSecurityMode   | Kafka服务是否开启安全模式标记文件。 |
     | producer.properties | Kafka的producer端配置信息。 |
     | server.properties   | Kafka的服务端的配置信息。      |
        
     
  
  3. 复制解压目录下的"hosts"文件中的内容到本地hosts文件中。
     ![](https://support.huaweicloud.com/devg3-mrs/public_sys-resources/note_3.0-zh-cn.png)
     - 在应用开发过程中，如需在本地Windows系统中调测应用程序，需要确保本地节点能与"hosts"文件中所列出的各主机在网络上互通。
     
     - 如果当前节点与MRS集群所在网络平面不互通，可以通过绑定EIP的方式访问MRS集群，具体操作请参考[配置Windows通过EIP访问安全模式集群Kafka](https://support.huaweicloud.com/devg3-mrs/mrs_07_130038.html)。
     
     - Windows本地hosts文件存放路径举例："C:\\WINDOWS\\system32\\drivers\\etc\\hosts"。
       
   

- 场景二：准备Linux环境运行程序所需配置文件。
  1. 在节点中安装MRS集群客户端。 例如客户端安装目录为"/opt/client"。
     
  
  2. 获取配置文件：
     1. 登录FusionInsight Manager，选择"集群 \> 概览 \> 更多 \> 下载客户端"，"选择客户端类型"设置为"仅配置文件"，勾选"仅保存到如下路径"，单击"确定"，下载客户端配置文件至集群主OMS点。
     
     2. 以**root** 登录主OMS节点，进入客户端配置文件所在路径（默认为"/tmp/FusionInsight-Client/"），解压软件包后获取"Kafka/config"路径下的[表1]中相关配置文件。
        例如客户端软件包为"FusionInsight_Cluster_1_Services_Client.tar"，下载路径为主管理节点的"/tmp/FusionInsight-Client"：
        **cd /tmp/FusionInsight-Client**
        **tar -xvf FusionInsight_Cluster_1_Services_Client.tar**
        **tar -xvf FusionInsight_Cluster_1_Services_ClientConfig_ConfigFiles.tar**
        **cd FusionInsight_Cluster_1_Services_ClientConfig** **_ConfigFiles**
        
      
  
  3. 检查客户端节点网络连接。 在安装客户端过程中，系统会自动配置客户端节点"hosts"文件，建议检查"/etc/hosts"文件内是否包含集群内节点的主机名信息，如未包含，需要手动复制解压目录下的"hosts"文件中的内容到客户端所在节点的hosts文件中，确保本地机器能与集群各主机在网络上互通。
     
   
 
