X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=puppet%2Fcinder-storage-puppet.yaml;h=007a489c31914ceaba441c8973d84421b8b49137;hb=78c5ba2c01f08208adc8e859fb717b1161debb8a;hp=104130b37bcb9083c4880471e9aba598a311c79d;hpb=76a8a88486e44e761571e1f9d46696aa669fa7ec;p=apex-tripleo-heat-templates.git diff --git a/puppet/cinder-storage-puppet.yaml b/puppet/cinder-storage-puppet.yaml index 104130b3..007a489c 100644 --- a/puppet/cinder-storage-puppet.yaml +++ b/puppet/cinder-storage-puppet.yaml @@ -1,5 +1,5 @@ -heat_template_version: 2014-10-16 -description: 'Block Storage Configuration w/ Puppet' +heat_template_version: 2015-04-30 +description: 'OpenStack cinder storage configured by Puppet' parameters: Image: default: overcloud-cinder-volume @@ -16,6 +16,15 @@ parameters: 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 and db account, used by cinder-api. + type: string + hidden: true + Debug: + default: '' + description: Set to True to enable debugging on all services. + type: string VirtualIP: default: '' type: string @@ -71,10 +80,10 @@ parameters: description: Name of an existing EC2 KeyPair to enable SSH access to the instances type: string RabbitPassword: - default: '' + default: 'guest' type: string RabbitUserName: - default: '' + default: 'guest' type: string RabbitClientUseSSL: default: false @@ -111,9 +120,41 @@ resources: {get_param: Image} flavor: {get_param: Flavor} key_name: {get_param: KeyName} - user_data_format: SOFTWARE_CONFIG networks: - network: ctlplane + user_data_format: SOFTWARE_CONFIG + user_data: {get_resource: NodeUserData} + + NodeUserData: + type: OS::TripleO::NodeUserData + + InternalApiPort: + type: OS::TripleO::BlockStorage::Ports::InternalApiPort + properties: + ControlPlaneIP: {get_attr: [BlockStorage, networks, ctlplane, 0]} + + StoragePort: + type: OS::TripleO::BlockStorage::Ports::StoragePort + properties: + ControlPlaneIP: {get_attr: [BlockStorage, networks, ctlplane, 0]} + + StorageMgmtPort: + type: OS::TripleO::BlockStorage::Ports::StorageMgmtPort + properties: + ControlPlaneIP: {get_attr: [BlockStorage, networks, ctlplane, 0]} + + NetworkConfig: + type: OS::TripleO::BlockStorage::Net::SoftwareConfig + properties: + InternalApiIpSubnet: {get_attr: [InternalApiPort, ip_subnet]} + StorageIpSubnet: {get_attr: [StoragePort, ip_subnet]} + StorageMgmtIpSubnet: {get_attr: [StorageMgmtPort, ip_subnet]} + + NetworkDeployment: + type: OS::TripleO::SoftwareDeployment + properties: + config: {get_resource: NetworkConfig} + server: {get_resource: BlockStorage} BlockStorageDeployment: type: OS::Heat::StructuredDeployment @@ -121,7 +162,8 @@ resources: server: {get_resource: BlockStorage} config: {get_resource: BlockStorageConfig} input_values: - cinder_dsn: {list_join: ['', ['mysql://cinder:unset@', {get_param: VirtualIP} , '/cinder']]} + debug: {get_param: Debug} + cinder_dsn: {list_join: ['', ['mysql://cinder:', {get_param: CinderPassword}, '@', {get_param: VirtualIP} , '/cinder']]} snmpd_readonly_user_name: {get_param: SnmpdReadonlyUserName} snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword} cinder_lvm_loop_device_size: @@ -131,11 +173,6 @@ resources: size: {get_param: CinderLVMLoopDeviceSize} cinder_enable_iscsi_backend: {get_param: CinderEnableIscsiBackend} cinder_iscsi_helper: {get_param: CinderISCSIHelper} - rabbit_hosts: - str_replace: - template: '["host"]' - params: - host: {get_param: VirtualIP} rabbit_username: {get_param: RabbitUserName} rabbit_password: {get_param: RabbitPassword} rabbit_client_use_ssl: {get_param: RabbitClientUseSSL} @@ -158,6 +195,8 @@ resources: hierarchy: - heat_config_%{::deploy_config_name} - volume + - all_nodes # provided by allNodesConfig + - '"%{::osfamily}"' - common datafiles: common: @@ -168,10 +207,10 @@ resources: cinder_iscsi_ip_address: local-ipv4 mapped_data: # Cinder + cinder::debug: {get_input: debug} cinder::setup_test_volume::size: {get_input: cinder_lvm_loop_device_size} cinder_iscsi_helper: {get_input: cinder_iscsi_helper} cinder::database_connection: {get_input: cinder_dsn} - cinder::rabbit_hosts: {get_input: rabbit_hosts} cinder::rabbit_userid: {get_input: rabbit_username} cinder::rabbit_password: {get_input: rabbit_password} cinder::rabbit_use_ssl: {get_input: rabbit_client_use_ssl} @@ -186,7 +225,7 @@ outputs: hosts_entry: value: str_replace: - template: "IP HOST HOST.novalocal" + template: "IP HOST" params: IP: {get_attr: [BlockStorage, networks, ctlplane, 0]} HOST: {get_attr: [BlockStorage, name]} @@ -194,3 +233,12 @@ outputs: description: Heat resource handle for the block storage server value: {get_resource: BlockStorage} + internal_api_ip_address: + description: IP address of the server in the internal_api network + value: {get_attr: [InternalApiPort, ip_address]} + storage_ip_address: + description: IP address of the server in the storage network + value: {get_attr: [StoragePort, ip_address]} + storage_mgmt_ip_address: + description: IP address of the server in the storage_mgmt network + value: {get_attr: [StorageMgmtPort, ip_address]}