

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Creación de AWS IoT Greengrass recursos con AWS CloudFormation
<a name="creating-resources-with-cloudformation"></a>

AWS IoT Greengrass está integrado con AWS CloudFormation un servicio que le ayuda a modelar y configurar sus AWS recursos para que pueda dedicar menos tiempo a crear y administrar sus recursos e infraestructura. Crea una plantilla que describe todos los AWS recursos que desea (como las versiones de los componentes y las implementaciones) y CloudFormation aprovisiona y configura esos recursos por usted. 

Cuando la utilice CloudFormation, podrá reutilizar la plantilla para configurar los AWS IoT Greengrass recursos de forma coherente y repetida. Describa sus recursos una vez y, a continuación, aprovisione los mismos recursos una y otra vez en varias Cuentas de AWS regiones. 

## AWS IoT Greengrass y CloudFormation plantillas
<a name="working-with-templates"></a>

Para aprovisionar y configurar recursos AWS IoT Greengrass y servicios relacionados, debe conocer [CloudFormation las plantillas](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html). Las plantillas son archivos de texto con formato JSON o YAML. Estas plantillas describen los recursos que desea aprovisionar en sus CloudFormation pilas. Si no estás familiarizado con JSON o YAML, puedes usar CloudFormation Designer para ayudarte a empezar con CloudFormation las plantillas. Para obtener más información, consulte [¿Qué es Designer de CloudFormation ?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/working-with-templates-cfn-designer.html) en la *Guía del usuario de AWS CloudFormation *.

AWS IoT Greengrass admite la creación de versiones e implementaciones de componentes en. CloudFormation Para obtener más información, incluyendo ejemplos de plantillas JSON y YAML para las versiones e implementaciones del componente, consulte la [referencia del tipo de recurso de AWS IoT Greengrass](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_GreengrassV2.html) en la *Guía del usuario de AWS CloudFormation *.

### ComponentVersion ejemplo de plantilla
<a name="component-version-template"></a>

A continuación, se muestra la plantilla YAML para una versión de un componente simple. La receta de JSON incluye saltos de línea por motivos de legibilidad.

```
Parameters:
  ComponentVersion:
    Type: String
Resources:
  TestSimpleComponentVersion:
    Type: AWS::GreengrassV2::ComponentVersion
    Properties:
      InlineRecipe: !Sub
        - "{\n
            \"RecipeFormatVersion\": \"2020-01-25\",\n
            \"ComponentName\": \"component1\",\n
            \"ComponentVersion\": \"${ComponentVersion}\",\n
            \"ComponentType\": \"aws.greengrass.generic\",\n
            \"ComponentDescription\": \"This\",\n
            \"ComponentPublisher\": \"You\",\n
            \"Manifests\": [\n
            {\n
              \"Platform\": {\n
              \"os\": \"darwin\"\n
            },\n
            \"Lifecycle\": {},\n
            \"Artifacts\": []\n
           },\n
           {\n
             \"Lifecycle\": {},\n
             \"Artifacts\": []\n
           }\n
          ],\n
          \"Lifecycle\": {\n
          \"install\": {\n
            \"script\": \"yuminstallpython\"\n
          }\n
         }\n
        }"
        - { ComponentVersion: !Ref ComponentVersion }
```

### Ejemplo de plantilla de implementación
<a name="deployment-template"></a>

El siguiente es un archivo YAML que define una plantilla sencilla para una implementación.

```
Parameters:
  ComponentVersion:
    Type: String
  TargetArn:
    Type: String
Resources:
  TestDeployment:
    Type: AWS::GreengrassV2::Deployment
    Properties:
      Components:
        component1:
          ComponentVersion: !Ref ComponentVersion
      TargetArn: !Ref TargetArn
      DeploymentName: CloudFormationIntegrationTest
      DeploymentPolicies:
        FailureHandlingPolicy: DO_NOTHING
        ComponentUpdatePolicy:
          TimeoutInSeconds: 5000
          Action: SKIP_NOTIFY_COMPONENTS
        ConfigurationValidationPolicy:
          TimeoutInSeconds: 30000
Outputs:
  TestDeploymentArn:
    Value: !Sub
      - arn:${AWS::Partition}:greengrass:${AWS::Region}:${AWS::AccountId}:deployments:${DeploymentId}
      - DeploymentId: !GetAtt TestDeployment.DeploymentId
```

## Obtenga más información sobre CloudFormation
<a name="learn-more-cloudformation"></a>

Para obtener más información CloudFormation, consulte los siguientes recursos:
+ [AWS CloudFormation](https://aws.amazon.com/cloudformation/)
+ [AWS CloudFormation Guía del usuario](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)
+ [CloudFormation Referencia de la API](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/Welcome.html)
+ [Guía del usuario de la interfaz de la línea de comandos de AWS CloudFormation](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/what-is-cloudformation-cli.html)