

# Generar plantillas de los recursos existentes con el generador IaC
<a name="generate-IaC"></a>

Con la infraestructura de CloudFormation como generador de código (generador de IaC), puede generar una plantilla con los recursos de AWS aprovisionados en su cuenta que CloudFormation aún no administra. 

Los siguientes son los beneficios del generador de IaC:
+ Administre aplicaciones enteras en CloudFormation o mígrelas a una aplicación de AWS CDK.
+ Genere plantillas sin tener que describir un recurso propiedad por propiedad y, a continuación, tradúzcalas a la sintaxis de JSON o YAML.
+ Use la plantilla para replicar recursos en una nueva cuenta o región.

El proceso de generación de IaC consta de los siguientes pasos:

1. **Escaneo de recursos**: el primer paso es iniciar un escaneo de los recursos. Este escaneo se lleva a cabo en toda la región y vence a los 30 días. Durante este tiempo, puede crear varias plantillas a partir del mismo escaneo.

1. **Creación de la plantilla**: para crear la plantilla, tiene dos opciones:
   + Cree una plantilla nueva desde cero y agregue los recursos escaneados y los recursos relacionados.
   + Utilice una pila de CloudFormation existente como punto de partida y agregue los recursos escaneados y los recursos relacionados a su plantilla.

1. **Importación de recursos**: utilice la plantilla para importar los recursos como una pila de CloudFormation o para migrarlos a una aplicación de AWS CDK.

La característica de generador de IaC está disponible en todas las regiones comerciales y es compatible con muchos tipos de recursos comunes de AWS. Para obtener una lista completa de recursos admitidos, consulte [Tipo de recurso compatible](resource-import-supported-resources.md).

**Topics**
+ [Consideraciones](#iac-generator-considerations)
+ [Permisos de IAM necesarios para escanear recursos](#iac-generator-permissions)
+ [Comandos utilizados con frecuencia para la generación, administración y eliminación de plantillas](#iac-generator-commonly-used-commands)
+ [Migración de una plantilla al AWS CDK](#iac-generator-cdk-migrate)
+ [Cómo iniciar un escaneo de recursos con el generador de IaC de CloudFormation](iac-generator-start-resource-scan.md)
+ [Ver el resumen de análisis en la consola de CloudFormation](generate-IaC-view-scan-summary.md)
+ [Creación de una plantilla de CloudFormation a partir de recursos escaneados con el generador de IaC](iac-generator-create-template-from-scanned-resources.md)
+ [Creación de una pila de CloudFormation a partir de recursos escaneados](iac-generator-create-stack-from-scanned-resources.md)
+ [Resolución de propiedades de solo escritura](generate-IaC-write-only-properties.md)

## Consideraciones
<a name="iac-generator-considerations"></a>

Puede generar plantillas JSON o YAML para los recursos de AWS a los que tenga acceso de lectura. Las plantillas para la función del generador de IaC modelan los recursos en la nube de forma fiable y rápida sin tener que describir un recurso propiedad por propiedad.

En la siguiente tabla, se enumeran las cuotas disponibles para la característica de generación de IaC.


| Nombre | Escaneo completo | Escaneo parcial | 
| --- | --- | --- | 
|  Cantidad máxima de recursos que se pueden procesar en un escaneo  |  100 000  |  100 000  | 
|  Cantidad de escaneos por día (para escaneos con menos de 10 000 recursos)  |  10  |  10  | 
|  Cantidad de escaneos por día (para escaneos con más de 10 000 recursos)  |  1  |  1  | 
|  Número simultáneo de plantillas generadas por cuenta  |  5  |  5  | 
|  Cantidad simultánea de recursos modelados para la generación de una plantilla  |  5  |  5  | 
|  Número total de recursos que se pueden modelar en una plantilla  |  500  |  500  | 
|  Número máximo de plantillas generadas por cuenta  |  1 000  |  1 000  | 

**importante**  
El generador de IaC solo admite los recursos de AWS compatibles con la API de Cloud Control en su región. Para obtener más información, consulte [Tipo de recurso compatible](resource-import-supported-resources.md).

## Permisos de IAM necesarios para escanear recursos
<a name="iac-generator-permissions"></a>

Para escanear los recursos con el generador de IaC, su entidad principal de IAM (usuario, rol o grupo) debe tener:
+ Permisos de escaneo de CloudFormation
+ Permisos de lectura para los servicios de destino de AWS

El alcance del escaneo se limita a los recursos a los que tiene acceso de lectura. Si faltan permisos, el escaneo no generará un error, pero excluirá esos recursos.

Para ver una política de IAM de ejemplo que concede permisos de escaneo y de gestión de plantillas, consulte [Permitir todas las operaciones del generador de IaC](security_iam_id-based-policy-examples.md#iam-policy-example-for-iac-generator).

## Comandos utilizados con frecuencia para la generación, administración y eliminación de plantillas
<a name="iac-generator-commonly-used-commands"></a>

Los comandos utilizados con frecuencia para trabajar con políticas de escalado incluyen los siguientes: 
+ [start-resource-scan](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/start-resource-scan.html) para iniciar un escaneo de los recursos de la cuenta en una Región de AWS. 
+ [describe-resource-scan](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/describe-resource-scan.html) para supervisar el progreso de un escaneo de recursos. 
+ [list-resource-scans](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-resource-scans.html) para enumerar los escaneos de recursos en una Región de AWS.
+ [list-resource-scan-resources](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-resource-scan-resources.html) para enumerar los recursos que se encuentran durante el escaneo de recursos.
+  [list-resource-scan-related-resources](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-resource-scan-related-resources.html) para enumerar los recursos relacionados con los recursos escaneados.
+ [create-generated-template](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/create-generated-template.html) para generar una plantilla de CloudFormation a partir de un conjunto de recursos escaneados.
+ [update-generated-template](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/update-generated-template.html) para actualizar la plantilla generada.
+ [describe-generated-template](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/describe-generated-template.html) para devolver información sobre una plantilla generada.
+ [list-generated-templates](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/list-generated-templates.html) para enumerar todas las plantillas generadas en su cuenta y región actual.
+ [delete-generated-template](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/delete-generated-template.html) para eliminar una plantilla generada.

## Migración de una plantilla al AWS CDK
<a name="iac-generator-cdk-migrate"></a>

El AWS Cloud Development Kit (AWS CDK) es un marco de desarrollo de software de código abierto que puede utilizar para desarrollar, administrar e implementar los recursos de CloudFormation mediante lenguajes de programación populares.

La CLI de AWS CDK proporciona una integración con el generador de IaC. Use el comando `cdk migrate` de la CLI del AWS CDK para generar una plantilla de CloudFormation y crear una nueva aplicación del CDK que contenga los recursos. A continuación, puede utilizar el AWS CDK para administrar los recursos y las implementaciones para CloudFormation.

Para obtener más información, consulte [Migrar a AWS CDK](https://docs.aws.amazon.com/cdk/v2/guide/migrate.html) en la *Guía para desarrolladores de AWS Cloud Development Kit (AWS CDK)*.