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á.
Criando atributos AWS IoT Greengrass com AWS CloudFormation
AWS IoT Greengrass está integrado a AWS CloudFormation, um serviço que ajuda a modelar e configurar seus atributos AWS para que você possa gastar menos tempo criando e gerenciando seus atributos e infraestrutura. Você cria um modelo que descreve todos os recursos da AWS desejados (como versões de componentes e implantações) e o CloudFormation provisiona e configura esses recursos para você.
Ao usar o CloudFormation, você poderá reutilizar seu modelo para configurar seus recursos do AWS IoT Greengrass de forma repetida e consistente. Descreva seus recursos uma vez e depois provisione os mesmos recursos repetidamente em várias regiões e Contas da AWS.
Modelos do AWS IoT Greengrass e do CloudFormation
Para provisionar e configurar recursos para o AWS IoT Greengrass e serviços relacionados, você deve entender os Modelos do CloudFormation. Os modelos são arquivos de texto formatados em JSON ou YAML. Esses modelos descrevem os atributos que você deseja provisionar nas suas pilhas CloudFormation. Se não estiver familiarizado com o JSON ou o YAML, é possível usar o CloudFormation Designer para ajudar a começar a usar os modelos do CloudFormation. Para obter mais informações, consulte O que é o CloudFormation Designer no Manual do usuário do AWS CloudFormation.
O AWS IoT Greengrass é compatível com 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 no Guia do Usuário do AWS CloudFormation.
Exemplo de modelo de componentes e versões
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
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 o CloudFormation
Para saber mais sobre o CloudFormation, consulte os seguintes recursos: