

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# PutLifecycleConfiguration
<a name="API_PutLifecycleConfiguration"></a>

Utilice esta acción para gestionar el almacenamiento de su sistema de archivos. A `LifecycleConfiguration` consta de uno o más objetos `LifecyclePolicy` que definen lo siguiente:
+  **`TransitionToIA`**: Cuándo mover los archivos del sistema de archivos del almacenamiento principal (clase de almacenamiento Estándar) al almacenamiento de Acceso poco frecuente (IA).
+  **`TransitionToArchive`**: Cuándo mover los archivos del sistema de archivos de su clase de almacenamiento actual (clase de almacenamiento IA o Estándar) al almacenamiento Archivado.

  Los sistemas de archivos no pueden realizar la transición al almacenamiento Archivado antes de pasar al almacenamiento IA. Por lo tanto, no TransitionToArchive debe configurarse o debe ser posterior a TransitionTo IA.
**nota**  
 La clase de almacenamiento Archivo solo está disponible para sistemas de archivos que utilicen el modo de rendimiento elástico y el modo de rendimiento de uso general. 
+  **`TransitionToPrimaryStorageClass`**: si se deben volver a mover los archivos del sistema de archivos al almacenamiento principal (clase de almacenamiento Estándar) una vez que se haya accedido a ellos en almacenamiento IA o Archivado.

Para obtener más información, consulte [ Administración del almacenamiento del sistema de archivos](https://docs.aws.amazon.com/efs/latest/ug/lifecycle-management-efs.html).

Cada sistema de archivos de Amazon EFS admite una configuración de ciclo de vida, que se aplica a todos los archivos del sistema de archivos. Si ya existe un objeto `LifecycleConfiguration` para el sistema de archivos especificado, una llamada a `PutLifecycleConfiguration` modifica la configuración existente. Una llamada `PutLifecycleConfiguration` con una matriz `LifecyclePolicies` vacía en el cuerpo de la solicitud elimina cualquier otra `LifecycleConfiguration` existente. En la solicitud, especifique lo siguiente: 
+ El ID del sistema de archivos para el que va a habilitar, deshabilitar o modificar la administración del ciclo de vida.
+ Una matriz `LifecyclePolicies` de objetos `LifecyclePolicy` que definen cuándo mover los archivos al almacenamiento de IA, al almacenamiento Archivado y de vuelta al almacenamiento principal.
**nota**  
Amazon EFS requiere que cada objeto `LifecyclePolicy` tenga una sola transición, por lo que la matriz `LifecyclePolicies` debe estar estructurada con objetos `LifecyclePolicy` independientes. Para más información, consulte los ejemplos de solicitudes en la siguiente sección.

Esta operación necesita permisos para la operación `elasticfilesystem:PutLifecycleConfiguration`.

Para aplicar un `LifecycleConfiguration` objeto a un sistema de archivos cifrados, necesita los mismos AWS Key Management Service permisos que cuando creó el sistema de archivos cifrados.

## Sintaxis de la solicitud
<a name="API_PutLifecycleConfiguration_RequestSyntax"></a>

```
PUT /2015-02-01/file-systems/FileSystemId/lifecycle-configuration HTTP/1.1
Content-type: application/json

{
   "LifecyclePolicies": [ 
      { 
         "TransitionToArchive": "string",
         "TransitionToIA": "string",
         "TransitionToPrimaryStorageClass": "string"
      }
   ]
}
```

## Parámetros de solicitud del URI
<a name="API_PutLifecycleConfiguration_RequestParameters"></a>

La solicitud utiliza los siguientes parámetros URI.

 ** [FileSystemId](#API_PutLifecycleConfiguration_RequestSyntax) **   <a name="efs-PutLifecycleConfiguration-request-uri-FileSystemId"></a>
El ID del sistema de archivos para el que crea el objeto `LifecycleConfiguration` (cadena).  
Limitaciones de longitud: longitud máxima de 128 caracteres.  
Patrón: `^(arn:aws[-a-z]*:elasticfilesystem:[0-9a-z-:]+:file-system/fs-[0-9a-f]{8,40}|fs-[0-9a-f]{8,40})$`   
Obligatorio: sí

## Cuerpo de la solicitud
<a name="API_PutLifecycleConfiguration_RequestBody"></a>

La solicitud acepta los siguientes datos en formato JSON.

 ** [LifecyclePolicies](#API_PutLifecycleConfiguration_RequestSyntax) **   <a name="efs-PutLifecycleConfiguration-request-LifecyclePolicies"></a>
Una matriz de objetos de `LifecyclePolicy` que definen el objeto del sistema de archivos de `LifecycleConfiguration`. Un objeto `LifecycleConfiguration` informa a la administración del ciclo de vida de lo siguiente:  
+  **`TransitionToIA`**: Cuándo mover los archivos del sistema de archivos del almacenamiento principal (clase de almacenamiento Estándar) al almacenamiento de Acceso poco frecuente (IA).
+  **`TransitionToArchive`**: Cuándo mover los archivos del sistema de archivos de su clase de almacenamiento actual (clase de almacenamiento IA o Estándar) al almacenamiento Archivado.

  Los sistemas de archivos no pueden realizar la transición al almacenamiento Archivado antes de pasar al almacenamiento IA. Por lo tanto, no TransitionToArchive debe configurarse o debe ser posterior a TransitionTo IA.
**nota**  
La clase de almacenamiento Archivo solo está disponible para sistemas de archivos que utilicen el modo de rendimiento elástico y el modo de rendimiento de uso general. 
+  **`TransitionToPrimaryStorageClass`**: si se deben volver a mover los archivos del sistema de archivos al almacenamiento principal (clase de almacenamiento Estándar) una vez que se haya accedido a ellos en almacenamiento IA o Archivado.
Cuando se utiliza el comando `put-lifecycle-configuration` de la CLI o la acción `PutLifecycleConfiguration` de la API, Amazon EFS requiere que cada objeto `LifecyclePolicy` tenga una sola transición. Esto significa que en un órgano de solicitud, `LifecyclePolicies` debe estructurarse como una matriz de objetos `LifecyclePolicy`, un objeto para cada transición de almacenamiento. Para más información, consulte los ejemplos de solicitudes en la siguiente sección.
Tipo: matriz de objetos [LifecyclePolicy](API_LifecyclePolicy.md)  
Miembros de la matriz: número máximo de 3 elementos.  
Obligatorio: sí

## Sintaxis de la respuesta
<a name="API_PutLifecycleConfiguration_ResponseSyntax"></a>

```
HTTP/1.1 200
Content-type: application/json

{
   "LifecyclePolicies": [ 
      { 
         "TransitionToArchive": "string",
         "TransitionToIA": "string",
         "TransitionToPrimaryStorageClass": "string"
      }
   ]
}
```

## Elementos de respuesta
<a name="API_PutLifecycleConfiguration_ResponseElements"></a>

Si la acción se realiza correctamente, el servicio devuelve una respuesta HTTP 200.

El servicio devuelve los datos siguientes en formato JSON.

 ** [LifecyclePolicies](#API_PutLifecycleConfiguration_ResponseSyntax) **   <a name="efs-PutLifecycleConfiguration-response-LifecyclePolicies"></a>
Un conjunto de políticas de administración del ciclo de vida. EFS admite un máximo de una política por sistema de archivos.  
Tipo: matriz de objetos [LifecyclePolicy](API_LifecyclePolicy.md)  
Miembros de la matriz: número máximo de 3 elementos.

## Errores
<a name="API_PutLifecycleConfiguration_Errors"></a>

 ** BadRequest **   
Se devuelve si la solicitud tiene un formato incorrecto o contiene un error, como un valor de parámetro no válido, o falta un parámetro obligatorio.    
 ** ErrorCode **   
El código de error es una cadena que identifica de forma exclusiva una condición de error. Está diseñado para que los programas que detectan y administran errores por tipo puedan leerlo y comprenderlo.   
 ** Message **   
El mensaje de error contiene una descripción genérica de la condición de error en inglés. Está destinado a un público humano. Los programas simples muestran el mensaje directamente al usuario final si se detecta una condición de error que no sabe cómo controlar o no le interesa hacerlo. Los programas sofisticados con un control de errores más exhaustivo y una internacionalización adecuada tienen más probabilidades de ignorar el mensaje de error.
Código de estado HTTP: 400

 ** FileSystemNotFound **   
Se devuelve si el `FileSystemId` valor especificado no existe en el del Cuenta de AWS solicitante.    
 ** ErrorCode **   
El código de error es una cadena que identifica de forma exclusiva una condición de error. Está diseñado para que los programas que detectan y administran errores por tipo puedan leerlo y comprenderlo.   
 ** Message **   
El mensaje de error contiene una descripción genérica de la condición de error en inglés. Está destinado a un público humano. Los programas simples muestran el mensaje directamente al usuario final si se detecta una condición de error que no sabe cómo controlar o no le interesa hacerlo. Los programas sofisticados con un control de errores más exhaustivo y una internacionalización adecuada tienen más probabilidades de ignorar el mensaje de error.
Código de estado HTTP: 404

 ** IncorrectFileSystemLifeCycleState **   
Se devuelve si el estado del ciclo de vida del sistema de archivos es no “disponible”.    
 ** ErrorCode **   
El código de error es una cadena que identifica de forma exclusiva una condición de error. Está diseñado para que los programas que detectan y administran errores por tipo puedan leerlo y comprenderlo.   
 ** Message **   
El mensaje de error contiene una descripción genérica de la condición de error en inglés. Está destinado a un público humano. Los programas simples muestran el mensaje directamente al usuario final si se detecta una condición de error que no sabe cómo controlar o no le interesa hacerlo. Los programas sofisticados con un control de errores más exhaustivo y una internacionalización adecuada tienen más probabilidades de ignorar el mensaje de error.
Código de estado HTTP: 409

 ** InternalServerError **   
Se devuelve si se ha producido un error en el servidor.    
 ** ErrorCode **   
El código de error es una cadena que identifica de forma exclusiva una condición de error. Está diseñado para que los programas que detectan y administran errores por tipo puedan leerlo y comprenderlo.   
 ** Message **   
El mensaje de error contiene una descripción genérica de la condición de error en inglés. Está destinado a un público humano. Los programas simples muestran el mensaje directamente al usuario final si se detecta una condición de error que no sabe cómo controlar o no le interesa hacerlo. Los programas sofisticados con un control de errores más exhaustivo y una internacionalización adecuada tienen más probabilidades de ignorar el mensaje de error.
Código de estado HTTP: 500

## Ejemplos
<a name="API_PutLifecycleConfiguration_Examples"></a>

### Crear una configuración de ciclo de vida
<a name="API_PutLifecycleConfiguration_Example_1"></a>

En el siguiente ejemplo, se crea un objeto `LifecyclePolicy` mediante la acción `PutLifecycleConfiguration`. En este ejemplo se crea una política de ciclo de vida que indica a EFS que haga lo siguiente:
+ Mover todos los archivos del sistema de archivos a los que no se haya accedido en almacenamiento Estándar en los últimos 30 días a la clase de almacenamiento IA.
+ Mover todos los archivos del sistema de archivos a los que no se haya accedido en almacenamiento Estándar en los últimos 90 días a la clase de almacenamiento Archivado. 
+ Vuelva a mover los archivos al almacenamiento Estándar una vez que se haya accedido a ellos en almacenamiento IA o Archivado. La clase de almacenamiento Archivo solo está disponible para sistemas de archivos que utilicen el modo de rendimiento elástico y el modo de rendimiento de uso general.

Para obtener más información, consulte [Clases de almacenamiento de EFS](https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html) y [Administración del almacenamiento del sistema de archivos](https://docs.aws.amazon.com/efs/latest/ug/lifecycle-management-efs.html).

#### Solicitud de muestra
<a name="API_PutLifecycleConfiguration_Example_1_Request"></a>

```
PUT /2015-02-01/file-systems/fs-0123456789abcdefb/lifecycle-configuration HTTP/1.1
Host: elasticfilesystem.us-west-2.amazonaws.com
x-amz-date: 20181122T232908Z
Authorization: <...>
Content-type: application/json
Content-Length: 86

{
   "LifecyclePolicies": [
      {
         "TransitionToArchive": "AFTER_90_DAYS"
      },
      {
         "TransitionToIA": "AFTER_30_DAYS"
      },
      {
         "TransitionToPrimaryStorage": "AFTER_1_ACCESS"
      }
   ]
}
```

#### Respuesta de ejemplo
<a name="API_PutLifecycleConfiguration_Example_1_Response"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: 01234567-89ab-cdef-0123-456789abcdef
Content-type: application/json
Content-Length: 86

{
    "LifecyclePolicies": [
      {
         "TransitionToArchive": "AFTER_90_DAYS"
      },
      {
         "TransitionToIA": "AFTER_30_DAYS"
      },
      {
         "TransitionToPrimaryStorage": "AFTER_1_ACCESS"
      }
    ]
}
```

### Ejemplo de solicitud put-lifecycle-configuration CLI
<a name="API_PutLifecycleConfiguration_Example_2"></a>

Este ejemplo ilustra un uso de PutLifecycleConfiguration.

#### Solicitud de muestra
<a name="API_PutLifecycleConfiguration_Example_2_Request"></a>

```
aws efs put-lifecycle-configuration \
   --file-system-id fs-0123456789abcdefb \
   --lifecycle-policies "[{"TransitionToArchive":"AFTER_90_DAYS"},
     {"TransitionToIA":"AFTER_30_DAYS"},
     {"TransitionToPrimaryStorageClass":"AFTER_1_ACCESS"}]  
   --region us-west-2 \
   --profile adminuser
```

#### Respuesta de ejemplo
<a name="API_PutLifecycleConfiguration_Example_2_Response"></a>

```
{
   "LifecyclePolicies": [
       {
           "TransitionToArchive": "AFTER_90_DAYS"
       },
       {
           "TransitionToIA": "AFTER_30_DAYS"
       },
       {
           "TransitionToPrimaryStorageClass": "AFTER_1_ACCESS"
       }
   ]
}
```

### Deshabilitar la administración del ciclo de vida
<a name="API_PutLifecycleConfiguration_Example_3"></a>

En el siguiente ejemplo, se deshabilita la administración del ciclo de vida del sistema de archivos especificado.

#### Solicitud de muestra
<a name="API_PutLifecycleConfiguration_Example_3_Request"></a>

```
PUT /2015-02-01/file-systems/fs-01234567/lifecycle-configuration HTTP/1.1
Host: elasticfilesystem.us-west-2.amazonaws.com
x-amz-date: 20181122T232908Z
Authorization: <...>
Content-type: application/json
Content-Length: 86

{
   "LifecyclePolicies": [ ]
}
```

#### Respuesta de ejemplo
<a name="API_PutLifecycleConfiguration_Example_3_Response"></a>

```
HTTP/1.1 200 OK
x-amzn-RequestId: 01234567-89ab-cdef-0123-456789abcdef
Content-type: application/json
Content-Length: 86

{
   "LifecyclePolicies": [ ]
}
```

## Véase también
<a name="API_PutLifecycleConfiguration_SeeAlso"></a>

Para obtener más información sobre el uso de esta API en uno de los idiomas específicos AWS SDKs, consulte lo siguiente:
+  [AWS Interfaz de línea de comandos V2](https://docs.aws.amazon.com/goto/cli2/elasticfilesystem-2015-02-01/PutLifecycleConfiguration) 
+  [AWS SDK para .NET V4](https://docs.aws.amazon.com/goto/DotNetSDKV4/elasticfilesystem-2015-02-01/PutLifecycleConfiguration) 
+  [AWS SDK para C\$1\$1](https://docs.aws.amazon.com/goto/SdkForCpp/elasticfilesystem-2015-02-01/PutLifecycleConfiguration) 
+  [AWS SDK para Go v2](https://docs.aws.amazon.com/goto/SdkForGoV2/elasticfilesystem-2015-02-01/PutLifecycleConfiguration) 
+  [AWS SDK para Java V2](https://docs.aws.amazon.com/goto/SdkForJavaV2/elasticfilesystem-2015-02-01/PutLifecycleConfiguration) 
+  [AWS SDK para JavaScript V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/elasticfilesystem-2015-02-01/PutLifecycleConfiguration) 
+  [AWS SDK para Kotlin](https://docs.aws.amazon.com/goto/SdkForKotlin/elasticfilesystem-2015-02-01/PutLifecycleConfiguration) 
+  [AWS SDK para PHP V3](https://docs.aws.amazon.com/goto/SdkForPHPV3/elasticfilesystem-2015-02-01/PutLifecycleConfiguration) 
+  [AWS SDK para Python](https://docs.aws.amazon.com/goto/boto3/elasticfilesystem-2015-02-01/PutLifecycleConfiguration) 
+  [AWS SDK para Ruby V3](https://docs.aws.amazon.com/goto/SdkForRubyV3/elasticfilesystem-2015-02-01/PutLifecycleConfiguration) 