This article assumes that you're using one of RightScale's published ServerTemplates that support EBS stripes (e.g., "Database Manager for MySQL 5.0/5.1") for creating a redundant master-slave database setup on Amazon EC2.
When you follow the steps in the Database Manager with MySQL 5.0/5.1 Database Setup tutorial to set up your EBS stripe for storing your MySQL data, you are instructed to run a script where you need to specify the total number of volumes that you want to use in your EBS stripe. When specifying a value for the EBS_STRIPE_COUNT input, a drop-down menu is conveniently displayed, which lets you select a stripe count from 1 to 5.
Users often ask whether they can use a stripe count larger than 5. And if so, what are advantages and disadvantages?
The maximum EBS stripe count that you can use with our ServerTemplates that support EBS striping is 14 (/dev/sdk to /dev/sdx). Even though the number of available devices on Linux-based instances is technically 17 (/dev/sdj, /dev/sdk . . . /dev/sdz), the maximum number of volumes that you can successfully use with our ServerTemplates is 14.
Note: EBS striping on Windows-based instances is currently not supported.
Most users will typically only need to use a stripe count between 1 and 5, which is why the script is pre-populated with a drop-down listing values from 1 to 5. However, you can specify a larger stripe size by using the "override dropdown?" option to specify a larger EBS stripe count.
RightScale's preliminary performance tests have shown that a stripe count of 2 or 4 yield positive performance gains. Of course, since no application is the same, you should perform your own performance tests to determine the optimal number and size of your EBS stripe for your own application. There are several factors to consider when determining the preferred stripe count for your database:
Important! Always test any setup thoroughly in a staging deployment (sandbox) before using it in a production environment.
In cases with large databases, we've noticed customers using stripe counts greater than 5 in order to reduce the time required to complete periodic backup snapshots. Remember, the larger the volume, the longer it takes to create a snapshot. For example, let's assume that it takes about 1 minute to create a snapshot of a 1 GB volume. If your database is 100 GB in size, it would take 100 minutes to complete a snapshot of a single 100 GB volume. However, if you use a stripe count of 10, it would only take 10 minutes to complete a backup of your database where each volume is 10 GB in size, since the script always creates an EBS stripe with volumes of equal size.
© 2006-2014 RightScale, Inc. All rights reserved.
RightScale is a registered trademark of RightScale, Inc. All other products and services may be trademarks or servicemarks of their respective owners.