Corporate Home Open Source Home
Syndicate content
Eucalyptus

Join us at engage.eucalyptus.com

1 reply [Last post]
cloud9
Offline
Joined: 01/12/2011

Hello. I am attempting to set up a private cloud for hosting a database server cluster.
I have successfully deployed multiple VM's and am now looking at making the setup as efficient as possible.

Harddisk I/O is the major bottleneck for my designs, especially on any persistent drives I might need.
I am also looking into load balancing and task prioritization within the cloud.

I have a couple of questions regarding Eucalyptus architecture / features:

1. Am I right in my understanding that all EBS drives within a cluster reside ON the SC? i.e. all read/writes to/from EBS drives within instances cause network traffic and disk r/w on the SC. Is there a way to designate disk space from NC's to the pool of available space for volumes? Having X instances all performing tasks not only across the network but all onto one disk is slow. If anyone has any tricks for improving the performance of EBS drives I would be interested in knowing.

2. I'm thinking this one is a long shot, but is there a way to dynamically change the number of cores (maybe even RAM) available to an instance? If I have an instance that for the most part requires only a single core but occassionally takes high priority and requires more resources (all available on the same NC of course) without interrupting the instance (no reboot or redeployment), is there a way to make this happen?

3. On the node controllers themselves, does using a RAID0 setup for the physical machine make much difference to the instance disk operations? Has anyone performed any tests? I would think that using VirtIO Disk would produce a noticeable difference but would be interested in any research that anyone has done.

neil
Offline
Joined: 04/28/2009
Hello

Hello,

1. Your understanding is correct. The semantics of EBS are that a volume may be attached to an instance running on any node. It is a cluster level service and not node local. You do not want the lifetime of the volume and its availability tied to the availability of a node. Your network fabric should ideally be designed to handle traffic to your storage (in this case, the SC). You can always use ephemeral storage, which is node local but not persistent across instances. Or you may throttle network IO at the nodes.

2. No this is not possible using current technology. The way you achieve the desired effect is by partitioning your work across instances and firing up additional instances when desired. This may require application redesign and is one of the challenges when attempting to scale apps.

3. RAID0 should help. I'm sorry I don't have data from controlled experiments, but please feel free to report your findings.

hope that helps.