Volume throughput not improving after instance type change

0

I changed an instance from r5.4xlarge to m5d.8xlarge expecting the disk I/O performance to increase. But I am not seeing any improvement on the volume metrics. The volume is EBS and it shows that EBS optimization is enabled. I have another instance that was launched initially as an m5d.8xlarge that actually shows significantly better throughput. Both instances were originally from the same AMI. My question is : when changing an instance type by stopping, changing instance type then restarting , does the root volume get upgraded also?

asked a year ago307 views
3 Answers
1
Accepted Answer

There are few things here. First both your EBS volumes and your EC2 instance have provisioned capacity. The EC2 instance has burst and baseline throughtput. You need to compare these with the throughput of the EBS volumes to see if your EC2 instance has sufficient capacity.

$ aws ec2 describe-instance-types --instance-types r5.4xlarge m5d.8xlarge --query "InstanceTypes[*].[InstanceType, EbsInfo.EbsOptimizedSupport, EbsInfo.EbsOptimizedInfo]"
[
    [
        "r5.4xlarge",
        {
            "BaselineBandwidthInMbps": 4750,
            "BaselineThroughputInMBps": 593.75,
            "BaselineIops": 18750,
            "MaximumBandwidthInMbps": 4750,
            "MaximumThroughputInMBps": 593.75,
            "MaximumIops": 18750
        }
    ],
    [
        "m5d.8xlarge",
        {
            "BaselineBandwidthInMbps": 6800,
            "BaselineThroughputInMBps": 850.0,
            "BaselineIops": 30000,
            "MaximumBandwidthInMbps": 6800,
            "MaximumThroughputInMBps": 850.0,
            "MaximumIops": 30000
        }
    ]
]

"Does the root volume get upgraded also?"

No, when you stop/start an instance you will keep the same volume.

aws ec2 describe-instances --instance-ids ws ec2 describe-instances --instance-ids i-0de519a76d9555c23 --query 'Reservations[].Instances[].[BlockDeviceMappings[0].Ebs.VolumeId]' 
[
    [
        "vol-0f7de28eb2b158b41"
    ]
]

aws ec2 stop-instances --instance-ids i-0de519a76d9555c23
aws ec2 describe-instances --instance-ids  i-0de519a76d9555c23 --query "Reservations[*].Instances[*].[InstanceId,State.Name,InstanceType]"  
aws ec2 start-instances --instance-ids i-0de519a76d9555c23

$ aws ec2 describe-instances --instance-ids ws ec2 describe-instances --instance-ids i-0de519a76d9555c23 --query 'Reservations[].Instances[].[BlockDeviceMappings[0].Ebs.VolumeId]'
[
    [
        "vol-0f7de28eb2b158b41"
    ]
]
AWS
MODERATOR
philaws
answered a year ago
profile picture
EXPERT
reviewed a year ago
1

The way to improve EBS performance would be to change the volume type.

Try changing form a GP2 to GP3

https://aws.amazon.com/ebs/general-purpose/

profile picture
EXPERT
answered a year ago
profile picture
EXPERT
reviewed a year ago
  • AWS documentation says you can change the volume type on a live volume. Seems a little risky. Is it standard practice to change a live volume's type?

  • I’ve done it before without issue. I believe it’s similar to VMWare storage vmotion.

  • It is perfectly safe to modify the volume type on a mounted volume.

1

does the root volume get upgraded also?

No. EBS volume is attached to EC2 instance via network(independent). By changing instance type, network throuput b/w EC2 instance and EBS volume can get better, but IOPS throuput of EBS is same.

To optimize throuput of EBS volume, the link as follows will help you.

https://repost.aws/knowledge-center/ebs-performance

profile picture
EXPERT
answered a year ago
  • Thanks. This makes upgrading a set of instances a little more difficult but better in the long run.

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions