diff options
Diffstat (limited to 'deprecated')
-rw-r--r-- | deprecated/block-storage.yaml | 92 | ||||
-rw-r--r-- | deprecated/nfs-source.yaml | 36 | ||||
-rw-r--r-- | deprecated/nova-compute-config.yaml | 69 | ||||
-rw-r--r-- | deprecated/nova-compute-instance.yaml | 273 | ||||
-rw-r--r-- | deprecated/overcloud-source.yaml | 965 | ||||
-rw-r--r-- | deprecated/overcloud-vlan-port.yaml | 39 | ||||
-rw-r--r-- | deprecated/ssl-source.yaml | 54 | ||||
-rw-r--r-- | deprecated/swift-deploy.yaml | 69 | ||||
-rw-r--r-- | deprecated/swift-source.yaml | 15 | ||||
-rw-r--r-- | deprecated/swift-storage-source.yaml | 77 |
10 files changed, 1689 insertions, 0 deletions
diff --git a/deprecated/block-storage.yaml b/deprecated/block-storage.yaml new file mode 100644 index 00000000..c288044a --- /dev/null +++ b/deprecated/block-storage.yaml @@ -0,0 +1,92 @@ +heat_template_version: 2013-05-23 +description: 'Common Block Storage Configuration' +parameters: + BlockStorageImage: + type: string + default: overcloud-cinder-volume + OvercloudBlockStorageFlavor: + description: Flavor for block storage nodes to request when deploying. + type: string + constraints: + - custom_constraint: nova.flavor + BlockStorageExtraConfig: + default: {} + description: | + Controller specific configuration to inject into the cluster. Same + structure as ExtraConfig. + type: json +resources: + BlockStorage0: + type: OS::Nova::Server + properties: + image: + {get_param: BlockStorageImage} + flavor: {get_param: OvercloudBlockStorageFlavor} + key_name: {get_param: KeyName} + user_data_format: SOFTWARE_CONFIG + BlockStorage0AllNodesDeployment: + depends_on: [BlockStorage0Deployment,BlockStorage0PassthroughSpecific] + type: OS::Heat::StructuredDeployment + properties: + signal_transport: {get_param: DefaultSignalTransport} + config: {get_resource: allNodesConfig} + server: {get_resource: BlockStorage0} + BlockStorage0Deployment: + type: OS::Heat::StructuredDeployment + properties: + server: {get_resource: BlockStorage0} + config: {get_resource: BlockStorageConfig} + input_values: + controller_virtual_ip: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + cinder_dsn: {"Fn::Join": ['', ['mysql://cinder:unset@', {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} , '/cinder']]} + signal_transport: NO_SIGNAL + BlockStorage0Passthrough: + type: OS::Heat::StructuredDeployment + properties: + config: {get_resource: BlockStoragePassthrough} + server: {get_resource: BlockStorage0} + signal_transport: NO_SIGNAL + input_values: + passthrough_config: {get_param: ExtraConfig} + BlockStorage0PassthroughSpecific: + depends_on: [BlockStorage0Passthrough] + type: OS::Heat::StructuredDeployment + properties: + config: {get_resource: BlockStoragePassthroughSpecific} + server: {get_resource: BlockStorage0} + signal_transport: NO_SIGNAL + input_values: + passthrough_config_specific: {get_param: BlockStorageExtraConfig} + BlockStorageConfig: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: + admin-password: {get_param: AdminPassword} + keystone: + host: {get_input: controller_virtual_ip} + cinder: + db: {get_input: cinder_dsn} + volume_size_mb: + get_param: CinderLVMLoopDeviceSize + service-password: + get_param: CinderPassword + iscsi-helper: + get_param: CinderISCSIHelper + rabbit: + host: {get_input: controller_virtual_ip} + username: {get_param: RabbitUserName} + password: {get_param: RabbitPassword} + glance: + host: {get_input: controller_virtual_ip} + port: {get_param: GlancePort} + BlockStoragePassthrough: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: {get_input: passthrough_config} + BlockStoragePassthroughSpecific: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: {get_input: passthrough_config_specific} diff --git a/deprecated/nfs-source.yaml b/deprecated/nfs-source.yaml new file mode 100644 index 00000000..5d865ea7 --- /dev/null +++ b/deprecated/nfs-source.yaml @@ -0,0 +1,36 @@ +resources: + controllerNfsServerConfig: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: + nfs_server: + shares: + - name: cinder + clients: + - machine: 192.0.2.0/24 + options: rw,async,all_squash,anonuid=0,anongid=0 + controllerCinderNfsConfig: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: + cinder: + include_nfs_backend: true + nfs_shares: + Fn::Join: + - ':' + - - {get_attr: [controller0, networks, ctlplane, 0]} + - /mnt/state/var/lib/nfs/cinder + controllerNfsServerDeployment: + type: OS::Heat::StructuredDeployment + properties: + config: {get_resource: controllerNfsServerConfig} + server: {get_resource: controller0} + signal_transport: NO_SIGNAL + controller0CinderNfsDeployment: + type: OS::Heat::StructuredDeployment + properties: + config: {get_resource: controllerCinderNfsConfig} + server: {get_resource: controller0} + signal_transport: NO_SIGNAL diff --git a/deprecated/nova-compute-config.yaml b/deprecated/nova-compute-config.yaml new file mode 100644 index 00000000..1fe787e3 --- /dev/null +++ b/deprecated/nova-compute-config.yaml @@ -0,0 +1,69 @@ +resources: + NovaComputeConfig: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: + nova: + compute_driver: { get_input: nova_compute_driver } + compute_libvirt_type: { get_input: nova_compute_libvirt_type } + debug: {get_param: Debug} + host: {get_input: nova_api_host} + public_ip: {get_input: nova_public_ip} + service-password: {get_input: nova_password} + ceilometer: + debug: {get_param: Debug} + metering_secret: {get_input: ceilometer_metering_secret} + service-password: {get_input: ceilometer_password} + compute_agent: {get_input: ceilometer_compute_agent} + snmpd: + export_MIB: UCD-SNMP-MIB + readonly_user_name: {get_input: snmpd_readonly_user_name} + readonly_user_password: {get_input: snmpd_readonly_user_password} + glance: + debug: {get_param: Debug} + host: {get_input: glance_host} + port: {get_input: glance_port} + protocol: {get_input: glance_protocol} + keystone: + debug: {get_param: Debug} + host: {get_input: keystone_host} + neutron: + debug: {get_param: Debug} + flat-networks: {get_input: neutron_flat_networks} + host: {get_input: neutron_host} + router_distributed: {get_input: neutron_router_distributed} + agent_mode: {get_input: neutron_agent_mode} + metadata_proxy_shared_secret: {get_input: neutron_metadata_proxy_shared_secret} + mechanism_drivers: {get_input: neutron_mechanism_drivers} + allow_automatic_l3agent_failover: {get_input: neutron_allow_l3agent_failover} + l3_ha: {get_input: neutron_l3_ha} + ovs: + local_ip: {get_input: neutron_local_ip} + tenant_network_type: {get_input: neutron_tenant_network_type} + tunnel_types: {get_input: neutron_tunnel_types} + network_vlan_ranges: {get_input: neutron_network_vlan_ranges} + bridge_mappings: {get_input: neutron_bridge_mappings} + enable_tunneling: {get_input: neutron_enable_tunneling} + physical_bridge: {get_input: neutron_physical_bridge} + public_interface: {get_input: neutron_public_interface} + public_interface_raw_device: {get_input: neutron_public_interface_raw_device} + service-password: {get_input: neutron_password} + admin-password: {get_input: admin_password} + rabbit: + host: {get_input: rabbit_host} + username: {get_input: rabbit_username} + password: {get_input: rabbit_password} + ntp: + servers: + - {server: {get_input: ntp_server}} + NovaComputePassthrough: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: {get_input: passthrough_config} + NovaComputePassthroughSpecific: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: {get_input: passthrough_config_specific} diff --git a/deprecated/nova-compute-instance.yaml b/deprecated/nova-compute-instance.yaml new file mode 100644 index 00000000..e68c61f9 --- /dev/null +++ b/deprecated/nova-compute-instance.yaml @@ -0,0 +1,273 @@ +heat_template_version: 2013-05-23 +description: 'Nova Compute' +parameters: + AdminPassword: + default: unset + description: The password for the keystone admin account, used for monitoring, querying neutron etc. + type: string + hidden: true + AllNodesConfig: + type: string + description: OS::Heat::Config to use for all nodes deployment + CeilometerComputeAgent: + description: Indicates whether the Compute agent is present and expects nova-compute to be configured accordingly + type: string + default: '' + constraints: + - allowed_values: ['', Present] + CeilometerMeteringSecret: + default: unset + description: Secret shared by the ceilometer services. + type: string + hidden: true + CeilometerPassword: + default: unset + description: The password for the ceilometer service account. + type: string + hidden: true + DefaultSignalTransport: + default: CFN_SIGNAL + description: Transport to use for software-config signals. + type: string + constraints: + - allowed_values: [ CFN_SIGNAL, HEAT_SIGNAL, NO_SIGNAL ] + ExtraConfig: + default: {} + description: | + Additional configuration to inject into the cluster. The JSON should have + the following structure: + {"FILEKEY": + {"config": + [{"section": "SECTIONNAME", + "values": + [{"option": "OPTIONNAME", + "value": "VALUENAME" + } + ] + } + ] + } + } + For instance: + {"nova": + {"config": + [{"section": "default", + "values": + [{"option": "force_config_drive", + "value": "always" + } + ] + }, + {"section": "cells", + "values": + [{"option": "driver", + "value": "nova.cells.rpc_driver.CellsRPCDriver" + } + ] + } + ] + } + } + type: json + GlanceHost: + type: string + GlancePort: + default: 9292 + description: Glance port. + type: string + GlanceProtocol: + default: http + description: Protocol to use when connecting to glance, set to https for SSL. + type: string + ImageUpdatePolicy: + default: 'REBUILD_PRESERVE_EPHEMERAL' + description: What policy to use when reconstructing instances. REBUILD for rebuilds, REBUILD_PRESERVE_EPHEMERAL to preserve /mnt. + type: string + KeyName: + description: Name of an existing EC2 KeyPair to enable SSH access to the instances + type: string + default: default + KeystoneHost: + type: string + NeutronBridgeMappings: + type: string + NeutronEnableTunnelling: + type: string + NeutronFlatNetworks: + type: string + default: '' + description: If set, flat networks to configure in neutron plugins. + NeutronHost: + type: string + NeutronNetworkType: + default: 'gre' + description: The tenant network type for Neutron, either gre or vxlan. + type: string + NeutronNetworkVLANRanges: + type: string + NeutronPhysicalBridge: + default: '' + description: An OVS bridge to create for accessing external networks. + type: string + NeutronPublicInterface: + default: '' + description: A port to add to the NeutronPhysicalBridge. + type: string + NeutronTunnelTypes: + default: 'gre' + description: | + The tunnel types for the Neutron tenant network. To specify multiple + values, use a comma separated string, like so: 'gre,vxlan' + type: string + NeutronPublicInterfaceRawDevice: + default: '' + type: string + NeutronDVR: + default: 'False' + type: string + NeutronMechanismDrivers: + default: 'openvswitch' + description: | + The mechanism drivers for the Neutron tenant network. To specify multiple + values, use a comma separated string, like so: 'openvswitch,l2_population' + type: string + NeutronAllowL3AgentFailover: + default: 'True' + description: Allow automatic l3-agent failover + type: string + NeutronL3HA: + default: 'False' + description: Whether to enable l3-agent HA + type: string + NovaApiHost: + type: string + NovaComputeDriver: + type: string + default: libvirt.LibvirtDriver + NovaComputeExtraConfig: + default: {} + description: | + NovaCompute specific configuration to inject into the cluster. Same + structure as ExtraConfig. + type: json + NovaComputeLibvirtType: + type: string + default: '' + NovaImage: + type: string + default: overcloud-compute + NovaPassword: + default: unset + description: The password for the nova service account, used by nova-api. + type: string + hidden: true + NovaPublicIP: + type: string + NtpServer: + type: string + default: '' + OvercloudComputeFlavor: + description: Use this flavor + type: string + constraints: + - custom_constraint: nova.flavor + RabbitHost: + type: string + RabbitUserName: + type: string + RabbitPassword: + type: string + hidden: true + SnmpdReadonlyUserName: + default: ro_snmp_user + description: The user name for SNMPd with readonly rights running on all Overcloud nodes + type: string + SnmpdReadonlyUserPassword: + default: unset + description: The user password for SNMPd with readonly rights running on all Overcloud nodes + type: string + hidden: true +resources: + NovaCompute0: + type: OS::Nova::Server + properties: + image: + {get_param: NovaImage} + image_update_policy: + get_param: ImageUpdatePolicy + flavor: {get_param: OvercloudComputeFlavor} + key_name: {get_param: KeyName} + networks: + - network: ctlplane + user_data_format: SOFTWARE_CONFIG + NovaCompute0Deployment: + type: OS::Heat::StructuredDeployment + properties: + signal_transport: NO_SIGNAL + config: {get_resource: NovaComputeConfig} + server: {get_resource: NovaCompute0} + input_values: + nova_compute_driver: {get_param: NovaComputeDriver} + nova_compute_libvirt_type: {get_param: NovaComputeLibvirtType} + nova_public_ip: {get_param: NovaPublicIP} + nova_api_host: {get_param: NovaApiHost} + nova_password: {get_param: NovaPassword} + ceilometer_metering_secret: {get_param: CeilometerMeteringSecret} + ceilometer_password: {get_param: CeilometerPassword} + ceilometer_compute_agent: {get_param: CeilometerComputeAgent} + snmpd_readonly_user_name: {get_param: SnmpdReadonlyUserName} + snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword} + glance_host: {get_param: GlanceHost} + glance_port: {get_param: GlancePort} + glance_protocol: {get_param: GlanceProtocol} + keystone_host: {get_param: KeystoneHost} + neutron_flat_networks: {get_param: NeutronFlatNetworks} + neutron_host: {get_param: NeutronHost} + neutron_local_ip: {get_attr: [NovaCompute0, networks, ctlplane, 0]} + neutron_tenant_network_type: {get_param: NeutronNetworkType} + neutron_tunnel_types: {get_param: NeutronTunnelTypes} + neutron_network_vlan_ranges: {get_param: NeutronNetworkVLANRanges} + neutron_bridge_mappings: {get_param: NeutronBridgeMappings} + neutron_enable_tunneling: {get_param: NeutronEnableTunnelling} + neutron_physical_bridge: {get_param: NeutronPhysicalBridge} + neutron_public_interface: {get_param: NeutronPublicInterface} + neutron_public_interface_raw_device: {get_param: NeutronPublicInterfaceRawDevice} + neutron_password: {get_param: NeutronPassword} + neutron_agent_mode: {get_param: NeutronComputeAgentMode} + neutron_router_distributed: {get_param: NeutronDVR} + neutron_metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret} + neutron_mechanism_drivers: {get_param: NeutronMechanismDrivers} + neutron_allow_l3agent_failover: {get_param: NeutronAllowL3AgentFailover} + neutron_l3_ha: {get_param: NeutronL3HA} + admin_password: {get_param: AdminPassword} + rabbit_host: {get_param: RabbitHost} + rabbit_username: {get_param: RabbitUserName} + rabbit_password: {get_param: RabbitPassword} + ntp_server: {get_param: NtpServer} + NovaCompute0AllNodesDeployment: + depends_on: + - controller0AllNodesDeployment + - NovaCompute0Deployment + - NovaCompute0PassthroughSpecific + type: OS::Heat::StructuredDeployment + properties: + signal_transport: {get_param: DefaultSignalTransport} + config: {get_param: AllNodesConfig} + server: {get_resource: NovaCompute0} + NovaCompute0Passthrough: + type: OS::Heat::StructuredDeployment + properties: + config: {get_resource: NovaComputePassthrough} + server: {get_resource: NovaCompute0} + signal_transport: NO_SIGNAL + input_values: + passthrough_config: {get_param: ExtraConfig} + NovaCompute0PassthroughSpecific: + depends_on: [NovaCompute0Passthrough] + type: OS::Heat::StructuredDeployment + properties: + config: {get_resource: NovaComputePassthroughSpecific} + server: {get_resource: NovaCompute0} + signal_transport: NO_SIGNAL + input_values: + passthrough_config_specific: {get_param: NovaComputeExtraConfig} diff --git a/deprecated/overcloud-source.yaml b/deprecated/overcloud-source.yaml new file mode 100644 index 00000000..91b6b7fd --- /dev/null +++ b/deprecated/overcloud-source.yaml @@ -0,0 +1,965 @@ +description: Deprecated. Please migrate to use overcloud-without-mergepy instead. +heat_template_version: 2013-05-23 +parameters: + AdminPassword: + default: unset + description: The password for the keystone admin account, used for monitoring, querying neutron etc. + type: string + hidden: true + AdminToken: + default: unset + description: The keystone auth secret. + type: string + hidden: true + CeilometerComputeAgent: + description: Indicates whether the Compute agent is present and expects nova-compute to be configured accordingly + type: string + default: '' + constraints: + - allowed_values: ['', Present] + CeilometerMeteringSecret: + default: unset + description: Secret shared by the ceilometer services. + type: string + hidden: true + CeilometerPassword: + default: unset + description: The password for the ceilometer service account. + type: string + hidden: true + CinderISCSIHelper: + default: tgtadm + description: The iSCSI helper to use with cinder. + type: string + CinderLVMLoopDeviceSize: + default: 5000 + description: The size of the loopback file used by the cinder LVM driver. + type: number + CinderPassword: + default: unset + description: The password for the cinder service account, used by cinder-api. + type: string + hidden: true + CloudName: + default: '' + description: The DNS name of this cloud. E.g. ci-overcloud.tripleo.org + type: string + ControlFixedIPs: + default: [] + description: Should be used for arbitrary ips. + type: json + controllerExtraConfig: + default: {} + description: | + Controller specific configuration to inject into the cluster. Same + structure as ExtraConfig. + type: json + controllerImage: + type: string + default: overcloud-control + constraints: + - custom_constraint: glance.image + ControlVirtualInterface: + default: 'br-ex' + description: Interface where virtual ip will be assigned. + type: string + Debug: + default: '' + description: Set to True to enable debugging on all services. + type: string + DefaultSignalTransport: + default: CFN_SIGNAL + description: Transport to use for software-config signals. + type: string + constraints: + - allowed_values: [ CFN_SIGNAL, HEAT_SIGNAL, NO_SIGNAL ] + ExtraConfig: + default: {} + description: | + Additional configuration to inject into the cluster. The JSON should have + the following structure: + {"FILEKEY": + {"config": + [{"section": "SECTIONNAME", + "values": + [{"option": "OPTIONNAME", + "value": "VALUENAME" + } + ] + } + ] + } + } + For instance: + {"nova": + {"config": + [{"section": "default", + "values": + [{"option": "force_config_drive", + "value": "always" + } + ] + }, + {"section": "cells", + "values": + [{"option": "driver", + "value": "nova.cells.rpc_driver.CellsRPCDriver" + } + ] + } + ] + } + } + type: json + GlanceLogFile: + description: The filepath of the file to use for logging messages from Glance. + type: string + default: '' + HorizonPort: + type: number + default: 80 + description: Horizon web server port. + GlancePassword: + default: unset + description: The password for the glance service account, used by the glance services. + type: string + hidden: true + GlancePort: + default: 9292 + description: Glance port. + type: string + GlanceProtocol: + default: http + description: Protocol to use when connecting to glance, set to https for SSL. + type: string + GlanceNotifierStrategy: + description: Strategy to use for Glance notification queue + type: string + default: noop + HeatPassword: + default: unset + description: The password for the Heat service account, used by the Heat services. + type: string + hidden: true + HeatStackDomainAdminPassword: + description: Password for heat_domain_admin user. + type: string + default: '' + hidden: true + HypervisorNeutronPhysicalBridge: + default: 'br-ex' + description: > + An OVS bridge to create on each hypervisor. This defaults to br-ex the + same as the control plane nodes, as we have a uniform configuration of + the openvswitch agent. Typically should not need to be changed. + type: string + HypervisorNeutronPublicInterface: + default: nic1 + description: What interface to add to the HypervisorNeutronPhysicalBridge. + type: string + ImageUpdatePolicy: + default: 'REBUILD_PRESERVE_EPHEMERAL' + description: What policy to use when reconstructing instances. REBUILD for rebuilds, REBUILD_PRESERVE_EPHEMERAL to preserve /mnt. + type: string + KeyName: + default: default + description: Name of an existing EC2 KeyPair to enable SSH access to the instances + type: string + constraints: + - custom_constraint: nova.keypair + KeystoneCACertificate: + default: '' + description: Keystone self-signed certificate authority certificate. + type: string + KeystoneSigningCertificate: + default: '' + description: Keystone certificate for verifying token validity. + type: string + KeystoneSigningKey: + default: '' + description: Keystone key for signing tokens. + type: string + hidden: true + KeystoneSSLCertificate: + default: '' + description: Keystone certificate for verifying token validity. + type: string + KeystoneSSLCertificateKey: + default: '' + description: Keystone key for signing tokens. + type: string + hidden: true + MysqlInnodbBufferPoolSize: + description: > + Specifies the size of the buffer pool in megabytes. Setting to + zero should be interpreted as "no value" and will defer to the + lower level default. + type: number + default: 0 + NeutronBridgeMappings: + description: > + The OVS logical->physical bridge mappings to use. See the Neutron + documentation for details. Defaults to mapping br-ex - the external + bridge on hosts - to a physical name 'datacentre' which can be used + to create provider networks (and we use this for the default floating + network) - if changing this either use different post-install network + scripts or be sure to keep 'datacentre' as a mapping network name. + type: string + default: "datacentre:br-ex" + NeutronControlPlaneID: + default: '' + type: string + description: Neutron ID for ctlplane network. + NeutronDnsmasqOptions: + default: 'dhcp-option-force=26,1400' + description: Dnsmasq options for neutron-dhcp-agent. The default value here forces MTU to be set to 1400 to account for the tunnel overhead. + type: string + NeutronFlatNetworks: + type: string + default: 'datacentre' + description: > + If set, flat networks to configure in neutron plugins. Defaults to + 'datacentre' to permit external network creation. + NeutronNetworkType: + default: 'gre' + description: The tenant network type for Neutron, either gre or vxlan. + type: string + NeutronNetworkVLANRanges: + default: 'datacentre' + description: > + The Neutron ML2 and OpenVSwitch vlan mapping range to support. See the + Neutron documentation for permitted values. Defaults to permitting any + VLAN on the 'datacentre' physical network (See NeutronBridgeMappings). + type: string + NeutronPassword: + default: unset + description: The password for the neutron service account, used by neutron agents. + type: string + hidden: true + NeutronPublicInterface: + default: nic1 + description: What interface to bridge onto br-ex for network nodes. + type: string + NeutronPublicInterfaceDefaultRoute: + default: '' + description: A custom default route for the NeutronPublicInterface. + type: string + NeutronPublicInterfaceIP: + default: '' + description: A custom IP address to put onto the NeutronPublicInterface. + type: string + NeutronPublicInterfaceRawDevice: + default: '' + description: If set, the public interface is a vlan with this device as the raw device. + type: string + NeutronPublicInterfaceTag: + default: '' + description: > + VLAN tag for creating a public VLAN. The tag will be used to + create an access port on the exterior bridge for each control plane node, + and that port will be given the IP address returned by neutron from the + public network. Set CONTROLEXTRA=overcloud-vlan-port.yaml when compiling + overcloud.yaml to include the deployment of VLAN ports to the control + plane. + type: string + NeutronComputeAgentMode: + default: 'dvr' + description: Agent mode for the neutron-l3-agent on the compute hosts + type: string + NeutronAgentMode: + default: 'dvr_snat' + description: Agent mode for the neutron-l3-agent on the controller hosts + type: string + NeutronDVR: + default: 'False' + description: Whether to configure Neutron Distributed Virtual Routers + type: string + NeutronMetadataProxySharedSecret: + default: 'unset' + description: Shared secret to prevent spoofing + type: string + NeutronTunnelTypes: + default: 'gre' + description: | + The tunnel types for the Neutron tenant network. To specify multiple + values, use a comma separated string, like so: 'gre,vxlan' + type: string + NeutronMechanismDrivers: + default: 'openvswitch' + description: | + The mechanism drivers for the Neutron tenant network. To specify multiple + values, use a comma separated string, like so: 'openvswitch,l2_population' + type: string + NeutronAllowL3AgentFailover: + default: 'True' + description: Allow automatic l3-agent failover + type: string + NeutronL3HA: + default: 'False' + description: Whether to enable l3-agent HA + type: string + NovaComputeDriver: + default: libvirt.LibvirtDriver + type: string + NovaComputeExtraConfig: + default: {} + description: | + NovaCompute specific configuration to inject into the cluster. Same + structure as ExtraConfig. + type: json + NovaComputeLibvirtType: + default: '' + type: string + NovaImage: + type: string + default: overcloud-compute + constraints: + - custom_constraint: glance.image + NovaPassword: + default: unset + description: The password for the nova service account, used by nova-api. + type: string + hidden: true + NtpServer: + type: string + default: '' + OvercloudComputeFlavor: + description: Flavor for compute nodes to request when deploying. + type: string + constraints: + - custom_constraint: nova.flavor + OvercloudControlFlavor: + description: Flavor for control nodes to request when deploying. + type: string + constraints: + - custom_constraint: nova.flavor + PublicVirtualFixedIPs: + default: [] + description: > + Control the IP allocation for the PublicVirtualInterface port. E.g. + [{'ip_address':'1.2.3.4'}] + type: json + PublicVirtualInterface: + default: 'br-ex' + description: > + Specifies the interface where the public-facing virtual ip will be assigned. + This should be int_public when a VLAN is being used. + type: string + PublicVirtualNetwork: + default: 'ctlplane' + type: string + description: > + Neutron network to allocate public virtual IP port on. + RabbitCookieSalt: + type: string + default: unset + description: Salt for the rabbit cookie, change this to force the randomly generated rabbit cookie to change. + RabbitPassword: + default: guest + description: The password for RabbitMQ + type: string + hidden: true + RabbitUserName: + default: guest + description: The username for RabbitMQ + type: string + RabbitClientUseSSL: + default: false + description: > + Rabbit client subscriber parameter to specify + an SSL connection to the RabbitMQ host. + type: string + RabbitClientPort: + default: 5672 + description: Set rabbit subscriber port, change this if using SSL + type: number + SnmpdReadonlyUserName: + default: ro_snmp_user + description: The user name for SNMPd with readonly rights running on all Overcloud nodes + type: string + SnmpdReadonlyUserPassword: + default: unset + description: The user password for SNMPd with readonly rights running on all Overcloud nodes + type: string + hidden: true +resources: + ControlVirtualIP: + type: OS::Neutron::Port + properties: + name: control_virtual_ip + network_id: {get_param: NeutronControlPlaneID} + fixed_ips: + get_param: ControlFixedIPs + replacement_policy: AUTO + MysqlClusterUniquePart: + type: OS::Heat::RandomString + properties: + length: 10 + MysqlRootPassword: + type: OS::Heat::RandomString + properties: + length: 10 + PublicVirtualIP: + type: OS::Neutron::Port + properties: + name: public_virtual_ip + network: {get_param: PublicVirtualNetwork} + fixed_ips: + get_param: PublicVirtualFixedIPs + replacement_policy: AUTO + RabbitCookie: + type: OS::Heat::RandomString + properties: + length: 20 + salt: + get_param: RabbitCookieSalt + NovaCompute0Deployment: + type: FileInclude + Path: deprecated/nova-compute-instance.yaml + SubKey: resources.NovaCompute0Deployment + parameters: + DefaultSignalTransport: + get_param: DefaultSignalTransport + NovaApiHost: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + KeystoneHost: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + NeutronHost: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + GlanceHost: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + RabbitHost: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + NovaPublicIP: {get_attr: [PublicVirtualIP, fixed_ips, 0, ip_address]} + NeutronNetworkType: + get_param: NeutronNetworkType + NeutronTunnelTypes: + get_param: NeutronTunnelTypes + NeutronEnableTunnelling: "True" + NeutronFlatNetworks: + get_param: NeutronFlatNetworks + NeutronNetworkVLANRanges: + get_param: NeutronNetworkVLANRanges + NeutronPhysicalBridge: + get_param: HypervisorNeutronPhysicalBridge + NeutronPublicInterface: + get_param: HypervisorNeutronPublicInterface + NeutronBridgeMappings: + get_param: NeutronBridgeMappings + NeutronDVR: + get_param: NeutronDVR + NeutronAgentMode: + get_param: NeutronComputeAgentMode + NeutronPublicInterfaceRawDevice: + get_param: NeutronPublicInterfaceRawDevice + NeutronMechanismDrivers: + get_param: NeutronMechanismDrivers + NeutronAllowL3AgentFailover: + get_param: NeutronAllowL3AgentFailover + NeutronL3HA: + get_param: NeutronL3HA + NovaCompute0AllNodesDeployment: + type: FileInclude + Path: deprecated/nova-compute-instance.yaml + SubKey: resources.NovaCompute0AllNodesDeployment + parameters: + AllNodesConfig: {get_resource: allNodesConfig} + NovaCompute0: + type: FileInclude + Path: deprecated/nova-compute-instance.yaml + SubKey: resources.NovaCompute0 + NovaCompute0Passthrough: + type: FileInclude + Path: deprecated/nova-compute-instance.yaml + SubKey: resources.NovaCompute0Passthrough + parameters: + passthrough_config: {get_param: ExtraConfig} + NovaCompute0PassthroughSpecific: + type: FileInclude + Path: deprecated/nova-compute-instance.yaml + SubKey: resources.NovaCompute0PassthroughSpecific + parameters: + passthrough_config_specific: {get_param: NovaComputeExtraConfig} + controllerConfig: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: + admin-password: + get_param: AdminPassword + admin-token: + get_param: AdminToken + bootstack: + public_interface_ip: + get_param: NeutronPublicInterfaceIP + bootstrap_host: + bootstrap_nodeid: + Fn::Select: + - 0 + - Fn::Select: + - 0 + - Merge::Map: + controller0: + - get_attr: + - controller0 + - name + nodeid: {get_input: bootstack_nodeid} + database: + host: &database_host + {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + cinder: + db: + Fn::Join: + - '' + - - mysql://cinder:unset@ + - *database_host + - /cinder + debug: {get_param: Debug} + volume_size_mb: + get_param: CinderLVMLoopDeviceSize + service-password: + get_param: CinderPassword + iscsi-helper: + get_param: CinderISCSIHelper + controller-address: + get_input: controller_host + corosync: + bindnetaddr: {get_input: controller_host} + mcastport: 5577 + nodes: + Merge::Map: + controller0: + ip: {get_attr: [controller0, networks, ctlplane, 0]} + pacemaker: + stonith_enabled : false + recheck_interval : 5 + quorum_policy : ignore + db-password: unset + glance: + registry: + host: {get_input: controller_virtual_ip} + backend: swift + db: + Fn::Join: + - '' + - - mysql://glance:unset@ + - *database_host + - /glance + debug: {get_param: Debug} + host: + get_input: controller_virtual_ip + port: + get_param: GlancePort + protocol: + get_param: GlanceProtocol + service-password: + get_param: GlancePassword + swift-store-user: service:glance + swift-store-key: + get_param: GlancePassword + notifier-strategy: + get_param: GlanceNotifierStrategy + log-file: + get_param: GlanceLogFile + heat: + admin_password: + get_param: HeatPassword + admin_tenant_name: service + admin_user: heat + auth_encryption_key: unset___________ + db: + Fn::Join: + - '' + - - mysql://heat:unset@ + - *database_host + - /heat + debug: {get_param: Debug} + stack_domain_admin_password: {get_param: HeatStackDomainAdminPassword} + watch_server_url: {get_input: heat.watch_server_url} + metadata_server_url: {get_input: heat.metadata_server_url} + waitcondition_server_url: {get_input: heat.waitcondition_server_url} + horizon: + port: {get_param: HorizonPort} + caches: + memcached: + nodes: + Merge::Map: + controller0: + {get_attr: [controller0, name]} + keystone: + db: + Fn::Join: + - '' + - - mysql://keystone:unset@ + - *database_host + - /keystone + debug: {get_param: Debug} + host: + get_input: controller_virtual_ip + ca_certificate: {get_param: KeystoneCACertificate} + signing_key: {get_param: KeystoneSigningKey} + signing_certificate: {get_param: KeystoneSigningCertificate} + ssl: + certificate: {get_param: KeystoneSSLCertificate} + certificate_key: {get_param: KeystoneSSLCertificateKey} + mysql: + innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize} + local_bind: true + root-password: {get_resource: MysqlRootPassword} + nodes: + Merge::Map: + controller0: + ip: {get_attr: [controller0, networks, ctlplane, 0]} + cluster_name: + Fn::Join: + - '-' + - - 'tripleo' + - {get_resource: MysqlClusterUniquePart} + neutron: + debug: {get_param: Debug} + flat-networks: {get_param: NeutronFlatNetworks} + host: {get_input: controller_virtual_ip} + metadata_proxy_shared_secret: {get_param: NeutronMetadataProxySharedSecret} + agent_mode: {get_param: NeutronAgentMode} + router_distributed: {get_param: NeutronDVR} + mechanism_drivers: {get_param: NeutronMechanismDrivers} + allow_automatic_l3agent_failover: {get_param: NeutronAllowL3AgentFailover} + l3_ha: {get_param: NeutronL3HA} + ovs: + enable_tunneling: 'True' + local_ip: + get_input: controller_host + network_vlan_ranges: {get_param: NeutronNetworkVLANRanges} + bridge_mappings: {get_param: NeutronBridgeMappings} + public_interface: + get_param: NeutronPublicInterface + public_interface_raw_device: + get_param: NeutronPublicInterfaceRawDevice + public_interface_route: + get_param: NeutronPublicInterfaceDefaultRoute + public_interface_tag: + get_param: NeutronPublicInterfaceTag + physical_bridge: br-ex + tenant_network_type: + get_param: NeutronNetworkType + tunnel_types: + get_param: NeutronTunnelTypes + ovs_db: + Fn::Join: + - '' + - - mysql://neutron:unset@ + - *database_host + - /ovs_neutron?charset=utf8 + service-password: + get_param: NeutronPassword + dnsmasq-options: + get_param: NeutronDnsmasqOptions + ceilometer: + db: + Fn::Join: + - '' + - - mysql://ceilometer:unset@ + - *database_host + - /ceilometer + debug: {get_param: Debug} + metering_secret: {get_param: CeilometerMeteringSecret} + service-password: + get_param: CeilometerPassword + snmpd: + export_MIB: UCD-SNMP-MIB + readonly_user_name: + get_param: SnmpdReadonlyUserName + readonly_user_password: + get_param: SnmpdReadonlyUserPassword + nova: + compute_driver: libvirt.LibvirtDriver + db: + Fn::Join: + - '' + - - mysql://nova:unset@ + - *database_host + - /nova + default_floating_pool: + ext-net + host: {get_input: controller_virtual_ip} + metadata-proxy: true + service-password: + get_param: NovaPassword + rabbit: + host: {get_input: controller_virtual_ip} + username: + get_param: RabbitUserName + password: + get_param: RabbitPassword + cookie: + get_attr: + - RabbitCookie + - value + rabbit_client_use_ssl: {get_param: RabbitClientUseSSL} + rabbit_port: {get_param: RabbitClientPort} + ntp: + servers: + - {server: {get_param: NtpServer}} + virtual_interfaces: + instances: + - vrrp_instance_name: VI_CONTROL + virtual_router_id: 51 + keepalive_interface: + get_param: ControlVirtualInterface + priority: 101 + virtual_ips: + - ip: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + interface: + get_param: ControlVirtualInterface + - vrrp_instance_name: VI_PUBLIC + virtual_router_id: 52 + keepalive_interface: + get_param: PublicVirtualInterface + priority: 101 + virtual_ips: + - ip: {get_attr: [PublicVirtualIP, fixed_ips, 0, ip_address]} + interface: + get_param: PublicVirtualInterface + vrrp_sync_groups: + - name: VG1 + members: + - VI_CONTROL + - VI_PUBLIC + keepalived: + keepalive_interface: + get_param: PublicVirtualInterface + priority: 101 + virtual_ips: + - + ip: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + interface: + get_param: ControlVirtualInterface + - + ip: {get_attr: [PublicVirtualIP, fixed_ips, 0, ip_address]} + interface: + get_param: PublicVirtualInterface + haproxy: + nodes: + Merge::Map: + controller0: + ip: {get_attr: [controller0, networks, ctlplane, 0]} + name: {get_attr: [controller0, name]} + net_binds: + - &control_vip {ip: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}} + - &public_vip {ip: {get_attr: [PublicVirtualIP, fixed_ips, 0, ip_address]}} + options: + - option httpchk GET / + services: + - name: keystone_admin + port: 35357 + - name: keystone_public + port: 5000 + - name: horizon + port: 80 + - name: neutron + port: 9696 + - name: cinder + port: 8776 + - name: glance_api + port: 9292 + - name: glance_registry + port: 9191 + options: # overwrite options as glace_reg needs auth for http req + - name: heat_api + port: 8004 + - name: heat_cloudwatch + port: 8003 + - name: heat_cfn + port: 8000 + - name: mysql + port: 3306 + net_binds: + - *control_vip + extra_server_params: + - backup + options: + - timeout client 0 + - timeout server 0 + - name: nova_ec2 + port: 8773 + - name: nova_osapi + port: 8774 + - name: nova_metadata + port: 8775 + - name: nova_novncproxy + port: 6080 + - name: ceilometer + port: 8777 + options: # overwrite options as ceil needs auth for http req + - name: swift_proxy_server + port: 8080 + options: + - option httpchk GET /info + - name: rabbitmq + port: 5672 + net_binds: + - *control_vip + options: + - timeout client 0 + - timeout server 0 + - maxconn 1500 + controllerPassthrough: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: {get_input: passthrough_config} + controllerPassthroughSpecific: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: {get_input: passthrough_config_specific} + controller0: + type: OS::Nova::Server + properties: + image: + get_param: controllerImage + image_update_policy: + get_param: ImageUpdatePolicy + flavor: + get_param: OvercloudControlFlavor + key_name: + get_param: KeyName + networks: + - network: ctlplane + user_data_format: SOFTWARE_CONFIG + controller0AllNodesDeployment: + depends_on: [controller0Deployment,controller0SSLDeployment,controller0Swift,controller0PassthroughSpecific] + type: OS::Heat::StructuredDeployment + properties: + signal_transport: {get_param: DefaultSignalTransport} + config: {get_resource: allNodesConfig} + server: {get_resource: controller0} + controller0Deployment: + type: OS::Heat::StructuredDeployment + properties: + signal_transport: NO_SIGNAL + config: {get_resource: controllerConfig} + server: {get_resource: controller0} + input_values: + bootstack_nodeid: {get_attr: [controller0, name]} + controller_host: {get_attr: [controller0, networks, ctlplane, 0]} + controller_virtual_ip: + {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + heat.watch_server_url: + Fn::Join: + - '' + - - 'http://' + - {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + - ':8003' + heat.metadata_server_url: + Fn::Join: + - '' + - - 'http://' + - {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + - ':8000' + heat.waitcondition_server_url: + Fn::Join: + - '' + - - 'http://' + - {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + - ':8000/v1/waitcondition' + allNodesConfig: + type: OS::Heat::StructuredConfig + properties: + config: + completion-signal: {get_input: deploy_signal_id} + hosts: + Fn::Join: + - "\n" + - - Fn::Join: + - "\n" + - Merge::Map: + NovaCompute0: + Fn::Join: + - ' ' + - - {get_attr: [NovaCompute0, networks, ctlplane, 0]} + - {get_attr: [NovaCompute0, name]} + - Fn::Join: + - '.' + - - {get_attr: [NovaCompute0, name]} + - 'novalocal' + - Fn::Join: + - "\n" + - Merge::Map: + BlockStorage0: + Fn::Join: + - ' ' + - - {get_attr: [BlockStorage0, networks, ctlplane, 0]} + - {get_attr: [BlockStorage0, name]} + - Fn::Join: + - '.' + - - {get_attr: [BlockStorage0, name]} + - 'novalocal' + - Fn::Join: + - "\n" + - Merge::Map: + SwiftStorage0: + Fn::Join: + - ' ' + - - {get_attr: [SwiftStorage0, networks, ctlplane, 0]} + - {get_attr: [SwiftStorage0, name]} + - Fn::Join: + - '.' + - - {get_attr: [SwiftStorage0, name]} + - 'novalocal' + - Fn::Join: + - "\n" + - Merge::Map: + controller0: + Fn::Join: + - ' ' + - - {get_attr: [controller0, networks, ctlplane, 0]} + - {get_attr: [controller0, name]} + - Fn::Join: + - '.' + - - {get_attr: [controller0, name]} + - 'novalocal' + - {get_param: CloudName} + rabbit: + nodes: + Fn::Join: + - ',' + - Merge::Map: + controller0: + {get_attr: [controller0, name]} + sysctl: + net.ipv4.tcp_keepalive_time: 5 + net.ipv4.tcp_keepalive_probes: 5 + net.ipv4.tcp_keepalive_intvl: 1 + controller0SSLDeployment: + type: OS::Heat::StructuredDeployment + properties: + config: {get_resource: SSLConfig} + server: {get_resource: controller0} + signal_transport: NO_SIGNAL + input_values: + controller_host: {get_attr: [controller0, networks, ctlplane, 0]} + ssl_certificate: {get_param: SSLCertificate} + ssl_key: {get_param: SSLKey} + ssl_ca_certificate: {get_param: SSLCACertificate} + controller0Passthrough: + type: OS::Heat::StructuredDeployment + properties: + config: {get_resource: controllerPassthrough} + server: {get_resource: controller0} + signal_transport: NO_SIGNAL + input_values: + passthrough_config: {get_param: ExtraConfig} + controller0PassthroughSpecific: + depends_on: [controller0Passthrough] + type: OS::Heat::StructuredDeployment + properties: + config: {get_resource: controllerPassthroughSpecific} + server: {get_resource: controller0} + signal_transport: NO_SIGNAL + input_values: + passthrough_config_specific: {get_param: controllerExtraConfig} +outputs: + KeystoneURL: + description: URL for the Overcloud Keystone service + value: + Fn::Join: + - '' + - - http:// + - {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + - :5000/v2.0/ diff --git a/deprecated/overcloud-vlan-port.yaml b/deprecated/overcloud-vlan-port.yaml new file mode 100644 index 00000000..8f6f6937 --- /dev/null +++ b/deprecated/overcloud-vlan-port.yaml @@ -0,0 +1,39 @@ +outputs: + controller0PublicIP: + description: Address for registering endpoints in the cloud. + value: {get_attr: [controller0_VLANPort, fixed_ips, 0, ip_address]} +resources: + # Override the main template which can also supply a static route. + controller0_99_VLANPort: + type: OS::Heat::StructuredDeployment + properties: + config: {get_resource: ControllerVLANPortConfig} + server: {get_resource: controller0} + signal_transport: NO_SIGNAL + input_values: + vlan_port: + list_join: + - '/' + - - {get_attr: [controller0_VLANPort, fixed_ips, 0, ip_address]} + # This should also be pulled out of the subnet. May need a + # neutron fix too - XXX make into a parameter and feed it + # in via _overcloud.sh for now. + - '24' + # Tell the instance to apply the default route. + # Reinstate when https://bugs.launchpad.net/heat/+bug/1336656 is + # sorted + # public_interface_route: + # get_attr: [controller0_VLANPort, fixed_ips, 0, subnet, gateway_ip] + ControllerVLANPortConfig: + type: OS::Heat::StructuredConfig + properties: + config: + neutron: + ovs: + public_interface_tag_ip: {get_input: vlan_port} + controller0_VLANPort: + type: OS::Neutron::Port + properties: + name: controller0_vlan + network: public + replacement_policy: AUTO diff --git a/deprecated/ssl-source.yaml b/deprecated/ssl-source.yaml new file mode 100644 index 00000000..a9357323 --- /dev/null +++ b/deprecated/ssl-source.yaml @@ -0,0 +1,54 @@ +description: 'ssl-source: SSL endpoint metadata for openstack' +parameters: + SSLCACertificate: + default: '' + description: If set, the contents of an SSL certificate authority file. + type: string + SSLCertificate: + default: '' + description: If set, the contents of an SSL certificate .crt file for encrypting SSL endpoints. + type: string + hidden: true + SSLKey: + default: '' + description: If set, the contents of an SSL certificate .key file for encrypting SSL endpoints. + type: string + hidden: true +resources: + SSLConfig: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: + ssl: + ca_certificate: {get_input: ssl_ca_certificate} + stunnel: + cert: {get_input: ssl_certificate} + key: {get_input: ssl_key} + cacert: {get_input: ssl_ca_certificate} + connect_host: {get_input: controller_host} + ports: + - name: 'ec2' + accept: 13773 + connect: 8773 + - name: 'image' + accept: 13292 + connect: 9292 + - name: 'identity' + accept: 13000 + connect: 5000 + - name: 'network' + accept: 13696 + connect: 9696 + - name: 'compute' + accept: 13774 + connect: 8774 + - name: 'swift-proxy' + accept: 13080 + connect: 8080 + - name: 'cinder' + accept: 13776 + connect: 8776 + - name: 'ceilometer' + accept: 13777 + connect: 8777 diff --git a/deprecated/swift-deploy.yaml b/deprecated/swift-deploy.yaml new file mode 100644 index 00000000..d4d32cbd --- /dev/null +++ b/deprecated/swift-deploy.yaml @@ -0,0 +1,69 @@ +description: 'Swift-proxy: OpenStack object storage proxy' +parameters: + SwiftHashSuffix: + default: unset + description: A random string to be used as a salt when hashing to determine mappings in the ring. + type: string + hidden: true + SwiftMountCheck: + default: 'false' + description: Value of mount_check in Swift account/container/object -server.conf + type: boolean + SwiftMinPartHours: + type: number + default: 1 + description: The minimum time (in hours) before a partition in a ring can be moved following a rebalance. + SwiftPartPower: + default: 10 + description: Partition Power to use when building Swift rings + type: number + SwiftPassword: + default: unset + description: The password for the swift service account, used by the swift proxy services. + type: string + hidden: true + SwiftReplicas: + type: number + default: 3 + description: How many replicas to use in the swift rings. +resources: + controller0Swift: + type: OS::Heat::StructuredDeployment + properties: + config: {get_resource: SwiftConfig} + server: {get_resource: controller0} + signal_transport: NO_SIGNAL + input_values: + swift_hash_suffix: {get_param: SwiftHashSuffix} + swift_mount_check: {get_param: SwiftMountCheck} + swift_password: {get_param: SwiftPassword} + swift_part_power: {get_param: SwiftPartPower} + swift_devices: + Fn::Join: + - ', ' + - Merge::Map: + controller0: + Fn::Join: + - '' + - - 'r1z1-' + - {get_attr: [controller0, networks, ctlplane, 0]} + - ':%PORT%/d1' + SwiftStorage0: + Fn::Join: + - '' + - - 'r1z1-' + - {get_attr: [SwiftStorage0, networks, ctlplane, 0]} + - ':%PORT%/d1' + swift_proxy_memcache: + Fn::Join: + - ',' + - Merge::Map: + controller0: + Fn::Join: + - ', ' + - - Fn::Join: + - '' + - - {get_attr: [controller0, networks, ctlplane, 0]} + - ':11211' + swift_replicas: { get_param: SwiftReplicas} + swift_min_part_hours: { get_param: SwiftMinPartHours} diff --git a/deprecated/swift-source.yaml b/deprecated/swift-source.yaml new file mode 100644 index 00000000..e6fd951e --- /dev/null +++ b/deprecated/swift-source.yaml @@ -0,0 +1,15 @@ +resources: + SwiftConfig: + type: OS::Heat::StructuredConfig + properties: + group: os-apply-config + config: + swift: + devices: { get_input: swift_devices } + hash: { get_input: swift_hash_suffix } + mount-check: { get_input: swift_mount_check } + part-power: { get_input: swift_part_power } + proxy-memcache: { get_input: swift_proxy_memcache } + replicas: {get_input: swift_replicas } + min-part-hours: {get_input: swift_min_part_hours } + service-password: { get_input: swift_password } diff --git a/deprecated/swift-storage-source.yaml b/deprecated/swift-storage-source.yaml new file mode 100644 index 00000000..176925b6 --- /dev/null +++ b/deprecated/swift-storage-source.yaml @@ -0,0 +1,77 @@ +heat_template_version: 2013-05-23 +description: 'Common Swift Storage Configuration' +parameters: + OvercloudSwiftStorageFlavor: + description: Flavor for Swift storage nodes to request when deploying. + type: string + constraints: + - custom_constraint: nova.flavor + SwiftReplicas: + type: number + default: 1 + description: How many replicas to use in the swift rings. + SwiftStorageImage: + type: string + default: overcloud-swift-storage +resources: + SwiftStorage0: + type: OS::Nova::Server + properties: + image: {get_param: SwiftStorageImage} + flavor: {get_param: OvercloudSwiftStorageFlavor} + key_name: {get_param: KeyName} + user_data_format: SOFTWARE_CONFIG + SwiftKeystoneConfig: + type: OS::Heat::StructuredConfig + properties: + config: + keystone: + host: {get_input: keystone_host} + SwiftStorage0Keystone: + type: OS::Heat::StructuredDeployment + properties: + server: {get_resource: SwiftStorage0} + config: {get_resource: SwiftKeystoneConfig} + signal_transport: NO_SIGNAL + input_values: + keystone_host: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]} + SwiftStorage0Deploy: + type: OS::Heat::StructuredDeployment + properties: + server: {get_resource: SwiftStorage0} + config: {get_resource: SwiftConfig} + signal_transport: NO_SIGNAL + input_values: + swift_hash_suffix: {get_param: SwiftHashSuffix} + swift_mount_check: {get_param: SwiftMountCheck} + swift_password: {get_param: SwiftPassword} + swift_part_power: {get_param: SwiftPartPower} + swift_devices: + Fn::Join: + - ', ' + - Merge::Map: + controller0: + Fn::Join: + - '' + - - 'r1z1-' + - {get_attr: [controller0, networks, ctlplane, 0]} + - ':%PORT%/d1' + SwiftStorage0: + Fn::Join: + - '' + - - 'r1z1-' + - {get_attr: [SwiftStorage0, networks, ctlplane, 0]} + - ':%PORT%/d1' + swift_proxy_memcache: + Fn::Join: + - ',' + - Merge::Map: + controller0: + Fn::Join: + - ', ' + - - Fn::Join: + - '' + - - {get_attr: [controller0, networks, ctlplane, 0]} + - ':11211' + swift_replicas: { get_param: SwiftReplicas} + swift_min_part_hours: { get_param: SwiftMinPartHours} |