Actualizar la plantilla de pila - AWS CloudFormation

Actualizar la plantilla de pila

Para modificar los recursos o las propiedades de una pila de CloudFormation, debe actualizar la plantilla de la pila. Comience con la plantilla existente para esa pila y realice los cambios en ella. Si tiene su plantilla almacenada en un sistema de control de recursos, utilice una copia de dicha plantilla como punto de partida. De lo contrario, puede obtener una copia de la plantilla desde CloudFormation.

Si solo desea modificar los parámetros o los ajustes de una pila (como por ejemplo el tema de Amazon SNS de una pila), puede volver a utilizar la plantilla de la pila existente sin obtener una copia.

Puede actualizar una plantilla de pila de CloudFormation mediante un editor de texto o Infrastructure Composer.

Actualización de una plantilla de pila existente mediante Infrastructure Composer
  1. Inicie sesión en la AWS Management Console y abra la consola de AWS CloudFormation en https://console.aws.amazon.com/cloudformation.

  2. En la página Pilas, seleccione el nombre de la pila que desea actualizar.

  3. Seleccione la pestaña Plantilla y, a continuación, elija Ver en Infrastructure Composer.

    CloudFormation abre la plantilla en Infrastructure Composer.

  4. Utilice uno de los siguientes métodos para actualizar la plantilla:

    • Interfaz de lienzo: aquí puede arrastrar y soltar desde la paleta Recursos. Para configurar los recursos, haga doble clic en una tarjeta para abrir el panel Propiedades del recurso. Conecte los recursos según sea necesario. Para obtener instrucciones detalladas sobre el uso de la interfaz de lienzo, consulte How to compose in AWS Infrastructure Composer.

    • Interfaz de plantilla: cambie de la interfaz de lienzo a la interfaz de plantilla. Realice actualizaciones en línea del código de la plantilla. Cambie entre los formatos JSON y YAML según sea necesario.

  5. Elija Validar para comprobar si hay errores de sintaxis en la plantilla.

  6. Cuando tenga todo listo para exportar los cambios a CloudFormation, elija Actualizar plantilla.

Para actualizar una plantilla de conjunto de pilas con la AWS CLI
  1. Para obtener la plantilla de la pila que desea actualizar, utilice el comando get-template de la CLI.

  2. Copie la plantilla, péguela en un archivo de texto, modifíquela y guárdela. Copie únicamente la plantilla. El comando encierra la plantilla entre comillas, pero no copia las comillas alrededor de la plantilla. La plantilla comienza con una llave de apertura y termina con la llave de cierre final. Especifique los cambios a los recursos de la pila en este archivo.

Tenga en cuenta los siguientes puntos cuando realice cambios en la plantilla:

  • No puede agregar, modificar o eliminar un parámetro utilizado por un recurso que no admite actualizaciones.

  • Para la mayoría de los recursos, cambiar el nombre lógico de un recurso equivale a la eliminación de ese recurso y a la sustitución por otro nuevo. Cualquier otros recurso que dependa del recurso cuyo nombre se ha cambiado también tendrá que actualizarse y podría provocar su reemplazo. Otros recursos requieren que actualice una propiedad (no solo el nombre lógico) para iniciar una actualización.

  • Algunos recursos pueden tener restricciones en cuanto a los valores que se pueden establecer para determinadas propiedades. Por ejemplo, los cambios en la propiedad AllocatedStorage de una instancia de base de datos de RDS deben ser superiores al valor actual. Si la actualización infringe estas reglas, esa parte fallará.

  • La actualización de un recurso también puede afectar a otros que hagan referencia a él. Si usa funciones como La función de Ref o La función de Fn::GetAtt para establecer una propiedad basada en otro recurso, CloudFormation también actualizará el recurso de referencia cuando cambie el recurso al que se hace referencia.

  • Consulte Referencia de tipos de recursos y propiedades de AWS para obtener información sobre los efectos de actualizar propiedades específicas de recursos. Para cada propiedad, los efectos de una actualización serán uno de los siguientes:

  • Puede comprobar la sintaxis JSON o YAML de la plantilla con el comando validate-template de la CLI o al especificar la plantilla en la consola. La consola realiza la validación automáticamente. Sin embargo, estos métodos solo comprueban la sintaxis de la plantilla y no validan que los valores de propiedad que ha especificado para un recurso sean válidos para ese recurso. Para validaciones más complejas o para comprobar las prácticas recomendadas, también puede utilizar herramientas adicionales como CloudFormation Linter (cfn-lint) y CloudFormation Rain (rain fmt).

nota

A veces, CloudFormation no permite ciertos cambios que intente realizar y le dirá que el cambio no está permitido. Este mensaje puede ocurrir de manera asincrónica, ya que CloudFormation crea y actualiza recursos en un orden no determinista de forma predeterminada.