

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á.

# `AWSSupport-SetupIPMonitoringFromVPC`
<a name="automation-awssupport-setupipmonitoringfromvpc"></a>

 **Descrição** 

 `AWSSupport-SetupIPMonitoringFromVPC`cria uma instância do Amazon Elastic Compute Cloud (Amazon EC2) na sub-rede especificada e monitora o IPs destino selecionado IPv4 ( IPv6ou) executando continuamente testes de ping, MTR, traceroute e tracetcp. Os resultados são armazenados nos CloudWatch registros do Amazon Logs e filtros métricos são aplicados para visualizar rapidamente as estatísticas de latência e perda de pacotes em um painel. CloudWatch 

 **Informações adicionais** 

Os dados de CloudWatch registros podem ser usados para solucionar problemas de rede e analisar se a pattern/trends. Additionally, you can configure CloudWatch alarms with Amazon SNS notifications when packet loss and/or latência atinge um limite. Os dados também podem ser usados ao abrir um caso com AWS Support, para ajudar a isolar um problema rapidamente e reduzir o tempo de resolução ao investigar um problema de rede.

 [Executar esta automação (console)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-SetupIPMonitoringFromVPC) 

**Tipo de documento**

Automação

**Proprietário**

Amazon

**Plataformas**

Linux, macOS, Windows

**Parâmetros**
+ AutomationAssumeRole

  Tipo: String

  Descrição: (opcional) o nome do recurso da Amazon (ARN) do perfil do AWS Identity and Access Management (IAM) que permite que o Systems Manager Automation realize ações em seu nome. Se nenhum perfil for especificado, o Systems Manager Automation usa as permissões do usuário que inicia este runbook.
+ CloudWatchLogGroupNamePrefix

  Tipo: string

   Padrão: `/AWSSupport-SetupIPMonitoringFromVPC` 

  Descrição: (Opcional) Prefixo usado para cada grupo de CloudWatch registros criado para os resultados do teste.
+ CloudWatchLogGroupRetentionInDays

  Tipo: string

  Valores válidos: 1 \$1 3 \$1 5 \$1 7 \$1 14 \$1 30 \$1 60 \$1 90 \$1 120 \$1 150 \$1 180 \$1 365 \$1 400 \$1 545 \$1 731 \$1 1827 \$1 3653

  Padrão: 7

  Descrição: (Opcional) O número de dias que você deseja manter os resultados de monitoramento de rede.
+ InstanceType

  Tipo: string

  Valores válidos: t2.micro \$1 t2.small \$1 t2.medium \$1 t2.large \$1 t3.micro \$1 t3.small \$1 t3.medium \$1 t3.large \$1 t4g.micro \$1 t4g.small \$1 t4g.medium \$1 t4g.large

  Padrão: t3.micro

  Descrição: (Opcional) O tipo de instância EC2 para a instância EC2 Rescue. Tamanho recomendado: t3.micro.
+ SubnetId

  Tipo: string

  Descrição: (Obrigatório) O ID de sub-rede para a instância do monitor. Lembre-se de que, se você especificar uma sub-rede privada, deverá garantir que haja acesso à Internet para permitir que a instância do monitor configure o teste (ou seja, instale o agente CloudWatch Logs, interaja com o Systems Manager e CloudWatch).
+ Alvo IPs

  Tipo: string

  Descrição: (Obrigatório) Lista separada por vírgulas de IPv4s e/ou IPv6s para monitorar. Espaços não são permitidos. O tamanho máximo é de 255 caracteres. Lembre-se de que, se você fornecer um IP inválido, a automação falhará e reverterá a configuração de teste.
+ TestInstanceSecurityGroupId

  Tipo: string

  Descrição: (Opcional) O ID do grupo de segurança da instância de teste. Se não for especificada, a automação cria uma durante a criação da instância. Certifique-se de que o grupo de segurança permita acesso externo ao monitoramento IPs.
+ TestInstanceProfileName

  Tipo: string

  Descrição: (Opcional) O nome de um perfil de instância do IAM existente para a instância de teste. Se não for especificada, a automação cria uma durante a criação da instância. A função deve ter as seguintes permissões:`logs:CreateLogStream`,`logs:DescribeLogGroups`,`logs:DescribeLogStreams`, `logs:PutLogEvents` e a Política AWS Gerenciada`AmazonSSMManagedInstanceCore`.
+ TestInterval

  Tipo: string

  Descrição: (Opcional) O número de minutos entre os intervalos de teste. O valor padrão é `1` minuto e o máximo é `10` minutos.
+ RetainDashboardAndLogsOnDeletion

  Tipo: string

  Descrição: (Opcional) Especifique `False` a exclusão do CloudWatch painel e dos registros da Amazon ao excluir a AWS AWS CloudFormation pilha. O valor padrão é `True`. Por padrão, o painel e os registros são mantidos e precisarão ser excluídos manualmente quando não forem mais necessários.

**Permissões obrigatórias do IAM**

O parâmetro `AutomationAssumeRole` requer as seguintes ações para usar o runbook com êxito.

**Atenção**  
 É recomendável passar `TestInstanceProfileName` parâmetros ou garantir a existência de proteções de segurança para evitar o uso indevido de permissões mutáveis do IAM. 

 É recomendável que o usuário que executa a automação tenha a política gerenciada do **Amazon SSMAutomation Role** IAM anexada. Além disso, o usuário deve ter a política a seguir anexada à sua conta de usuário, grupo ou função:

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": [
                "iam:CreateRole",
                "iam:CreateInstanceProfile",
                "iam:GetRole",
                "iam:GetInstanceProfile",
                "iam:DetachRolePolicy",
                "iam:AttachRolePolicy",
                "iam:PassRole",
                "iam:AddRoleToInstanceProfile",
                "iam:GetRolePolicy",
                "iam:RemoveRoleFromInstanceProfile",
                "iam:DeleteRole",
                "iam:DeleteRolePolicy",
                "iam:DeleteInstanceProfile",
                "iam:PutRolePolicy",
                "iam:TagRole"
            ],
            "Resource": [
                "arn:aws:iam::111122223333:role/SetupIPMonitoringFromVPC*",
                "arn:aws:iam::111122223333:instance-profile/SetupIPMonitoringFromVPC*"
            ],
            "Effect": "Allow"
        },
        {
            "Action": [
                "cloudformation:CreateStack",
                "cloudformation:CreateChangeSet",
                "cloudformation:DeleteStack",
                "cloudformation:DescribeStacks",
                "cloudformation:DescribeStackEvents",
                "cloudwatch:PutDashboard",
                "cloudwatch:DeleteDashboards",
                "ec2:AuthorizeSecurityGroupEgress",
                "ec2:CreateSecurityGroup",
                "ec2:CreateLaunchTemplate",
                "ec2:DeleteSecurityGroup",
                "ec2:DescribeImages",
                "ec2:DescribeSubnets",
                "ec2:DescribeInstanceTypes",
                "ec2:DescribeVpcs",
                "ec2:DeleteLaunchTemplate",
                "ec2:DeleteSecurityGroup",
                "ec2:RunInstances",
                "ec2:TerminateInstances",
                "ec2:DescribeInstanceStatus",
                "ec2:CreateTags",
                "ec2:AssignIpv6Addresses",
                "ec2:DescribeTags",
                "ec2:DescribeInstances",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeLaunchTemplates",
                "ec2:RevokeSecurityGroupEgress",
                "logs:CreateLogGroup",
                "logs:DeleteLogGroup",
                "logs:PutMetricFilter",
                "logs:PutRetentionPolicy",
                "logs:TagResource",
                "ssm:DescribeInstanceInformation",
                "ssm:GetParameter",
                "ssm:GetParameters",
                "ssm:SendCommand",
                "ssm:ListCommands",
                "ssm:ListCommandInvocations"
            ],
            "Resource": [
                "*"
            ],
            "Effect": "Allow"
        }
    ]
}
```

------

Se o `TestInstanceProfileName` parâmetro for fornecido, as seguintes permissões do IAM não serão necessárias para executar o runbook:
+ objetivo: CreateRole
+ objetivo: CreateInstanceProfile
+ objetivo: DetachRolePolicy
+ objetivo: AttachRolePolicy
+ objetivo: AddRoleToInstanceProfile
+ objetivo: RemoveRoleFromInstanceProfile
+ objetivo: DeleteRole
+ objetivo: DeleteRolePolicy
+ objetivo: DeleteInstanceProfile

 **Etapas do documento** 

1.  **`aws:executeAwsApi`**- descreva a sub-rede fornecida para obter o ID da VPC IPv6 e o estado de associação do bloco CIDR. 

1.  **`aws:executeScript`**- valide se o destino fornecido IPs está sintaticamente correto IPv4 e/ou os IPv6 endereços, obtenha a arquitetura do tipo de instância selecionado e verifique se a sub-rede tem uma associação de IPv6 pool, se houver algum IP de destino. IPv6 

1.  **`aws:createStack`**- crie uma AWS CloudFormation pilha que provisione a instância de teste do Amazon EC2, o perfil da instância do IAM (se não for fornecido), o grupo de segurança (se não for fornecido) CloudWatch , os grupos de log e o painel. CloudWatch 

   (Limpeza) Se a etapa falhar: 

    **`aws:executeScript`**- descreva os eventos da CloudFormation pilha para identificar o motivo da falha. 

    **`aws:deleteStack`**- exclua a CloudFormation pilha e todos os recursos associados. 

1.  **`aws:waitForAwsResourceProperty`**- espere que a CloudFormation pilha conclua a criação. 

   (Limpeza) Se a etapa falhar: 

    **`aws:executeScript`**- descreva os eventos da CloudFormation pilha para identificar o motivo da falha. 

    **`aws:deleteStack`**- exclua a CloudFormation pilha e todos os recursos associados. 

1.  **`aws:executeScript`**- descreva os recursos da CloudFormation pilha para obter o ID da instância de teste, o ID do grupo de segurança, a função do IAM, o perfil da instância e o nome do painel. 

   (Limpeza) Se a etapa falhar: 

    **`aws:executeScript`**- descreva os eventos da CloudFormation pilha para identificar o motivo da falha. 

    **`aws:deleteStack`**- exclua a CloudFormation pilha e todos os recursos associados. 

1.  **`aws:waitForAwsResourceProperty`** :aguarde até que a instância de teste se torne uma instância gerenciada. 

   (Limpeza) Se a etapa falhar: 

    **`aws:deleteStack`**- exclua a CloudFormation pilha e todos os recursos associados. 

1.  **`aws:runCommand`**- instale o CloudWatch agente na instância de teste. 

   (Limpeza) Se a etapa falhar: 

    **`aws:deleteStack`**- exclua a CloudFormation pilha e todos os recursos associados. 

1.  **`aws:runCommand`**- defina os scripts de teste de rede (MTR, ping, tracepath e traceroute) para cada um dos fornecidos. IPs 

   (Limpeza) Se a etapa falhar: 

    **`aws:deleteStack`**- exclua a CloudFormation pilha e todos os recursos associados. 

1.  **`aws:runCommand`**- inicie os testes de rede e agende as execuções subsequentes usando cronjobs que são executados a cada minuto. TestInterval 

   (Limpeza) Se a etapa falhar: 

    **`aws:deleteStack`**- exclua a CloudFormation pilha e todos os recursos associados. 

1.  **`aws:runCommand`**- configure o CloudWatch agente para enviar os resultados do teste `/home/ec2-user/logs/` para o CloudWatch Logs. 

   (Limpeza) Se a etapa falhar: 

    **`aws:deleteStack`**- exclua a CloudFormation pilha e todos os recursos associados. 

1.  **`aws:runCommand`**- configure a rotação do log para os resultados do teste em`/home/ec2-user/logs/`. 

1.  **`aws:executeScript`**- defina a política de retenção para todos os grupos de CloudWatch registros criados pela CloudFormation pilha. 

1.  **`aws:executeScript`**- CloudWatch crie filtros métricos de grupos de registros para latência de ping e perda de pacotes de ping. 

   (Limpeza) Se a etapa falhar: 

    **`aws:deleteStack`**- exclua a CloudFormation pilha e todos os recursos associados. 

1.  **`aws:executeScript`**- atualize o CloudWatch painel para incluir widgets para estatísticas de latência de ping e perda de pacotes de ping. 

   (Limpeza) Se a etapa falhar: 

    **`aws:executeAwsApi`**- exclua o CloudWatch painel, se ele existir. 

    **`aws:deleteStack`**- exclua a CloudFormation pilha e todos os recursos associados. 

1.  **`aws:branch`**- avalie o SleepTime parâmetro. Se definido como`0`, a automação termina sem excluir a pilha. 

1.  **`aws:sleep`**- aguarde a SleepTime duração especificada antes de excluir a CloudFormation pilha. 

1.  **`aws:deleteStack`**- exclua a CloudFormation pilha. Com base no RetainDashboardAndLogsOnDeletion parâmetro, o CloudWatch painel e os grupos de registros são mantidos ou excluídos. 

   (Limpeza) Se a exclusão da pilha falhar: 

    **`aws:executeScript`**- descreva os eventos da CloudFormation pilha para identificar o motivo da falha na exclusão. 

 **Saídas** 

updateCloudWatchPainel de controle. StackUrl - o URL da CloudFormation pilha.

updateCloudWatchPainel de controle. DashboardUrl - o URL do CloudWatch painel.

updateCloudWatchPainel de controle. DashboardName - o nome do CloudWatch painel.

updateCloudWatchPainel de controle. LogGroups - a lista de grupos de CloudWatch registros criados.

describeStackResources. HelperInstanceId - o ID da instância de teste.

describeStackResources. StackName - o nome da CloudFormation pilha.