Rol de IAM conector de Amazon EKS - Amazon EKS

Ayude a mejorar esta página

¿Quiere contribuir a esta guía del usuario? Desplácese hasta el final de esta página y seleccione Editar esta página en GitHub. Sus contribuciones ayudarán a que nuestra guía del usuario sea mejor para todos.

Rol de IAM conector de Amazon EKS

Puede conectar clústeres de Kubernetes para verlos en la AWS Management Console. Para conectarse a un clúster de Kubernetes, cree un rol de IAM.

Verificar si hay un rol de EKS Conector existente

Puede utilizar el siguiente procedimiento para verificar y ver si la cuenta ya dispone del rol conector de Amazon EKS.

Para verificar el AmazonEKSConnectorAgentRole en la consola de IAM
  1. Abra la consola de IAM en https://console.aws.amazon.com/iam/.

  2. En el panel de navegación izquierdo, seleccione Roles.

  3. En la lista de roles, busque AmazonEKSConnectorAgentRole. Si no existe un rol que incluya AmazonEKSConnectorAgentRole, consulte Creación del rol de agente conector de Amazon EKS para crearlo. Si existe un rol que incluye AmazonEKSConnectorAgentRole, seleccione el rol para ver las políticas asociadas.

  4. Elija Permissions.

  5. Asegúrese de que la política administrada AmazonEKSConnectorAgentPolicy se haya adjuntado al rol. Si la política se ha adjuntado, entonces el rol de Amazon EKS Connector se ha configurado correctamente.

  6. Elija Relaciones de confianza y, a continuación, Editar política de confianza.

  7. Verifique que la relación de confianza contiene la siguiente política. Si la relación de confianza coincide con la política a continuación, seleccione Cancelar. Si la relación de confianza no coincide, copie la política en la ventana Editar política de confianza y elija Actualizar política.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "ssm.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

Creación del rol de agente conector de Amazon EKS

Puede utilizar la AWS Management Console o AWS CloudFormation para crear un rol de agente conector.

AWS CLI
  1. Cree un archivo con el nombre eks-connector-agent-trust-policy.json, que contenga el siguiente JSON que se va a utilizar para el rol de IAM.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "ssm.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
  2. Cree un archivo con el nombre eks-connector-agent-policy.json que contenga el siguiente JSON que se va a utilizar para el rol de IAM.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "SsmControlChannel", "Effect": "Allow", "Action": [ "ssmmessages:CreateControlChannel" ], "Resource": "arn:aws:eks:*:*:cluster/*" }, { "Sid": "ssmDataplaneOperations", "Effect": "Allow", "Action": [ "ssmmessages:CreateDataChannel", "ssmmessages:OpenDataChannel", "ssmmessages:OpenControlChannel" ], "Resource": "*" } ] }
  3. Cree el rol de agente de Amazon EKS Connector con la política de confianza y la política que creó en la lista de elementos anterior.

    aws iam create-role \ --role-name AmazonEKSConnectorAgentRole \ --assume-role-policy-document file://eks-connector-agent-trust-policy.json
  4. Adjunte la política a su rol de agente de Amazon EKS Connector.

    aws iam put-role-policy \ --role-name AmazonEKSConnectorAgentRole \ --policy-name AmazonEKSConnectorAgentPolicy \ --policy-document file://eks-connector-agent-policy.json
AWS CloudFormation
Para crear el rol de agente conector de Amazon EKS con AWS CloudFormation.
  1. Guarde la siguiente plantilla de AWS CloudFormation en un archivo de texto en su sistema local.

    nota

    Esta plantilla también crea el rol vinculado al servicio que de otro modo se crearía cuando se llama a la API registerCluster. Para obtener más información, consulte Uso de roles para conectar un clúster de Kubernetes a Amazon EKS.

    --- AWSTemplateFormatVersion: '2010-09-09' Description: 'Provisions necessary resources needed to register clusters in EKS' Parameters: {} Resources: EKSConnectorSLR: Type: AWS::IAM::ServiceLinkedRole Properties: AWSServiceName: eks-connector.amazonaws.com EKSConnectorAgentRole: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Action: [ 'sts:AssumeRole' ] Principal: Service: 'ssm.amazonaws.com' EKSConnectorAgentPolicy: Type: AWS::IAM::Policy Properties: PolicyName: EKSConnectorAgentPolicy Roles: - {Ref: 'EKSConnectorAgentRole'} PolicyDocument: Version: '2012-10-17' Statement: - Effect: 'Allow' Action: [ 'ssmmessages:CreateControlChannel' ] Resource: - Fn::Sub: 'arn:${AWS::Partition}:eks:*:*:cluster/*' - Effect: 'Allow' Action: [ 'ssmmessages:CreateDataChannel', 'ssmmessages:OpenDataChannel', 'ssmmessages:OpenControlChannel' ] Resource: "*" Outputs: EKSConnectorAgentRoleArn: Description: The agent role that EKS connector uses to communicate with Servicios de AWS. Value: !GetAtt EKSConnectorAgentRole.Arn
  2. Abra la consola de AWS CloudFormation en https://console.aws.amazon.com/cloudformation.

  3. Elija Create stack (Crear pila) (ya sea con recursos nuevos o existentes).

  4. Para Specify template (Especificar plantilla), seleccione Upload a template file (Actualizar un archivo de plantilla) y, a continuación, elija Choose file (Elegir archivo).

  5. Elija el archivo que creó anteriormente y, a continuación, elija Next (Siguiente).

  6. En Stack name (Nombre de pila), escriba un nombre para el rol, por ejemplo eksConnectorAgentRole y, a continuación, elija Next (Siguiente).

  7. En la página Configurar opciones de pila, elija Siguiente.

  8. En la página Review (Revisar), revise la información, confirme que la pila puede crear recursos de IAM y elija Create stack (Crear pila).