使用EMR on ACK前,需要授予您的阿里云账号AliyunEMROnACKDefaultRole系统默认角色。本文为您介绍角色授权的两种方式。
自动化授权
通常,第一次使用EMR on ACK时,需要您进行自动化授权操作。
在左侧导航栏,单击EMR on ACK。
在EMR on ACK页面,单击去授权。
在云资源访问授权页面,单击页面下方的同意授权。
系统已默认勾选AliyunEMROnACKDefaultRole角色。
手动授权
如果您不小心删除了AliyunEMROnACKDefaultRole角色或者变更了授权策略导致EMR on ACK不可用,请按照以下操作步骤重新授权。
创建角色。
登录RAM控制台。
在左侧导航栏,选择 。
在角色页面,单击创建角色。
在创建角色面板,选择可信实体类型,单击下一步。
可信实体的更多介绍,请参见创建RAM角色并授权。
输入相关角色信息,单击完成。
角色名称为AliyunEMROnACKDefaultRole。如果AliyunEMROnACKDefaultRole角色已存在,则不必重复创建该角色。
添加授权策略。
在角色页面,单击
AliyunEMROnACKDefaultRole
角色,然后单击精确授权。在精确权限面板,选择权限类型,并输入策略名称,单击确定。
需要为AliyunEMROnACKDefaultRole角色添加三个授权策略:
策略一:系统策略(AliyunEMROnACKDefaultRolePolicy)
{ "Version": "1", "Statement": [ { "Action": [ "cs:CreateCluster", "cs:GetClusterById", "cs:GetClusters", "cs:GetUserConfig", "cs:DeleteCluster", "cs:AttachInstances", "cs:DescribeClusterLogsRequest", "cs:GetClusterLogs", "cs:GetUserQuota", "cs:DescribeClusterNodes", "cs:GetNodepoolDetail", "cs:GetNodepools", "cs:UpdateNodepool", "cs:ScaleNodepools", "cs:DescribeClusterInnerServiceKubeconfig", "cs:RevokeClusterInnerServiceKubeconfig", "ecs:DescribeInstances" ], "Resource": "*", "Effect": "Allow" } ] }
策略二:系统策略(AliyunEMRFullAccess)
{ "Version": "1", "Statement": [ { "Action": "emr:*", "Resource": "*", "Effect": "Allow" }, { "Action": [ "cms:QueryMetricList", "ram:GetRole", "ram:ListRoles", "ram:ListUserBasicInfos", "ecs:DescribeZones", "ecs:DescribeInstanceTypes", "ecs:DescribeKeyPairs", "ecs:DescribeAvailableResource", "ecs:DescribeInstances", "ecs:DescribeSpotPriceHistory", "ecs:DescribeSpotAdvice", "ecs:DescribeInstanceStatus", "ecs:DescribeDeploymentSets", "vpc:DescribeVpcs", "vpc:DescribeVSwitches", "oss:ListBuckets", "dlf:DescribeRegions", "dlf:GetRegionStatus", "dlf:ListCatalogs" ], "Resource": "*", "Effect": "Allow" }, { "Action": "ram:PassRole", "Resource": "*", "Effect": "Allow", "Condition": { "StringEquals": { "acs:Service": "emr.aliyuncs.com" } } }, { "Action": "quotas:ListProductQuotas", "Resource": "acs:quotas:*:*:quota/ecs/*", "Effect": "Allow" }, { "Action": "kms:DescribeAccountKmsStatus", "Resource": "*", "Effect": "Allow" } ] }
策略三:自定义策略(EmrOnAckPolicyV2)
{ "Version": "1", "Statement": [ { "Action": [ "ram:*" ], "Resource": [ "acs:ram:*:*:domain/*", "acs:ram:*:*:application/*" ], "Effect": "Allow" } ] }
说明创建好以上角色及策略后,即可正常使用EMR on ACK。