Migración de las entradas existentes de aws-auth ConfigMap a entradas de acceso - Amazon EKS

Migración de las entradas existentes de aws-auth ConfigMap a entradas de acceso

Si ha agregado entradas al ConfigMap de aws-auth en su clúster, le recomendamos que cree entradas de acceso para las entradas existentes en su ConfigMap de aws-auth. Después de crear las entradas de acceso, puede eliminarlas de su ConfigMap. No puede asociar Asociación de políticas de acceso a entradas de accesopolíticas de acceso a las entradas del ConfigMap de aws-auth. Si desea asociar políticas de acceso a sus entidades principales de IAM, cree entradas de acceso.

importante

No elimine las entradas existentes del ConfigMap de aws-auth que Amazon EKS creó al añadir un Simplificación del ciclo de vida de los nodos con grupos de nodos administradosgrupo de nodos administrados o un Cómo definir los Pods que deben lanzarse en AWS Fargateperfil de Fargate a su clúster. Si elimina las entradas que Amazon EKS creó en el ConfigMap, el clúster no funcionará correctamente. Sin embargo, puede eliminar cualquier entrada de los Mantenimiento de nodos por cuenta propia con nodos autoadministradosgrupos de nodos autoadministrados una vez que haya creado las entradas de acceso para ellos.

  • Familiaridad con las entradas de acceso y las políticas de acceso. Para obtener más información, consulte Concesión de acceso a los usuarios de IAM a las entradas de acceso de Kubernetes con EKS y Asociación de políticas de acceso a entradas de acceso.

  • Un clúster existente con una versión de la plataforma que es igual o posterior a las versiones enumeradas en los requisitos previos del tema Concesión de acceso a los usuarios de IAM a las entradas de acceso de Kubernetes con EKSPermitir el acceso a usuarios o roles de IAM a objetos de Kubernetes en su clúster de Amazon EKS.

  • La versión 0.194.0 o posterior de la herramienta de línea de comandos de eksctl instalada en su dispositivo o AWS CloudShell. Para instalar o actualizar eksctl, consulte la sección de Instalación en la documentación de eksctl.

  • Permisos de Kubernetes para modificar el ConfigMap de aws-auth en el espacio de nombres kube-system.

  • Un rol o usuario de AWS Identity and Access Management con los siguientes permisos: CreateAccessEntry y ListAccessEntries. Para obtener más información, consulte Acciones definidas por Amazon Elastic Kubernetes Service en la Referencia de autorizaciones del servicio.

    1. Vea las entradas existentes en su aws-auth ConfigMap. Reemplace my-cluster por el nombre de su clúster.

      eksctl get iamidentitymapping --cluster my-cluster

      Un ejemplo de salida sería el siguiente.

      ARN USERNAME GROUPS ACCOUNT arn:aws:iam::111122223333:role/EKS-my-cluster-Admins Admins system:masters arn:aws:iam::111122223333:role/EKS-my-cluster-my-namespace-Viewers my-namespace-Viewers Viewers arn:aws:iam::111122223333:role/EKS-my-cluster-self-managed-ng-1 system:node:{{EC2PrivateDNSName}} system:bootstrappers,system:nodes arn:aws:iam::111122223333:user/my-user my-user arn:aws:iam::111122223333:role/EKS-my-cluster-fargateprofile1 system:node:{{SessionName}} system:bootstrappers,system:nodes,system:node-proxier arn:aws:iam::111122223333:role/EKS-my-cluster-managed-ng system:node:{{EC2PrivateDNSName}} system:bootstrappers,system:nodes
    2. Creación de entradas de accesoCree entradas de acceso para cualquiera de las entradas del ConfigMap que haya creado y que se mostraron en el resultado anterior. Al crear las entradas de acceso, asegúrese de especificar los mismos valores para ARN, USERNAME, GROUPS y ACCOUNT que aparecen en el resultado. En el resultado de ejemplo, crearía entradas de acceso para todas las entradas, excepto las dos últimas, ya que Amazon EKS creó esas entradas para un perfil de Fargate y un grupo de nodos administrados.

    3. Elimine las entradas del ConfigMap para cualquier entrada de acceso que haya creado. Si no elimina la entrada del ConfigMap, la configuración de la entrada de acceso para el ARN de entidad principal de IAM anula la entrada del ConfigMap. Reemplace 111122223333 por el ID de su cuenta de AWS y EKS-my-cluster-my-namespace-Viewers por el nombre del rol en la entrada de su ConfigMap. Si la entrada que va a eliminar es para un usuario de IAM y no para un rol de IAM, reemplace el role por el user y EKS-my-cluster-my-namespace-Viewers por el nombre de usuario.

      eksctl delete iamidentitymapping --arn arn:aws:iam::111122223333:role/EKS-my-cluster-my-namespace-Viewers --cluster my-cluster