

 **Ayude a mejorar esta página** 

Para contribuir a esta guía del usuario, elija el enlace **Edit this page on GitHub** que se encuentra en el panel derecho de cada página.

# Rol de IAM conector de Amazon EKS
<a name="connector-iam-role"></a>

Puede conectar clústeres de Kubernetes para verlos en la Consola de administración de AWS. Para conectarse a un clúster de Kubernetes, cree un rol de IAM.

## Verificar si hay un rol de EKS Conector existente
<a name="check-connector-role"></a>

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

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

1. En el panel de navegación izquierdo, elija **Roles**.

1. 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](#create-connector-role) para crearlo. Si existe un rol que incluye `AmazonEKSConnectorAgentRole`, seleccione el rol para ver las políticas asociadas.

1. Elija **Permissions**.

1. 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.

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

1. 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
<a name="create-connector-role"></a>

Puede utilizar la Consola de administración de AWS 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"
           }
       ]
   }
   ```

1. 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": "*"
           }
       ]
   }
   ```

1. 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
   ```

1. 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  

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](using-service-linked-roles-eks-connector.md).

   ```
   ---
   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 AWS services.
       Value: !GetAtt EKSConnectorAgentRole.Arn
   ```

1. Abra la [Consola de AWS CloudFormation](https://console.aws.amazon.com/cloudformation/).

1. Elija **Crear pila** con nuevos recursos (estándar).

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

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

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

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

1. 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)**.