

# Requisitos previos de flota de EC2
<a name="ec2-fleet-prerequisites"></a>

**Topics**
+ [Plantilla de inicialización](#ec2-fleet-prerequisites-launch-template)
+ [Rol vinculado al servicio de flota de EC2](#ec2-fleet-service-linked-role)
+ [Conceder acceso a las claves administradas por el cliente para su uso con AMI cifradas e instantáneas de EBS](#ec2-fleet-service-linked-roles-access-to-cmks)
+ [Permisos para los usuarios de la flota de EC2](#ec2-fleet-iam-users)

## Plantilla de inicialización
<a name="ec2-fleet-prerequisites-launch-template"></a>

Una plantilla de inicialización especifica la información de configuración acerca de las instancias que se van a iniciar, como el tipo de instancia y la zona de disponibilidad. Para obtener más información acerca de las plantillas de inicialización, consulte [Almacenamiento de parámetros de inicialización de instancias en plantillas de inicialización de Amazon EC2](ec2-launch-templates.md).

## Rol vinculado al servicio de flota de EC2
<a name="ec2-fleet-service-linked-role"></a>

El rol de `AWSServiceRoleForEC2Fleet` concede permiso a la flota de EC2 para solicitar, iniciar, terminar y etiquetar instancias en su nombre. Amazon EC2 utiliza este rol vinculado al servicio para completar las siguientes acciones:
+ `ec2:RunInstances`: para iniciar las instancias.
+ `ec2:RequestSpotInstances`: solicitar instancias de spot.
+ `ec2:TerminateInstances`: para terminar las instancias.
+ `ec2:DescribeImages`: para describir imágenes de máquina de Amazon (AMI) para las instancias.
+ `ec2:DescribeInstanceStatus`: para describir el estado de las instancias.
+ `ec2:DescribeSubnets`: para describir las subredes de las instancias.
+ `ec2:CreateTags`: agregar etiquetas a la flota de EC2, instancias y volúmenes.

Asegúrese de que este rol exista antes de utilizar la AWS CLI o una API para crear una flota de EC2.

**nota**  
Una flota de EC2 `instant` no requiere este rol.

Para crear el rol, use la consola de IAM como se indica a continuación.

**Para crear el rol AWSServiceRoleForEC2Fleet para la flota de EC2**

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

1. Seleccione **Roles** en el panel de navegación.

1. Elija **Creación de rol**.

1. En la página **Seleccionar entidad de confianza**, haga lo siguiente:

   1. En **Tipo de entidad de confianza**, elija **Servicio de AWS**.

   1. En la sección **Caso de uso**, en **Servicio o caso de uso**, elija **EC2 - Flota**.
**sugerencia**  
Asegúrese de elegir **EC2 - Flota**. Si elige **EC2**, el caso de uso **EC2 - Flota** no aparece en la lista de **Caso de uso**. El caso de uso **EC2 - Flota** creará automáticamente una política con los permisos de IAM necesarios y sugerirá **AWSServiceRoleForEC2Fleet** como nombre del rol.

   1. Elija **Siguiente**.

1. En la página **Agregar permisos**, elija **Siguiente**.

1. En la página **Nombrar, revisar y crear**, elija **Crear rol**.

Si ya no tiene que utilizar la flota de EC2, le recomendamos que elimine el rol **AWSServiceRoleForEC2Fleet**. Después de haber eliminado este rol de la cuenta, podrá volver a crearlo si crea otra flota.

Para obtener más información, consulte [Roles vinculados al servicio](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create-service-linked-role.html) en la *Guía del usuario de IAM*.

## Conceder acceso a las claves administradas por el cliente para su uso con AMI cifradas e instantáneas de EBS
<a name="ec2-fleet-service-linked-roles-access-to-cmks"></a>

Si especifica una [AMI cifrada](AMIEncryption.md) o una instantánea de Amazon EBS cifrada en la flota de EC2 y utiliza una clave de AWS KMS para el cifrado, debe conceder permiso al rol **AWSServiceRoleForEC2Fleet** para que utilice la clave administrada por el cliente a fin de que Amazon EC2 pueda iniciar instancias en su nombre. Para ello, debe agregar una concesión a la clave administrada por el cliente, como se muestra en el siguiente procedimiento.

Al proporcionar permisos, las concesiones son una alternativa a las políticas de claves. Para obtener más información, consulte [Uso de concesiones](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html) y [Uso de políticas de claves en AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) en la * Guía para desarrolladores de AWS Key Management Service*.

**Para conceder permisos al rol AWSServiceRoleForEC2Fleet para que use la clave administrada por el cliente**
+ Utilice el comando [create-grant](https://docs.aws.amazon.com/cli/latest/reference/kms/create-grant.html) para agregar una concesión a la clave administrada por el cliente y para especificar la entidad principal (el rol vinculado a un servicio **AWSServiceRoleForEC2Fleet**) que recibe permiso para realizar las operaciones que permite la concesión. La clave administrada por el cliente se especifica mediante el parámetro `key-id` y el ARN de la clave administrada por el cliente. La entidad principal se especifica con el parámetro `grantee-principal` y el ARN del rol vinculado a un servicio **AWSServiceRoleForEC2Fleet**.

  ```
  aws kms create-grant \
      --region us-east-1 \
      --key-id arn:aws:kms:us-east-1:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab \
      --grantee-principal arn:aws:iam::111122223333:role/AWSServiceRoleForEC2Fleet \
      --operations "Decrypt" "Encrypt" "GenerateDataKey" "GenerateDataKeyWithoutPlaintext" "CreateGrant" "DescribeKey" "ReEncryptFrom" "ReEncryptTo"
  ```

## Permisos para los usuarios de la flota de EC2
<a name="ec2-fleet-iam-users"></a>

Si los usuarios van a crear o administrar una flota de EC2, asegúrese de concederles los permisos necesarios.

**Creación de una política para la flota de EC2**

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

1. En el panel de navegación, seleccione **Políticas**.

1. Elija **Crear política**.

1. En la página **Crear política**, elija la pestaña **JSON**, sustituya el texto por lo siguiente y, a continuación, elija **Revisar política**.

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "ec2:*"
               ],
               "Resource": "*"
           },
           {
               "Effect": "Allow",
               "Action": [
                 "iam:ListRoles",
                 "iam:PassRole",
                 "iam:ListInstanceProfiles"
               ],
               "Resource":"arn:aws:iam::123456789012:role/DevTeam*"
           }
       ]
   }
   ```

------

   `ec2:*` concede a un usuario permiso para llamar a todas las acciones de la API de Amazon EC2. Para limitar las acciones del usuario a unas determinadas acciones de la API de Amazon EC2, especifique dichas acciones.

   El usuario debe tener permiso para llamar a la acción `iam:ListRoles` para enumerar los roles de IAM existentes, a la acción `iam:PassRole` para especificar el rol de la flota de EC2 y a la acción `iam:ListInstanceProfiles` para enumerar los perfiles de instancia existentes.

   (Opcional) Para permitir a un usuario crear roles o perfiles de instancia mediante la consola de IAM, también tiene que agregar las siguientes acciones a la política:
   + `iam:AddRoleToInstanceProfile`
   + `iam:AttachRolePolicy`
   + `iam:CreateInstanceProfile`
   + `iam:CreateRole`
   + `iam:GetRole`
   + `iam:ListPolicies`

1. En la página **Revisar política**, escriba un nombre y descripción de política y, a continuación, elija **Crear política**.

1. Para dar acceso, agregue permisos a los usuarios, grupos o roles:
   + Usuarios y grupos en AWS IAM Identity Center:

     Cree un conjunto de permisos. Siga las instrucciones de [Creación de un conjunto de permisos](https://docs.aws.amazon.com//singlesignon/latest/userguide/howtocreatepermissionset.html) en la *Guía del usuario de AWS IAM Identity Center*.
   + Usuarios gestionados en IAM a través de un proveedor de identidades:

     Cree un rol para la federación de identidades. Siga las instrucciones descritas en [Creación de un rol para un proveedor de identidad de terceros (federación)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-idp.html) en la *Guía del usuario de IAM*.
   + Usuarios de IAM:
     + Cree un rol que el usuario pueda aceptar. Siga las instrucciones descritas en [Creación de un rol para un usuario de IAM](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-user.html) en la *Guía del usuario de IAM*.
     + (No recomendado) Adjunte una política directamente a un usuario o agregue un usuario a un grupo de usuarios. Siga las instrucciones descritas en [Adición de permisos a un usuario (consola)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) de la *Guía del usuario de IAM*.