|
@@ -1,225 +0,0 @@
|
|
|
-heat_template_version: 2016-10-14
|
|
|
-
|
|
|
-description: OpenShift cluster server w/o floating IP
|
|
|
-
|
|
|
-parameters:
|
|
|
-
|
|
|
- name:
|
|
|
- type: string
|
|
|
- label: Name
|
|
|
- description: Name
|
|
|
-
|
|
|
- group:
|
|
|
- type: string
|
|
|
- label: Host Group
|
|
|
- description: The Primary Ansible Host Group
|
|
|
- default: host
|
|
|
-
|
|
|
- cluster_env:
|
|
|
- type: string
|
|
|
- label: Cluster environment
|
|
|
- description: Environment of the cluster
|
|
|
-
|
|
|
- cluster_id:
|
|
|
- type: string
|
|
|
- label: Cluster ID
|
|
|
- description: Identifier of the cluster
|
|
|
-
|
|
|
- type:
|
|
|
- type: string
|
|
|
- label: Type
|
|
|
- description: Type master or node
|
|
|
-
|
|
|
- subtype:
|
|
|
- type: string
|
|
|
- label: Sub-type
|
|
|
- description: Sub-type compute or infra for nodes, default otherwise
|
|
|
- default: default
|
|
|
-
|
|
|
- key_name:
|
|
|
- type: string
|
|
|
- label: Key name
|
|
|
- description: Key name of keypair
|
|
|
-
|
|
|
- image:
|
|
|
- type: string
|
|
|
- label: Image
|
|
|
- description: Name of the image
|
|
|
-
|
|
|
- flavor:
|
|
|
- type: string
|
|
|
- label: Flavor
|
|
|
- description: Name of the flavor
|
|
|
-
|
|
|
- net:
|
|
|
- type: string
|
|
|
- label: Net ID
|
|
|
- description: Net resource
|
|
|
-
|
|
|
- net_name:
|
|
|
- type: string
|
|
|
- label: Net name
|
|
|
- description: Net name
|
|
|
-
|
|
|
- subnet:
|
|
|
- type: string
|
|
|
- label: Subnet ID
|
|
|
- description: Subnet resource
|
|
|
-
|
|
|
-{% if openshift_use_flannel|default(False)|bool %}
|
|
|
- attach_data_net:
|
|
|
- type: boolean
|
|
|
- default: false
|
|
|
- label: Attach-data-net
|
|
|
- description: A switch for data port connection
|
|
|
-
|
|
|
- data_net:
|
|
|
- type: string
|
|
|
- default: ''
|
|
|
- label: Net ID
|
|
|
- description: Net resource
|
|
|
-
|
|
|
- data_subnet:
|
|
|
- type: string
|
|
|
- default: ''
|
|
|
- label: Subnet ID
|
|
|
- description: Subnet resource
|
|
|
-{% endif %}
|
|
|
-
|
|
|
- secgrp:
|
|
|
- type: comma_delimited_list
|
|
|
- label: Security groups
|
|
|
- description: Security group resources
|
|
|
-
|
|
|
- availability_zone:
|
|
|
- type: string
|
|
|
- description: The Availability Zone to launch the instance.
|
|
|
- default: nova
|
|
|
-
|
|
|
- volume_size:
|
|
|
- type: number
|
|
|
- description: Size of the volume to be created.
|
|
|
- default: 1
|
|
|
- constraints:
|
|
|
- - range: { min: 1, max: 1024 }
|
|
|
- description: must be between 1 and 1024 Gb.
|
|
|
-
|
|
|
- node_labels:
|
|
|
- type: json
|
|
|
- description: OpenShift Node Labels
|
|
|
- default: {"region": "default" }
|
|
|
-
|
|
|
- scheduler_hints:
|
|
|
- type: json
|
|
|
- description: Server scheduler hints.
|
|
|
- default: {}
|
|
|
-
|
|
|
-outputs:
|
|
|
-
|
|
|
- name:
|
|
|
- description: Name of the server
|
|
|
- value: { get_attr: [ server_nofloating, name ] }
|
|
|
-
|
|
|
- private_ip:
|
|
|
- description: Private IP of the server
|
|
|
- value:
|
|
|
- get_attr:
|
|
|
- - server_nofloating
|
|
|
- - addresses
|
|
|
- - { get_param: net_name }
|
|
|
- - 0
|
|
|
- - addr
|
|
|
-
|
|
|
-{% if openshift_use_flannel|default(False)|bool %}
|
|
|
-conditions:
|
|
|
- no_data_subnet: {not: { get_param: attach_data_net} }
|
|
|
-{% endif %}
|
|
|
-
|
|
|
-resources:
|
|
|
-
|
|
|
- server_nofloating:
|
|
|
- type: OS::Nova::Server
|
|
|
- properties:
|
|
|
- name: { get_param: name }
|
|
|
- key_name: { get_param: key_name }
|
|
|
- image: { get_param: image }
|
|
|
- flavor: { get_param: flavor }
|
|
|
- networks:
|
|
|
-{% if openshift_use_flannel|default(False)|bool %}
|
|
|
- if:
|
|
|
- - no_data_subnet
|
|
|
-{% if use_trunk_ports|default(false)|bool %}
|
|
|
- - - port: { get_attr: [trunk-port, port_id] }
|
|
|
-{% else %}
|
|
|
- - - port: { get_resource: port }
|
|
|
-{% endif %}
|
|
|
-{% if use_trunk_ports|default(false)|bool %}
|
|
|
- - - port: { get_attr: [trunk-port, port_id] }
|
|
|
-{% else %}
|
|
|
- - - port: { get_resource: port }
|
|
|
- - port: { get_resource: data_port }
|
|
|
-{% endif %}
|
|
|
-
|
|
|
-{% else %}
|
|
|
-{% if use_trunk_ports|default(false)|bool %}
|
|
|
- - port: { get_attr: [trunk-port, port_id] }
|
|
|
-{% else %}
|
|
|
- - port: { get_resource: port }
|
|
|
-{% endif %}
|
|
|
-{% endif %}
|
|
|
- user_data:
|
|
|
- get_file: user-data
|
|
|
- user_data_format: RAW
|
|
|
- user_data_update_policy: IGNORE
|
|
|
- metadata:
|
|
|
- group: { get_param: group }
|
|
|
- environment: { get_param: cluster_env }
|
|
|
- clusterid: { get_param: cluster_id }
|
|
|
- host-type: { get_param: type }
|
|
|
- sub-host-type: { get_param: subtype }
|
|
|
- node_labels: { get_param: node_labels }
|
|
|
- scheduler_hints: { get_param: scheduler_hints }
|
|
|
-
|
|
|
-{% if use_trunk_ports|default(false)|bool %}
|
|
|
- trunk-port:
|
|
|
- type: OS::Neutron::Trunk
|
|
|
- properties:
|
|
|
- name: { get_param: name }
|
|
|
- port: { get_resource: port }
|
|
|
-{% endif %}
|
|
|
-
|
|
|
- port:
|
|
|
- type: OS::Neutron::Port
|
|
|
- properties:
|
|
|
- network: { get_param: net }
|
|
|
- fixed_ips:
|
|
|
- - subnet: { get_param: subnet }
|
|
|
- security_groups: { get_param: secgrp }
|
|
|
-
|
|
|
-{% if openshift_use_flannel|default(False)|bool %}
|
|
|
- data_port:
|
|
|
- type: OS::Neutron::Port
|
|
|
- condition: { not: no_data_subnet }
|
|
|
- properties:
|
|
|
- network: { get_param: data_net }
|
|
|
- port_security_enabled: false
|
|
|
-{% if not provider_network %}
|
|
|
- fixed_ips:
|
|
|
- - subnet: { get_param: data_subnet }
|
|
|
-{% endif %}
|
|
|
-{% endif %}
|
|
|
-
|
|
|
-{% if not ephemeral_volumes|default(false)|bool %}
|
|
|
- cinder_volume:
|
|
|
- type: OS::Cinder::Volume
|
|
|
- properties:
|
|
|
- size: { get_param: volume_size }
|
|
|
- availability_zone: { get_param: availability_zone }
|
|
|
-
|
|
|
- volume_attachment:
|
|
|
- type: OS::Cinder::VolumeAttachment
|
|
|
- properties:
|
|
|
- volume_id: { get_resource: cinder_volume }
|
|
|
- instance_uuid: { get_resource: server_nofloating }
|
|
|
- mountpoint: /dev/sdb
|
|
|
-{% endif %}
|