1 #This yaml template instantiates kubernetes nodes (using instance.yaml subtemplate).
2 #It contains some node specific things, and has been split from main template
3 #to be able to do some late evaluation tricks.
4 heat_template_version: 2017-02-24
5 description: "This template instantiates a single kubernetes node using the instance.yaml subtemplate"
31 #Volume for storing /var/lib/docker for node.
33 type: OS::Cinder::Volume
36 size: { get_param: docker_storage_size }
37 #Call generic instance template.
43 template: "node%index%"
44 params: { "%index%": { get_param: nodenum } }
45 key_name: { get_param: key_name }
46 image_name: { get_param: image_name }
47 network: { get_param: network }
48 subnet: { get_param: subnet }
49 flavor_name: { get_param: flavor_name }
50 notify_command: { get_param: notify_command }
51 security_group: { get_param: security_group }
52 scheduler_hints: { get_param: scheduler_hints }
53 demo_network: { get_param: demo_network }
54 #Attachment of docker volume to node.
55 docker_storage_attachment:
56 type: OS::Cinder::VolumeAttachment
58 volume_id: { get_resource: docker_storage }
59 instance_uuid: { get_resource: instance }
62 value: { get_resource: instance }
64 value: { get_attr: ["instance", "port_id"] }
66 value: { get_attr: ["instance", "ip"] }
68 value: [[{ get_resource: docker_storage }, "/var/lib/docker"]]