本文介绍ACK专有版集群迁移至ACK Pro后如何收敛集群节点Worker Role的权限。

前提条件

已将ACK专有版集群迁移至ACK Pro版集群。具体操作,请参见热迁移ACK专有版集群至ACK Pro版集群

步骤一:确认需要保留在Worker Role中的最小权限

  • 如果您集群中已安装了ACK选装组件节点自动伸缩autoscaler和免密插件aliyun-acr-credential-helper组件,则不能完全解除Worker Role中绑定的权限,需要按照如下最小化权限策略,重新创建并绑定组件对应的最小化权限。具体操作,请参见创建自定义权限策略
    • 节点自动伸缩autoscaler组件权限策略内容如下。更多信息,请参见节点自动伸缩
      {
          "Action": [
              "ess:Describe*",
              "ess:CreateScalingRule",
              "ess:ModifyScalingGroup",
              "ess:RemoveInstances",
              "ess:ExecuteScalingRule",
              "ess:ModifyScalingRule",
              "ess:DeleteScalingRule",
              "ecs:DescribeInstanceTypes",
              "ecs:DescribeImages",
              "ess:DetachInstances",
              "vpc:DescribeVSwitches"
          ],
          "Resource": "*",
          "Effect": "Allow"
      }
    • 免密插件aliyun-acr-credential-helper组件权限策略内容如下。更多信息,请参见场景二:配置当前账号拉取权限
      {
        "Action": [
           "cr:GetAuthorizationToken",
           "cr:ListInstanceEndpoint",
           "cr:PullRepository"
        ],
        "Resource": "*",
        "Effect": "Allow"
      }
  • 如果您集群中部署的业务应用负载存在依赖Worker Role权限访问阿里云OpenAPI,请您根据业务应用中的调用逻辑保留最小化权限策略,对于迁移后版本在1.22及以上的ACK Pro版集群可选择通过RRSA配置ServiceAccount的RAM权限实现Pod权限隔离进一步收敛权限。

步骤二:解除原ACK专有版集群Worker Role中绑定的权限

  1. 登录容器服务管理控制台,在左侧导航栏中选择集群
  2. 集群列表页面,单击目标集群名称。然后单击集群资源页签。单击Worker RAM角色右侧的链接进入RAM管理控制台
  3. 可选:创建自定义权限策略并为Worker Role角色新增授权。具体操作,请参见创建自定义权限策略为RAM角色授权

    如果确认有需要保留的Worker Role权限策略,则需要创建自定义权限策略并新增授权,如果没有需要保留的Worker Role权限策略,可跳过此步骤。

  4. 记录无需在Worker Role中保留的权限策略名称,在权限管理页面,在对应权限策略名称的右侧单击解除授权,然后在弹出的对话框中,单击解除授权
    重要 请勿直接删除该Worker Role,防止存在未发现的权限依赖组件。可通过单击新增授权回滚权限绑定。
  5. 执行以下命令,确认集群系统组件是否正常工作。
    kubectl get po -n kube-system

    若各组件输出状态均为Running,说明集群系统组件已正常工作。