Secciones de la plantilla de CloudFormation
Cada plantilla de CloudFormation consta de una o más secciones, cada una con un propósito específico.
La sección Recursos es obligatoria en todas las plantillas de CloudFormation y constituye el núcleo de la plantilla. Esta sección especifica los recursos de la pila y sus propiedades, como una instancia de Amazon EC2 o un bucket de Amazon S3. Cada recurso se define con un identificador lógico único, un tipo y detalles de configuración específicos.
La sección de Parámetros, si bien es opcional, desempeña un rol importante a la hora de hacer que las plantillas sean más flexibles. Permite a los usuarios pasar valores en tiempo de ejecución al crear o actualizar una pila. Se puede referenciar estos parámetros en las secciones Resources
y Outputs
y, de este modo, se puede personalizar sin alterar la propia plantilla. Por ejemplo, puede usar los parámetros para especificar los tipos de instancias o la configuración del entorno que varían de una implementación a otra.
La sección Salidas, también opcional, define los valores que se devuelven al ver las propiedades de una pila. Los resultados ofrecen información útil, como identificadores de recursos o URL, que se pueden utilizar con fines operativos o para integrarlos con otras pilas. Esta sección ayuda a los usuarios a recuperar y utilizar detalles importantes sobre los recursos creados por la plantilla.
Otras secciones opcionales incluyen las Asignaciones, que funcionan como tablas de búsqueda para administrar los valores condicionales. Con las asignaciones, se definen pares clave-valor y se utilizan con la función intrínseca Fn::FindInMap
en las secciones Resources
y Outputs
. Esto resulta útil en situaciones en las que es necesario ajustar las configuraciones según condiciones tales como Región de AWS o el entorno.
Las secciones Metadatos y Reglas, aunque se utilizan con menos frecuencia, ofrecen funciones adicionales. Metadata
puede incluir información adicional sobre la plantilla, mientras que Rules
valida un parámetro o una combinación de parámetros durante la creación o las actualizaciones de la pila, lo que garantiza que se cumplan criterios específicos. La sección Condiciones mejora aún más la flexibilidad al controlar si determinados recursos se crean o si a las propiedades se les asigna un valor según condiciones como el tipo de entorno.
Por último, la sección Transformar se utiliza para aplicar macros durante el procesamiento de la plantilla. Para las aplicaciones sin servidor (también denominadas aplicaciones de Lambda), especifica la versión de AWS Serverless Application Model (AWS SAM)AWS::Include
para incluir fragmentos de plantilla que se almacenan por separado de la plantilla principal de CloudFormation.
Los siguientes temas brindan más información y ejemplos de uso de cada sección.
Temas
- Referencia sintáctica de la sección Resources para las plantillas de CloudFormation
- Referencia sintáctica de la sección Parameters para las plantillas de CloudFormation
- Referencia sintáctica de la sección Outputs para las plantillas de CloudFormation
- Referencia sintáctica de la sección Mappings para las plantillas de CloudFormation
- Referencia sintáctica de la sección Metadata para las plantillas de CloudFormation
- Referencia sintáctica de la sección Rules para las plantillas de CloudFormation
- Referencia sintáctica de la sección Conditions para las plantillas de CloudFormation
- Sección de Transform para las plantillas de CloudFormation
- Referencia sintáctica de la sección de versión de formato para las plantillas de CloudFormation
- Referencia sintáctica de la sección Description para las plantillas de CloudFormation