配置Guardian服务不启用Ranger OBS路径鉴权
操作场景
该章节指导用户开启集群未启用Kerberos认证(普通模式)的Guardian组件存算分离操作,且不支持通过Ranger配置组件关于OBS相关路径的权限策略(即关闭使用Guardian对接OBS的AccessLabel,OBS侧无需关注是否启用AccessLabel功能)。配置后Guardian可以在存算分离场景下为HDFS、Hive、Spark、Loader、HetuEngine等服务提供访问OBS的临时认证凭据。
配置Guardian服务对接OBS主要操作如下:
前提条件
- 集群已安装Guardian、Ranger、Hadoop等组件。
- 如果安装Hadoop、HetuEngine、Hive、Spark等组件后,再安装Guardian,则需要重新下载客户端,并对管理面作业提交的默认客户端进行刷新。
对系统的影响
配置完该章节操作后,原始的客户端需要重新刷新配置,或重新安装客户端。
创建云服务委托并绑定集群

- MRS在IAM的委托列表中预置了MRS_ECS_DEFAULT_AGENCY委托,可在集群创建过程中选择该委托,该委托拥有对象存储服务的OBS OperateAccess权限和在集群所在区域拥有CES FullAccess(对开启细粒度策略的用户)、CES Administrator和KMS Administrator权限。同时请勿在IAM修改MRS_ECS_DEFAULT_AGENCY委托。
- 如需使用预置的委托,请跳过创建委托步骤。如需使用自定义委托,请参考如下步骤进行创建委托(创建或修改委托需要用户具有Security Administrator权限)。如果还需对OBS文件系统中的指定路径进行更加细粒度的权限控制,可参考配置MRS集群用户的OBS的细粒度访问权限创建自定义的角色策略。
- 登录华为云管理控制台。
- 在服务列表中选择“管理与监管 > 统一身份认证服务 IAM”。
- 选择“委托 > 创建委托”。
- 在创建委托页面配置以下参数,并单击“完成”:
- 委托名称:设置委托名称,例如:mrs_ecs_obs。
- 委托类型:选择“云服务”。
- 云服务:选择“弹性云服务器ECS 裸金属服务器BMS”。
- 持续时间:选择“永久”。
- 在授权的确认弹窗中,单击“立即授权”,在弹出的授权页面,单击“新建策略”。
在新建策略界面配置以下参数并单击“下一步”:
- 策略名称:自定义策略名称,例如“guardian-policy”。
- 策略配置方式:选择“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", "obs:bucket:ListAllMyBuckets" ], "Resource": [ "OBS:*:*:bucket:guardian-obs", "OBS:*:*:bucket:guardian-obs2", "OBS:*:*:object:*" ] } ] }
上述的“Resource”配置表示可访问配置的并行文件系统系统的所有资源,guardian-obs为创建OBS并行文件系统创建的OBS并行文件系统名称。
- 单击“下一步”,在“选择策略”页面勾选5创建的策略名称。
- 单击“下一步”,在“选择授权范围”中勾选“全局服务资源”,单击“确定”。
- 在弹出的提示框中单击“知道了”,开始授权。界面提示“授权成功。”,单击“完成”,委托成功创建。
- 登录MRS控制台,在导航栏选择“现有集群”。
- 单击集群名称,进入集群详情页面。
- 在集群详情页的“概览”页签,单击“IAM用户同步”右侧的“同步”进行IAM用户同步。
- 在集群详情页的“概览”页签,单击委托右侧的“选择委托”选择创建的委托名称,例如“mrs_ecs_obs”,单击“确定”进行绑定。
图1 绑定委托
为Guardian组件配置访问OBS权限
- 登录MRS集群Manager界面,具体请参见访问MRS集群Manager,选择“集群 > 服务 > Guardian > 配置 > 全部配置”搜索并修改以下参数。
参数
含义
取值示例
fs.obs.guardian.accesslabel.enabled
是否开启使用Guardian对接OBS的access label。
- true:对接OBS后,可通过Ranger配置组件关于OBS相关路径的权限策略,需确保OBS服务已开启AccessLabel功能,如果未开启,需手动开启,详细操作请联系OBS服务运维人员。
- false:对接OBS后,不能通过Ranger配置组件关于OBS相关路径的权限策略,无需关注OBS服务是否开启AccessLabel功能。
该参数值需设置为“false”。
false
fs.obs.guardian.enabled
是否开启使用Guardian。
- true:开启使用Guardian。
- false:默认值,不使用Guardian。
true
fs.obs.delegation.token.providers
delegation token生成器,当“fs.obs.guardian.enabled”参数值为“true”时,需要同时配置com.huawei.mrs.dt.MRSDelegationTokenProvider和com.huawei.mrs.dt.GuardianDTProvider。
com.huawei.mrs.dt.MRSDelegationTokenProvider和com.huawei.mrs.dt.GuardianDTProvider
- 单击“保存”保存服务配置,然后在FusionInsight Manager主页中选择“更多 > 重启配置过期的实例”,根据界面提示重启所有配置过期的服务实例。
- 如果需要通过MRS管理控制台提交作业,使用omm用户登录主OMS节点,执行以下命令刷新内置客户端配置:
sh /opt/executor/bin/refresh-client-config.sh
- (可选)如果安装了集群其他组件的客户端,则需更新相关客户端配置,具体操作请参见更新客户端配置。
配置回收站清理策略
- 登录OBS管理控制台。
- 选择“并行文件系统”,单击创建OBS并行文件系统的文件系统名称。
- 选择“数据管理 > 生命周期规则”,单击“创建”,创建“/user/.Trash”目录的生命周期规则。
配置集群使用存算分离方案后,必须配置相关目录的生命周期策略,否则会有存储空间被占满以及增加存储资源费用的风险,关于OBS更多计费说明请参考OBS计费概述。
表1 生命周期规则创建参数 参数名称
描述
示例
状态
是否启用本条生命周期规则。
启用
规则名称
规则名称,可自定义,用于识别不同的生命周期配置。
rule-test
前缀
生命周期规则适用的对象前缀,MRS集群组件数据回收站目录为“/user/.Trash”。
user/.Trash
转换为低频访问存储天数
指定在对象最后一次更新后多少天,受规则影响的对象将转换为低频访问存储。至少设置为30天。
30天
转换为归档存储天数
指定在对象最后一次更新后多少天,受规则影响的对象将转换为归档存储。若同时设置转换为低频访问存储和转换为归档存储,则转换为归档存储的时间要比转换为低频访问存储的时间至少长30天。若单独设置转换为归档存储,则没有时间限制。
31天
文件过期删除天数
指定在对象最后一次更新后多少天,受规则影响的对象将过期并自动被OBS删除。过期时间必须大于前两个转换时间的最大值。
32天
碎片过期规则设置
受规则影响的碎片将过期并自动被OBS删除。
30天
- 单击“确定”,完成生命周期规则配置。
若您需修改生命周期的内容,请单击该生命周期规则所在行右侧的“编辑”进行编辑;单击“禁用”,可以禁用该生命周期规则。单击“启用”,可启用该生命周期规则。