1. A system for dynamically expanding a virtual cluster having one or more virtual machines (VMs), the system comprising: a monitor measures resource availability of a target virtual cluster; an expansion controller which receives the measured resource availability, determines whether to expand the target virtual cluster based on the measured resource availability and determines a type and a number of VM instances to be additionally allocated to the target virtual cluster based on the measured resource availability and a type of the target virtual cluster; and a virtual cluster configurer which modifies profile information of the target virtual cluster such that the determined number of VM instances of the determined type can be additionally allocated to the target virtual cluster.