Runtime coverage and troubleshooting for Amazon EC2 instance
For an Amazon EC2 resource, the runtime coverage is evaluated at the instance level. Your Amazon EC2 instances can run multiple types of applications and workloads amongst others in your AWS environment. This feature also supports Amazon ECS managed Amazon EC2 instances and if you have Amazon ECS clusters running on an Amazon EC2 instance, the coverage issues at the instance level will show up under Amazon EC2 runtime coverage.
Topics
Reviewing coverage statistics
The coverage statistics for the Amazon EC2 instances associated with your own accounts or your member accounts is the percentage of the healthy EC2 instances over all EC2 instances in the selected AWS Region. The following equation represents this as:
(Healthy instances/All instances)*100
If you have also deployed the GuardDuty security agent for your Amazon ECS clusters, then any instance level coverage issue associated with Amazon ECS clusters running on an Amazon EC2 instance will appear as an Amazon EC2 instance runtime coverage issue.
Choose one of the access methods to review the coverage statistics for your accounts.
If the coverage status of your EC2 instance is Unhealthy, see Troubleshooting Amazon EC2 runtime coverage issues.
Coverage status change with EventBridge notifications
The coverage status of your Amazon EC2 instance might appear as Unhealthy. To know when the coverage status changes, we recommend you to monitor the coverage status periodically, and troubleshoot if the status becomes Unhealthy. Alternatively, you can create an Amazon EventBridge rule to receive a notification when the coverage status changes from either Unhealthy to Healthy or otherwise. By default, GuardDuty publishes this in the EventBridge bus for your account.
Sample notification schema
In an EventBridge rule, you can use the pre-defined sample events and event patterns to receive coverage status notification. For more information about creating an EventBridge rule, see Create rule in the Amazon EventBridge User Guide.
Additionally, you can create a custom event pattern by using the following example
notification schema. Make sure to replace the values for your account. To get notified when the
coverage status of your Amazon EC2 instance changes from Healthy
to
Unhealthy
, the detail-type
should be GuardDuty Runtime
Protection Unhealthy
. To get notified when the coverage status changes from
Unhealthy
to Healthy
, replace the value of detail-type
with GuardDuty Runtime Protection Healthy
.
{ "version": "0", "id": "event ID", "detail-type": "GuardDuty Runtime Protection Unhealthy", "source": "aws.guardduty", "account": "AWS account ID", "time": "event timestamp (string)", "region": "AWS Region", "resources": [ ], "detail": { "schemaVersion": "1.0", "resourceAccountId": "string", "currentStatus": "string", "previousStatus": "string", "resourceDetails": { "resourceType": "EC2", "ec2InstanceDetails": { "instanceId":"", "instanceType":"", "clusterArn": "", "agentDetails": { "version":"" }, "managementType":"" } }, "issue": "string", "lastUpdatedAt": "timestamp" } }
Troubleshooting Amazon EC2 runtime coverage issues
If the coverage status of your Amazon EC2 instance is Unhealthy, you can view the reason under the Issue column.
If your EC2 instance is associated with an EKS cluster and the security agent for EKS was installed either manually or through automated agent configuration, then to troubleshoot the coverage issue, see Runtime coverage and troubleshooting for Amazon EKS clusters.
The following table lists the issue types and the corresponding troubleshooting steps.
Issue type | Issue message | Troubleshooting steps |
---|---|---|
No Agent Reporting |
Waiting for SSM notification |
Receiving the SSM notification may take a few minutes. Make sure that the Amazon EC2 instance is SSM managed. For more information, see the steps under Method 1 - By using AWS Systems Manager in Installing the security agent manually. |
(Empty on purpose) |
If you are managing the GuardDuty security agent manually, make sure that you followed the steps under Managing security agent manually for Amazon EC2 resource. |
|
If you've enabled automated agent configuration:
|
||
Validate that the VPC endpoint for your Amazon EC2 instance is correctly configured. For more information, see Validating VPC endpoint configuration. |
||
If your organization has a service control policy (SCP), validate that permissions
boundary is not restricting the |
||
Agent disconnected |
|
|
SSM Association Creation Failed |
GuardDuty SSM association already exists in your account |
|
Your account has too many SSM associations |
Choose one of the following two options:
|
|
SSM Association Updation Failed |
GuardDuty SSM association does not exist in your account |
GuardDuty SSM association is not present in your account. Disable and then re-enable Runtime Monitoring. |
SSM Association Deletion Failed |
GuardDuty SSM association does not exist in your account |
The SSM association is not present in your account. If the SSM association was deleted intentionally, then no action is needed. |
SSM Instance Association Execution Failed |
Architectural requirements or other prerequisites are not met. |
For information about verified operating system distributions, see Prerequisites for Amazon EC2 instance support. If you still experience this issue, the following steps will help you identify and potentially resolve the issue:
|
VPC Endpoint Creation Failed |
VPC endpoint creation not supported for shared VPC
|
Runtime Monitoring supports the use of a shared VPC within an organization. For more information, see Using shared VPC with automated security agents. |
Only when using shared VPC with automated agent configuration Owner account ID |
The shared VPC owner account must enable Runtime Monitoring and automated agent configuration for at least one resource type (Amazon EKS or Amazon ECS (AWS Fargate)). For more information, see Prerequisites specific to GuardDuty Runtime Monitoring. | |
Enabling private DNS requires both |
Ensure that the following VPC attributes are set to If you're using Amazon VPC Console at https://console.aws.amazon.com/vpc/ |
|
Shared VPC Endpoint Deletion Failed |
Shared VPC endpoint deletion not allowed for account ID
|
Potential steps:
|
Agent not reporting |
(Empty on purpose) |
The issue type has reached end of support. If you continue experiencing this issue and not already done so, enable GuardDuty automated agent for Amazon EC2. If the issue still persists, consider disabling Runtime Monitoring for a few minutes and then enable it again. |