One of my favourite services of AWS is definitely EC2 or Elastic Compute Cloud. It’s a service, which let’s you run your own instances. An instance serves as a virtual server and can get provisioned for any needed task. However, not all Availability Zones or even Regions provide the same subset of Instance Types. Furthermore, the availability of certain Regions depend on your account’s details.
In this post I will show you, how to find out about the available Instance Types for your specific AWS-account.
Instance Types
Instance Types define the provided hardware and resources of an instance. Some do have more CPU-availability, others are e.g. RAM- or GPU-resources optimized. The Instance Type name already contains a lot of information concerning the resources. Let’s have a look at the Instance Type name c3.4xlarge. The c stands for a CPU-optimized instance, the 3 is the revision of that type, the 4 means 4 separate CPUs and the xlarge for this Instance Type stands for a quad core.
In order to get an overview of all usable Availability Zones, I wrote a small Bash script, which can be found here. This script first gets all usable Regions and then each Availability Zone per Region.
My AWS-account is for a single person based in Germany. With this account-details I get the following Availability Zones.
NOTE: In order to get a complete list of Availability Zones, please run the previously mentioned bash-script and post the output as a comment.
List all Instance Types per Availability Zone
For better infrastructure planning, it’s important to get to know about available Instance Types per Availabity Zone for your AWS-account. You can find a small Bash script here, which will help you doing so. This script will go through each Availability Zone and retriev the list of available Instance Types. As mentioned before, my AWS-account is for a single person, who is Germany-based. The results for my AWS-account can be found in this CSV-file.
NOTE: the script might run for several minutes depending on your uplink speed. However, there is a status being displayed for each Availability Zone request.
The script above writes all its results to the file ec-instance-types.csv. The results for my AWS-account look like as stated below.
Conclusion
For my AWS-account, I can use
9 Regions
24 Availability Zones
53 different Instance Types
The Instance Types distribute over certain Regions as follows.