So, a customer reached out to us today concerning ways to use HEAT to build CBS
blk_server: type: "Rackspace::Cloud::Server" properties: flavor: 15 GB Memory v1 image: { get_param: image } name: "blk" user_data: ...
The problem is using this format they get an error
ERROR: Image Ubuntu 14.04 LTS (Trusty Tahr) (PVHVM) requires 20 GB minimum disk space. Flavor 15 GB Memory v1 has only 0 GB.
This is happening because memory flavor doesn’t use the hypervisor instance store, and instead is using Cloud Block Storage, hence ‘0GB’.
Thanks to my friend Aaron I have dug out the documentation for building CBS boot from volume server flavors. Here is how it would be done.
parameters: nodesize: type: number label: Nodes Disk Size description: Size of the each Nodes primary disk. default: 50 constraints: - range: { min: 50, max: 1024 } description: must be between 50 and 1024 Gb. nodeimage: label: Operating system description: | Server image. Defaults to 'CentOS 6 (PVHVM)'. type: string default: CentOS 7 (PVHVM) constraints: - allowed_values: - CentOS 7 (PVHVM) - Red Hat Enterprise Linux 7 (PVHVM) description: Must be a supported operating system. elk_server: type: "Rackspace::Cloud::Server" properties: flavor: 15 GB Memory v1 block_device_mapping: [{ device_name: "vda", volume_id : { get_resource : cinder_volume }, delete_on_termination : "true" }] name: "elk" user_data: cinder_volume: type: OS::Cinder::Volume properties: size: { get_param: nodesize } image: { get_param: nodeimage }