

# Ejemplos de Amazon Data Lifecycle Manager que utilizan la AWS CLI
<a name="cli_dlm_code_examples"></a>

Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes utilizando la AWS Command Line Interface con Amazon Data Lifecycle Manager.

Las *acciones* son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las distintas funciones de servicio, es posible ver las acciones en contexto en los escenarios relacionados.

En cada ejemplo se incluye un enlace al código de origen completo, con instrucciones de configuración y ejecución del código en el contexto.

**Topics**
+ [Acciones](#actions)

## Acciones
<a name="actions"></a>

### `create-default-role`
<a name="dlm_CreateDefaultRole_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `create-default-role`.

**AWS CLI**  
**Creación del rol de IAM requerido para Amazon DLM**  
El siguiente ejemplo de `dlm create-default-role` crea el rol predeterminado de AWSDataLifecycleManagerDefaultRole para la administración de instantáneas.  

```
aws dlm create-default-role \
    --resource-type snapshot
```
Este comando no genera ninguna salida.  
Para obtener más información, consulte [Default service roles for Amazon Data Lifecycle Manager](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/service-role.html#default-service-roles) en la *Guía del usuario de Amazon Elastic Compute Cloud*.  
+  Para obtener detalles sobre la API, consulte [CreateDefaultRole](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/dlm/create-default-role.html) en la *Referencia de comandos de la AWS CLI*. 

### `create-lifecycle-policy`
<a name="dlm_CreateLifecyclePolicy_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `create-lifecycle-policy`.

**AWS CLI**  
**Creación de una política de ciclo de vida**  
En el siguiente ejemplo de `create-lifecycle-policy`, se crea una política de ciclo de vida que crea una instantánea diaria de los volúmenes a la hora especificado. Las etiquetas especificadas se añaden a las instantáneas y las etiquetas también se copian del volumen y se añaden a las instantáneas. Si la creación de una instantánea nueva supera el recuento máximo especificado, se elimina la instantánea más antigua.  

```
aws dlm create-lifecycle-policy \
    --description "My first policy" \
    --state ENABLED \
    --execution-role-arn arn:aws:iam::12345678910:role/AWSDataLifecycleManagerDefaultRole \
    --policy-details file://policyDetails.json
```
Contenido de `policyDetails.json`:  

```
{
    "ResourceTypes": [
        "VOLUME"
    ],
    "TargetTags": [
        {
            "Key": "costCenter",
            "Value": "115"
        }
    ],
    "Schedules":[
        {
            "Name": "DailySnapshots",
            "CopyTags": true,
            "TagsToAdd": [
                {
                    "Key": "type",
                     "Value": "myDailySnapshot"
                }
            ],
            "CreateRule": {
                "Interval": 24,
                "IntervalUnit": "HOURS",
                "Times": [
                    "03:00"
                ]
            },
            "RetainRule": {
                "Count":5
            }
        }
    ]
}
```
Salida:  

```
{
    "PolicyId": "policy-0123456789abcdef0"
}
```
+  Para obtener detalles sobre la API, consulte [CreateLifecyclePolicy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/dlm/create-lifecycle-policy.html) en la *Referencia de comandos de la AWS CLI*. 

### `delete-lifecycle-policy`
<a name="dlm_DeleteLifecyclePolicy_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `delete-lifecycle-policy`.

**AWS CLI**  
**Eliminación de una política de ciclo de vida**  
En el siguiente ejemplo, se elimina la política de ciclo de vida especificada:  

```
aws dlm delete-lifecycle-policy --policy-id policy-0123456789abcdef0
```
+  Para obtener información sobre la API, consulte [DeleteLifecyclePolicy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/dlm/delete-lifecycle-policy.html) en la *Referencia de comandos de la AWS CLI*. 

### `get-lifecycle-policies`
<a name="dlm_GetLifecyclePolicies_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `get-lifecycle-policies`.

**AWS CLI**  
**Obtención de un resumen de sus políticas de ciclo de vida**  
En el siguiente ejemplo de `get-lifecycle-policies`, se enumeran todas sus políticas de ciclo de vida.  

```
aws dlm get-lifecycle-policies
```
Salida:  

```
{
    "Policies": [
        {
            "PolicyId": "policy-0123456789abcdef0",
            "Description": "My first policy",
            "State": "ENABLED"
        }
    ]
}
```
+  Para obtener detalles sobre la API, consulte [GetLifecyclePolicies](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/dlm/get-lifecycle-policies.html) en la *Referencia de comandos de la AWS CLI*. 

### `get-lifecycle-policy`
<a name="dlm_GetLifecyclePolicy_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `get-lifecycle-policy`.

**AWS CLI**  
**Descripción de una política de ciclo de vida**  
En el siguiente ejemplo de `get-lifecycle-policy`, se muestran los detalles de la política de ciclo de vida especificada.  

```
aws dlm get-lifecycle-policy \
    --policy-id policy-0123456789abcdef0
```
Salida:  

```
{
    "Policy": {
        "PolicyId": "policy-0123456789abcdef0",
        "Description": "My policy",
        "State": "ENABLED",
        "ExecutionRoleArn": "arn:aws:iam::123456789012:role/AWSDataLifecycleManagerDefaultRole",
        "DateCreated": "2019-08-08T17:45:42Z",
        "DateModified": "2019-08-08T17:45:42Z",
        "PolicyDetails": {
            "PolicyType": "EBS_SNAPSHOT_MANAGEMENT",
            "ResourceTypes": [
                "VOLUME"
            ],
            "TargetTags": [
              {
                  "Key": "costCenter",
                  "Value": "115"
              }
            ],
            "Schedules": [
              {
                  "Name": "DailySnapshots",
                  "CopyTags": true,
                  "TagsToAdd": [
                    {
                        "Key": "type",
                        "Value": "myDailySnapshot"
                    }
                  ],
                  "CreateRule": {
                    "Interval": 24,
                    "IntervalUnit": "HOURS",
                    "Times": [
                        "03:00"
                    ]
                  },
                  "RetainRule": {
                    "Count": 5
                  }
              }
            ]
        }
    }
}
```
+  Para obtener información sobre la API, consulte [GetLifecyclePolicy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/dlm/get-lifecycle-policy.html) en la *Referencia de comandos de la AWS CLI*. 

### `update-lifecycle-policy`
<a name="dlm_UpdateLifecyclePolicy_cli_topic"></a>

En el siguiente ejemplo de código, se muestra cómo utilizar `update-lifecycle-policy`.

**AWS CLI**  
**Ejemplo 1: habilitar una política de ciclo de vida**  
En el siguiente ejemplo de `update-lifecycle-policy`, se habilita la política de ciclo de vida especificada.  

```
aws dlm update-lifecycle-policy \
    --policy-id policy-0123456789abcdef0 \
    --state ENABLED
```
**Ejemplo 2: deshabilitar una política de ciclo de vida**  
En el siguiente ejemplo de `update-lifecycle-policy`, se deshabilita la política de ciclo de vida especificada.  

```
aws dlm update-lifecycle-policy \
    --policy-id policy-0123456789abcdef0 \
    --state DISABLED
```
**Ejemplo 3: actualizar los detalles de la política de ciclo de vida**  
En el siguiente ejemplo de `update-lifecycle-policy`, se actualizan las etiquetas de destino de la política de ciclo de vida especificada.  

```
aws dlm update-lifecycle-policy \
    --policy-id policy-0123456789abcdef0
    --policy-details file://policyDetails.json
```
Contenido de `policyDetails.json`. El comando no modifica otros detalles a los que no se hace referencia en este archivo.  

```
{
    "TargetTags": [
        {
            "Key": "costCenter",
            "Value": "120"
        },
        {
            "Key": "project",
            "Value": "lima"
        }
    ]
}
```
+  Para obtener detalles sobre la API, consulte [UpdateLifecyclePolicy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/dlm/update-lifecycle-policy.html) en la *Referencia de comandos de la AWS CLI*. 