
# 配置DLI队列与内网数据源的网络连通
#### 背景信息
DLI执行作业时如需访问外部数据源数据，如：DLI连接MRS、RDS、CSS、Kafka、DWS时，需要打通DLI和外部数据源之间的网络。DLI增强型跨源连接，底层采用对等连接的方式打通与目的数据源的VPC网络，通过点对点的方式实现数据互通。
创建增强型跨源连接网络不通的问题，可以根据本指导的整体流程和步骤进行排查验证。
#### 整体流程
图1增强型跨源连接配置流程   
![](https://support.huaweicloud.com/bestpractice-dli/zh-cn_image_0000001366428042.png "点击放大")
#### 前提条件
- 已创建DLI队列。创建队列详见[创建DLI队列](https://support.huaweicloud.com/usermanual-dli/dli_01_0363.html)操作指导。
  ![](https://support.huaweicloud.com/bestpractice-dli/public_sys-resources/caution_3.0-zh-cn.png)
  队列的计费类型必须为："包年/包月"，"按需计费"（按需计费需勾选"专属资源模式"。）
  仅"包年/包月"资源、"专属资源模式"的"按需计费"资源才能创建增强型跨源连接。
  
- 已创建对应的外部数据源集群。具体对接的外部数据源根据业务自行选择。
  表1创建各外部数据源参考 
  | 服务名       | 参考文档                                                                                       |
  |:---|:---|
  | RDS       | [购买RDS for MySQL实例](https://support.huaweicloud.com/usermanual-rds-mysql/rds_10_0028.html) |
  | DWS       | [创建DWS集群](https://support.huaweicloud.com/mgtg-dws/dws_01_0019.html)                       |
  | DMS Kafka | [创建Kafka实例](https://support.huaweicloud.com/usermanual-kafka/kafka-ug-180604013.html)      |
  | CSS       | [创建CSS集群](https://support.huaweicloud.com/usermanual-css/css_01_0011.html)                 |
  | MRS       | [创建MRS集群](https://support.huaweicloud.com/usermanual-mrs/mrs_01_0513.html)                 |
     
  
![](https://support.huaweicloud.com/bestpractice-dli/public_sys-resources/caution_3.0-zh-cn.png)
- 绑定跨源的**DLI队列网段和其他数据源子网网段不能重合**。
- 系统default队列不支持创建跨源连接。
 
 #### 步骤1：获取外部数据源的内网IP、端口和安全组
表2各数据源信息获取 
| 数据源       | 参数获取                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|
| DMS Kafka | 1. 在Kafka管理控制台，选择"Kafka专享版"，单击对应的Kafka名称，进入到Kafka的基本信息页面。  2. 在"连接信息"中获取该Kafka的"内网连接地址"，在"网络"中获取该实例的"虚拟私有云"和"子网"信息。  3. Kafka的基本信息页面，"网络 \> 安全组"参数下获取Kafka的安全组。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| RDS       | 在RDS控制台"实例管理"页面，单击对应实例名称，查看"连接信息"，获取"内网地址"、"虚拟私有云"、"子网"、"数据库端口"和"安全组"信息。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| CSS       | 1. 在CSS管理控制台，选择"Elasticsearch \> 集群管理"，单击已创建的CSS集群名称，进入到CSS的基本信息页面。  2. 在"基本信息"中获取CSS的"内网访问地址"、"虚拟私有云"、"子网"和"安全组"信息，方便后续操作步骤使用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| DWS       | 1. 在DWS管理控制台，选择"集群管理"，单击已创建的DWS集群名称，进入到DWS的基本信息页面。  2. 在"基本信息"的"数据库属性"中获取该实例的"内网IP"、"端口"，在"网络"中获取"虚拟私有云"、"子网"和"安全组"信息，方便后续操作步骤使用。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| MRS HBase | 以MRS 3.x版本集群为例。 1. 登录MRS管理控制台，单击"集群列表 \> 现有集群"，单击对应的集群名称，进入到集群概览页面。  2. 在集群概览页面"基本信息"中获取"虚拟私有云"、"子网"和"安全组"。  3. 因为在创建连接MRS HBase的作业时，需要用到MRS集群的ZooKeeper实例和端口，则还需要获取MRS集群主机节点信息。 1. 参考[访问MRS Manager](https://support.huaweicloud.com/cmpntguide-mrs/mrs_01_2124.html)登录MRS Manager，在MRS Manager上，选择"集群 \> *待操作的集群名称* \> 服务 \> ZooKeeper \> 实例"，根据"主机名称"和"业务IP"获取ZooKeeper的主机信息。  2. 在MRS Manager上，选择"集群 \> 待操作的集群名称 \> 服务 \> ZooKeeper \> 配置 \> 全部配置"，搜索参数"clientPort"，获取"clientPort"的参数值即为ZooKeeper的端口。  3. 使用root用户ssh登录任意一个MRS主机节点。具体请参考[登录MRS集群节点](https://support.huaweicloud.com/usermanual-mrs/mrs_01_0083.html)。  4. 执行以下命令获取MRS对应主机节点的hosts信息，复制保存。 **cat /etc/hosts** 例如，查询结果参考如下，将内容复制保存，以备后续步骤使用。 ![](https://support.huaweicloud.com/bestpractice-dli/zh-cn_image_0000001271000410.png "点击放大")      |
   
 #### 步骤2：获取DLI队列网段
在DLI管理控制台，单击"资源管理 \> 队列管理"，选择运行作业的队列，单击队列名称旁的![](https://support.huaweicloud.com/bestpractice-dli/zh-cn_image_0000001270680554.png)按钮，获取队列的网段信息。
#### 步骤3：外部数据源的安全组添加放通DLI队列网段的规则
1. 登录VPC控制台。
2. 在左侧导航树选择"访问控制 \> 安全组"。
3. 单击外部数据源所属的安全组名称，进入安全组详情界面。 您可以在对应数据源的管理控制台，参考[步骤1：获取外部数据源的内网IP、端口和安全组]获取对应数据源的安全组名称。
   
4. 在"入方向规则"页签中添加放通队列网段的规则。如[图2]所示。
   详细的入方向规则参数说明请参考[表3]。
   图2添加入方向规则   
   ![](https://support.huaweicloud.com/bestpractice-dli/zh-cn_image_0000001490860549.png "点击放大")
    表3入方向规则参数说明 
   | 参数   | 说明                                                                                                                                                                                                                                           | 取值样例                                                                                        |
   |:---|:---|:---|
   | 优先级  | 安全组规则优先级。 优先级可选范围为1-100，默认值为1，即最高优先级。优先级数字越小，规则优先级级别越高。                                                                                                                                                        | 1                                                                                           |
   | 策略   | 安全组规则策略。                                                                                                                                                                                                                                     | 允许                                                                                          |
   | 协议端口 | - 网络协议。目前支持"All"、"TCP"、"UDP"、"ICMP"和"GRE"等协议。  - 端口：允许远端地址访问指定端口，取值范围为：1～65535。   | 本例中选择TCP协议，端口值不填或者填写为[步骤1：获取外部数据源的内网IP、端口和安全组]获取的数据源的端口。 |
   | 类型   | IP地址类型。                                                                                                                                                                                                                                      | IPv4                                                                                        |
   | 源地址  | 源地址用于放通来自IP地址或另一安全组内的实例的访问。                                                                                                                                                                                                                  | 本例填写[步骤2：获取DLI队列网段]获取的队列网段。                            |
   | 描述   | 安全组规则的描述信息，非必填项。                                                                                                                                                                                                                             | _                                                                                           |
      
   
 
#### 步骤4：创建增强型跨源连接
1. 登录DLI管理控制台，在左侧导航栏单击"跨源管理"，在跨源管理界面，单击"增强型跨源"，单击"创建"。
2. 在增强型跨源创建界面，配置具体的跨源连接参数。具体参考如下。
   - 连接名称：设置具体的增强型跨源名称。
   
   - 弹性资源池：选择DLI的队列。（未添加至资源池的队列，请直接选择队列名称。）
   
   - 虚拟私有云：选择[步骤1：获取外部数据源的内网IP、端口和安全组]获取的外部数据源的虚拟私有云。
   
   - 子网：选择[步骤1：获取外部数据源的内网IP、端口和安全组]获取的外部数据源的子网。
   
   - 其他参数可以根据需要选择配置。
    
3. 参数配置完成后，单击"确定"完成增强型跨源配置。单击创建的跨源连接名称，查看跨源连接的连接状态，等待连接状态为："已激活"后可以进行后续步骤。
4. 如果是连接MRS HBase，则还需要添加MRS的主机节点信息，具体步骤如下：
   1. 在"跨源管理 \> 增强型跨源"中，在已创建的增强型跨源连接的"操作"列，单击"更多 \> 修改主机信息"。
   
   2. 在"主机信息"参数中，将[步骤1：获取外部数据源的内网IP、端口和安全组]中获取到的MRS HBase主机节点信息复制追加进去。
      图3修改主机信息   
      ![](https://support.huaweicloud.com/bestpractice-dli/zh-cn_image_0000001321200493.png "点击放大") 
   
   3. 单击"确定"完成主机信息添加。
    
 
#### 步骤5：测试网络连通性
1. 单击"队列管理"，选择操作的队列，在操作列，单击"更多 \> 测试地址连通性"。
2. 在"测试连通性"界面，根据[步骤1：获取外部数据源的内网IP、端口和安全组]中获取的数据源的IP和端口，地址栏输入"数据源内网IP:数据源端口"，单击"测试"测试DLI到外部数据源网络是否可达。
   ![](https://support.huaweicloud.com/bestpractice-dli/public_sys-resources/note_3.0-zh-cn.png)
   MRS HBase在测试网络连通性的时候，使用：**ZooKeeperIP地址** :**ZooKeeper端口，或者，** **ZooKeeper的主机信息** :**ZooKeeper端口**。
   
 
