Cobertura de tempo de execução e solução de problemas para ECS clusters da Amazon - Amazon GuardDuty

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

Cobertura de tempo de execução e solução de problemas para ECS clusters da Amazon

A cobertura de tempo de execução dos ECS clusters da Amazon inclui as tarefas em execução nas instâncias AWS Fargate de ECS contêineres da Amazon 1.

Para um ECS cluster da Amazon executado no Fargate, a cobertura do tempo de execução é avaliada no nível da tarefa. A cobertura de tempo de execução do ECS cluster inclui as tarefas do Fargate que começaram a ser executadas depois que você ativou o Runtime Monitoring e a configuração automatizada do agente para o Fargate (somente). ECS Por padrão, uma tarefa do Fargate é imutável. GuardDuty não será possível instalar o agente de segurança para monitorar contêineres em tarefas já em execução. Para incluir essa tarefa do Fargate, pare e inicie a tarefa novamente. Verifique se o serviço associado é compatível.

Para obter informações sobre o ECS contêiner da Amazon, consulte Criação de capacidade.

Análise de estatísticas de cobertura

As estatísticas de cobertura dos ECS recursos da Amazon associados à sua própria conta ou às suas contas membros são a porcentagem dos ECS clusters saudáveis da Amazon em relação a todos os ECS clusters da Amazon selecionados Região da AWS. Isso inclui a cobertura para ECS clusters da Amazon associados às instâncias Fargate e AmazonEC2. A seguinte equação representa isso como:

(Clusters íntegros/todos os clusters)*100

Considerações

  • As estatísticas de cobertura do ECS cluster incluem o status da cobertura das tarefas do Fargate ou das instâncias de ECS contêiner associadas a esse ECS cluster. O status de cobertura das tarefas do Fargate inclui tarefas que estão em execução ou que foram concluídas recentemente.

  • Na guia Cobertura de tempo de execução de ECS clusters, o campo Container instances covered indica o status da cobertura das instâncias de contêiner associadas ao seu ECS cluster Amazon.

    Se o seu ECS cluster da Amazon contiver somente tarefas do Fargate, a contagem aparecerá como 0/0.

  • Se o seu ECS cluster da Amazon estiver associado a uma EC2 instância da Amazon que não tem um agente de segurança, o ECS cluster da Amazon também terá um status de cobertura insalubre.

    Para identificar e solucionar o problema de cobertura da EC2 instância associada da Amazon, consulte Solução de problemas de cobertura EC2 de tempo de execução da Amazon EC2 Instâncias da Amazon.

Selecione um dos métodos de acesso para revisar as estatísticas de cobertura de suas contas.

Console
  • Faça login no AWS Management Console e abra o GuardDuty console em https://console.aws.amazon.com/guardduty/.

  • No painel de navegação, escolha Monitoramento de runtime.

  • Escolha a guia Cobertura de runtime.

  • Na guia de cobertura de tempo de execução de ECS clusters, você pode visualizar as estatísticas de cobertura agregadas pelo status de cobertura de cada ECS cluster da Amazon que está disponível na tabela da lista de clusters.

    • Você pode filtrar a tabela Lista de clusters pelas seguintes colunas:

      • ID da conta

      • Nome do cluster

      • Tipo de gerenciamento de agentes

      • Status da cobertura

  • Se algum dos seus ECS clusters da Amazon tiver o status de Cobertura como Insalubre, a coluna Problema incluirá informações adicionais sobre o motivo do status Insalubre.

    Se seus ECS clusters da Amazon estiverem associados a uma EC2 instância da Amazon, navegue até a guia de cobertura de tempo de execução da EC2 instância e filtre pelo campo Nome do cluster para visualizar o problema associado.

API/CLI
  • Execute o ListCoverageAPIcom seu próprio ID de detector válido, região atual e ponto final de serviço. Você pode filtrar e classificar a lista de instâncias usando issoAPI.

    • Você pode alterar o filter-criteria de exemplo com uma das seguintes opções para CriterionKey:

      • ACCOUNT_ID

      • ECS_CLUSTER_NAME

      • COVERAGE_STATUS

      • MANAGEMENT_TYPE

    • Você pode alterar o AttributeName de exemplo em sort-criteria com uma das seguintes opções:

      • ACCOUNT_ID

      • COVERAGE_STATUS

      • ISSUE

      • ECS_CLUSTER_NAME

      • UPDATED_AT

        O campo é atualizado somente quando uma nova tarefa é criada no ECS cluster da Amazon associado ou há uma alteração no status de cobertura correspondente.

    • Você pode alterar o max-results (até 50).

    • Para encontrar o detectorId para sua conta e região atual, consulte a página Configurações no https://console.aws.amazon.com/guardduty/console ou execute o ListDetectors API.

    aws guardduty --region us-east-1 list-coverage --detector-id 12abc34d567e8fa901bc2d34e56789f0 --sort-criteria '{"AttributeName": "ECS_CLUSTER_NAME", "OrderBy": "DESC"}' --filter-criteria '{"FilterCriterion":[{"CriterionKey":"ACCOUNT_ID", "FilterCondition":{"EqualsValue":"111122223333"}}] }' --max-results 5
  • Execute o GetCoverageStatisticsAPIpara recuperar as estatísticas agregadas de cobertura com base no. statisticsType

    • Você pode alterar o statisticsType de exemplo com uma das seguintes opções:

      • COUNT_BY_COVERAGE_STATUS— Representa estatísticas de cobertura para ECS clusters agregadas por status de cobertura.

      • COUNT_BY_RESOURCE_TYPE— Estatísticas de cobertura agregadas com base no tipo de AWS recurso na lista.

      • Você pode alterar o filter-criteria de exemplo no comando. É possível usar as seguintes opções para CriterionKey:

        • ACCOUNT_ID

        • ECS_CLUSTER_NAME

        • COVERAGE_STATUS

        • MANAGEMENT_TYPE

        • INSTANCE_ID

    • Para encontrar o detectorId para sua conta e região atual, consulte a página Configurações no https://console.aws.amazon.com/guardduty/console ou execute o ListDetectors API.

    aws guardduty --region us-east-1 get-coverage-statistics --detector-id 12abc34d567e8fa901bc2d34e56789f0 --statistics-type COUNT_BY_COVERAGE_STATUS --filter-criteria '{"FilterCriterion":[{"CriterionKey":"ACCOUNT_ID", "FilterCondition":{"EqualsValue":"123456789012"}}] }'

Para obter mais informações sobre esses problemas de cobertura, consulte Solução de problemas de cobertura ECS de tempo de execução do Amazon -Fargate.

Alteração do status da cobertura com EventBridge notificações

O status da cobertura do seu ECS cluster da Amazon pode aparecer como Insalubre. Para saber quando o status de cobertura é alterado, recomendamos monitorar o status de cobertura periodicamente e solucionar o problema, se o status se tornar Não íntegro. Como alternativa, você pode criar uma EventBridge regra da Amazon para receber uma notificação quando o status da cobertura mudar de Insalubre para Saudável ou não. Por padrão, GuardDuty publica isso no EventBridge barramento da sua conta.

Exemplo de esquema de notificação

Em uma EventBridge regra, você pode usar os exemplos de eventos e padrões de eventos predefinidos para receber a notificação do status da cobertura. Para obter mais informações sobre a criação de uma EventBridge regra, consulte Criar regra no Guia EventBridge do usuário da Amazon.

Além disso, você pode criar um padrão de evento personalizado usando o exemplo de esquema de notificação a seguir. Substitua os valores da sua conta. Para ser notificado quando o status da cobertura do seu ECS cluster da Amazon mudar de Healthy paraUnhealthy, detail-type deveria serGuardDuty Runtime Protection Unhealthy. Para ser notificado quando o status da cobertura mudar de Unhealthy paraHealthy, substitua o valor de detail-type porGuardDuty Runtime Protection Healthy.

{ "version": "0", "id": "event ID", "detail-type": "GuardDuty Runtime Protection Unhealthy", "source": "aws.guardduty", "account": "Conta da AWS ID", "time": "event timestamp (string)", "region": "Região da AWS", "resources": [ ], "detail": { "schemaVersion": "1.0", "resourceAccountId": "string", "currentStatus": "string", "previousStatus": "string", "resourceDetails": { "resourceType": "ECS", "ecsClusterDetails": { "clusterName":"", "fargateDetails":{ "issues":[], "managementType":"" }, "containerInstanceDetails":{ "coveredContainerInstances":int, "compatibleContainerInstances":int } } }, "issue": "string", "lastUpdatedAt": "timestamp" } }

Solução de problemas de cobertura ECS de tempo de execução do Amazon -Fargate

Se o status da cobertura do seu ECS cluster da Amazon for Insalubre, você poderá ver o motivo na coluna Problema.

A tabela a seguir fornece as etapas de solução de problemas recomendadas para problemas do Fargate (ECSsomente na Amazon). Para obter informações sobre problemas de cobertura de EC2 instâncias da Amazon, consulte Solução de problemas de cobertura EC2 de tempo de execução da Amazon EC2 Instâncias da Amazon.

Tipo de problema Informações adicionais Etapas para solução de problemas

Agente não sendo relatado

Agente não sendo relatado para tarefas em TaskDefinition - 'TASK_DEFINITION'

Valide se o VPC endpoint da tarefa do seu ECS cluster Amazon está configurado corretamente. Para obter mais informações, consulte Validando a configuração do VPC endpoint.

Se sua organização tiver uma política de controle de serviços (SCP), confirme se o limite de permissões não está restringindo a permissão. guardduty:SendSecurityTelemetry Para obter mais informações, consulte Validando sua política de controle de serviço da organização.

VPC_ISSUE; for task in TaskDefinition - 'TASK_DEFINITION'

Veja os detalhes do VPC problema nas informações extras.

Atendente encerrado

ExitCode: EXIT_CODE para tarefas em TaskDefinition - 'TASK_DEFINITION'

Veja os detalhes do problema nas informações extra.

Motivo: REASON para tarefas em TaskDefinition - 'TASK_DEFINITION'

ExitCode: EXIT_CODE com o motivo: 'EXIT_CODE' para tarefas em TaskDefinition - 'TASK_DEFINITION'

Atendente encerrado: Motivo: CannotPullContainerError: manifesto de imagem pull repetido…

A função de execução da tarefa deve ter as seguintes permissões do Amazon Elastic Container Registry (AmazonECR):

... "ecr:GetAuthorizationToken", "ecr:BatchCheckLayerAvailability", "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage", ...

Para obter mais informações, consulte Forneça ECR permissões e detalhes da sub-rede.

Depois de adicionar as ECR permissões da Amazon, você deve reiniciar a tarefa.

Se o problema persistir, consulte Meu AWS Step Functions fluxo de trabalho está falhando inesperadamente.

VPCFalha na criação do endpoint

Habilitar o privado DNS requer ambos enableDnsSupport e enableDnsHostnames VPC os atributos definidos como true for vpcId (Serviço:EC2, Código de status: 400, ID da solicitação:). a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Certifique-se de que os VPC atributos a seguir estejam definidos como trueenableDnsSupport enableDnsHostnames e. Para obter mais informações, consulte DNSatributos em seu VPC.

Se você estiver usando o Amazon VPC Console em https://console.aws.amazon.com/vpc/para criar o AmazonVPC, certifique-se de selecionar Habilitar DNS nomes de host e Ativar DNS resolução. Para obter mais informações, consulte VPCas opções de configuração.

Atendente não provisionado

Invocação não suportada por SERVICE para tarefa(s) em TaskDefinition - 'TASK_DEFINITION'

Essa tarefa foi invocada por um SERVICE que não é compatível.

CPUArquitetura não suportada TYPE '' para tarefas em TaskDefinition - 'TASK_DEFINITION'

Essa tarefa está sendo executada em uma CPU arquitetura sem suporte. Para obter informações sobre CPU arquiteturas suportadas, consulteValidação dos requisitos de arquitetura.

TaskExecutionRole faltando em TaskDefinition - 'TASK_DEFINITION'

A função de execução da ECS tarefa está ausente. Para obter informações sobre o fornecimento da função de execução de tarefa e permissões necessárias, consulte Forneça ECR permissões e detalhes da sub-rede.

Falta configuração de rede 'CONFIGURATION_DETAILS' para tarefa(s) em TaskDefinition - 'TASK_DEFINITION'

Problemas de configuração de rede podem aparecer devido à falta de VPC configuração ou sub-redes ausentes ou vazias.

Valide se sua configuração de rede está correta. Para obter mais informações, consulte Forneça ECR permissões e detalhes da sub-rede.

Para obter mais informações, consulte os parâmetros de definição de ECS tarefas da Amazon no Amazon Elastic Container Service Developer Guide.

Outros

Problema não identificado, para tarefas em TaskDefinition - 'TASK_DEFINITION'

Use as seguintes questões para identificar a causa raiz do problema:

  • A tarefa foi iniciada antes de você habilitar o Monitoramento de runtime?

    Na AmazonECS, as tarefas são imutáveis. Para avaliar o comportamento em tempo de execução de uma tarefa do Fargate em execução, verifique se o Runtime Monitoring já está ativado e reinicie a tarefa para adicionar o GuardDuty sidecar do contêiner.

  • Essa tarefa faz parte de uma implantação de serviço que começou antes de você ativar o Monitoramento de runtime?

    Se sim, você pode reiniciar o serviço ou atualizá-lo com forceNewDeployment usando as etapas em Atualizando um serviço.

    Você também pode usar UpdateServiceou AWS CLI.

  • A tarefa foi iniciada depois de excluir o ECS cluster do Runtime Monitoring?

    Quando você altera a GuardDuty tag predefinida de GuardDutyManaged - true para GuardDutyManaged -false, não GuardDuty receberá os eventos de tempo de execução do ECS cluster.

  • Seu serviço contém uma tarefa que tem um formato antigo de taskArn?

    GuardDuty O Runtime Monitoring não oferece suporte à cobertura de tarefas que têm o formato antigo detaskArn.

    Para obter informações sobre Amazon Resource Names (ARNs) para ECS recursos da Amazon, consulte Amazon Resource Names (ARNs) IDs e.