Tutorial: criar um runbook usando a experiência de design visual - AWS Systems Manager

Tutorial: criar um runbook usando a experiência de design visual

Neste tutorial, você aprenderá o básico de como trabalhar com a experiência de design visual fornecida pelo Systems Manager Automation. Na experiência de design visual, é possível criar um runbook que usa várias ações. Você usará o recurso de arrastar e soltar para organizar as ações na tela. Você também pesquisará, selecionará e configurará essas ações. Em seguida, você poderá visualizar o código YAML gerado automaticamente para o fluxo de trabalho do seu runbook, sair da experiência de design visual, executar o runbook e revisar os detalhes da execução.

Este tutorial também mostra como atualizar o runbook e visualizar a nova versão. No final do tutorial, você executa uma etapa de limpeza e exclui seu runbook.

Após concluir este tutorial, você saberá como usar a experiência de design visual para criar um runbook. Você também aprenderá a atualizar, executar e excluir seu runbook.

nota

Antes de começar este tutorial, certifique-se de concluir a Configurar a automação.

  1. Faça login no console do Systems Manager Automation.

  2. Escolha Criar runbook de automação.

Etapa 2: criar um fluxo de trabalho

Na experiência de design visual, um fluxo de trabalho é uma representação gráfica do seu runbook na tela. É possível usar a experiência de design visual para definir, configurar e examinar as ações individuais do seu runbook.

Para criar um fluxo de trabalho
  1. Ao lado do botão Design e Código, selecione o ícone de lápis e insira um nome para o seu runbook. Para este tutorial, insira VisualDesignExperienceTutorial.

    Experiência de design visual: dê um nome ao seu runbook
  2. Na seção Atributos do documento do painel Formulário, expanda a lista suspensa Parâmetros de entrada e selecione Adicionar um parâmetro.

    1. No campo Nome do parâmetro, insira InstanceId.

    2. No menu suspenso Tipo, escolha AWS::EC2::Instance.

    3. Selecione o botão Obrigatório.

    Crie um parâmetro para seu runbook
  3. No navegador APIs da AWS, insira DescribeInstances na barra de pesquisa.

  4. Arraste uma ação Amazon EC2 – DescribeInstances para a tela vazia.

  5. Em Nome da etapa, insira um valor. Para este tutorial, use o nome GetInstanceState.

    Escolha uma ação de API de descrição de instâncias do Amazon EC2.
    1. Expanda a lista suspensa Entradas adicionais e, no campo Nome da entrada, insira InstanceIds.

    2. Escolha a guia Entradas.

    3. No campo Valor de entrada, escolha a entrada do documento InstanceId. Isso faz referência ao valor do parâmetro de entrada criado por você no início do procedimento. Como a entrada InstanceIDs da ação DescribeInstances aceita valores StringList, é necessário colocar a entrada InstanceID entre colchetes. O YAML para o Valor de entrada deve corresponder ao seguinte: ['{{ InstanceId }}'].

    4. Na guia Saídas, selecione Adicionar uma saída e insira InstanceState no campo Nome.

    5. No campo Seletor, insira $.Reservations[0].Instances[0].State.Name.

    6. No menu suspenso Tipo, escolha String.

  6. Arraste uma ação de Ramificação do navegador Ações e solte-a abaixo da etapa GetInstanceState.

  7. Em Nome da etapa, insira um valor. Neste tutorial, use o nome BranchOnInstanceState.

    Para definir a lógica de ramificação, faça o seguinte:

    1. Escolha o estado Branch na tela. Em seguida, em Entradas e Escolhas, selecione o ícone de lápis para editar a Regra #1.

    2. Escolha Adicionar condições.

    3. Na caixa de diálogo Condições para a regra #1, escolha a saída da etapa GetInstanceState.InstanceState no menu suspenso Variável.

    4. Em Operador, escolha é igual a.

    5. Em Valor, escolha String na lista suspensa. Digite stopped.

      Defina uma condição para uma ação de ramificação.
    6. Selecione Salvar condições.

    7. Escolha Adicionar nova regra de escolha.

    8. Escolha Adicionar condições para a Regra #2.

    9. Na caixa de diálogo Condições para a regra #2, escolha a saída da etapa GetInstanceState.InstanceState no menu suspenso Variável.

    10. Em Operador, escolha é igual a.

    11. Em Valor, escolha String na lista suspensa. Digite stopping.

    12. Selecione Salvar condições.

    13. Escolha Adicionar nova regra de escolha.

    14. Para a Regra #3, escolha Adicionar condições.

    15. Na caixa de diálogo Condições para a regra #3, escolha a saída da etapa GetInstanceState.InstanceState no menu suspenso Variável.

    16. Em Operador, escolha é igual a.

    17. Em Valor, escolha String na lista suspensa. Digite running.

    18. Selecione Salvar condições.

    19. Na Regra padrão, escolha Ir para o final em Etapa padrão.

  8. Arraste a ação Alterar um estado de instância para a caixa vazia Arraste a ação aqui sob a condição {{GetInstanceState.InstanceState}} == "stopped".

    1. Em Nome da etapa, insira StartInstance.

    2. Na guia Entradas, em IDs de instância, escolha o valor de entrada do documento InstanceId no menu suspenso.

    3. Para Estado desejado, especifique running.

  9. Arraste a ação Aguardar recurso da AWS para a caixa vazia Arraste a ação aqui sob a condição {{ GetInstanceState.InstanceState }} == "stopping".

  10. Em Nome da etapa, insira um valor. Neste tutorial, use o nome WaitForInstanceStop.

    1. No campo Serviço, escolha Amazon EC2.

    2. No campo API, escolha DescribeInstances.

    3. No campo Seletor de propriedades, insira $.Reservations[0].Instances[0].State.Name.

    4. Para o parâmetro Valores desejados, insira ["stopped"].

    5. Na guia Configuração da ação WaitForInstanceStop, escolha StartInstance no menu suspenso Próxima etapa.

  11. Arraste a ação Executar comando em instâncias para a caixa vazia Arraste a ação aqui sob a condição {{GetInstanceState.InstanceState}} == "running".

  12. Em Nome da etapa, insira SayHello.

    1. Na guia Entradas, insira AWS-RunShellScript para o parâmetro Nome do documento.

    2. Para InstanceIds, escolha o valor de entrada do documento InstanceId no menu suspenso.

    3. Expanda o menu suspenso Entradas adicionais e, no menu suspenso Nome da entrada, escolha Parâmetros.

    4. No campo Valore de entrada, insira {"commands": "echo 'Hello World'"}.

  13. Revise o runbook concluído na tela e selecione Criar runbook para salvar o runbook do tutorial.

    Analisar e criar o runbook.

Etapa 3: analisar o código gerado automaticamente

Conforme você arrasta e solta ações do navegador Ações na tela, a experiência de design visual compõe automaticamente o conteúdo YAML ou JSON do seu runbook em tempo real. Você pode visualizar e editar esse código. Para visualizar o código gerado automaticamente, selecione Código na opção Design e Código.

Etapa 4: executar seu novo runbook

Após criar seu runbook, você poderá executar a automação.

Para executar seu novo runbook de automação
  1. Abra o console AWS Systems Manager em https://console.aws.amazon.com/systems-manager/.

  2. No painel de navegação, selecione Automation e Execute automation (Executar automação).

  3. Na lista Automation document (Documento do Automation), escolha um runbook. Escolha uma ou mais opções no painel Document categories (Categorias de documentos) para filtrar documentos SSM de acordo com sua finalidade. Para visualizar um runbook que você tenha, escolha a guia Owned by me (De minha propriedade). Para visualizar um runbook compartilhado com sua conta, escolha a guia Shared with me (Compartilhado comigo). Para visualizar todos os runbooks, escolha a guia All documents (Todos os documentos).

    nota

    Você pode visualizar informações sobre um runbook, selecionando o nome dele.

  4. Na seção Document details (Detalhes do documento), verifique se Document version (Versão do documento) está definida como a versão que você quer executar. O sistema inclui as seguintes opções de versão:

    • Versão padrão no runtime: escolha essa opção se o runbook do Automation for atualizado periodicamente e uma nova versão padrão for atribuída.

    • Versão mais recente no runtime: escolha essa opção se o runbook do Automation for atualizado periodicamente e se você quiser executar a versão mais recente.

    • 1 (padrão): escolha esta opção para executar a primeira versão do documento, que é a versão padrão.

  5. Escolha Próximo.

  6. Na página Executar runbook de automação, escolha Execução simples.

  7. Na seção Input parameters (Parâmetros de entrada), especifique as entradas necessárias. Opcionalmente, você pode escolher uma função de serviço do IAM na lista AutomationAssumeRole.

  8. (Opcional) Escolha um alarme do Amazon CloudWatch a fim de aplicar à sua automação para monitoramento. Para anexar um alarme do CloudWatch à sua automação, a entidade principal do IAM que inicia a automação deve ter permissão para a ação iam:createServiceLinkedRole. Para obter mais informações sobre alarmes do CloudWatch, consulte Usar alarmes do Amazon CloudWatch. A automação será interrompida se o alarme for ativado. Se você usar o AWS CloudTrail, você verá a chamada de API em sua trilha.

  9. Clique em Executar.

Etapa 5: limpar

Para excluir seu runbook
  1. Abra o console AWS Systems Manager em https://console.aws.amazon.com/systems-manager/.

  2. No painel de navegação, escolha Documents.

  3. Selecione a guia Pertencente a mim.

  4. Localize o runbook VisualDesignExperienceTutorial.

  5. Selecione o botão na página do cartão do documento e escolha Excluir documento no menu suspenso Ações.