配置LakeFormation数据连接前准备
配置LakeFormation实例
- 登录华为云管理控制台,在左上角单击“”,选择“大数据 > 湖仓构建 LakeFormation”进入LakeFormation控制台。
- 单击页面右上角“购买实例”,参考创建LakeFormation实例创建LakeFormation实例。
- 创建名称为“hive”的Catalog、名称为“default”的数据库,如果实例中已存在则请跳过该步骤。详细操作可参考管理元数据。
MRS对接LakeFormation仅支持对接LakeFormation实例的数据目录名称为“hive”的Catalog。
- 确认左上角实例是新创建的LakeFormation实例名称后,进入“元数据 > Catalog”页面。(如果当前实例已包含名称为“hive”的Catalog,则跳过Catalog的创建操作。)
- 单击“创建Catalog”,配置以下参数后,单击“提交”。
- Catalog名称:hive(固定名称,不可自定义)
- 选择位置:单击“”选择Catalog对应的OBS存储路径,例如选择“obs://lakeformation-test/hive”(需提前创建),单击“确定”。
- 其他参数根据实际需要进行配置。
- 在左侧导航栏选择“元数据 > 数据库”,单击“创建数据库”,配置以下信息并单击“提交”。(如果当前已包含名称为“default”的数据库,则跳过数据库的创建操作。)
- 库名称:default(固定名称,不可自定义)
- 所属Catalog:hive
- 选择位置:单击“”选择hive Catalog存储路径下的位置,例如“obs://lakeformation-test/hive/default”(需提前创建),单击“确定”。
- 其他参数根据实际需要进行配置。
- 在“数据权限 > 数据授权”页面,可根据业务需求对hive Catalog进行基于用户、用户组的授权。详细操作请参考新增授权章节。
- 选择“接入管理 > 创建客户端”,创建LakeFormation实例接入管理客户端。其中“虚拟私有云”和“所属子网”需要与待对接的MRS集群保持一致。详细操作请参考管理接入客户端。
MRS集群的VPC子网信息可通过MRS管理控制台中,MRS集群的概览页面中获取。
客户端创建完成后,在客户端详情信息中获取对应客户端的“接入IP”信息并记录。
创建对接LakeFormation权限的委托
- 登录华为云管理控制台,选择“统一身份认证服务 IAM”。
- 在左侧导航栏选择“委托”,单击右上角的“创建委托”,配置相关参数,单击“下一步”。
参数配置如下:
- 委托名称:例如“visit_lakeformation_agency”
- 委托类型:选择“普通账号”
- 委托的账号:输入被委托的华为云账号名称
- 持续时间:根据实际情况自定义
图1 创建委托
- 在选择策略界面右上角单击“新建策略”,配置如下信息,单击“下一步”。
- 策略名称:例如“dev_visit_lakeformation”
- 策略配置方式:“可视化视图”或“JSON视图”
- 策略内容:
策略中必须包含“lakeformation:policy:export”和“lakeformation:role:describe”。其他参数按照实际需求进行配置。
- 可视化视图:“云服务”选择“湖仓构建”;“操作”中选择所需操作权限。其他参数按照实际需求进行配置。
- 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:create", "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" ] } ] }
- 勾选新建的策略名称例如“dev_visit_lakeformation”,单击“下一步”。
- “设置最小授权范围”根据实际情况选择授权的资源范围,单击“确定”,创建委托。
- 在“委托”页面,将鼠标移动到新创建的委托名称上,获取具备访问LakeFormation权限的委托ID。
创建对接OBS权限的委托
- 登录华为云管理控制台,选择“统一身份认证服务”。
- 在左侧导航栏选择“委托”,单击右上角的“创建委托”,选择相关参数,单击“下一步”。
参数选择如下:
- 委托名称:例如“visit_obs_agency”
- 委托类型:选择“普通账号”
- 委托的账号:输入被委托的华为云账号名称
- 持续时间:根据实际情况自定义
- 在选择策略界面右上角单击“新建策略”,配置如下信息,单击“下一步”。
- 策略名称:例如“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对象适用此策略。
- 其他参数按照实际需求进行配置。
- 勾选新建的策略名称例如“dev_visit_obs”,单击“下一步”。
- “设置最小授权范围”根据实际情况选择授权的资源范围,单击“确定”,创建委托。
- 在“委托”页面,将鼠标移动到新创建的委托名称上,获取具备访问OBS权限的委托ID。
创建对接ECS/BMS云服务委托
- 登录华为云管理控制台,选择“统一身份认证服务”。
- 在左侧导航栏选择“委托”,单击右上角的“创建委托”,设置相关参数,单击“下一步”。
参数选择如下:
- 委托名称:例如“lakeformation_test”
- 委托类型:选择“云服务”
- 云服务:选择“ECS BMS”
- 持续时间:根据实际情况自定义
- 在选择策略界面右上角单击“新建策略”,配置如下信息,单击“下一步”。
- 策略名称:自定义
- 策略配置方式:选择JSON视图
- 策略内容:配置如下信息
{ "Version": "1.1", "Statement": [ { "Action": [ "iam:agencies:assume" ], "Resource": { "uri": [ "/iam/agencies/授予给自身账号具备访问LakeFormation权限的委托ID", "/iam/agencies/授予给自身账号具备访问OBS权限的委托ID" ] }, "Effect": "Allow" } ] }
- 选择新创建的自定义委托名称,单击“下一步”。
- “设置最小授权范围”根据实际情况选择授权的资源范围,单击“确定”,创建委托完成。
创建LakeFormation数据连接
创建LakeFormation数据连接的功能,需要联系技术支持申请开通白名单。
- 登录MRS控制台,在导航栏选择“数据连接”。
- 单击“新建数据连接 ”。
- 参考表1配置相关参数,单击“确定”完成创建。
表1 配置LakeFormation数据连接 参数
说明
类型
选择“LakeFormation”,当前仅MRS 3.3.0-LTS及之后版本支持连接该类型。
名称
数据连接的名称。
LakeFormation实例
选择LakeFormation实例名称。
该实例需要先在LakeFormation实例创建后在此处引用,具体请参考创建LakeFormation实例。单击“查看LakeFormation实例”查看已创建的实例。
虚拟私有云
需要与待对接的MRS集群在同一虚拟私有云。
子网
选择子网名称。
VPC终端节点
选择VPC终端节点,或单击“创建对应LakeFormation实例的VPC终端节点”进行创建。
选择VPC终端节点后,产生的费用将由VPCEP服务收取。
LakeFormation委托
选择“现有委托”,并选择创建对接LakeFormation权限的委托创建的委托,例如“visit_lakeformation_agency”。
图2 新建LakeFormation数据连接
- 创建完成后,在“数据连接”页面记录已创建数据连接的ID。
获取账号ID信息
- 使用待配置MRS与LakeFormation对接的用户,登录管理控制台。
- 单击用户名,在下拉列表中单击“我的凭证”。
- 在“API凭证”页面获取“账号ID”、项目列表中查看项目ID。
- 为当前用户授权使用LakeFormation的权限。
- 在左上角单击“”,选择“大数据 > 湖仓构建 LakeFormation”。
- 查看是否弹出服务授权页面,或进入“服务授权”页面查看是否已授权。
- 是,勾选“同意LakeFormation服务声明”,并单击“同意授权”,为当前服务授权。
- 否,当前用户已有操作LakeFormation的权限。