

# Almacenamiento de nivel de bloques temporal del almacén de instancias para las instancias de EC2
<a name="InstanceStorage"></a>

Un *almacén de instancias* ofrece un almacenamiento por bloques temporal para la instancia de EC2. Este almacenamiento se encuentra en discos que están conectados físicamente al equipo host. El almacén de instancias es ideal para el almacenamiento temporal de información que cambia constantemente, como los búferes, las cachés, los datos de pruebas y otro contenido temporal. También se puede usar para el almacenamiento de datos temporales que se replican en una flota de instancias, como un grupo de servidores web con equilibrio de carga.

Un almacén de instancias consta de uno o varios volúmenes de almacenes de instancias que se exponen como dispositivos de bloques. El tamaño de un almacén de instancias, al igual que el número de dispositivos disponibles, varía por tipo de instancia. Por ejemplo, no todos los tipos de instancia proporcionan volúmenes del almacén de instancias. Para obtener más información, consulte [Límites de volumen del almacén de instancias para las instancias de EC2](instance-store-volumes.md).

Los dispositivos virtuales de los volúmenes del almacén de instancias reciben nombres de dispositivos virtuales en orden de `ephemeral0` a `ephemeral23`. Por ejemplo, con un tipo de instancia que admite un volumen del almacén de instancias, el nombre del dispositivo virtual de ese volumen es `ephemeral0`. Con un tipo de instancia que admite cuatro volúmenes del almacén de instancias, los nombres de los dispositivos virtuales de los cuatro volúmenes son los siguientes: `ephemeral0`, `ephemeral1`, `ephemeral2` y `ephemeral3`.

![\[Almacenamiento de la instancia de Amazon EC2\]](http://docs.aws.amazon.com/es_es/AWSEC2/latest/UserGuide/images/instance_storage.png)


**Precios de tiendas de instancias**  
El uso de los volúmenes del almacén de instancias proporcionados para la instancia no conlleva ningún cargo adicional. Los volúmenes del almacén de instancias se incluyen en el costo por uso de la instancia.

**Topics**
+ [

# Persistencia de datos para volúmenes del almacén de instancias de Amazon EC2
](instance-store-lifetime.md)
+ [

# Límites de volumen del almacén de instancias para las instancias de EC2
](instance-store-volumes.md)
+ [

# Volúmenes del almacén de instancias SSD para instancias de EC2
](ssd-instance-store.md)
+ [

# Adición de volúmenes del almacén de instancias a una instancia de EC2
](add-instance-store-volumes.md)
+ [

# Habilitación del volumen de intercambio del almacén de instancias para las instancias M1 y C1 de EC2
](instance-store-swap-volumes.md)
+ [

# Inicialización de los volúmenes del almacén de instancias en las instancias de EC2
](disk-performance.md)
+ [

# Estadísticas de rendimiento detalladas para volúmenes del almacén de instancias de Amazon EC2
](nvme-detailed-performance-stats.md)

# Persistencia de datos para volúmenes del almacén de instancias de Amazon EC2
<a name="instance-store-lifetime"></a>

Los volúmenes del almacén de instancias solo se adjuntan al iniciar la instancia. No puede adjuntar volúmenes de almacenes de instancias a una instancia después de que la haya iniciado. No puede separar un volumen de almacén de instancias de una instancia y adjuntarlo a otra instancia.

Un volumen de almacén de instancias solo existe durante la vida útil de la instancia a la que está adjunto. No puede configurar un volumen de almacén de instancias para que se mantenga más allá de la vida de la instancia asociada.

Los datos en un volumen de almacén de instancias persisten incluso si la instancia se inicia. Sin embargo, los datos no persisten si la instancia se detiene, hiberna o finaliza. Cuando la instancia se detiene, se termina o se pone en hibernación, cada bloque del volumen del almacén de instancias se elimina de forma criptográfica.

Por lo tanto, no confíe en el almacén de instancias para almacenar datos valiosos a largo plazo. Si necesita retener los datos almacenados en un volumen de almacén de instancias más allá de la vida útil de la instancia, debe copiarlos manualmente a un almacenamiento más persistente, como un volumen de Amazon EBS, un bucket de Amazon S3 o un sistema de archivos de Amazon EFS.

Hay algunos eventos que pueden provocar que los datos no persistan durante toda la vida útil de la instancia. La siguiente tabla indica si los datos de los volúmenes del almacén de instancias se conservan durante eventos específicos, tanto para las instancias virtualizadas como para las instancias bare metal.


| Evento | ¿Qué ocurre con sus datos? | 
| --- |--- |
| **Eventos del ciclo de vida de las instancias iniciados por el usuario** | 
| --- |
| [La instancia de base de datos se reinicia.](ec2-instance-reboot.md) | The data persists | 
| [La instancia se ha detenido.](Stop_Start.md) | The data does not persist | 
| [La instancia está hibernando.](Hibernate.md) | The data does not persist | 
| [La instancia se termina.](terminating-instances.md) | The data does not persist | 
| [El tipo del servidor de la instancia de base de datos se ha cambiado](ec2-instance-resize.md) | The data does not persist \$1 | 
| [Se crea una AMI respaldada por EBS a partir de la instancia](creating-an-ami-ebs.md) | The data does not persist in the created AMI \$1\$1 | 
| [Se crea una AMI basada en Amazon S3 a partir de la instancia](creating-an-ami-instance-store.md) (Linux instances) | The data persists in the AMI bundle uploaded to Amazon S3 \$1\$1\$1 | 
| **Eventos del sistema operativo iniciados por el usuario** | 
| --- |
| A shutdown is initiated | The data does not persist † | 
| A restart is initiated | The data persists | 
| **AWS Eventos programados de** | 
| --- |
| [Detención de instancia](schedevents_actions_retire.md) | The data does not persist | 
| [Reinicio de la instancia](schedevents_actions_reboot.md) | The data persists | 
| [Reinicio del sistema](schedevents_actions_reboot.md) | The data persists | 
| [Retirada de instancias](schedevents_actions_retire.md) | The data does not persist | 
| **Eventos no planificados** | 
| --- |
| [Recuperación automática simplificada](instance-configuration-recovery.md) | The data does not persist | 
| [Recuperación basada en acciones de Amazon CloudWatch](cloudwatch-recovery.md) | The data does not persist | 
| The underlying disk fails | The data on the failed disk does not persist | 
| Power failure | The data persists upon reboot | 

\$1 Si el nuevo tipo de instancia admite el almacén de instancias, la instancia obtiene la cantidad de volúmenes de almacén de instancias admitidos por el nuevo tipo de instancia, pero los datos no se transfieren a la nueva instancia. Si el nuevo tipo de instancia no admite el almacén de instancias, la instancia no obtiene los volúmenes del almacén de instancias.

\$1\$1 Los datos no se incluyen en la AMI respaldada por EBS ni en los volúmenes del almacén de instancias adjuntos a las instancias iniciadas desde esa AMI.

\$1\$1\$1 Los datos se incluyen en el paquete de AMI que se carga en Amazon S3. Al iniciar una instancia desde esa AMI, la instancia obtiene los volúmenes del almacén de instancias agrupados en la AMI con los datos que contenían en el momento en que se creó la AMI.

† La protección de terminación y la protección de interrupción no protegen las instancias contra las detenciones o terminaciones de instancias como resultado de los cierres iniciados a través del sistema operativo de la instancia. Los datos almacenados en los volúmenes del almacén de instancias no persisten tanto en los eventos de parada como en los de terminación de instancias.

# Límites de volumen del almacén de instancias para las instancias de EC2
<a name="instance-store-volumes"></a>

El número, el tamaño y el tipo de volúmenes del almacén de instancias vienen determinados por el tipo de instancia. Algunos tipos de instancias, como C8i, M8i y R8i, no admiten volúmenes de almacén de instancias, mientras que otros tipos de instancias, como C8id, M8id y R8id, sí admiten volúmenes de almacén de instancias. No puedes adjuntar más volúmenes de almacén de instancias a una instancia de los que admite su tipo de instancia. Para los tipos de instancia que admiten volúmenes de almacén de instancias, el número y el tamaño de los volúmenes de almacén de instancias varían en función del tamaño de la instancia Por ejemplo, `r8id.large` admite 1 volumen de almacén de instancias de 118 GB, mientras que `r8id.32xlarge` admite 2 volúmenes de almacén de instancias de 3800 GB.

En el caso de los tipos de instancias con **volúmenes de almacén de instancias de NVMe**, todos los volúmenes de almacenes de instancias compatibles se adjuntan automáticamente a la instancia en el momento de la inicialización. Para los tipos de instancias con **volúmenes de almacén de instancias que no sean de NVMe**, como C1, C3, M1, M2, M3, R3, D2, H1, I2, X1 y X1e, debe especificar manualmente las asignaciones de dispositivos de bloque para los volúmenes del almacén de instancia que desea adjuntar en el momento de la inicialización. Luego, una vez iniciada la instancia, debes [formatear y montar los volúmenes del almacén de instancias adjuntos](making-instance-stores-available-on-your-instances.md) antes de poder usarlos. No puede hacer que un volumen de almacén de instancias esté disponible después de iniciar la instancia.

Algunos tipos de instancias utilizan unidades de estado sólido (SSD) basadas en NVMe o SATA, mientras que otros utilizan unidades de disco duro (HDD) basadas en SATA. Esta opción es recomendable cuando necesita almacenamiento con una latencia muy baja, pero no necesita que los datos se conserven cuando termina la instancia, o bien puede utilizar arquitecturas tolerantes a errores. Para obtener más información, consulte [Volúmenes del almacén de instancias SSD para instancias de EC2](ssd-instance-store.md).

Los datos de los volúmenes de almacén de instancias de NVMe y algunos volúmenes de almacén de instancias de HDD se cifran en reposo. Para obtener más información, consulte [Proteger los datos en Amazon EC2](data-protection.md).

## Volúmenes de almacén de instancias disponibles
<a name="available-instance-store-volumes"></a>

En la *Guía de tipos de instancias de Amazon EC2* se incluye la cantidad, el tamaño, el tipo y las optimizaciones de rendimiento de los volúmenes de almacenes de instancias que hay disponibles en cada tipo de instancia admitido. Para obtener más información, consulte los siguientes temas:
+ [Especificaciones del almacén de instancias: uso general](https://docs.aws.amazon.com/ec2/latest/instancetypes/gp.html#gp_instance-store)
+ [Especificaciones del almacén de instancias: optimizadas para la computación](https://docs.aws.amazon.com/ec2/latest/instancetypes/co.html#co_instance-store)
+ [Especificaciones del almacén de instancias: memoria optimizada](https://docs.aws.amazon.com/ec2/latest/instancetypes/mo.html#mo_instance-store)
+ [Especificaciones del almacén de instancias: almacenamiento optimizado](https://docs.aws.amazon.com/ec2/latest/instancetypes/so.html#so_instance-store)
+ [Especificaciones del almacén de instancias: computación acelerada](https://docs.aws.amazon.com/ec2/latest/instancetypes/ac.html#ac_instance-store)
+ [Especificaciones del almacén de instancias: computación de alto rendimiento](https://docs.aws.amazon.com/ec2/latest/instancetypes/hpc.html#hpc_instance-store)
+ [Especificaciones del almacén de instancias: generación anterior](https://docs.aws.amazon.com/ec2/latest/instancetypes/pg.html#pg_instance-store)

------
#### [ Console ]

**Recuperación de la información de volumen del almacén de instancias**

1. Abra la consola de Amazon EC2 en [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. En el panel de navegación, elija **Instances Types (Tipos de instancia)**.

1. Agregue el filtro **Almacenamiento local de la instancia = verdadero**. La columna **Almacenamiento** indica el tamaño total del almacenamiento de instancias para el tipo de instancia.

1. (Opcional) Haga clic en el icono **Preferencias** y, a continuación, active **Recuento de discos de almacenamiento**. En esta columna se indica el número de volúmenes de almacenes de instancias.

1. (Opcional) Agregue filtros para ampliar el alcance de los tipos de instancias específicos que le interesen.

------
#### [ AWS CLI ]

**Recuperación de la información de volumen del almacén de instancias**  
Utilice el comando [describe-instance-types](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-types.html). En el siguiente ejemplo se muestra el tamaño total del almacenamiento de la instancia para cada tipo de instancia en las familias de instancias R8i con volúmenes del almacén de instancias.

```
aws ec2 describe-instance-types \
    --filters "Name=instance-type,Values=r8i*" "Name=instance-storage-supported,Values=true" \
    --query 'sort_by(InstanceTypes, &InstanceStorageInfo.TotalSizeInGB)[].{InstanceType:InstanceType,TotalSizeInGB:InstanceStorageInfo.TotalSizeInGB}' \
    --output table
```

A continuación, se muestra un ejemplo del resultado.

```
--------------------------------------
|        DescribeInstanceTypes       |
+------------------+-----------------+
|   InstanceType   |  TotalSizeInGB  |
+------------------+-----------------+
|  r8id.large      |  118            |
|  r8id.xlarge     |  237            |
|  r8id.2xlarge    |  474            |
|  r8id.4xlarge    |  950            |
|  r8id.8xlarge    |  1900           |
|  r8id.12xlarge   |  2850           |
|  r8id.16xlarge   |  3800           |
|  r8id.24xlarge   |  5700           |
|  r8id.32xlarge   |  7600           |
|  r8id.48xlarge   |  11400          |
|  r8id.metal-48xl |  11400          |
|  r8id.96xlarge   |  22800          |
|  r8id.metal-96xl |  22800          |
+------------------+-----------------+
```

**Obtención de información completa sobre el almacenamiento de instancias de un tipo de instancia**  
Utilice el comando [describe-instance-types](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instance-types.html).

```
aws ec2 describe-instance-types \
    --filters "Name=instance-type,Values=r8id.32xlarge" \
    --query 'InstanceTypes[0].InstanceStorageInfo' \
    --output json
```

El resultado del ejemplo muestra que este tipo de instancias tiene dos volúmenes SSD NVMe de 3800 GB, lo que supone un total de 7600 GB de almacenamiento de instancias.

```
{
    "TotalSizeInGB": 7600,
    "Disks": [
        {
            "SizeInGB": 3800,
            "Count": 2,
            "Type": "ssd"
        }
    ],
    "NvmeSupport": "required",
    "EncryptionSupport": "required"
}
```

------
#### [ PowerShell ]

**Recuperación de la información de volumen del almacén de instancias**  
Utilice el cmdlet [Get-EC2InstanceType](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2InstanceType.html). En el siguiente ejemplo se muestra el tamaño total del almacenamiento de la instancia para cada tipo de instancia en las familias de instancias R8i con volúmenes del almacén de instancias.

```
(Get-EC2InstanceType -Filter `
    @{Name="instance-type"; Values="r8i*"},
    @{Name="instance-storage-supported"; Values="true"}) |
    Sort-Object {$_.InstanceStorageInfo.TotalSizeInGB} |
    Format-Table InstanceType,
        @{Name="Disks.SizeInGB";Expression={$_.InstanceStorageInfo.Disks[0].SizeInGB}},
        @{Name="Disks.Count";Expression={$_.InstanceStorageInfo.Disks[0].Count}},
        @{Name="TotalSizeInGB";Expression={$_.InstanceStorageInfo.TotalSizeInGB}}
```

A continuación, se muestra un ejemplo del resultado.

```
InstanceType    Disks.SizeInGB Disks.Count TotalSizeInGB
------------    -------------- ----------- -------------
r8id.large                 118           1           118
r8id.xlarge                237           1           237
r8id.2xlarge               474           1           474
r8id.4xlarge               950           1           950
r8id.8xlarge              1900           1          1900
r8id.12xlarge             2850           1          2850
r8id.16xlarge             3800           1          3800
r8id.24xlarge             2850           2          5700
r8id.32xlarge             3800           2          7600
r8id.48xlarge             3800           3         11400
r8id.metal-48xl           3800           3         11400
r8id.96xlarge             3800           6         22800
r8id.metal-96xl           3800           6         22800
```

**Obtención de información completa sobre el almacenamiento de instancias de un tipo de instancia**  
Utilice el cmdlet [Get-EC2InstanceType](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2InstanceType.html).

```
(Get-EC2InstanceType `
    -Filter @{Name="instance-type"; Values="r8id.32xlarge"}).InstanceStorageInfo |
    Format-List *,
        @{Name="Disks.Count";Expression={$_.Disks[0].Count}},
        @{Name="Disks.SizeInGB";Expression={$_.Disks[0].SizeInGB}},
        @{Name="Disks.Type";Expression={$_.Disks[0].Type.Value}}
```

El resultado del ejemplo muestra que este tipo de instancias tiene dos volúmenes SSD NVMe de 3800 GB, lo que supone un total de 7600 GB de almacenamiento de instancias.

```
Disks             : {Amazon.EC2.Model.DiskInfo}
EncryptionSupport : required
NvmeSupport       : required
TotalSizeInGB     : 7600
Disks.Count       : 2
Disks.SizeInGB    : 3800
Disks.Type        : ssd
```

------

# Volúmenes del almacén de instancias SSD para instancias de EC2
<a name="ssd-instance-store"></a>

Al igual que otros volúmenes de almacén de instancias, debe mapear los volúmenes de almacén de instancias SSD para la instancia cuando la lance. Los datos de un volumen de instancias SSD persisten únicamente durante la vida de su instancia de asociada. Para obtener más información, consulte [Adición de volúmenes del almacén de instancias a una instancia de EC2](add-instance-store-volumes.md).

## Volúmenes SSD de NVMe
<a name="nvme-ssd-volumes"></a>

Algunas instancias ofrecen volúmenes de almacenes de instancias SSD (unidades de estado sólido) de memoria rápida no volátil (NVMe). Para obtener más información sobre el tipo de volumen de almacén de instancias admitido por cada tipo de instancia, consulte [Límites de volumen del almacén de instancias para las instancias de EC2](instance-store-volumes.md).

Los datos incluidos en el almacenamiento de instancias de NVMe se cifran mediante un cifrado de bloques XTS-AES-256 en un módulo de hardware de la instancia. Las claves de cifrado se generan mediante el módulo de hardware y son únicas para cada dispositivo de almacenamiento de instancias de NVMe. Todas las claves de cifrado se destruyen cuando se detiene o termina la instancia y no se pueden recuperar. No puede deshabilitar este cifrado ni tampoco proporcionar su propia clave de cifrado.

### Instancias de Linux
<a name="nvme-ssd-linux"></a>

Para obtener acceso a los volúmenes NVMe, deben estar instalados los controladores NVMe. Las AMI siguientes cumplen este requisito:
+ AL2023
+ Amazon Linux 2
+ AMI de Amazon Linux 2018.03 y posterior
+ Ubuntu 14.04 o versiones posteriores con el kernel `linux-aws`
**nota**  
Los tipos de instancias basados en AWS Graviton requieren Ubuntu 18.04 o versiones posteriores con kernel `linux-aws`
+ Red Hat Enterprise Linux 7.4 o versiones posteriores
+ SUSE Linux Enterprise Server 12 SP2 o versiones posteriores
+ CentOS 7.4.1708 o versiones posteriores
+ FreeBSD 11.1 o posterior
+ Debian GNU/Linux 9 o versiones posteriores
+ Bottlerocket

Después de conectarse a la instancia, puede ver una lista de los dispositivos NVMe utilizando el comando **lspci**. A continuación, se muestra una salida de ejemplo de una instancia `i3.8xlarge`, que admite cuatro dispositivos NVMe.

```
[ec2-user ~]$ lspci
00:00.0 Host bridge: Intel Corporation 440FX - 82441FX PMC [Natoma] (rev 02)
00:01.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
00:01.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
00:01.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 01)
00:02.0 VGA compatible controller: Cirrus Logic GD 5446
00:03.0 Ethernet controller: Device 1d0f:ec20
00:17.0 Non-Volatile memory controller: Device 1d0f:cd01
00:18.0 Non-Volatile memory controller: Device 1d0f:cd01
00:19.0 Non-Volatile memory controller: Device 1d0f:cd01
00:1a.0 Non-Volatile memory controller: Device 1d0f:cd01
00:1f.0 Unassigned class [ff80]: XenSource, Inc. Xen Platform Device (rev 01)
```

Si utiliza un sistema operativo compatible, pero no ve los dispositivos NVMe, compruebe que el módulo NVMe esté cargado utilizando el comando siguiente.
+ Amazon Linux, Amazon Linux 2, Ubuntu 14/16, Red Hat Enterprise Linux, SUSE Linux Enterprise Server, CentOS 7

  ```
  $ lsmod | grep nvme
  nvme          48813  0
  ```
+ Ubuntu 18

  ```
  $ cat /lib/modules/$(uname -r)/modules.builtin | grep nvme
  s/nvme/host/nvme-core.ko
  kernel/drivers/nvme/host/nvme.ko
  kernel/drivers/nvmem/nvmem_core.ko
  ```

Los volúmenes NVMe son compatibles con la especificación NVMe 1.0e. Puede utilizar comandos NVMe con los volúmenes NVMe. Con Amazon Linux, puede instalar el paquete `nvme-cli` desde el repositorio utilizando el comando **yum install**. Con otras versiones soportadas de Linux, puede descargar el paquete `nvme-cli` si no está disponible en la imagen.

### instancias de Windows
<a name="nvme-ssd-windows"></a>

Las AMI para Windows de AWS más recientes de los siguientes sistemas operativos Windows contienen los controladores NVMe de AWS utilizados para interactuar con los volúmenes del almacén de instancias de SSD que se exponen como dispositivos de bloques NVMe para un mejor rendimiento:
+ Windows Server 2025
+ Windows Server 2022
+ Windows Server 2019
+ Windows Server 2016
+ Windows Server 2012 R2

Después de conectarse a la instancia, puede verificar que ve los volúmenes NVMe en el administrador de discos. En la barra de tareas, abra el menú contextual (haga clic con el botón derecho) del logotipo de Windows y elija **Administración de discos**.

Las AMI para Windows de AWS proporcionadas por Amazon incluyen el controlador NVMe de AWS. Si no está utilizando las AMI de Windows de AWS más recientes, [instale el controlador NVMe de AWS actual](aws-nvme-drivers.md).

## Volúmenes SSD sin NVMe
<a name="ssd-volumes"></a>

Las siguientes instancias admiten volúmenes de almacén de instancias que utilizan unidades de estado sólido que no son de NVMe para ofrecer un alto rendimiento de E/S de asignación al azar: C3, I2, M3, R3 y X1. Para obtener más información acerca de los volúmenes de almacenes de instancias que admite cada tipo de instancia, consulte [Límites de volumen del almacén de instancias para las instancias de EC2](instance-store-volumes.md).

## Rendimiento de E/S del volumen de almacén de instancias basado en SSD
<a name="ssd-volume-perf"></a>

A medida que llena los volúmenes de almacén de instancias basadas en SSD para la instancia, disminuye el número de IOPS de escritura que se pueden obtener. Esto se debe al trabajo adicional que debe realizar el controlador SSD para encontrar espacio disponible, volver a escribir los datos existentes y borrar el espacio no utilizado para que se pueda volver a escribir. Este proceso de recopilación de elementos no utilizados genera una amplificación de escritura interna en el SSD, expresada como ratio de operaciones de escritura de SSD con respecto a las operaciones de escritura del usuario. Este descenso del rendimiento es aún mayor si las operaciones de escritura no están en múltiplos de 4096 bytes o no están alineadas con un límite de 4096 bytes. Si escribe una cantidad más pequeña de bytes o bytes que no están alineados, el controlador SSD debe leer los datos circundantes y almacenar el resultado en una nueva ubicación. Este patrón genera una amplificación de escritura significativamente mayor, una mayor latencia y se reduce en gran medida el rendimiento de E/S.

Los controladores SSD pueden utilizar varias estrategias para reducir el impacto de la amplificación de escritura. Una de estas estrategias es reservar espacio en el almacén de instancias SSD para que el controlador pueda administrar con más eficiencia el espacio disponible para las operaciones de escritura. Esto se llama *aprovisionamiento excesivo*. Los volúmenes de almacén de instancias basadas en SSD proporcionados para una instancia no tienen espacio reservado para el aprovisionamiento excesivo. Para reducir la amplificación de escritura, recomendamos dejar un 10 % del volumen sin particiones, de modo que el controlador SSD pueda utilizarlo para el aprovisionamiento excesivo. Esto reduce el almacenamiento que se puede utilizar, pero aumenta el rendimiento aunque el disco esté a punto de llegar a su capacidad máxima.

Para los volúmenes de almacén de instancias que admiten TRIM, puede utilizar el comando TRIM para notificar al controlador SSD cuando deje de necesitar los datos que ha escrito. Esto aporta al controlador más espacio libre, lo que puede reducir la amplificación de escritura y aumentar el rendimiento. Para obtener más información, consulte [Soporte TRIM del volumen de almacén de instancias](#InstanceStoreTrimSupport).

## Soporte TRIM del volumen de almacén de instancias
<a name="InstanceStoreTrimSupport"></a>

Algunos tipos de instancias admiten volúmenes SSD con TRIM. Para obtener más información, consulte [Límites de volumen del almacén de instancias para las instancias de EC2](instance-store-volumes.md).

**nota**  
(Solo instancias de Windows) Las instancias que ejecutan Windows Server 2012 R2 admiten TRIM a partir de la versión 7.3.0 del controlador PV de AWS. Las instancias que ejecutan versiones anteriores de Windows Server no admiten TRIM.

Los volúmenes de almacenes de instancias que admiten TRIM se recortan por completo antes de asignarlos a la instancia. Estos volúmenes no están formateados con un sistema de archivos cuando se inicia una instancia, por lo que debe formatearlos antes de montarlos y usarlos. Para obtener acceso más rápidamente a estos volúmenes, debería omitir la operación TRIM cuando los formatee.

(Instancias de Windows) Para desactivar temporalmente la compatibilidad con TRIM durante el formateo inicial, use el comando `fsutil behavior set DisableDeleteNotify 1`. Una vez completado el formateo, vuelva a habilitar la compatibilidad con TRIM mediante `fsutil behavior set DisableDeleteNotify 0`.

Con volúmenes de almacenes de instancias que admiten TRIM, puede utilizar el comando TRIM para notificar al controlador SSD cuando deje de necesitar los datos que ha escrito. Esto aporta al controlador más espacio libre, lo que puede reducir la amplificación de escritura y aumentar el rendimiento. En las **instancias de Linux**, utilice el comando `fstrim` para habilitar el TRIM periódico. En las **instancias de Windows**, utilice el comando `fsutil behavior set DisableDeleteNotify 0` para asegurarse de que la compatibilidad con TRIM esté habilitada durante el funcionamiento normal.

# Adición de volúmenes del almacén de instancias a una instancia de EC2
<a name="add-instance-store-volumes"></a>

En el caso de los tipos de instancias con **volúmenes de almacén de instancias de NVMe**, todos los volúmenes de almacenes de instancias compatibles se adjuntan automáticamente a la instancia en el momento del lanzamiento. Los volúmenes de almacén de instancias NVMe se enumeran automáticamente y se les asigna un nombre de dispositivo.

Para los tipos de instancias con **volúmenes de almacén de instancias que no sean de NVMe**, como C1, C3, M1, M2, M3, R3, D2, H1, I2, G2, X1 y X1e, debe especificar manualmente las asignaciones de dispositivos de bloques para los volúmenes del almacén de instancias que desea adjuntar en el momento de la inicialización. Las asignaciones de dispositivos de bloques se pueden especificar en la solicitud de inicialización de la instancia o en la AMI utilizada para iniciar la instancia. Cada entrada de una asignación de dispositivos de bloques incluye un nombre de dispositivo y el volumen al que se mapea. Para obtener más información, consulte [Asignaciones de dispositivos de bloques para volúmenes en instancias de Amazon EC2](block-device-mapping-concepts.md)

**importante**  
Solo puede especificar volúmenes de almacenes de instancias al iniciar la instancia. No puede adjuntar volúmenes de almacenes de instancias a una instancia después de que la haya iniciado.

Después de iniciar una instancia, debe asegurarse de que los volúmenes de almacenes de instancias de su instancia están formateados y montados antes de usarlos. El volumen raíz del almacén de instancias se monta automáticamente.

**Consideración de los volúmenes raíz**  
Un mapeo de dispositivos de bloques siempre especifica el volumen raíz de la instancia. El volumen raíz se monta siempre automáticamente.

**Instancias de Linux**: el volumen raíz es un volumen de Amazon EBS o un volumen de almacén de instancias. Para instancias con un volumen de almacén de instancias para el volumen raíz, el tamaño de este volumen varía por AMI, pero el tamaño máximo es 10 GB. Para obtener más información, consulte [Tipo de volumen raíz](ComponentsAMIs.md#storage-for-the-root-device).

**Instancias de Windows**: el volumen raíz debe ser un volumen de Amazon EBS. No se admite el almacén de instancias para el volumen raíz.

**Topics**
+ [

# Adición de volúmenes del almacén de instancias a una AMI de Amazon EC2
](adding-instance-storage-ami.md)
+ [

# Adición de volúmenes del almacén de instancias a una instancia de EC2 durante la inicialización
](adding-instance-storage-instance.md)
+ [

# Instrucciones para hacer que un volumen del almacén de instancias esté disponible para utilizarlo en una instancia de EC2
](making-instance-stores-available-on-your-instances.md)

# Adición de volúmenes del almacén de instancias a una AMI de Amazon EC2
<a name="adding-instance-storage-ami"></a>

Puede crear una AMI con una asignación de dispositivos de bloques que incluya volúmenes de almacenes de instancias.

Si inicia una instancia que admite **volúmenes de almacén de instancias que no son NVMe** mediante una AMI que especifica asignaciones de dispositivos de bloque de volumen de almacén de instancias, la instancia incluye los volúmenes de almacén de instancias. Si el número de volúmenes de almacén de instancias en la asignación de dispositivo de bloque excede el número de volúmenes de almacén de instancias disponible para la instancia, los volúmenes adicionales de almacén de instancias se ignoran.

Si inicia una instancia que admite **volúmenes de almacén de instancias de NVMe** mediante una AMI que especifica las asignación de dispositivos de bloque de volumen de almacén de instancias, se ignoran las asignación de dispositivos de bloque de volumen del almacén de instancias. Las instancias que admiten los volúmenes de almacenes de instancias de NVMe obtienen todos sus volúmenes de almacén de instancias compatibles, independientemente de las asignaciones de dispositivos de bloques especificadas en la solicitud de inicialización de instancias y en la AMI. La asignación de dispositivos de estos volúmenes depende del orden en el que el sistema operativo enumere los volúmenes.

**Consideraciones**
+ El número de volúmenes de almacén de instancias disponibles depende del tipo de instancia. Para obtener más información, consulte [Volúmenes de almacén de instancias disponibles](instance-store-volumes.md#available-instance-store-volumes).
+ Debe especificar un nombre de dispositivo para cada dispositivo de bloques. Para obtener más información, consulte [Nombres de dispositivos para los volúmenes en las instancias de Amazon EC2](device_naming.md).
+ Cuando inicia una instancia, puede omitir los volúmenes de almacén de instancias que no sean NVMe especificados en la asignación de dispositivos de bloques de AMI o añadir volúmenes de almacén de instancias.
+ Para las instancias M3, especifique los volúmenes del almacén de instancias en la asignación de dispositivos de bloques de la instancia, no de la AMI. Amazon EC2 podría ignorar los volúmenes del almacén de instancias que solo se especifican en la asignación de dispositivos de bloques de la AMI.

------
#### [ Console ]

**Adición de volúmenes del almacén de instancias a una AMI basada en Amazon EBS**

1. Abra la consola de Amazon EC2 en [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. En el panel de navegación, elija **Instancias** y seleccione la instancia.

1. Elija **Acciones**, **Imagen y plantillas**, **Crear imagen**.

1. En el cuadro de diálogo **Crear imagen**, escriba un nombre significativo y una descripción para la imagen.

1. Por cada volumen de almacén de instancias que vaya a agregar, elija **Agregar volumen**, en **Tipo de volumen** seleccione un volumen de almacén de instancias y en **Dispositivo** seleccione un nombre de dispositivo. 

1. Elija **Crear imagen**.

------
#### [ AWS CLI ]

**Adición de volúmenes del almacén de instancias a una AMI**  
Utilice el comando [create-image](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-image.html) con la opción `--block-device-mappings` para especificar una asignación de dispositivos de bloques para una AMI respaldada por EBS. Utilice el comando [register-image](https://docs.aws.amazon.com/cli/latest/reference/ec2/register-image.html) con la opción `--block-device-mappings` para especificar una asignación de dispositivos de bloques para una AMI basada en Amazon S3.

```
--block-device-mappings file://mapping.json
```

La siguiente asignación de dispositivos de bloques agrega dos volúmenes de almacén de instancias.

```
[
    {
        "DeviceName": "/dev/sdc",
        "VirtualName": "ephemeral0"
    },
    {
        "DeviceName": "/dev/sdd",
        "VirtualName": "ephemeral1"
    }
]
```

------
#### [ PowerShell ]

**Adición de volúmenes del almacén de instancias a una AMI**  
Utilice el cmdlet [New-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Image.html) con el parámetro `-BlockDeviceMapping` para especificar una asignación de dispositivos de bloques para una AMI respaldada por EBS. Utilice el cmdlet [Register-EC2Image](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2Image.html) con el parámetro `-BlockDeviceMapping` para especificar una asignación de dispositivos de bloques para una AMI basada en Amazon S3.

```
-BlockDeviceMapping $bdm
```

La siguiente asignación de dispositivos de bloques agrega dos volúmenes de almacén de instancias.

```
$bdm = @()

$sdc = New-Object -TypeName Amazon.EC2.Model.BlockDeviceMapping
$sdc.DeviceName = "/dev/sdc"
$sdc.VirtualName = "ephemeral0"
$bdm += $sdc

$sdd = New-Object -TypeName Amazon.EC2.Model.BlockDeviceMapping
$sdd.DeviceName = "/dev/sdd"
$sdd.VirtualName = "ephemeral1"
$bdm += $sdd
```

------

# Adición de volúmenes del almacén de instancias a una instancia de EC2 durante la inicialización
<a name="adding-instance-storage-instance"></a>

Cuando inicializa un tipo de instancia con **volúmenes del almacén de instancias que no sean de NVMe**, como C1, C3, M1, M2, M3, R3, D2, H1, I2, X1 y X1e, debe especificar manualmente las asignaciones de dispositivos de bloques para los volúmenes del almacenamiento de instancias que desea asociar en el momento de la inicialización. Las asignaciones de dispositivos de bloques deben especificarse en la solicitud de inicialización de la instancia o en la AMI utilizada para iniciar la instancia.

Si la AMI incluye asignaciones de dispositivos de bloques para los volúmenes del almacén de instancias, no es necesario que especifique las asignaciones de dispositivos en bloque en la solicitud de inicialización de la instancia, a menos que necesite más volúmenes de almacén de instancias de los que se incluyen en la AMI.

Si la AMI no incluye las asignaciones de dispositivos de bloque para los volúmenes de almacén de instancias, debe especificar las asignaciones de dispositivos de bloque en la solicitud de inicialización de la instancia.

En el caso de los tipos de instancias con volúmenes de almacén de instancias de NVMe, todos los volúmenes de almacenes de instancias compatibles se adjuntan automáticamente a la instancia en el momento de la inicialización.

**Consideraciones**
+ El número de volúmenes de almacén de instancias disponibles depende del tipo de instancia. Para obtener más información, consulte [Volúmenes de almacén de instancias disponibles](instance-store-volumes.md#available-instance-store-volumes).
+ Debe especificar un nombre de dispositivo para cada dispositivo de bloques. Para obtener más información, consulte [Nombres de dispositivos para los volúmenes en las instancias de Amazon EC2](device_naming.md).
+ Para instancias M3, podría recibir volúmenes de almacenes de instancias aunque no las especifique en la asignación de dispositivos de bloques para la instancia.

------
#### [ Console ]

**Para especificar una asignación de dispositivos de bloques en una solicitud de lanzamiento de instancia**

1. Abra la consola de Amazon EC2 en [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. En el panel, elija **Iniciar instancia**.

1. En la sección **Imágenes de aplicaciones y sistema operativo**, seleccione la AMI que desea utilizar.

1. En la sección **Configurar almacenamiento**, la sección **Volúmenes de almacén de instancias** muestra los volúmenes del almacén de instancias que se pueden adjuntar a la instancia.

1. Para cada volumen de almacén de instancias que desee adjuntar, en **Nombre del dispositivo**, seleccione el nombre del dispositivo que desee utilizar.

1. Configure los ajustes de inicialización de instancias restantes según sea necesario y luego escoja **Iniciar instancia**.

------
#### [ AWS CLI ]

**Para especificar una asignación de dispositivos de bloques en una solicitud de lanzamiento de instancia**  
Utilice el comando [run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) con la opción `--block-device-mappings`.

```
--block-device-mappings file://mapping.json
```

La siguiente asignación de dispositivos de bloques agrega dos volúmenes de almacén de instancias.

```
[
    {
        "DeviceName": "/dev/sdc",
        "VirtualName": "ephemeral0"
    },
    {
        "DeviceName": "/dev/sdd",
        "VirtualName": "ephemeral1"
    }
]
```

------
#### [ PowerShell ]

**Para especificar una asignación de dispositivos de bloques en una solicitud de lanzamiento de instancia**  
Utilice el cmdlet [New-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Instance.html) con la opción `-BlockDeviceMapping`.

```
-BlockDeviceMapping $bdm
```

La siguiente asignación de dispositivos de bloques agrega dos volúmenes de almacén de instancias.

```
$bdm = @()

$sdc = New-Object -TypeName Amazon.EC2.Model.BlockDeviceMapping
$sdc.DeviceName = "/dev/sdc"
$sdc.VirtualName = "ephemeral0"
$bdm += $sdc

$sdd = New-Object -TypeName Amazon.EC2.Model.BlockDeviceMapping
$sdd.DeviceName = "/dev/sdd"
$sdd.VirtualName = "ephemeral1"
$bdm += $sdd
```

------

# Instrucciones para hacer que un volumen del almacén de instancias esté disponible para utilizarlo en una instancia de EC2
<a name="making-instance-stores-available-on-your-instances"></a>

Tras iniciar una instancia con volúmenes de almacén de instancias adjuntos, debe montarlos antes de poder acceder a ellos.

## Instancias de Linux
<a name="view-instance-store-linux"></a>

Puede formatear volúmenes con el sistema de archivos que elija después de iniciar la instancia.

**Para hacer que un volumen de almacén de instancias esté disponible en Linux**

1. Conéctese a la instancia utilizando un cliente SSH. Para obtener más información, consulte [Conexión a la instancia de Linux con SSH](connect-to-linux-instance.md).

1. Utilice el comando `df -h` para ver los volúmenes que están formateados y montados.

   ```
   $ df -h
   Filesystem      Size  Used Avail Use% Mounted on
   devtmpfs        3.8G   72K  3.8G   1% /dev
   tmpfs           3.8G     0  3.8G   0% /dev/shm
   /dev/nvme0n1p1  7.9G  1.2G  6.6G  15% /
   ```

1. Utilice `lsblk` para ver los volúmenes que se han mapeado en la inicialización, pero no están formateados ni montados.

   ```
   $ lsblk
   NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
   nvme0n1       259:1    0    8G  0 disk
   ├─nvme0n1p1   259:2    0    8G  0 part /
   └─nvme0n1p128 259:3    0    1M  0 part
   nvme1n1       259:0    0 69.9G  0 disk
   ```

1. Para formatear y montar un volumen de almacén de instancias que solo se ha asignado, haga lo siguiente:

   1. Cree un sistema de archivos en el dispositivo utilizando el comando `mkfs`.

      ```
      $ sudo mkfs -t xfs /dev/nvme1n1
      ```

   1. Cree un directorio en el que montar el dispositivo utilizando el comando `mkdir`.

      ```
      $ sudo mkdir /data
      ```

   1. Monte el dispositivo en el directorio recién creado utilizando el comando `mount`.

      ```
      $ sudo mount /dev/nvme1n1 /data
      ```

## instancias de Windows
<a name="view-instance-store-windows"></a>

En el caso de las instancias de Windows, reformateamos los volúmenes de almacenes de instancias con el sistema de archivos NTFS.

Puede ver los volúmenes de almacén de instancias utilizando la administración de discos de Windows. Para obtener más información, consulte [Enumeración de discos que no son NVMe](windows-list-disks.md#windows-disks).

**Para montar manualmente un volumen de almacén de instancias**

1. Elija **Inicio**, escriba **Administración de equipos**, y, a continuación, pulse **Intro**.

1. En el panel izquierdo, elija **Administración de discos**.

1. Si se le pide que inicialice el volumen, elija el volumen que desea inicializar, seleccione el tipo de partición requerido según su caso de uso y, a continuación, elija **Aceptar**.

1. En la lista de volúmenes, haga clic con el botón secundario en el volumen que desea montar y, a continuación, elija **Nuevo volumen simple**.

1. En el asistente, elija **Siguiente**.

1. En la pantalla Especificar tamaño de volumen, elija **Siguiente** para utilizar el tamaño máximo del volumen. Como opción, elija un tamaño de volumen que esté entre el espacio mínimo y el máximo en disco.

1. En la pantalla Asignar una letra de unidad o ruta de acceso, realice una de las siguientes acciones y elija **Siguiente**.
   + Para montar el volumen con una letra de unidad, elija **Asignar la siguiente letra de unidad** y, a continuación, elija la letra de unidad que desee utilizar.
   + Para montar el volumen como carpeta, elija **Montar en la siguiente carpeta NTFS vacía** y, a continuación, elija **Examinar** para crear o seleccionar la carpeta que desea utilizar.
   + Para montar el volumen sin una letra de unidad o ruta de acceso, elija **No asignar una letra de unidad o ruta de unidad**.

1. En la pantalla Formato de partición, especifique si desea dar formato o no al volumen. Si elige dar formato al volumen, elija el sistema de archivos y el tamaño de unidad necesarios y especifique una etiqueta de volumen.

1. Elija **Siguiente**, **Finalizar**.

# Habilitación del volumen de intercambio del almacén de instancias para las instancias M1 y C1 de EC2
<a name="instance-store-swap-volumes"></a>

**nota**  
Este tema se aplica a las instancias `c1.medium` y `m1.small` de Linux únicamente.

Los tipos de instancia `c1.medium` y `m1.small` tienen una cantidad limitada de memoria física. Por lo tanto, disponen de un volumen de intercambio de 900 MiB durante su inicio para actuar como memoria virtual, o *espacio de intercambio* para el sistema Linux. El espacio de intercambio en Linux puede utilizarse cuando un sistema necesita más memoria que la que tiene asignada físicamente. Cuando se habilita el espacio de intercambio, los sistemas Linux pueden intercambiar páginas de memoria que se utilizan con poca frecuencia de la memoria física al espacio de intercambio (una partición especial o un archivo de intercambio en un sistema de archivos existente) y liberar ese espacio para las páginas de memoria que requieren acceso de alta velocidad.

**nota**  
El uso del espacio de intercambio para las páginas de memoria no es tan rápido ni eficiente como utilizar RAM. Si la carga de trabajo pagina memoria con regularidad en el espacio de intercambio, debería pensar en la posibilidad de migrarlo a un tipo de instancia de mayor tamaño con más RAM. Para obtener más información, consulte [Cambios de tipos de instancias de Amazon EC2](ec2-instance-resize.md).
Aunque el kernel de Linux considera este espacio de intercambio como una partición en el volumen raíz, en realidad es un volumen del almacén de instancias distinto, sin importar el tipo de volumen raíz.

Amazon Linux habilita y utiliza automáticamente este espacio de intercambio, pero es posible que la AMI necesite algunos pasos adicionales para reconocer y utilizar este espacio de intercambio. Para comprobar si la instancia utiliza el espacio de intercambio, puede utilizar el comando **swapon -s**.

```
[ec2-user ~]$ swapon -s
Filename                                Type            Size    Used    Priority
/dev/xvda3                              partition       917500  0       -1
```

La instancia anterior tiene adjuntado y habilitado un volumen de intercambio de 900 MiB. Si no ve un volumen de intercambio con este comando, es posible que tenga que habilitar el espacio de intercambio del dispositivo. Para comprobar los discos disponibles, utilice el comando **lsblk**.

```
[ec2-user ~]$ lsblk
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
xvda1 202:1    0    8G  0 disk /
xvda3 202:3    0  896M  0 disk
```

Aquí, está disponible el volumen de intercambio `xvda3` para la instancia, pero no está habilitado (fíjese en que el campo `MOUNTPOINT` está vacío). Puede habilitar el volumen de intercambio con el comando **swapon**.

**nota**  
Tiene que colocar `/dev/` como prefijo en el nombre del dispositivo que aparece con el comando **lsblk**. Es posible que su dispositivo tenga otro nombre, como `sda3`, `sde3` o `xvde3`. Utilice el nombre de dispositivo de su sistema en el siguiente comando.

```
[ec2-user ~]$ sudo swapon /dev/xvda3
```

Ahora, el espacio de intercambio debería aparecer en la salida de **lsblk** y **swapon -s**.

```
[ec2-user ~]$ lsblk
NAME  MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
xvda1 202:1    0    8G  0 disk /
xvda3 202:3    0  896M  0 disk [SWAP]
[ec2-user ~]$ swapon -s
Filename                                Type            Size    Used    Priority
/dev/xvda3                              partition       917500  0       -1
```

También tiene que editar el archivo `/etc/fstab` para que este espacio de intercambio se habilite automáticamente en cada arranque del sistema.

```
[ec2-user ~]$ sudo vim /etc/fstab
```

Adjunte la siguiente línea al archivo `/etc/fstab` (utilizando el nombre del dispositivo de intercambio del sistema):

```
/dev/xvda3       none    swap    sw  0       0
```

**Para utilizar un volumen de almacén de instancias como espacio de intercambio**

Se puede utilizar cualquier volumen de almacén de instancias como espacio de intercambio. Por ejemplo, el tipo de instancia `m3.medium` incluye un volumen de almacén de instancias SSD de 4 GB que es apropiado para el espacio de intercambio. Si el volumen de almacén de instancias es mucho mayor (por ejemplo, 350 GB), puede pensar en la posibilidad de particionar el volumen con una partición de intercambio menor de 4-8 GB y el resto para un volumen de datos.
**nota**  
Este procedimiento solo se aplica a los tipos de instancias que admiten el almacenamiento de instancias. Para ver una lista de los tipos de instancia admitidos, consulte [Límites de volumen del almacén de instancias para las instancias de EC2](instance-store-volumes.md).

1. <a name="step_swap_start"></a>Muestre los dispositivos de bloques adjuntados a la instancia para obtener el nombre de dispositivo del volumen de almacén de instancias.

   ```
   [ec2-user ~]$ lsblk -p
   NAME       MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
   /dev/xvdb  202:16   0   4G  0 disk /media/ephemeral0
   /dev/xvda1 202:1    0   8G  0 disk /
   ```

   En este ejemplo, el volumen de almacén de instancias es `/dev/xvdb`. Dado que se trata de una instancia de Amazon Linux, el volumen de almacén de instancias se formatea y se monta en `/media/ephemeral0`, aunque no todos los sistemas operativos Linux hacen esto automáticamente.

1. (Opcional) Si el volumen de almacén de instancias está montado (muestra un `MOUNTPOINT` en la salida del comando **lsblk**), tiene que desmontarlo con el siguiente comando.

   ```
   [ec2-user ~]$ sudo umount /dev/xvdb
   ```

1. <a name="step_mkswap"></a>Configure un área de intercambio de Linux en el dispositivo mediante el comando **mkswap**.

   ```
   [ec2-user ~]$ sudo mkswap /dev/xvdb
   mkswap: /dev/xvdb: warning: wiping old ext3 signature.
   Setting up swapspace version 1, size = 4188668 KiB
   no label, UUID=b4f63d28-67ed-46f0-b5e5-6928319e620b
   ```

1. Habilite el espacio de intercambio.

   ```
   [ec2-user ~]$ sudo swapon /dev/xvdb
   ```

1. <a name="step_swap_enable"></a>Compruebe que el nuevo espacio de intercambio se está utilizando.

   ```
   [ec2-user ~]$ swapon -s
   Filename				Type		Size	Used	Priority
   /dev/xvdb                              	partition	4188668	0	-1
   ```

1. Edite el archivo `/etc/fstab` para que este espacio de intercambio se habilite automáticamente en cada arranque del sistema.

   ```
   [ec2-user ~]$ sudo vim /etc/fstab
   ```

   Si el archivo `/etc/fstab` tiene una entrada para `/dev/xvdb` (o `/dev/sdb`), cámbiela para que se corresponda con la siguiente línea; si no tiene una entrada para este dispositivo, adjunte la siguiente línea al archivo `/etc/fstab` (utilizando el nombre del dispositivo de intercambio del sistema):

   ```
   /dev/xvdb       none    swap    sw  0       0
   ```
**importante**  
Los datos de los volúmenes del almacén de instancias se pierden cuando una instancia se detiene o hiberna; esto incluye el formato del espacio de intercambio de almacenes de instancias creado en [Step 3](#step_mkswap). Si detiene y reinicia una instancia que se ha configurado para utilizar el espacio de intercambio del almacén de instancias, debe repetir [Step 1](#step_swap_start) a [Step 5](#step_swap_enable) en el nuevo volumen de almacén de instancias.

# Inicialización de los volúmenes del almacén de instancias en las instancias de EC2
<a name="disk-performance"></a>

Debido al modo en que Amazon EC2 virtualiza los discos, la primera escritura en cualquier ubicación en algunos volúmenes de almacenes de instancias se realiza a menor velocidad que las escrituras siguientes. Para la mayoría de las aplicaciones, la amortización de este costo a lo largo de la vida útil de la instancia es aceptable. Sin embargo, si necesita un alto rendimiento del disco, le recomendamos que inicialice sus unidades escribiendo una vez en cada ubicación de unidad antes de su uso en producción.

**nota**  
Los tipos de instancia con soporte de unidades de estado sólido (SSD) conectadas directamente y TRIM ofrecen el rendimiento máximo en su inicio, sin inicialización. Para obtener más información acerca del almacén de instancia para cada tipo de instancia, consulte [Límites de volumen del almacén de instancias para las instancias de EC2](instance-store-volumes.md).

Si necesita más flexibilidad en latencia o rendimiento, es recomendable utilizar Amazon EBS.

Para inicializar los volúmenes de almacenes de instancias, utilice los siguientes comandos `dd` según el almacén que desee inicializar (por ejemplo, `/dev/sdb` o `/dev/nvme1n1`).

**nota**  
Asegúrese de desmontar la unidad antes de utilizar este comando.   
La inicialización puede llevar mucho tiempo (unas 8 horas para una instancia extragrande).

Para inicializar los volúmenes de almacenes de instancias, utilice los siguientes comandos en los tipos de instancias `m1.large`, `m1.xlarge`, `c1.xlarge`, `m2.xlarge`, `m2.2xlarge` y `m2.4xlarge`:

```
dd if=/dev/zero of=/dev/sdb bs=1M          
dd if=/dev/zero of=/dev/sdc bs=1M          
dd if=/dev/zero of=/dev/sdd bs=1M          
dd if=/dev/zero of=/dev/sde bs=1M
```

Para realizar la inicialización en todos los volúmenes de almacenes de instancias al mismo tiempo, utilice el siguiente comando: 

```
dd if=/dev/zero bs=1M|tee /dev/sdb|tee /dev/sdc|tee /dev/sde > /dev/sdd
```

Al configurar las unidades para RAID, estas se inicializan escribiendo en cada ubicación de las unidades. Al configurar la RAID basada en software, asegúrese de cambiar la velocidad de reconstrucción mínima: 

```
echo $((30*1024)) > /proc/sys/dev/raid/speed_limit_min
```

# Estadísticas de rendimiento detalladas para volúmenes del almacén de instancias de Amazon EC2
<a name="nvme-detailed-performance-stats"></a>

Amazon EC2 proporciona estadísticas de rendimiento de alta resolución y en tiempo real para los volúmenes del almacén de instancias de NVMe conectados a las instancias de Amazon EC2 basadas en Nitro. Estas estadísticas se presentan como contadores agregados que se retienen durante toda la vida útil de la instancia. Las estadísticas proporcionan detalles sobre el número acumulado de operaciones, los bytes enviados y recibidos, el tiempo dedicado a las operaciones de E/S de lectura y escritura y los histogramas de las operaciones de E/S de lectura y escritura. Si bien estas estadísticas mantienen la coherencia con las [estadísticas de rendimiento detalladas de Amazon EBS](https://docs.aws.amazon.com/ebs/latest/userguide/nvme-detailed-performance-stats.html), también incluyen histogramas de latencia detallados que están desglosados por tamaño de E/S y que pueden proporcionar información más detallada sobre los patrones de rendimiento del almacenamiento. Esta visibilidad mejorada le permite identificar con precisión qué tamaños de E/S específicos tienen problemas de latencia, lo que le permite optimizar el rendimiento de las aplicaciones y solucionar los problemas de forma más eficaz.

Puede recopilar estas estadísticas con una granularidad de intervalos de hasta 1 segundo. Si las solicitudes se realizan con mayor frecuencia que en intervalos de 1 segundo, el controlador NVMe podría poner en cola las solicitudes, junto con otros comandos de administración, para procesarlas en un momento posterior.

**Consideraciones**
+ Las volúmenes del almacén de instancias de NVMe asociados a una instancia basada en Nitro son los únicos que admiten las estadísticas.
+ Los contadores no persisten en las paradas y los reinicios de la instancia.
+ Las estadísticas están disponibles sin costo adicional.

## Statistics
<a name="nvme-stats"></a>

El dispositivo de bloques de NVMe proporciona las siguientes estadísticas:


| Nombre de la estadística | Nombre completo | Tipo | Descripción | 
| --- | --- | --- | --- | 
| total\$1read\$1ops | Total de operaciones de lectura | Contador | El número total de operaciones de lectura completadas. | 
| total\$1write\$1ops | Total de operaciones de escritura | Contador | El número total de operaciones de escritura completadas. | 
| total\$1read\$1bytes | Total de bytes de lectura | Contador | El número total de bytes de lectura transferidos. | 
| total\$1write\$1bytes | Total de bytes de escritura | Contador | El número total de bytes de escritura transferidos. | 
| total\$1read\$1time | Tiempo total de lectura | Contador | El tiempo total empleado, en microsegundos, por todas las operaciones de lectura completadas. | 
| total\$1write\$1time | Tiempo total de escritura | Contador | El tiempo total empleado, en microsegundos, por todas las operaciones de escritura completadas. | 
| instance\$1store\$1volume\$1performance\$1exceeded\$1iops | La demanda total de tiempo superó el límite máximo de IOPS del volumen | Contador | El tiempo total, en microsegundos, durante el que las solicitudes de IOPS superaron el límite máximo de IOPS del volumen. Cualquier valor superior a 0 indica que su carga de trabajo demandó más IOPS de las que el volumen podía ofrecer. Lo ideal es que el recuento incremental de esta métrica, entre dos horas de instantáneas, sea mínimo. | 
| instance\$1store\$1volume\$1performance\$1exceeded\$1tp | La demanda total de tiempo superó el límite máximo de rendimiento del volumen | Contador | El tiempo total, en microsegundos, durante el que el rendimiento superó el límite máximo de rendimiento del volumen. Cualquier valor superior a 0 indica que su carga de trabajo demandó más rendimiento del que el volumen podía ofrecer. Lo ideal es que el recuento incremental de esta métrica, entre dos horas de instantáneas, sea mínimo. | 
| volume\$1queue\$1length | Longitud de cola del volumen | Punto en el tiempo | El número de operaciones de lectura y escritura a la espera de completarse. | 
| read\$1io\$1latency\$1histogram | Histograma de E/S de lectura | Histograma \$1 | El número de operaciones de lectura completadas en cada intervalo de latencia, en microsegundos.  | 
| write\$1io\$1latency\$1histogram | Histograma de E/S de escritura | Histograma \$1 | El número de operaciones de escritura completadas en cada intervalo de latencia, en microsegundos.  | 

**nota**  
\$1 Las estadísticas del histograma representan solo las operaciones de E/S que se completaron correctamente. Las operaciones de E/S paradas o dañadas no se incluyen, pero se mostrarán en las estadísticas `volume_queue_length`, que se presentan como una estadística puntual.

## Acceso a las estadísticas
<a name="nvme-stat-access"></a>

Se debe acceder a las estadísticas directamente desde la instancia a la que están conectados los volúmenes del almacén de instancias. Puede acceder a las estadísticas con uno de los siguientes métodos:

### Instancias de Linux
<a name="nvme-stat-access-linux"></a>

------
#### [ Amazon CloudWatch ]

Puede configurar el agente de Amazon CloudWatch para que recopile las estadísticas de su instancia y para que estén disponibles como métricas personalizadas en CloudWatch. A continuación, puede utilizar las métricas de CloudWatch para analizar los patrones de E/S, realizar un seguimiento de las tendencias de rendimiento, crear paneles personalizados y configurar alarmas automatizadas en función de los umbrales de rendimiento.

Para obtener más información sobre la configuración del agente de CloudWatch, consulte [Recopilar métricas de volumen del almacén de instancias de Amazon EC2](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Container-Insights-metrics-instance-store-Collect.html).

------
#### [ nvme-cli tool ]

**Para acceder a las estadísticas**

1. Conéctese a la instancia a la que se asocia el volumen.

1. Las AMI de Amazon Linux 2023 publicadas después del 15 de septiembre de 2025 incluyen la versión más reciente de la herramienta `nvme-cli`. Si utiliza una AMI de Amazon Linux anterior, actualice la herramienta `nvme-cli`.

   ```
   sudo yum install nvme-cli
   ```

1. Ejecute el siguiente comando y especifique el nombre del dispositivo para el volumen.

   ```
   sudo nvme amzn stats /dev/nvme0n1
   ```

Las estadísticas también proporcionan histogramas de latencia detallados que están desglosados por tamaño de E/S. Para ver las estadísticas desglosadas por tamaño de E/S, incluya la opción `--details`. Por ejemplo:

```
sudo nvme amzn stats --details /dev/nvme0n1
```

Puede obtener más información sobre cómo utilizar la herramienta; para ello, especifique la opción `--help`. Por ejemplo:

```
sudo nvme amzn stats --help
```

------

### instancias de Windows
<a name="nvme-stat-access-windows"></a>

------
#### [ nvme\$1amzn.exe tool ]

**Para acceder a las estadísticas**

1. Conéctese a la instancia a la que se asocia el volumen.

1. Asegúrese de que está utilizando la versión `1.7.0` del controlador de AWSNVMe o una versión posterior. Para obtener más información sobre la actualización del controlador AWSNVMe, consulte [Controladores NVMe de AWS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/aws-nvme-drivers.html).

1. Obtenga el número de disco del volumen. Para obtener más información, consulte [Asignación de discos NVMe de una instancia de Windows de Amazon EC2 a volúmenes](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/windows-list-disks-nvme.html).

1. Ejecute el siguiente comando como administrador y especifique el número de disco para el volumen.

   ```
   .\nvme_amzn.exe stats disk_number
   ```

Las estadísticas también proporcionan histogramas de latencia detallados que están desglosados por tamaño de E/S. Para ver las estadísticas desglosadas por tamaño de E/S, incluya la opción `--details`. Por ejemplo:

```
.\nvme_amzn.exe stats --details disk_number
```

------