To be able to use ec2-consistent-snapshot on my EC2 servers I have decided to make my partition for my database data XFS
What are the best XFS configuration options I can use for these disk? The disk will be around 5-10 Gb big, containing 1 Gb of database. I am looking for both the best options when creating the filesystem as the mounting in fstab.
The operating system I use is Ubuntu Server 10.10
Generally, I'd recommend using ec2-consistent-snapshot. It builds on XFS' snapshotting. Then there's a blog post explaining the ideas and usage.
A lot of people recommend to use
noatime
in/etc/fstab
-- but besides I'm not aware of any magic switches.Somewhat related: http://shlomoswidler.com/2010/01/creating-consistent-snapshots-of-live.html
Explains how you can leverage the above to use the tool on a EBS-based AMI's root file system. Maybe that provides more pointers?
Edit
I don't think you'll gain a lot more by tweaking xfs. For starters, EBS is a network file system with sometimes very flakey performance. I have never seen a constant read/write throughput ever. XFS or any other file system cannot do much about it.
I also wouldn't select XFS for sole performance reasons. I'd select it for the snapshot capability see the above links (about
ec2-consistent-snapshot
and related). That's the exciting part.Also, you will gain more performance by setting up a raid of EBS volumes than by playing with XFS parameters. I still use the XFS defaults on a larger MySQL setup.
Generally, performance improves with the instance type used (e.g. small is worse than an L because of the network interface and EBS is basically network storage).
For the OS, I'd use Karmic (9.10). I didn't find 10.04 or 10.10 to be really stable.
Last but not least -- with 5 GB you should not run into any issues. Is your data expected to grow fast? If capacity planing is an issue and you require absolute availability I'd also recommend checking into RDS as they provide a hosted MySQL server and multi-zone is an option.