AWS EC2 Unable to Change Instance Type

After spinning up a pool of t2.small servers and running some load tests, it became clear I was severely under-powered. Easy enough, I shut down an instance, changed to an m5.large, and started it up again. As usual I opened up a ping to the machine so I could see the second it came back online.

I waited.

And waited…

OK this isn’t right.

What happened? Turns out, Amazon has a special network driver in the form of a kernel module. This is called Enhanced Networking. Since I was using a custom built AMI I was lacking this kernel module. At this point you have 2 options:

  1. You can compile and install the network driver
  2. You can use Amazon Linux or another provided AMI that already has the driver built-in.

For me, I went with Amazon Linux. However, a yum repo with an easy-to-install package for this driver is now on my list of future projects.