
# 对接互信集群的HDFS
#### 操作场景
在跨集群数据迁移时，需要实现源集群与目标集群HDFS的双向访问能力，例如使用Distcp工具进行数据迁移时，需确保源集群和目标集群的网络互通。
传统方案需通过手动修改客户端hdfs-site.xml配置文件来实现，这种操作模式存在配置易出错、维护成本高、版本兼容性难以保障等问题。通过本章节提供的方案，可以快速配置源集群和目标集群的互相访问，从而在保障数据互通安全性的前提下，提升跨集群数据迁移效率，同时降低因配置错误导致的业务中断风险。
#### 限制与约束
该章节仅适用于MRS 3.6.0-LTS.1及之后版本。
当前集群访问互信集群的HDFS时，使用的业务用户的鉴权在互信的HDFS集群，需要当前集群的用户（同名）确保在互信集群存在权限。
#### 前提条件
- 当前集群与目标集群需要网络互通。
- 当前集群与目标集群的认证模式，及与互信的关系如下：
  
  | 当前集群模式                | 被访问集群模式               | 是否需要进行互信 |
  |:---|:---|:---|
  | 集群已启用Kerberos认证（安全模式） | 集群已启用Kerberos认证（安全模式） | 两集群需进行互信 |
  | 集群已启用Kerberos认证（安全模式） | 集群未启用Kerberos认证（普通模式） | 无需进行互信操作 |
  | 集群未启用Kerberos认证（普通模式） | 集群未启用Kerberos认证（普通模式） | 无需进行互信操作 |
  | 集群未启用Kerberos认证（普通模式） | 集群已启用Kerberos认证（安全模式） | 无法访问     |
     
  
 
#### 操作步骤
1. 登录待配置互信集群的Manager页面，选择"集群 \> 服务 \> HDFS \> 配置 \> 全部配置"。
2. 在左侧导航栏选择"跨集群对接"，修改以下参数，修改完成后单击"保存"按钮保存配置。 
   表1跨集群对接参数 
   | 参数名称                     | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | 取值样例             |
   |:---|:---|:---|
   | dfs.expend.ns            | 被访问集群的NameService在本集群的名称。 - 可以在Manager中选择"集群 \> 服务 \> HDFS \> 管理NameService"，查看NameService名称获取。  - 参数取值可以与被访问集群不一致，但是不能和本集群已经存在的NameService名称一致。                                                                                                                                                                                                                          | hacluster        |
   | dfs.namenode.rpc-address | 被访问NameService的IP和端口信息。格式为"IP地址:端口"。 - IP地址：登录Manager，选择"集群 \> 服务 \> HDFS \> 实例"，查看并记录主NameNode实例的业务IP地址。  - 端口号：登录Manager，选择"集群 \> 服务 \> HDFS \> 配置 \> 全部配置"，搜索并记录"dfs.namenode.rpc.port"参数值。 "dfs.namenode.rpc.port"表示NameNode处理所有客户端请求的RPC端口号，默认值为"25000"。    | *10.x.x.x:25000* |
      
   
   
3. 如果当前为数据迁移场景则无需重启，直接执行[4]。如果当前不为数据迁移场景，则需按照以下步骤重启HDFS及上层组件。
   
   选择"集群 \> 服务 \> HDFS \> 概览"，选择"更多 \> 重启服务"，重启HDFS以及上层组件。
   
   
4. 检查互信的HDFS是否配置了透明加密。
   
   - 是，执行[5]。
   
   - 否，执行[7]。
   
   
   
   
5. 依次登录当前集群的每个节点，在"/etc/hosts"中添加互信集群的RangerKMS的IP和主机名映射。
6. 登录当前集群的Manager页面，选择"集群 \> 服务 \> KrbServer \> 配置 \> 全部配置"，在配置项extend_domain_realm中新增互信集群RangerKMS所在主机名和互信集群域名的映射。 
   ![](https://support.huaweicloud.com/cmpntguide-lts-mrs/zh-cn_image_0000002707565403.png "点击放大")
   
   
7. 更新客户端配置。
   
   更新客户端的具体操作，请参考[服务端配置过期后更新MRS集群客户端](https://support.huaweicloud.com/usermanual-mrs/mrs_01_0090.html)。
   
   
 
