Hi Mohammad,

You can do that by configuring provisioning properties on each entity spec. For example, I could use the following to select a 64-bit Ubuntu machine with at least 1Gb of RAM and 4 cores:

Map<String, Object> provisioningProperties = MutableMap.<String, Object>of(
        JcloudsLocationConfig.IMAGE_NAME_REGEX.getName(), "ubuntu",
        JcloudsLocationConfig.MIN_RAM.getName(), 1024,
        JcloudsLocationConfig.MIN_CORES.getName(), 4,
        JcloudsLocationConfig.OS_64_BIT.getName(), true);

Entity entity = addChild(EntitySpec.create(Entity.class)
        .displayName("Entity with provisioning properties")
.configure(SameServerEntity.PROVISIONING_PROPERTIES, provisioningProperties));

In YAML it would look like:

- serviceType: ..
  name: ..
  brooklyn.config:
    provisioning.properties.imageNameRegex: ubuntu
    provisioning.properties.minRam: 1024
    provisioning.properties.minCores: 4
    provisioning.properties.os64Bit: true

Check the JcloudsLocationConfig class for the full set of configuration available. If you know the ID of a specific image you can use IMAGE_ID. If you want fine-grained control you can use IMAGE_CHOOSER.

Sam

On 04/06/2014 08:18, Mohammad Shamsi wrote:
HI,

I am testing brooklyn with an openstack havana.
Given a sample blueprint with a load balancer, a web server and a mysql
node, is there any way to configure different VM images for each resource?

For example I would like to use VM image A (an ubuntu image) for mysql, but
image B (a Centos image) for load balancer.

Regards,
Mohammad Shamsi


Reply via email to