AWS EC2 Instances by Type Test

Amazon EC2 provides a wide selection of instance types optimized to fit different use cases. Instance types comprise varying combinations of CPU, memory, storage, and networking capacity and give you the flexibility to choose the appropriate mix of resources for your applications. Each instance type includes one or more instance sizes, allowing you to scale your resources to the requirements of your target workload.

When you launch an instance, the instance type that you specify determines the hardware of the host computer used for your instance. Each instance type offers different compute, memory, and storage capabilities, and is grouped in an instance family based on these capabilities.

Occasionally, cloud administrators may want to study the collective resource usage of instances of a type. This insight will help them figure out if the instances have been configured with a type that aligns with their workload and resource demands. This is exactly where the AWS EC2 Instances By Type test does!

For each instance type, this test reports the CPU, disk, and network resource usage of that type. In the process, administrators will be able to tell if instances of a particular type are consistently over-utilizing the resources available to them. This analysis will help administrators figure out whether/not the type configuration of instances need to be changed, so that more resources are at their disposal.

Target of the test: Amazon Cloud

Agent deploying the test: A remote agent

Output of the test: One set of results for each instancename:instanceID available for the configured AWS user account

Configurable parameters for the test
Parameter Description

Test Period

How often should the test be executed.

Host

The host for which the test is to be configured.

Access Type

eG Enterprise monitors the AWS cloud using AWS API. By default, the eG agent accesses the AWS API using a valid AWS account ID, which is assigned a special role that is specifically created for monitoring purposes. Accordingly, the Access Type parameter is set to Role by default. Furthermore, to enable the eG agent to use this default access approach, you will have to configure the eG tests with a valid AWS Account ID to Monitor and the special AWS Role Name you created for monitoring purposes.

Some AWS cloud environments however, may not support the role-based approach. Instead, they may allow cloud API requests only if such requests are signed by a valid Access Key and Secret Key. When monitoring such a cloud environment therefore, you should change the Access Type to Secret. Then, you should configure the eG tests with a valid AWS Access Key and AWS Secret Key.

Note that the Secret option may not be ideal when monitoring high-security cloud environments. This is because, such environments may issue a security mandate, which would require administrators to change the Access Key and Secret Key, often. Because of the dynamicity of the key-based approach, Amazon recommends the Role-based approach for accessing the AWS API.

AWS Account ID to Monitor

This parameter appears only when the Access Type parameter is set to Role. Specify the AWS Account ID that the eG agent should use for connecting and making requests to the AWS API. To determine your AWS Account ID, follow the steps below:

  • Login to the AWS management console. with your credentials.

  • Click on your IAM user/role on the top right corner of the AWS Console. You will see a drop-down menu containing the Account ID (see Figure 1).

    Identifying AWS Account ID

    Figure 1 : Identifying the AWS Account ID

AWS Role Name

This parameter appears when the Access Type parameter is set to Role. Specify the name of the role that you have specifically created on the AWS cloud for monitoring purposes. The eG agent uses this role and the configured Account ID to connect to the AWS Cloud and pull the required metrics. To know how to create such a role, refer to Creating a New Role.

AWS Access Key, AWS Secret Key, Confirm AWS Access Key, Confirm AWS Secret Key

These parameters appear only when the Access Type parameter is set to Secret.To monitor an Amazon instance, the eG agent has to be configured with the access key and secret key of a user with a valid AWS account. For this purpose, we recommend that you create a special user on the AWS cloud, obtain the access and secret keys of this user, and configure this test with these keys. The procedure for this has been detailed in the Obtaining an Access key and Secret key topic. Make sure you reconfirm the access and secret keys you provide here by retyping it in the corresponding Confirm text boxes.

Proxy Host and Proxy Port

In some environments, all communication with the AWS cloud and its regions could be routed through a proxy server. In such environments, you should make sure that the eG agent connects to the cloud via the proxy server and collects metrics. To enable metrics collection via a proxy, specify the IP address of the proxy server and the port at which the server listens against the Proxy Host and Proxy Port parameters. By default, these parameters are set to none , indicating that the eG agent is not configured to communicate via a proxy, by default.

Proxy User Name, Proxy Password, and Confirm Password

If the proxy server requires authentication, then, specify a valid proxy user name and password in the proxy user name and proxy password parameters, respectively. Then, confirm the password by retyping it in the CONFIRM PASSWORD text box. By default, these parameters are set to none, indicating that the proxy sever does not require authentication by default.

Proxy Domain and Proxy Workstation

If a Windows NTLM proxy is to be configured for use, then additionally, you will have to configure the Windows domain name and the Windows workstation name required for the same against the proxy domain and proxy workstation parameters. If the environment does not support a Windows NTLM proxy, set these parameters to none.

Exclude Region

Here, you can provide a comma-separated list of region names or patterns of region names that you do not want to monitor. For instance, to exclude regions with names that contain 'east' and 'west' from monitoring, your specification should be: *east*,*west*

Measures reported by the test:

Measurement

Description

Measurement Unit

Interpretation

CPU credit balance

Indicates the count of CPU credits still unused by instances of this type.

Number

Traditional Amazon EC2 instance types provide fixed CPU resources, while burstable performance instances provide a baseline level of CPU utilization with the ability to burst CPU utilization above the baseline level.

Each burstable performance instance continuously earns credits when it stays below the CPU baseline, and continuously spends credits when it bursts above the baseline. The amount of credits earned or spent depends on the CPU utilization of the instance.

Ideally, the value of the CPU credit balance measure should be high and the value of the CPU credit usage measure should be low. If this is not the case, it means that instances of the type are consuming CPU resources excessively. As a result, these instances have already spent a significant number of CPU credits. If the situation persists, you may want to consider changing the instance type of these instances, so that additional CPU resources are available to them.

CPU credit usage

Indicates the count of CPU credits still unused by instances of this type.

Number

CPU utilization

Indicates the percentage of CPU resources utilized by instances of this type.

Percent

A value close to 100 percent is a cause for concern, as it implies that the instances of the type are CPU-hungry.

Disk reads

Indicates the rate at which instances of this type read data from disk.

KB/Second

These measures are good indicators of the I/O workload and processing power of the instances of each type.

 

 

 

Disk read operations

Indicates the rate at which instances of this type performed disk reads.

Operations/Second

Disk writes

Indicates the rate at which instances of this type wrote data to disk.

KB/Second

Disk write operations

Indicates the rate at which instances of this type performed disk writes.

Operations/Second

Incoming network traffic

Indicates the rate at which data was received by instances of this type over the network on all interfaces.

KB/Second

 

These metrics are good indicators of the bandwidth usage of instances of each type.

Outgoing network traffic

Indicates the rate at which data is transmitted by instances of this type over the network on all interfaces.

KB/Second

Incoming network packets

Indicates the number of packets received by instances of this type over the network.

Number

These metrics are good indicators of the network load imposed by each instance type. A quick comparison of these metrics across types will lead you to that instance type that generates the maximum network load.

Outgoing network packets

Indicates the number of packets transmitted by instances of this type over the network.

Number

Disk IOPS

Indicates the rate at which instances of this type performed disk I/O operations.

Operations/Second

Compare the value of this measure across instance types to identify the type of instances that processes the maximum I/O operations every second. The instance type that consistently processes an I/O-intensive workload can be isolated.

Disk throughput

Indicates the disk throughput of instances of this type.

KB/Second

Compare the value of this measure across instance types to know which type has the maximum disk throughput.

Network throughput

Indicates the network throughput of instances of this type.

KB/Second

Compare the value of this measure across instance types to know which type has the maximum network throughput.

Total instances

Indicates the number of instances of this type.

Number

 

Powered-on instances

Indicates the number of instances of this type that are currently powered on.

Number

 

Powered-off instances

Indicates the number of instances of this type that are currently powered off.

Number

 

Volume read operations

Indicates the rate at which instances of this type performed read operations on storage volumes.

Operations/Second

By comparing the value of these metrics across instance types, you can quickly identify the type that processes disk read and/or write requests slowly. In other words, if many instances of a type are sluggish in I/O processing, then this comparative analysis will lead you to that type.

 

Volume write operations

Indicates the rate at which instances of this type performed write operations on storage volumes.

Operations/Second

Volume reads

Indicates the rate at which instances of this type read data from storage volumes.

KB/Second

By comparing the value of these metrics across instance types, you can quickly identify the type that processes disk read and/or write requests slowly. In other words, if many instances of a type are sluggish in I/O processing, then this comparative analysis will lead you to that type.

Volume writes

Indicates the rate at which instances of this type wrote data to storage volumes.

KB/Second

I/O credit balance

Indicates the percentage of bandwidth that is still unused by instances of this type.

Percent

I/O credits represent the available bandwidth that the General Purpose SSD volume can use to burst large amounts of I/O when more than the baseline performance is needed.

Each burstable performance instance continuously earns credits when it stays below the I/O baseline, and continuously spends credits when it bursts above the baseline. The amount of credits earned or spent depends on the I/O utilization of the instance.

If the value of this measure is very low for any instance type, it implies that I/O credits have been excessively spent by the instances of that type. This can happen if you have chosen the instance type poorly, at the time of instance creation. In other words, if you fail to consider the current and anticipated load on the instance when selecting its type, then your instance may be compelled to use almost all its I/O credits to fulfill the demand. As a result, the instance will be left with very little unused I/O credits.

If the situation persists, you may want to consider changing the instance type of these instances, so that additional I/O resources are available to them.

Throughput credit balance

Indicates the percentage of throughput that is still unused by instances of this type.

Percent

If the value of this measure is very low for any instance type, it implies that throughput credits have been excessively spent by the instances of that type. This can happen if you have chosen the instance type poorly, at the time of instance creation. In other words, if you fail to consider the current and anticipated load on the instance when selecting its type, then your instance may be compelled to use almost all its throughput credits to fulfill the demand. As a result, the instance will be left with very little unused credits.

If the situation persists, you may want to consider changing the instance type of these instances, so that additional resources are available to them.