

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Criação de AWS IoT Greengrass recursos com AWS CloudFormation
<a name="creating-resources-with-cloudformation"></a>

AWS IoT Greengrass é integrado com AWS CloudFormation, um serviço que ajuda você a modelar e configurar seus AWS recursos para que você possa gastar menos tempo criando e gerenciando seus recursos e infraestrutura. Você cria um modelo que descreve todos os AWS recursos desejados (como versões e implantações de componentes) e CloudFormation provisiona e configura esses recursos para você. 

Ao usar CloudFormation, você pode reutilizar seu modelo para configurar seus AWS IoT Greengrass recursos de forma consistente e repetida. Descreva seus recursos uma vez e, em seguida, provisione os mesmos recursos repetidamente em várias Contas da AWS regiões. 

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

Para provisionar e configurar recursos AWS IoT Greengrass e serviços relacionados, você deve entender [CloudFormation os modelos](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html). Os modelos são arquivos de texto formatados em JSON ou YAML. Esses modelos descrevem os recursos que você deseja provisionar em suas CloudFormation pilhas. Se você não estiver familiarizado com JSON ou YAML, você pode usar o CloudFormation Designer para ajudá-lo a começar a usar modelos. CloudFormation Para obter mais informações, consulte [O que é o Designer CloudFormation ?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/working-with-templates-cfn-designer.html) no *Manual do usuário do AWS CloudFormation *.

AWS IoT Greengrass suporta a criação de versões de componentes e implantações em CloudFormation. Para mais informações, incluindo exemplos de modelos JSON e YAML para versões e implantações de componentes, consulte a [referência de tipo de recurso do AWS IoT Greengrass](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_GreengrassV2.html) no *Guia do Usuário do AWS CloudFormation *.

### ComponentVersion exemplo de modelo
<a name="component-version-template"></a>

Veja a seguir o modelo YAML para uma versão de um componente simples. A fórmula do JSON contém quebras de linha para facilitar a leitura.

```
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 }
```

### Exemplo de modelo de implantação
<a name="deployment-template"></a>

Veja a seguir um arquivo YAML que define um modelo simples para uma implantação.

```
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
```

## Saiba mais sobre CloudFormation
<a name="learn-more-cloudformation"></a>

Para saber mais sobre isso CloudFormation, consulte os seguintes recursos:
+ [AWS CloudFormation](https://aws.amazon.com/cloudformation/)
+ [AWS CloudFormation Guia do usuário](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)
+ [CloudFormation API Reference](https://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/Welcome.html)
+ [ Guia do Usuário da Interface de Linha de Comando AWS CloudFormation](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/what-is-cloudformation-cli.html)