
# 配置LakeFormation数据连接前准备
#### 配置LakeFormation实例
1. 登录[LakeFormation管理控制台](https://console.huaweicloud.com/lake-formation/)。
2. 单击页面右上角"购买实例"，参考[创建LakeFormation实例](https://support.huaweicloud.com/usermanual-lakeformation/lakeformation_03_00007.html)创建LakeFormation实例。
3. 创建名称为"hive"的Catalog、名称为"default"的数据库，如果实例中已存在则请跳过该步骤。详细操作可参考[创建LakeFormation元数据](https://support.huaweicloud.com/usermanual-lakeformation/lakeformation_03_00042.html)。
   
   MRS对接LakeFormation仅支持对接LakeFormation实例的数据目录名称为"hive"的Catalog。
   1. 确认左上角实例是新创建的LakeFormation实例名称后，进入"元数据 \> 数据目录"页面。（如果当前实例已包含名称为"hive"的Catalog，则跳过Catalog的创建操作。）
   
   2. 在Catalog页面单击"创建"，配置以下参数后，单击"提交"。
      - Catalog名称：hive**（固定名称，不可自定义）**
      
      - 选择位置：单击"![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001879421752.png)"选择Catalog对应的OBS存储路径，例如选择"obs://lakeformation-test/hive"（需提前创建），单击"确定"。
      
      - 其他参数根据实际需要进行配置。
      
      
      ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000002635732122.png "点击放大")
      
   
   3. 单击新创建的"hive"Catalog名称，在"数据库"页签单击"创建"，配置以下信息并单击"提交"。（如果当前已包含名称为"default"的数据库，则跳过数据库的创建操作。）
      - 库名称：default**（固定名称，不可自定义）**
      
      - 所属Catalog：hive
      
      - 选择位置：单击"![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001925500613.png)"选择hive Catalog存储路径下的位置，例如"obs://lakeformation-test/hive/default"（需提前创建），单击"确定"。
      
      - 其他参数根据实际需要进行配置。
      
      
      ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000002635892454.png "点击放大")
      
   
   
   
   
4. 在"数据权限 \> 数据授权"页面，可根据业务需求对hive Catalog进行基于用户、用户组的授权。详细操作请参考[配置LakeFormation元数据权限](https://support.huaweicloud.com/usermanual-lakeformation/lakeformation_03_00014.html)章节。
5. 选择"网络管理 \> 接入管理 \> 创建客户端"，创建LakeFormation实例接入管理客户端。其中"虚拟私有云"和"所属子网"需要与待对接的MRS集群保持一致。详细操作请参考[创建LakeFormation接入客户端](https://support.huaweicloud.com/usermanual-lakeformation/lakeformation_03_00024.html)。
   
   ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000002635733024.png "点击放大")
   MRS集群的VPC子网信息可通过登录MRS管理控制台，在MRS集群的概览页面中获取。
   客户端创建完成后，在客户端详情信息中获取对应客户端的"接入IP"信息并记录。
   
   
 
 #### 创建对接LakeFormation权限的委托
1. 登录[IAM管理控制台](https://console.huaweicloud.com/iam)。
2. 在左侧导航栏选择"委托"，单击右上角的"创建委托"，配置相关参数，单击"下一步"。 
   参数配置如下：
   - 委托名称：例如"visit_lakeformation_agency"
   
   - 委托类型：选择"普通账号"
   
   - 委托的账号：输入被委托的华为云账号名称
   
   - 持续时间：根据实际情况自定义
     图1创建委托   
     ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000002368493534.png "点击放大") 
   
   
   
   
3. 在选择策略界面右上角单击"新建策略"，配置如下信息，单击"下一步"。 
   - 策略名称：例如"dev_visit_lakeformation"
   
   - 策略配置方式："可视化视图"或"JSON视图"
   
   - 策略内容： 策略中必须包含"lakeformation:policy:export"和"lakeformation:role:describe"。其他参数按照实际需求进行配置。
     - 可视化视图："云服务"选择"湖仓构建"；"操作"中选择所需操作权限。其他参数按照实际需求进行配置。 ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000002402133301.png "点击放大")
       
     
     - JSON视图，例如配置策略内容如下：
       ```
       {
           "Version": "1.1",
           "Statement": [
               {
                   "Effect": "Allow",
                   "Action": [
                       "lakeformation:table:create",
                       "lakeformation:database:alter",
                       "lakeformation:table:alter",
                       "lakeformation:database:drop",
                       "lakeformation:database:create",
                       "lakeformation:role:describe",
                       "lakeformation:policy:delegate",
                       "lakeformation:policy:export",
                       "lakeformation:function:alter",
                       "lakeformation:function:describe",
                       "lakeformation:table:drop",
                       "lakeformation:catalog:describe",
                       "lakeformation:table:describe",
                       "lakeformation:function:drop",
                       "lakeformation:database:describe",
                       "lakeformation:function:create",
                       "lakeformation:transaction:operate",
                       "lakeformation:policy:describe",
                       "lakeformation:connection:describe"                
                   ]
               }
           ]
       }
       ```
       
      
   
   
   
   
4. 勾选新建的策略名称例如"dev_visit_lakeformation"，单击"下一步"。
5. "设置最小授权范围"根据实际情况选择授权的资源范围，单击"确定"，创建委托。
6. 在"委托"页面，将鼠标移动到新创建的委托名称上，获取具备访问LakeFormation权限的委托ID。
   
   图2查看委托ID   
   ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000002402173149.png "点击放大")
   
   
7. 登录华为云管理控制台，在左上角单击"![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000002416145369.png)"，选择"大数据 \> 湖仓构建 LakeFormation"进入LakeFormation控制台。选择进入到创建的LakeFormation实例。
8. 为LakeFormation委托的委托用户配置MRS集群对接所需的最小权限。 
   单击"数据授权"，添加DATABASE hive.default的DESCRIBE权限，单击"确定"。其中：
   - 主体类型：选择"委托用户"。
   
   - 选择委托用户：选择创建的访问LakeFormation的委托用户，例如"visit_lakeformation_agency"。
   
   - 授权类型：选择"资源"。
   
   - Catalog：hive。
   
   - 数据库：default。
   
   - 操作类型：DESCRIBE。
    
   ![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/caution_3.0-zh-cn.png)
   hive.default数据库的DESCRIBE权限，是MRS集群配置对接LakeFormation实例后Hive服务启动的必要权限，需要在配置对接之前添加该权限。
   
   
 
 #### 创建对接OBS权限的委托
1. 登录[IAM管理控制台](https://console.huaweicloud.com/iam)。
2. 在左侧导航栏选择"委托"，单击右上角的"创建委托"，选择相关参数，单击"下一步"。 
   参数选择如下：
   - 委托名称：例如"visit_obs_agency"
   
   - 委托类型：选择"普通账号"
   
   - 委托的账号：输入被委托的华为云账号名称
   
   - 持续时间：根据实际情况自定义
   
   
   
   
3. 在选择策略界面右上角单击"新建策略"，配置如下信息，单击"下一步"。 
   - 策略名称：例如"dev_visit_obs"
   
   - 策略配置方式：JSON视图
   
   - 策略内容：填入如下信息
     ```
     {
         "Version": "1.1",
         "Statement": [
             {
                 "Effect": "Allow",
                 "Action": [
                     "obs:bucket:GetBucketLocation",
                     "obs:bucket:ListBucketMultipartUploads",
                     "obs:object:GetObject",
                     "obs:object:ModifyObjectMetaData",
                     "obs:object:DeleteObject",
                     "obs:object:ListMultipartUploadParts",
                     "obs:bucket:HeadBucket",
                     "obs:object:AbortMultipartUpload",
                     "obs:bucket:ListBucket",
                     "obs:object:PutObject"
                 ],
                 "Resource": [
                     "OBS:*:*:bucket:*",
                     "OBS:*:*:object:*"
                 ]
             }
         ]
     }
     ```
     Resource参数中"bucket"的参数值表示OBS桶名称，"object"的参数值表示OBS对象名称，可根据需要指定名称。配置为"\*"表示对所有OBS桶或OBS对象适用此策略。
     
   
   - 其他参数按照实际需求进行配置。
   
   
   
   
4. 勾选新建的策略名称例如"dev_visit_obs"，单击"下一步"。
5. "设置最小授权范围"根据实际情况选择授权的资源范围，单击"确定"，创建委托。
6. 在"委托"页面，将鼠标移动到新创建的委托名称上，获取具备访问OBS权限的委托ID。
 
#### 创建对接ECS/BMS云服务委托
1. 登录[IAM管理控制台](https://console.huaweicloud.com/iam)。
2. 在左侧导航栏选择"委托"，单击右上角的"创建委托"，设置相关参数，单击"下一步"。 
   参数选择如下：
   - 委托名称：例如"lakeformation_test"
   
   - 委托类型：选择"云服务"
   
   - 云服务：选择"ECS BMS"
   
   - 持续时间：根据实际情况自定义
   
   
   
   
3. 在选择策略界面右上角单击"新建策略"，配置如下信息，单击"下一步"。 
   - 策略名称：自定义
   
   - 策略配置方式：选择JSON视图
   
   - 策略内容：配置如下信息
     - 授予给自身账号具备访问LakeFormation权限的委托ID：可参考[步骤 6]获取。
     
     - 授予给自身账号具备访问OBS权限的委托ID：可参考[创建对接OBS权限的委托]获取。
     
     
     ```
     {
         "Version": "1.1",
         "Statement": [
             {
                 "Action": [
                     "iam:agencies:assume"
                 ],
                 "Resource": {
                     "uri": [
                         "/iam/agencies/授予给自身账号具备访问LakeFormation权限的委托ID",
                         "/iam/agencies/授予给自身账号具备访问OBS权限的委托ID"
                     ]
                 },
                 "Effect": "Allow"
             }
         ]
     }
     ```
     
   
   
   
   
4. 选择新创建的自定义委托名称，单击"下一步"。
5. 在"设置最小授权范围"中选择"所有资源"，单击"确定"，创建委托完成。
 
#### 创建LakeFormation数据连接
![](https://support.huaweicloud.com/usermanual-mrs/public_sys-resources/note_3.0-zh-cn.png)
创建LakeFormation数据连接的功能为受限使用功能，需提交工单申请开通。
1. 登录MRS控制台，在导航栏选择"数据连接"。
2. 单击"新建数据连接 "。
3. 参考[表1]配置相关参数，单击"确定"完成创建。
   
    表1配置LakeFormation数据连接 
   | 参数              | 示例                | 说明                                                                                                                                                                                                                                                               |
   |:---|:---|:---|
   | 类型              | LakeFormation     | 选择"LakeFormation"。                                                                                                                                                                                                                                               |
   | 名称              | mrs_LakeFormation | 数据连接的名称。                                                                                                                                                                                                                                                         |
   | LakeFormation实例 | -                 | 选择LakeFormation实例名称。 该实例需要先在LakeFormation实例创建后在此处引用，具体请参考[创建LakeFormation实例](https://support.huaweicloud.com/usermanual-lakeformation/lakeformation_03_00007.html)。单击"查看LakeFormation实例"查看已创建的实例。 |
   | 虚拟私有云           | -                 | 需要与待对接的MRS集群在同一虚拟私有云。                                                                                                                                                                                                                                            |
   | 子网              | -                 | 选择子网名称。                                                                                                                                                                                                                                                          |
   | VPC终端节点         | -                 | 选择VPC终端节点，或单击"创建对应LakeFormation实例的VPC终端节点"进行创建。 选择VPC终端节点后，产生的费用将由VPCEP服务收取。                                                                                                                        |
   | LakeFormation委托 | 现有委托              | 选择"现有委托"，并选择[创建对接LakeFormation权限的委托]创建的委托，例如"visit_lakeformation_agency"。                                                                                                                     |
      
   图3新建LakeFormation数据连接   
   ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000002368653406.png "点击放大")
   
   
4. 创建完成后，在"数据连接"页面记录已创建数据连接的ID。
 
#### 获取账号ID信息
1. 使用待配置MRS与LakeFormation对接的用户，登录管理控制台。
2. 单击用户名，在下拉列表中单击"我的凭证"。
3. 在"API凭证"页面获取"账号ID"、项目列表中查看项目ID。 
   ![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001879421756.png "点击放大")
   
   
4. 为当前用户授权使用LakeFormation的权限。 
   1. 在左上角单击"![](https://support.huaweicloud.com/usermanual-mrs/zh-cn_image_0000001925500625.png)"，选择"大数据 \> 湖仓构建 LakeFormation"。
   
   2. 查看是否弹出服务授权页面，或进入"服务授权"页面查看是否已授权。
      - 是，勾选"同意LakeFormation服务声明"，并单击"同意授权"，为当前服务授权。
      
      - 否，当前用户已有操作LakeFormation的权限。
       
   
   
   
   
 
