

# Uso de la implementación continua de CloudFront para probar de forma segura los cambios en la configuración de la CDN
<a name="continuous-deployment"></a>

Con la *implementación continua* de Amazon CloudFront, puede implementar de forma segura los cambios en la configuración de su CDN realizando primero pruebas con un subconjunto del tráfico de producción. Puede utilizar una *distribución provisional* y una *política de implementación continua* para enviar parte del tráfico de los lectores reales (de producción) a la nueva configuración de CDN y validar que funciona según lo esperado. Puede supervisar el rendimiento de la nueva configuración en tiempo real y promover la nueva configuración para que sirva todo el tráfico a través de la *distribución principal* cuando esté preparado.

En el siguiente diagrama, se muestran las ventajas de utilizar la implementación continua de CloudFront. Sin ella, tendría que probar los cambios en la configuración de la CDN con tráfico simulado. Con la implementación continua, puede probar los cambios con un subconjunto del tráfico de producción y, a continuación, promover los cambios en la distribución principal cuando esté listo.

![\[Gráfico de la implementación continua de CloudFront que envía el tráfico de producción a una distribución provisional.\]](http://docs.aws.amazon.com/es_es/AmazonCloudFront/latest/DeveloperGuide/images/cloudfront-continuous-deployment.png)


Obtenga más información sobre cómo trabajar con la implementación continua en los siguientes temas.

**Topics**
+ [

# Flujo de trabajo de implementación continua de CloudFront
](continuous-deployment-workflow.md)
+ [

# Trabajo con una distribución provisional y una política de implementación continua
](working-with-staging-distribution-continuous-deployment-policy.md)
+ [

# Supervisión de una distribución provisional
](monitoring-staging-distribution.md)
+ [

# Información sobre cómo funciona la implementación continua
](understanding-continuous-deployment.md)
+ [

# Cuotas y otras consideraciones de la implementación continua
](continuous-deployment-quotas-considerations.md)

# Flujo de trabajo de implementación continua de CloudFront
<a name="continuous-deployment-workflow"></a>

El siguiente flujo de trabajo de alto nivel explica cómo probar e implementar de forma segura los cambios de configuración con la implementación continua de CloudFront.

1. Elija la distribución que desea utilizar como *distribución principal*. La distribución principal es la que actualmente proporciona el tráfico de producción.

1. Desde la distribución principal, cree una *distribución provisional*. Una distribución provisional comienza como una copia de la distribución principal.

1. Cree una *configuración de tráfico* dentro de una *política de implementación continua* y asóciela a la distribución principal. Esto determina cómo CloudFront dirige el tráfico a la distribución provisional. Para obtener más información acerca de cómo dirigir las solicitudes a una distribución provisional, consulte [Enrutamiento de solicitudes a la distribución provisional](understanding-continuous-deployment.md#understanding-continuous-deployment-routing).

1. Actualice la configuración de la distribución provisional. Para obtener más información acerca de la configuración que puede actualizar, consulte [Actualización de las distribuciones principales y provisionales](understanding-continuous-deployment.md#updating-staging-and-primary-distributions).

1. Supervise la distribución provisional para determinar si los cambios de configuración funcionan según lo esperado. Para obtener más información acerca de la supervisión de una distribución provisional, consulte [Supervisión de una distribución provisional](monitoring-staging-distribution.md).

   Al supervisar la distribución provisional, podrá:
   + Volver a actualizar la configuración de la distribución provisional para seguir probando los cambios de configuración.
   + Actualizar la política de implementación continua (configuración del tráfico) para enviar más o menos tráfico a la distribución provisional.

1. Cuando esté satisfecho con el rendimiento de la distribución provisional, *promueva* la configuración de la distribución provisional a la distribución principal, que copia la configuración de la distribución provisional en la distribución principal. Esto también deshabilita la política de implementación continua, lo que significa que CloudFront enruta todo el tráfico a la distribución principal.

Puede crear una automatización que supervise el rendimiento de la distribución provisional (paso 5) y promueva la configuración automáticamente (paso 6) cuando se cumplan ciertos criterios.

Después de promover una configuración, puede volver a utilizar la misma distribución provisional la próxima vez que quiera probar un cambio de configuración.

Para obtener más información sobre cómo trabajar con las distribuciones provisionales y las políticas de implementación continua en la consola de CloudFront, la AWS CLI o la API de CloudFront, consulte la siguiente sección.

# Trabajo con una distribución provisional y una política de implementación continua
<a name="working-with-staging-distribution-continuous-deployment-policy"></a>

Puede crear, actualizar y modificar las distribuciones provisionales y las políticas de implementación continua en la consola de CloudFront, con la AWS Command Line Interface (AWS CLI) o con la API de CloudFront.

## Creación de una distribución provisional con una política de implementación continua
<a name="create-staging-distribution-continuous-deployment-policy"></a>

Los siguientes procedimientos muestran cómo crear una distribución provisional con una política de implementación continua.

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

Puede crear una distribución provisional con una política de implementación continua mediante la Consola de administración de AWS.

**Para crear una distribución provisional y una política de implementación continua (consola)**

1. Inicie sesión en la Consola de administración de AWS y abra la consola de CloudFront en [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

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

1. Elija la distribución que desea utilizar como *distribución principal*. La distribución principal es la que actualmente proporciona el tráfico de producción, desde la que se creará la distribución provisional.

1. En la sección **Continuous deployment** (Implementación continua), elija **Create staging distribution** (Crear distribución provisional). Esto abre el asistente **Create staging distribution** (Crear distribución provisional).

1. En el asistente **Create staging distribution** (Crear distribución provisional), haga lo siguiente:

   1. (Opcional) Escriba una descripción de la distribución provisional.

   1. Elija **Siguiente**.

   1. Modifique la configuración de la distribución provisional. Para obtener más información acerca de la configuración que puede actualizar, consulte [Actualización de las distribuciones principales y provisionales](understanding-continuous-deployment.md#updating-staging-and-primary-distributions).

      Cuando haya terminado de modificar la configuración de la distribución provisional, elija **Next** (Siguiente).

   1. Utilice la consola para especificar la **Traffic configuration** (Configuración del tráfico). Esto determina cómo CloudFront dirige el tráfico a la distribución provisional. (CloudFront almacena la configuración del tráfico en una *política de implementación continua*).

      Para obtener más información acerca de las opciones de una **configuración de tráfico**, consulte [Enrutamiento de solicitudes a la distribución provisional](understanding-continuous-deployment.md#understanding-continuous-deployment-routing).

      Cuando haya terminado con la **Traffic configuration** (Configuración del tráfico), elija **Next** (Siguiente).

   1. Revise la configuración de la distribución provisional, incluida la configuración del tráfico, y seleccione **Create staging distribution** (Crear distribución provisional).

Cuando termine el asistente **Create staging distribution** (Crear distribución provisional) en la consola de CloudFront, CloudFront hace lo siguiente:
+ Crea una distribución provisional con la configuración que especificó (en el paso 5c)
+ Crea una política de implementación continua con la configuración de tráfico que especificó (en el paso 5d)
+ Asocia la política de implementación continua a la distribución principal desde la que creó la distribución provisional.

Cuando la configuración de la distribución principal, con la política de implementación continua asociada, se implementa en ubicaciones periféricas, CloudFront comienza a enviar la parte especificada del tráfico a la distribución provisional en función de la configuración del tráfico.

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

Para crear una distribución provisional y una política de implementación continua con la AWS CLI, utilice los siguientes procedimientos.

**Para crear una distribución provisional (CLI)**

1. Utilice los comandos **aws cloudfront get-distribution** y **grep** juntos para obtener el valor `ETag` de la distribución que desea usar como *distribución principal*. La distribución principal es la que actualmente proporciona el tráfico de producción, desde la que se creará la distribución provisional.

   A continuación, se muestra un ejemplo del comando: En el siguiente ejemplo, sustituya *primary\$1distribution\$1ID* por el ID de la distribución principal. 

   ```
   aws cloudfront get-distribution --id primary_distribution_ID | grep 'ETag'
   ```

   Copie el valor de `ETag` porque lo necesita para el siguiente paso.

1. Utilice el comando **aws cloudfront copy-distribution** para crear una distribución provisional. En el siguiente comando de ejemplo, se usan caracteres de escape (\$1) y saltos de línea para facilitar la lectura, pero debe omitirlos en el comando. En el siguiente comando de ejemplo:
   + Sustituya *primary\$1distribution\$1ID* por el ID de la distribución principal.
   + Sustituya *primary\$1distribution\$1ETag* por el valor de `ETag` de la distribución principal (que obtuvo en el paso anterior).
   + (Opcional) Sustituya *CLI\$1example* por el identificador de referencia de intermediario deseado.

   ```
   aws cloudfront copy-distribution --primary-distribution-id primary_distribution_ID \
                                    --if-match primary_distribution_ETag \
                                    --staging \
                                    --caller-reference 'CLI_example'
   ```

   El resultado del comando muestra información sobre la distribución provisional y su configuración. Copie el nombre de dominio de CloudFront de la distribución provisional porque lo necesita para el siguiente paso.

**Para crear una política de implementación continua (CLI con archivo de entrada)**

1. Utilice el siguiente comando para crear un archivo denominado `continuous-deployment-policy.yaml` que contenga todos los parámetros de entrada del comando **create-continuous-deployment-policy**. En el siguiente comando, se usan caracteres de escape (\$1) y saltos de línea para facilitar la lectura, pero debe omitirlos en el comando.

   ```
   aws cloudfront create-continuous-deployment-policy --generate-cli-skeleton yaml-input \
                                                      > continuous-deployment-policy.yaml
   ```

1. Abra el archivo llamado `continuous-deployment-policy.yaml` que acaba de crear. Edite el archivo para especificar la configuración de política de implementación continua que desee y, a continuación, guarde el archivo. Al editar el archivo:
   + En la sección `StagingDistributionDnsNames`:
     + Cambie el valor de `Quantity` a `1`.
     + Para `Items`, pegue el nombre de dominio de CloudFront de la distribución provisional (que guardó en el paso anterior).
   + En la sección `TrafficConfig`:
     + Elija un `Type` o un `SingleWeight` o `SingleHeader`.
     + Elimine la configuración para el otro tipo. Por ejemplo, si desea una configuración de tráfico basada en ponderación, defina la configuración de `Type` en `SingleWeight` y, a continuación, elimine la configuración de `SingleHeaderConfig`.
     + Para utilizar una configuración de tráfico basada en ponderación, defina el valor de `Weight` en un número decimal comprendido entre `.01` (uno por ciento) y `.15` (quince por ciento).

     Para obtener más información sobre estas opciones en `TrafficConfig`, consulte [Enrutamiento de solicitudes a la distribución provisional](understanding-continuous-deployment.md#understanding-continuous-deployment-routing) y [Persistencia de sesión para configuraciones basadas en ponderaciones](understanding-continuous-deployment.md#understanding-continuous-deployment-sessions).

1. Utilice el siguiente comando para crear la política de implementación continua utilizando parámetros de entrada del archivo de `continuous-deployment-policy.yaml`.

   ```
   aws cloudfront create-continuous-deployment-policy --cli-input-yaml file://continuous-deployment-policy.yaml
   ```

   Copia el valor de `Id` de la salida del comando. Este es el identificador de la política de implementación continua y lo necesitará en el paso siguiente.

**Para asociar una política de implementación continua a una distribución principal (CLI con archivo de entrada)**

1. Utilice el siguiente comando para guardar la configuración de la distribución principal en un archivo con el nombre `primary-distribution.yaml`. Sustituya *primary\$1distribution\$1ID* por el ID de la distribución principal.

   ```
   aws cloudfront get-distribution-config --id primary_distribution_ID --output yaml > primary-distribution.yaml
   ```

1. Abra el archivo llamado `primary-distribution.yaml` que acaba de crear. Edite el archivo y realice los siguientes cambios:
   + Pegue el ID de la política de implementación continua (que copió del paso anterior) en el campo `ContinuousDeploymentPolicyId`.
   + Cambie el nombre del campo `ETag` a `IfMatch`, pero no cambie el valor del campo.

   Guarde el archivo cuando haya terminado.

1. Utilice el siguiente comando para actualizar la distribución principal y utilizar la política de implementación continua. Sustituya *primary\$1distribution\$1ID* por el ID de la distribución principal.

   ```
   aws cloudfront update-distribution --id primary_distribution_ID --cli-input-yaml file://primary-distribution.yaml
   ```

Cuando la configuración de la distribución principal, con la política de implementación continua asociada, se implementa en ubicaciones periféricas, CloudFront comienza a enviar la parte especificada del tráfico a la distribución provisional en función de la configuración del tráfico.

------
#### [ API ]

Para crear una distribución provisional y una política de implementación continua con la API de CloudFront, utilice las siguientes operaciones de la API:
+ [CopyDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CopyDistribution.html)
+ [CreateContinuousDeploymentPolicy](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_CreateContinuousDeploymentPolicy.html)

Para obtener más información acerca de los campos que especifique en estas llamadas a la API, consulte lo siguiente:
+ [Enrutamiento de solicitudes a la distribución provisional](understanding-continuous-deployment.md#understanding-continuous-deployment-routing)
+ [Persistencia de sesión para configuraciones basadas en ponderaciones](understanding-continuous-deployment.md#understanding-continuous-deployment-sessions)
+ La documentación de referencia de la API para el SDK de AWS u otro cliente de la API

Tras crear una distribución provisional y una política de implementación continua, utilice [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html) (en la distribución principal) para asociar la política de implementación continua a la distribución principal.

------

## Actualización de una distribución provisional
<a name="update-staging-distribution"></a>

Los siguientes procedimientos muestran cómo actualizar una distribución provisional con una política de implementación continua.

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

Puede actualizar determinadas configuraciones tanto para la distribución principal como para la provisional. Para obtener más información, consulte [Actualización de las distribuciones principales y provisionales](understanding-continuous-deployment.md#updating-staging-and-primary-distributions).

**Para actualizar una distribución provisional (consola)**

1. Abra la consola de CloudFront en [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

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

1. Elija la distribución principal. Esta es la distribución principal que actualmente proporciona el tráfico de producción, desde la que ha creado la distribución provisional.

1. Elija **View staging distribution** (Ver distribución provisional).

1. Utilice la consola para modificar la configuración de la distribución provisional. Para obtener más información acerca de la configuración que puede actualizar, consulte [Actualización de las distribuciones principales y provisionales](understanding-continuous-deployment.md#updating-staging-and-primary-distributions).

En cuanto la configuración de la distribución provisional se implemente en las ubicaciones periféricas, se aplica al tráfico entrante que se dirige a la distribución provisional.

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

**Para actualizar una distribución provisional (CLI con archivo de entrada)**

1. Utilice el siguiente comando para guardar la configuración de la distribución provisional en un archivo con el nombre `staging-distribution.yaml`. Reemplace *staging\$1distribution\$1ID* por el ID de la distribución provisional.

   ```
   aws cloudfront get-distribution-config --id staging_distribution_ID --output yaml > staging-distribution.yaml
   ```

1. Abra el archivo llamado `staging-distribution.yaml` que acaba de crear. Edite el archivo y realice los siguientes cambios:
   + Modifique la configuración de la distribución provisional. Para obtener más información acerca de la configuración que puede actualizar, consulte [Actualización de las distribuciones principales y provisionales](understanding-continuous-deployment.md#updating-staging-and-primary-distributions).
   + Cambie el nombre del campo `ETag` a `IfMatch`, pero no cambie el valor del campo.

   Guarde el archivo cuando haya terminado.

1. Utilice el siguiente comando para actualizar la configuración de la distribución provisional. Reemplace *staging\$1distribution\$1ID* por el ID de la distribución provisional.

   ```
   aws cloudfront update-distribution --id staging_distribution_ID --cli-input-yaml file://staging-distribution.yaml
   ```

En cuanto la configuración de la distribución provisional se implemente en las ubicaciones periféricas, se aplica al tráfico entrante que se dirige a la distribución provisional.

------
#### [ API ]

Para actualizar la configuración de una distribución provisional, utilice [UpdateDistribution](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistribution.html) (en la distribución provisional) para modificar la configuración de la distribución provisional. Para obtener más información acerca de la configuración que puede actualizar, consulte [Actualización de las distribuciones principales y provisionales](understanding-continuous-deployment.md#updating-staging-and-primary-distributions).

------

## Actualización de una política de implementación continua
<a name="update-continuous-deployment-policy"></a>

Los siguientes procedimientos muestran cómo actualizar una política de implementación continua.

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

Puede actualizar la configuración de tráfico de su distribución actualizando la política de implementación continua.

**Para actualizar una política de implementación continua (consola)**

1. Abra la consola de CloudFront en [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

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

1. Elija la distribución principal. Esta es la distribución principal que actualmente proporciona el tráfico de producción, desde la que ha creado la distribución provisional.

1. En la sección **Continuous deployment** (Implementación continua), elija **Edit policy** (Editar política).

1. Modifique la configuración del tráfico en la política de implementación continua. Cuando haya finalizado, elija **Guardar cambios**.

Cuando la configuración de la distribución principal, con la política de implementación continua actualizada, se implementa en ubicaciones periféricas, CloudFront comienza a enviar el tráfico a la distribución provisional en función de la configuración del tráfico.

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

**Para actualizar una política de implementación continua (CLI con archivo de entrada)**

1. Utilice el siguiente comando para guardar la configuración de la política de implementación continua en un archivo con el nombre `continuous-deployment-policy.yaml`. Sustituya *continuous\$1deployment\$1policy\$1ID* por el ID de la política de implementación continua. En el siguiente comando, se usan caracteres de escape (\$1) y saltos de línea para facilitar la lectura, pero debe omitirlos en el comando.

   ```
   aws cloudfront get-continuous-deployment-policy-config --id continuous_deployment_policy_ID \
                                                          --output yaml > continuous-deployment-policy.yaml
   ```

1. Abra el archivo llamado `continuous-deployment-policy.yaml` que acaba de crear. Edite el archivo y realice los siguientes cambios:
   + Modifique la configuración de la política de implementación continua como desee. Por ejemplo, puede pasar de utilizar una configuración de tráfico basada en encabezados a una configuración basada en ponderaciones, o puede cambiar el porcentaje de tráfico (ponderación) para una configuración basada en ponderaciones. Para obtener más información, consulte [Enrutamiento de solicitudes a la distribución provisional](understanding-continuous-deployment.md#understanding-continuous-deployment-routing) y [Persistencia de sesión para configuraciones basadas en ponderaciones](understanding-continuous-deployment.md#understanding-continuous-deployment-sessions).
   + Cambie el nombre del campo `ETag` a `IfMatch`, pero no cambie el valor del campo.

   Guarde el archivo cuando haya terminado.

1. Utilice el siguiente comando para actualizar la política de implementación continua. Sustituya *continuous\$1deployment\$1policy\$1ID* por el ID de la política de implementación continua. En el siguiente comando, se usan caracteres de escape (\$1) y saltos de línea para facilitar la lectura, pero debe omitirlos en el comando.

   ```
   aws cloudfront update-continuous-deployment-policy --id continuous_deployment_policy_ID \
                                                      --cli-input-yaml file://continuous-deployment-policy.yaml
   ```

Cuando la configuración de la distribución principal, con la política de implementación continua actualizada, se implementa en ubicaciones periféricas, CloudFront comienza a enviar el tráfico a la distribución provisional en función de la configuración del tráfico.

------
#### [ API ]

Para actualizar una política de implementación continua, utilice [UpdateContinuousDeploymentPolicy](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateContinuousDeploymentPolicy.html).

------

## Promoción de una configuración de distribución provisional
<a name="promote-staging-distribution-configuration"></a>

Los siguientes procedimientos muestran cómo promocionar una configuración de distribución provisional.

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

Al *promover* una distribución provisional, CloudFront copia la configuración de la distribución provisional a la distribución principal. Esto también deshabilita la política de implementación continua y enruta todo el tráfico a la distribución principal.

Después de promover una configuración, puede volver a utilizar la misma distribución provisional la próxima vez que quiera probar un cambio de configuración.

**Para promover la configuración de una distribución provisional (consola)**

1. Abra la consola de CloudFront en [https://console.aws.amazon.com/cloudfront/v4/home](https://console.aws.amazon.com/cloudfront/v4/home).

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

1. Elija la distribución principal. Esta es la distribución principal que actualmente proporciona el tráfico de producción, desde la que ha creado la distribución provisional.

1. En la sección **Continuous deployment** (Implementación continua), elija **Promote** (Promover).

1. Escriba **confirm** y, a continuación, seleccione **Promote** (Promover).

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

Al *promover* una distribución provisional, CloudFront copia la configuración de la distribución provisional a la distribución principal. Esto también deshabilita la política de implementación continua y enruta todo el tráfico a la distribución principal.

Después de promover una configuración, puede volver a utilizar la misma distribución provisional la próxima vez que quiera probar un cambio de configuración.

**Para promover la configuración de una distribución provisional (CLI)**
+ Utilice el comando **aws cloudfront update-distribution-with-staging-config** para promover la configuración de la distribución provisional a la distribución principal. En el siguiente comando de ejemplo, se usan caracteres de escape (\$1) y saltos de línea para facilitar la lectura, pero debe omitirlos en el comando. En el siguiente comando de ejemplo:
  + Sustituya *primary\$1distribution\$1ID* por el ID de la distribución principal.
  + Sustituya *staging\$1distribution\$1ID* por el ID de la distribución provisional.
  + Sustituya *primary\$1distribution\$1ETag* y *staging\$1distribution\$1ETag* por los valores de `ETag` de las distribuciones principal y provisional. Asegúrese de que el valor de la distribución principal sea el primero, como se muestra en el ejemplo.

  ```
  aws cloudfront update-distribution-with-staging-config --id primary_distribution_ID \
                                                         --staging-distribution-id staging_distribution_ID \
                                                         --if-match 'primary_distribution_ETag,staging_distribution_ETag'
  ```

------
#### [ API ]

Para promover la configuración de una distribución provisional a la distribución principal, utilice [UpdateDistributionWithStagingConfig](https://docs.aws.amazon.com/cloudfront/latest/APIReference/API_UpdateDistributionWithStagingConfig.html).

------

# Supervisión de una distribución provisional
<a name="monitoring-staging-distribution"></a>

Para supervisar el rendimiento de una distribución provisional, puede utilizar las mismas [métricas, registros e informes](reports-and-monitoring.md) que CloudFront proporciona para todas las distribuciones. Por ejemplo:
+ Puede ver las [métricas de distribución predeterminadas de CloudFront](viewing-cloudfront-metrics.md#monitoring-console.distributions) (como el total de solicitudes y la tasa de errores) en la consola de CloudFront y [activar métricas adicionales](viewing-cloudfront-metrics.md#monitoring-console.distributions-additional) (como la tasa de aciertos de caché y la tasa de errores por código de estado) por un coste adicional. También puede crear alarmas en función de estas métricas.
+ Puede ver los [registros estándar](AccessLogs.md) y los [registros de acceso en tiempo real](real-time-logs.md) para obtener información detallada sobre las solicitudes que recibe la distribución provisional. Los registros estándar contienen los dos campos siguientes que le ayudan a identificar la distribución principal a la que se envió originalmente la solicitud antes de que CloudFront la enrutara a la distribución provisional: `primary-distribution-id` y `primary-distribution-dns-name`.
+ Puede ver y descargar [informes](reports.md) en la consola de CloudFront, por ejemplo, el informe de estadísticas de caché.

# Información sobre cómo funciona la implementación continua
<a name="understanding-continuous-deployment"></a>

En los siguientes temas, se explica cómo funciona la implementación continua de CloudFront.

**Topics**
+ [

## Enrutamiento de solicitudes a la distribución provisional
](#understanding-continuous-deployment-routing)
+ [

## Persistencia de sesión para configuraciones basadas en ponderaciones
](#understanding-continuous-deployment-sessions)
+ [

## Actualización de las distribuciones principales y provisionales
](#updating-staging-and-primary-distributions)
+ [

## Las distribuciones principales y provisionales no comparten la caché
](#staging-and-primary-no-shared-cache)

## Enrutamiento de solicitudes a la distribución provisional
<a name="understanding-continuous-deployment-routing"></a>

Si usa la implementación continua de CloudFront, no tiene que cambiar nada en las solicitudes de los lectores. Los lectores no pueden enviar solicitudes directamente a una distribución provisional mediante un nombre DNS, una dirección IP o un CNAME. En cambio, los lectores envían solicitudes a la distribución principal (de producción) y CloudFront redirige algunas de esas solicitudes a la distribución provisional en función de los ajustes de configuración del tráfico de la política de implementación continua. Existen dos tipos de configuraciones del tráfico:

**Basada en ponderaciones**  
Una configuración basada en ponderaciones dirige el porcentaje especificado de solicitudes de los lectores a la distribución provisional. Al utilizar una configuración basada en ponderaciones, también puede habilitar la *persistencia de sesión*, que ayuda a garantizar que CloudFront trate las solicitudes del mismo lector como parte de una sola sesión. Para obtener más información, consulte [Persistencia de sesión para configuraciones basadas en ponderaciones](#understanding-continuous-deployment-sessions).

**Basada en encabezados**  
Una configuración basada en encabezados dirige las solicitudes a la distribución provisional cuando la solicitud del lector contiene un encabezado HTTP específico (usted especifica el encabezado y el valor). Las solicitudes que no contienen el encabezado y el valor especificados se envían a la distribución principal. Esta configuración es útil para realizar pruebas locales o cuando tiene control sobre las solicitudes del lector.  
Los encabezados que se envíen a la distribución provisional deben contener el prefijo `aws-cf-cd-`.

## Persistencia de sesión para configuraciones basadas en ponderaciones
<a name="understanding-continuous-deployment-sessions"></a>

Al utilizar una configuración basada en ponderaciones para dirigir el tráfico a una distribución provisional, también puede habilitar la *persistencia de sesión*, lo que ayuda a garantizar que CloudFront trate las solicitudes del mismo lector como una sola sesión. Al habilitar la persistencia de sesión, CloudFront establece una cookie para que todas las solicitudes del mismo lector de una sola sesión las proporciona una sola distribución, ya sea la principal o la provisional.

Al habilitar la persistencia de sesión, también puede especificar la *duración de inactividad*. Si el lector está inactivo (no envía solicitudes) durante este período de tiempo, la sesión caduca y CloudFront trata las solicitudes futuras de este lector como una sesión nueva. La duración de inactividad se especifica como un número de segundos, de 300 (cinco minutos) a 3600 (una hora).

En los siguientes casos, CloudFront restablece todas las sesiones (incluso las activas) y considera que todas las solicitudes son una sesión nueva:
+ Cuando deshabilita o habilita la política de implementación continua
+ Cuando deshabilita o habilita la configuración de persistencia de sesión

## Actualización de las distribuciones principales y provisionales
<a name="updating-staging-and-primary-distributions"></a>

Cuando una distribución principal tiene una política de implementación continua asociada, están disponibles los siguientes cambios de configuración tanto para la distribución principal como para la provisional:
+ Toda la configuración del comportamiento de caché, incluido el comportamiento predeterminado de caché
+ Toda la configuración de origen (orígenes y grupos de origen)
+ Respuestas de error personalizadas (páginas de error)
+ Restricciones geográficas
+ Objeto raíz predeterminado
+ Configuración de registros
+ Descripción (comentario)

También puede actualizar los recursos externos a los que se hace referencia en la configuración de una distribución, como una política de caché, una política de encabezados de respuesta, una CloudFront Function o una función Lambda@Edge.

## Las distribuciones principales y provisionales no comparten la caché
<a name="staging-and-primary-no-shared-cache"></a>

Las distribuciones principales y provisionales no comparten la caché. Cuando CloudFront envía la primera solicitud a una distribución provisional, su caché está vacía. A medida que las solicitudes llegan a la distribución provisional, comienza a almacenar en caché las respuestas (si está configurada para hacerlo).

# Cuotas y otras consideraciones de la implementación continua
<a name="continuous-deployment-quotas-considerations"></a>

La implementación continua de CloudFront está supeditada a las siguientes cuotas y otras consideraciones.

## Cuotas
<a name="continuous-deployment-quotas"></a>
+ Cantidad máxima de distribuciones provisionales por Cuenta de AWS: 20
+ Cantidad máxima de políticas de implementación continua por Cuenta de AWS: 20
+ Porcentaje máximo de tráfico que puede enviar a una distribución provisional en una configuración basada ponderaciones: 15 %
+ Valores mínimo y máximo de persistencia de sesión y duración de inactividad: 300-3600 segundos

Para obtener más información, consulte [Cuotas](cloudfront-limits.md).

**nota**  
Si utiliza la implementación continua y la distribución principal está configurada con OAC para el acceso al bucket de S3, actualice la política de bucket de S3 para permitir el acceso a la distribución provisional. Por ejemplo, políticas de bucket de S3, consulte [Concesión de permiso de CloudFront para acceder al bucket de S3](private-content-restricting-access-to-s3.md#oac-permission-to-access-s3).

## AWS WAFACL web de
<a name="waf-web-acl"></a>

Si habilita la implementación continua para su distribución, se deben tener en cuenta las siguientes consideraciones para AWS WAF:
+ No puede asociar una lista de control de acceso (ACL) web de AWS WAF a la distribución si es la primera vez que se asocia a la distribución.
+ No puede desasociar una ACL web de AWS WAF de la distribución.

Antes de poder realizar las tareas anteriores, debe eliminar la política de implementación continua de su distribución de producción. Esto también elimina la distribución provisional. Para obtener más información, consulte [Uso de protecciones de AWS WAF](distribution-web-awswaf.md).

## Casos en los que CloudFront envía todas las solicitudes a la distribución principal
<a name="all-requests-to-primary-distribution"></a>

En ciertos casos, como los períodos de alta utilización de recursos, CloudFront puede enviar todas las solicitudes a la distribución principal independientemente de lo que se especifique en la política de implementación continua.

CloudFront envía todas las solicitudes a la distribución principal durante las horas de mayor tráfico, independientemente de lo que se especifique en la política de implementación continua. El pico de tráfico hace referencia al tráfico del *servicio CloudFront* y no al tráfico de la distribución.

## HTTP/3
<a name="continuous-deployment-http3"></a>

No puede utilizar la implementación continua con una distribución que admita HTTP/3.