Enable Manila integration - as a composable controller service
Allows the installation and configuration of Manila. Supports the generic driver only. This has a dependency on the puppet-tripleo classes for manila where the puppet specific config now lives. The review at https://review.openstack.org/#/c/315658/ has been merge into this one, as of v68, so manila lands as a composable service. This was brought up on the mailing list at [1] [1] http://lists.openstack.org/pipermail/openstack-dev/2016-May/096126.html Co-Authored-By: Marios Andreou <marios@redhat.com> Implements: blueprint composable-services-within-roles Depends-On: I444916d60a67bf730bf4089323dba1c1429e2e71 Depends-On: I9eda4b3364e5c59342761a1ec71b0eb567c69cf1 Depends-On: I571b65a5402c1028418476a573ebeb9450ed00c9 Change-Id: I7acebac4354fca1f8d7ff6c343c1346bf29b81c6
This commit is contained in:
parent
59603a04b3
commit
b99733d08a
|
@ -34,6 +34,9 @@ parameter_defaults:
|
||||||
KeystoneAdmin: {protocol: 'http', port: '35357', host: 'IP_ADDRESS'}
|
KeystoneAdmin: {protocol: 'http', port: '35357', host: 'IP_ADDRESS'}
|
||||||
KeystoneInternal: {protocol: 'http', port: '5000', host: 'IP_ADDRESS'}
|
KeystoneInternal: {protocol: 'http', port: '5000', host: 'IP_ADDRESS'}
|
||||||
KeystonePublic: {protocol: 'https', port: '13000', host: 'CLOUDNAME'}
|
KeystonePublic: {protocol: 'https', port: '13000', host: 'CLOUDNAME'}
|
||||||
|
ManilaAdmin: {protocol: 'http', port: '8786', host: 'IP_ADDRESS'}
|
||||||
|
ManilaInternal: {protocol: 'http', port: '8786', host: 'IP_ADDRESS'}
|
||||||
|
ManilaPublic: {protocol: 'https', port: '13786', host: 'CLOUDNAME'}
|
||||||
MysqlInternal: {protocol: 'mysql+pymysql', port: '3306', host: 'IP_ADDRESS'}
|
MysqlInternal: {protocol: 'mysql+pymysql', port: '3306', host: 'IP_ADDRESS'}
|
||||||
MysqlNoBracketsInternal: {protocol: 'mysql+pymysql', port: '3306', host: 'IP_ADDRESS'}
|
MysqlNoBracketsInternal: {protocol: 'mysql+pymysql', port: '3306', host: 'IP_ADDRESS'}
|
||||||
NeutronAdmin: {protocol: 'http', port: '9696', host: 'IP_ADDRESS'}
|
NeutronAdmin: {protocol: 'http', port: '9696', host: 'IP_ADDRESS'}
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
# A Heat environment file which can be used to enable a
|
||||||
|
# a Manila generic driver backend.
|
||||||
|
resource_registry:
|
||||||
|
OS::Tripleo::Services::ManilaApi: ../puppet/services/manila-api.yaml
|
||||||
|
OS::Tripleo::Services::ManilaScheduler: ../puppet/services/manila-scheduler.yaml
|
||||||
|
# Only manila-share is pacemaker managed:
|
||||||
|
OS::Tripleo::Services::ManilaShare: ../puppet/services/pacemaker/manila-share.yaml
|
||||||
|
|
||||||
|
|
||||||
|
parameter_defaults:
|
||||||
|
ManilaGenericEnableBackend: true
|
||||||
|
ManilaGenericBackendName: tripleo_generic
|
||||||
|
ManilaGenericDriverHandlesShareServers: true
|
||||||
|
ManilaGenericSmbTemplateConfigPath: '$state_path/smb.conf'
|
||||||
|
ManilaGenericVolumeNameTemplate: 'manila-share-%s'
|
||||||
|
ManilaGenericVolumeSnapshotNameTemplate: 'manila-snapshot-%s'
|
||||||
|
ManilaGenericShareMountPath: '/shares'
|
||||||
|
ManilaGenericMaxTimeToCreateVolume: '180'
|
||||||
|
ManilaGenericMaxTimeToAttach: '120'
|
||||||
|
ManilaGenericServiceInstanceSmbConfigPath: '$share_mount_path/smb.conf'
|
||||||
|
ManilaGenericShareVolumeFsType: 'ext4'
|
||||||
|
ManilaGenericCinderVolumeType: ''
|
||||||
|
ManilaGenericServiceInstanceUser: ''
|
||||||
|
ManilaGenericServiceInstancePassword: ''
|
||||||
|
ManilaGenericServiceInstanceFlavorId: 2
|
||||||
|
ManilaGenericServiceNetworkCidr: '172.16.0.0/16'
|
|
@ -53,3 +53,5 @@ resource_registry:
|
||||||
OS::TripleO::Services::GnocchiStatsd: ../puppet/services/pacemaker/gnocchi-statsd.yaml
|
OS::TripleO::Services::GnocchiStatsd: ../puppet/services/pacemaker/gnocchi-statsd.yaml
|
||||||
OS::TripleO::Services::MySQL: ../puppet/services/pacemaker/database/mysql.yaml
|
OS::TripleO::Services::MySQL: ../puppet/services/pacemaker/database/mysql.yaml
|
||||||
OS::TripleO::Services::Horizon: ../puppet/services/pacemaker/horizon.yaml
|
OS::TripleO::Services::Horizon: ../puppet/services/pacemaker/horizon.yaml
|
||||||
|
# Services that are disabled by default (use relevant environment files):
|
||||||
|
OS::Tripleo::Services::ManilaShare: OS::Heat::None
|
||||||
|
|
|
@ -133,6 +133,21 @@ Keystone:
|
||||||
port: 35357
|
port: 35357
|
||||||
port: 5000
|
port: 5000
|
||||||
|
|
||||||
|
Manila:
|
||||||
|
Internal:
|
||||||
|
vip_param: ManilaApi
|
||||||
|
uri_suffixes:
|
||||||
|
'': /v2/%(tenant_id)s
|
||||||
|
Public:
|
||||||
|
vip_param: Public
|
||||||
|
uri_suffixes:
|
||||||
|
'': /v2/%(tenant_id)s
|
||||||
|
Admin:
|
||||||
|
vip_param: ManilaApi
|
||||||
|
uri_suffixes:
|
||||||
|
'': /v2/%(tenant_id)s
|
||||||
|
port: 8786
|
||||||
|
|
||||||
Neutron:
|
Neutron:
|
||||||
Internal:
|
Internal:
|
||||||
vip_param: NeutronApi
|
vip_param: NeutronApi
|
||||||
|
|
|
@ -19,6 +19,7 @@ parameters:
|
||||||
KeystoneAdminApiVirtualIP: {type: string, default: ''}
|
KeystoneAdminApiVirtualIP: {type: string, default: ''}
|
||||||
KeystonePublicApiVirtualIP: {type: string, default: ''}
|
KeystonePublicApiVirtualIP: {type: string, default: ''}
|
||||||
MysqlNoBracketsVirtualIP: {type: string, default: ''}
|
MysqlNoBracketsVirtualIP: {type: string, default: ''}
|
||||||
|
ManilaApiVirtualIP: {type: string, default: ''}
|
||||||
MysqlVirtualIP: {type: string, default: ''}
|
MysqlVirtualIP: {type: string, default: ''}
|
||||||
NeutronApiVirtualIP: {type: string, default: ''}
|
NeutronApiVirtualIP: {type: string, default: ''}
|
||||||
NovaApiVirtualIP: {type: string, default: ''}
|
NovaApiVirtualIP: {type: string, default: ''}
|
||||||
|
@ -57,6 +58,9 @@ parameters:
|
||||||
KeystoneAdmin: {protocol: http, port: '35357', host: IP_ADDRESS}
|
KeystoneAdmin: {protocol: http, port: '35357', host: IP_ADDRESS}
|
||||||
KeystoneInternal: {protocol: http, port: '5000', host: IP_ADDRESS}
|
KeystoneInternal: {protocol: http, port: '5000', host: IP_ADDRESS}
|
||||||
KeystonePublic: {protocol: http, port: '5000', host: IP_ADDRESS}
|
KeystonePublic: {protocol: http, port: '5000', host: IP_ADDRESS}
|
||||||
|
ManilaAdmin: {protocol: http, port: '8786', host: IP_ADDRESS}
|
||||||
|
ManilaInternal: {protocol: http, port: '8786', host: IP_ADDRESS}
|
||||||
|
ManilaPublic: {protocol: http, port: '8786', host: IP_ADDRESS}
|
||||||
MysqlInternal: {protocol: mysql+pymysql, port: '3306', host: IP_ADDRESS}
|
MysqlInternal: {protocol: mysql+pymysql, port: '3306', host: IP_ADDRESS}
|
||||||
MysqlNoBracketsInternal: {protocol: mysql+pymysql, port: '3306',
|
MysqlNoBracketsInternal: {protocol: mysql+pymysql, port: '3306',
|
||||||
host: IP_ADDRESS}
|
host: IP_ADDRESS}
|
||||||
|
@ -1473,6 +1477,123 @@ outputs:
|
||||||
IP_ADDRESS: {get_param: PublicVirtualIP}
|
IP_ADDRESS: {get_param: PublicVirtualIP}
|
||||||
- ':'
|
- ':'
|
||||||
- get_param: [EndpointMap, KeystonePublic, port]
|
- get_param: [EndpointMap, KeystonePublic, port]
|
||||||
|
ManilaAdmin:
|
||||||
|
host:
|
||||||
|
str_replace:
|
||||||
|
template:
|
||||||
|
get_param: [EndpointMap, ManilaAdmin, host]
|
||||||
|
params:
|
||||||
|
CLOUDNAME: {get_param: CloudName}
|
||||||
|
IP_ADDRESS: {get_param: ManilaApiVirtualIP}
|
||||||
|
port:
|
||||||
|
get_param: [EndpointMap, ManilaAdmin, port]
|
||||||
|
protocol:
|
||||||
|
get_param: [EndpointMap, ManilaAdmin, protocol]
|
||||||
|
uri:
|
||||||
|
list_join:
|
||||||
|
- ''
|
||||||
|
- - get_param: [EndpointMap, ManilaAdmin, protocol]
|
||||||
|
- ://
|
||||||
|
- str_replace:
|
||||||
|
template:
|
||||||
|
get_param: [EndpointMap, ManilaAdmin, host]
|
||||||
|
params:
|
||||||
|
CLOUDNAME: {get_param: CloudName}
|
||||||
|
IP_ADDRESS: {get_param: ManilaApiVirtualIP}
|
||||||
|
- ':'
|
||||||
|
- get_param: [EndpointMap, ManilaAdmin, port]
|
||||||
|
- /v2/%(tenant_id)s
|
||||||
|
uri_no_suffix:
|
||||||
|
list_join:
|
||||||
|
- ''
|
||||||
|
- - get_param: [EndpointMap, ManilaAdmin, protocol]
|
||||||
|
- ://
|
||||||
|
- str_replace:
|
||||||
|
template:
|
||||||
|
get_param: [EndpointMap, ManilaAdmin, host]
|
||||||
|
params:
|
||||||
|
CLOUDNAME: {get_param: CloudName}
|
||||||
|
IP_ADDRESS: {get_param: ManilaApiVirtualIP}
|
||||||
|
- ':'
|
||||||
|
- get_param: [EndpointMap, ManilaAdmin, port]
|
||||||
|
ManilaInternal:
|
||||||
|
host:
|
||||||
|
str_replace:
|
||||||
|
template:
|
||||||
|
get_param: [EndpointMap, ManilaInternal, host]
|
||||||
|
params:
|
||||||
|
CLOUDNAME: {get_param: CloudName}
|
||||||
|
IP_ADDRESS: {get_param: ManilaApiVirtualIP}
|
||||||
|
port:
|
||||||
|
get_param: [EndpointMap, ManilaInternal, port]
|
||||||
|
protocol:
|
||||||
|
get_param: [EndpointMap, ManilaInternal, protocol]
|
||||||
|
uri:
|
||||||
|
list_join:
|
||||||
|
- ''
|
||||||
|
- - get_param: [EndpointMap, ManilaInternal, protocol]
|
||||||
|
- ://
|
||||||
|
- str_replace:
|
||||||
|
template:
|
||||||
|
get_param: [EndpointMap, ManilaInternal, host]
|
||||||
|
params:
|
||||||
|
CLOUDNAME: {get_param: CloudName}
|
||||||
|
IP_ADDRESS: {get_param: ManilaApiVirtualIP}
|
||||||
|
- ':'
|
||||||
|
- get_param: [EndpointMap, ManilaInternal, port]
|
||||||
|
- /v2/%(tenant_id)s
|
||||||
|
uri_no_suffix:
|
||||||
|
list_join:
|
||||||
|
- ''
|
||||||
|
- - get_param: [EndpointMap, ManilaInternal, protocol]
|
||||||
|
- ://
|
||||||
|
- str_replace:
|
||||||
|
template:
|
||||||
|
get_param: [EndpointMap, ManilaInternal, host]
|
||||||
|
params:
|
||||||
|
CLOUDNAME: {get_param: CloudName}
|
||||||
|
IP_ADDRESS: {get_param: ManilaApiVirtualIP}
|
||||||
|
- ':'
|
||||||
|
- get_param: [EndpointMap, ManilaInternal, port]
|
||||||
|
ManilaPublic:
|
||||||
|
host:
|
||||||
|
str_replace:
|
||||||
|
template:
|
||||||
|
get_param: [EndpointMap, ManilaPublic, host]
|
||||||
|
params:
|
||||||
|
CLOUDNAME: {get_param: CloudName}
|
||||||
|
IP_ADDRESS: {get_param: PublicVirtualIP}
|
||||||
|
port:
|
||||||
|
get_param: [EndpointMap, ManilaPublic, port]
|
||||||
|
protocol:
|
||||||
|
get_param: [EndpointMap, ManilaPublic, protocol]
|
||||||
|
uri:
|
||||||
|
list_join:
|
||||||
|
- ''
|
||||||
|
- - get_param: [EndpointMap, ManilaPublic, protocol]
|
||||||
|
- ://
|
||||||
|
- str_replace:
|
||||||
|
template:
|
||||||
|
get_param: [EndpointMap, ManilaPublic, host]
|
||||||
|
params:
|
||||||
|
CLOUDNAME: {get_param: CloudName}
|
||||||
|
IP_ADDRESS: {get_param: PublicVirtualIP}
|
||||||
|
- ':'
|
||||||
|
- get_param: [EndpointMap, ManilaPublic, port]
|
||||||
|
- /v2/%(tenant_id)s
|
||||||
|
uri_no_suffix:
|
||||||
|
list_join:
|
||||||
|
- ''
|
||||||
|
- - get_param: [EndpointMap, ManilaPublic, protocol]
|
||||||
|
- ://
|
||||||
|
- str_replace:
|
||||||
|
template:
|
||||||
|
get_param: [EndpointMap, ManilaPublic, host]
|
||||||
|
params:
|
||||||
|
CLOUDNAME: {get_param: CloudName}
|
||||||
|
IP_ADDRESS: {get_param: PublicVirtualIP}
|
||||||
|
- ':'
|
||||||
|
- get_param: [EndpointMap, ManilaPublic, port]
|
||||||
MysqlInternal:
|
MysqlInternal:
|
||||||
host:
|
host:
|
||||||
str_replace:
|
str_replace:
|
||||||
|
|
|
@ -193,6 +193,10 @@ resource_registry:
|
||||||
OS::TripleO::Services::GnocchiApi: puppet/services/gnocchi-api.yaml
|
OS::TripleO::Services::GnocchiApi: puppet/services/gnocchi-api.yaml
|
||||||
OS::TripleO::Services::GnocchiMetricd: puppet/services/gnocchi-metricd.yaml
|
OS::TripleO::Services::GnocchiMetricd: puppet/services/gnocchi-metricd.yaml
|
||||||
OS::TripleO::Services::GnocchiStatsd: puppet/services/gnocchi-statsd.yaml
|
OS::TripleO::Services::GnocchiStatsd: puppet/services/gnocchi-statsd.yaml
|
||||||
|
# Services that are disabled by default (use relevant environment files):
|
||||||
|
OS::Tripleo::Services::ManilaApi: OS::Heat::None
|
||||||
|
OS::Tripleo::Services::ManilaScheduler: OS::Heat::None
|
||||||
|
OS::Tripleo::Services::ManilaShare: OS::Heat::None
|
||||||
|
|
||||||
parameter_defaults:
|
parameter_defaults:
|
||||||
EnablePackageInstall: false
|
EnablePackageInstall: false
|
||||||
|
|
|
@ -328,6 +328,7 @@ parameters:
|
||||||
IronicApiNetwork: internal_api
|
IronicApiNetwork: internal_api
|
||||||
KeystoneAdminApiNetwork: ctlplane # allows undercloud to config endpoints
|
KeystoneAdminApiNetwork: ctlplane # allows undercloud to config endpoints
|
||||||
KeystonePublicApiNetwork: internal_api
|
KeystonePublicApiNetwork: internal_api
|
||||||
|
ManilaApiNetwork: internal_api
|
||||||
NeutronApiNetwork: internal_api
|
NeutronApiNetwork: internal_api
|
||||||
HeatApiNetwork: internal_api
|
HeatApiNetwork: internal_api
|
||||||
NovaApiNetwork: internal_api
|
NovaApiNetwork: internal_api
|
||||||
|
@ -402,7 +403,9 @@ parameters:
|
||||||
- OS::TripleO::Services::GnocchiApi
|
- OS::TripleO::Services::GnocchiApi
|
||||||
- OS::TripleO::Services::GnocchiMetricd
|
- OS::TripleO::Services::GnocchiMetricd
|
||||||
- OS::TripleO::Services::GnocchiStatsd
|
- OS::TripleO::Services::GnocchiStatsd
|
||||||
|
- OS::Tripleo::Services::ManilaApi
|
||||||
|
- OS::Tripleo::Services::ManilaScheduler
|
||||||
|
- OS::Tripleo::Services::ManilaShare
|
||||||
description: A list of service resources (configured in the Heat
|
description: A list of service resources (configured in the Heat
|
||||||
resource_registry) which represent nested stacks
|
resource_registry) which represent nested stacks
|
||||||
for each service that should get installed on the Controllers.
|
for each service that should get installed on the Controllers.
|
||||||
|
@ -642,6 +645,7 @@ resources:
|
||||||
IronicApiVirtualIP: {get_attr: [VipMap, net_ip_uri_map, {get_param: [ServiceNetMap, IronicApiNetwork]}]}
|
IronicApiVirtualIP: {get_attr: [VipMap, net_ip_uri_map, {get_param: [ServiceNetMap, IronicApiNetwork]}]}
|
||||||
KeystoneAdminApiVirtualIP: {get_attr: [VipMap, net_ip_uri_map, {get_param: [ServiceNetMap, KeystoneAdminApiNetwork]}]}
|
KeystoneAdminApiVirtualIP: {get_attr: [VipMap, net_ip_uri_map, {get_param: [ServiceNetMap, KeystoneAdminApiNetwork]}]}
|
||||||
KeystonePublicApiVirtualIP: {get_attr: [VipMap, net_ip_uri_map, {get_param: [ServiceNetMap, KeystonePublicApiNetwork]}]}
|
KeystonePublicApiVirtualIP: {get_attr: [VipMap, net_ip_uri_map, {get_param: [ServiceNetMap, KeystonePublicApiNetwork]}]}
|
||||||
|
ManilaApiVirtualIP: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, ManilaApiNetwork]}]}
|
||||||
MysqlVirtualIP: {get_attr: [VipMap, net_ip_uri_map, {get_param: [ServiceNetMap, MysqlNetwork]}]}
|
MysqlVirtualIP: {get_attr: [VipMap, net_ip_uri_map, {get_param: [ServiceNetMap, MysqlNetwork]}]}
|
||||||
MysqlNoBracketsVirtualIP: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, MysqlNetwork]}]}
|
MysqlNoBracketsVirtualIP: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, MysqlNetwork]}]}
|
||||||
NeutronApiVirtualIP: {get_attr: [VipMap, net_ip_uri_map, {get_param: [ServiceNetMap, NeutronApiNetwork]}]}
|
NeutronApiVirtualIP: {get_attr: [VipMap, net_ip_uri_map, {get_param: [ServiceNetMap, NeutronApiNetwork]}]}
|
||||||
|
@ -924,6 +928,7 @@ resources:
|
||||||
glance_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, GlanceApiNetwork]}]}
|
glance_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, GlanceApiNetwork]}]}
|
||||||
glance_registry_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, GlanceRegistryNetwork]}]}
|
glance_registry_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, GlanceRegistryNetwork]}]}
|
||||||
cinder_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, CinderApiNetwork]}]}
|
cinder_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, CinderApiNetwork]}]}
|
||||||
|
manila_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, ManilaApiNetwork]}]}
|
||||||
neutron_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, NeutronApiNetwork]}]}
|
neutron_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, NeutronApiNetwork]}]}
|
||||||
keystone_public_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, KeystonePublicApiNetwork]}]}
|
keystone_public_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, KeystonePublicApiNetwork]}]}
|
||||||
keystone_admin_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, KeystoneAdminApiNetwork]}]}
|
keystone_admin_api_node_ips: {get_attr: [ControllerIpListMap, net_ip_map, {get_param: [ServiceNetMap, KeystoneAdminApiNetwork]}]}
|
||||||
|
@ -1047,6 +1052,7 @@ resources:
|
||||||
heat_api_vip: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, HeatApiNetwork]}]}
|
heat_api_vip: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, HeatApiNetwork]}]}
|
||||||
horizon_vip: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, HorizonNetwork]}]}
|
horizon_vip: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, HorizonNetwork]}]}
|
||||||
redis_vip: {get_attr: [RedisVirtualIP, ip_address]}
|
redis_vip: {get_attr: [RedisVirtualIP, ip_address]}
|
||||||
|
manila_api_vip: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, ManilaApiNetwork]}]}
|
||||||
mysql_vip: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, MysqlNetwork]}]}
|
mysql_vip: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, MysqlNetwork]}]}
|
||||||
rabbit_vip: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, RabbitMqNetwork]}]}
|
rabbit_vip: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, RabbitMqNetwork]}]}
|
||||||
# direct configuration of Virtual IPs for each network
|
# direct configuration of Virtual IPs for each network
|
||||||
|
@ -1282,6 +1288,9 @@ outputs:
|
||||||
KeystoneInternalVip:
|
KeystoneInternalVip:
|
||||||
description: VIP for Keystone API internal endpoint
|
description: VIP for Keystone API internal endpoint
|
||||||
value: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, KeystonePublicApiNetwork]}]}
|
value: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, KeystonePublicApiNetwork]}]}
|
||||||
|
ManilaInternalVip:
|
||||||
|
description: VIP for Manila API internal endpoint
|
||||||
|
value: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, ManilaApiNetwork]}]}
|
||||||
NeutronInternalVip:
|
NeutronInternalVip:
|
||||||
description: VIP for Neutron API internal endpoint
|
description: VIP for Neutron API internal endpoint
|
||||||
value: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, NeutronApiNetwork]}]}
|
value: {get_attr: [VipMap, net_ip_map, {get_param: [ServiceNetMap, NeutronApiNetwork]}]}
|
||||||
|
|
|
@ -48,6 +48,8 @@ parameters:
|
||||||
type: comma_delimited_list
|
type: comma_delimited_list
|
||||||
cinder_api_node_ips:
|
cinder_api_node_ips:
|
||||||
type: comma_delimited_list
|
type: comma_delimited_list
|
||||||
|
manila_api_node_ips:
|
||||||
|
type: comma_delimited_list
|
||||||
neutron_api_node_ips:
|
neutron_api_node_ips:
|
||||||
type: comma_delimited_list
|
type: comma_delimited_list
|
||||||
keystone_public_api_node_ips:
|
keystone_public_api_node_ips:
|
||||||
|
@ -260,6 +262,14 @@ resources:
|
||||||
list_join:
|
list_join:
|
||||||
- "','"
|
- "','"
|
||||||
- {get_param: cinder_api_node_ips}
|
- {get_param: cinder_api_node_ips}
|
||||||
|
manila_api_node_ips:
|
||||||
|
str_replace:
|
||||||
|
template: "['SERVERS_LIST']"
|
||||||
|
params:
|
||||||
|
SERVERS_LIST:
|
||||||
|
list_join:
|
||||||
|
- "','"
|
||||||
|
- {get_param: manila_api_node_ips}
|
||||||
neutron_api_node_ips:
|
neutron_api_node_ips:
|
||||||
str_replace:
|
str_replace:
|
||||||
template: "['SERVERS_LIST']"
|
template: "['SERVERS_LIST']"
|
||||||
|
@ -332,6 +342,7 @@ resources:
|
||||||
aodh::rabbit_hosts: *rabbit_nodes_array
|
aodh::rabbit_hosts: *rabbit_nodes_array
|
||||||
cinder::rabbit_hosts: *rabbit_nodes_array
|
cinder::rabbit_hosts: *rabbit_nodes_array
|
||||||
glance::notify::rabbitmq::rabbit_hosts: *rabbit_nodes_array
|
glance::notify::rabbitmq::rabbit_hosts: *rabbit_nodes_array
|
||||||
|
manila::rabbit_hosts: *rabbit_nodes_array
|
||||||
heat::rabbit_hosts: *rabbit_nodes_array
|
heat::rabbit_hosts: *rabbit_nodes_array
|
||||||
neutron::rabbit_hosts: *rabbit_nodes_array
|
neutron::rabbit_hosts: *rabbit_nodes_array
|
||||||
nova::rabbit_hosts: *rabbit_nodes_array
|
nova::rabbit_hosts: *rabbit_nodes_array
|
||||||
|
|
|
@ -586,6 +586,7 @@ resources:
|
||||||
keystone_public_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, KeystonePublicApiNetwork]}]}
|
keystone_public_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, KeystonePublicApiNetwork]}]}
|
||||||
keystone_admin_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, KeystoneAdminApiNetwork]}]}
|
keystone_admin_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, KeystoneAdminApiNetwork]}]}
|
||||||
keystone_region: {get_param: KeystoneRegion}
|
keystone_region: {get_param: KeystoneRegion}
|
||||||
|
manila_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, ManilaApiNetwork]}]}
|
||||||
mongo_db_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MongoDbNetwork]}]}
|
mongo_db_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, MongoDbNetwork]}]}
|
||||||
neutron_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronApiNetwork]}]}
|
neutron_api_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronApiNetwork]}]}
|
||||||
neutron_local_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronTenantNetwork]}]}
|
neutron_local_ip: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, NeutronTenantNetwork]}]}
|
||||||
|
@ -723,6 +724,9 @@ resources:
|
||||||
keystone::wsgi::apache::bind_host: {get_input: keystone_public_api_network}
|
keystone::wsgi::apache::bind_host: {get_input: keystone_public_api_network}
|
||||||
keystone::wsgi::apache::admin_bind_host: {get_input: keystone_admin_api_network}
|
keystone::wsgi::apache::admin_bind_host: {get_input: keystone_admin_api_network}
|
||||||
|
|
||||||
|
# Manila
|
||||||
|
manila::api::bind_host: {get_input: manila_api_network}
|
||||||
|
|
||||||
# MongoDB
|
# MongoDB
|
||||||
mongodb::server::bind_ip: {get_input: mongo_db_network}
|
mongodb::server::bind_ip: {get_input: mongo_db_network}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,46 @@
|
||||||
|
heat_template_version: 2016-04-08
|
||||||
|
|
||||||
|
description: >
|
||||||
|
Manila-api service configured with Puppet
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
EndpointMap:
|
||||||
|
default: {}
|
||||||
|
description: Mapping of service endpoint -> protocol. Typically set
|
||||||
|
via parameter_defaults in the resource registry.
|
||||||
|
type: json
|
||||||
|
ManilaPassword:
|
||||||
|
description: The password for the manila service account.
|
||||||
|
type: string
|
||||||
|
hidden: true
|
||||||
|
KeystoneRegion:
|
||||||
|
type: string
|
||||||
|
default: 'regionOne'
|
||||||
|
description: Keystone region for endpoint
|
||||||
|
|
||||||
|
resources:
|
||||||
|
ManilaBase:
|
||||||
|
type: ./manila-base.yaml
|
||||||
|
properties:
|
||||||
|
EndpointMap: {get_param: EndpointMap}
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
role_data:
|
||||||
|
description: Role data for the Manila-api role.
|
||||||
|
value:
|
||||||
|
service_name: manila_api
|
||||||
|
config_settings:
|
||||||
|
map_merge:
|
||||||
|
- get_attr: [ManilaBase, role_data, config_settings]
|
||||||
|
- manila::api::keystone_password: {get_param: ManilaPassword}
|
||||||
|
manila::api::keystone_auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri]}
|
||||||
|
manila::api::keystone_auth_host: {get_param: [EndpointMap, ManilaInternal, host]}
|
||||||
|
manila::keystone::auth::public_url: {get_param: [EndpointMap, ManilaPublic, uri]}
|
||||||
|
manila::keystone::auth::internal_url: {get_param: [EndpointMap, ManilaInternal, uri]}
|
||||||
|
manila::keystone::auth::admin_url: {get_param: [EndpointMap, ManilaAdmin, uri]}
|
||||||
|
manila::keystone::auth::password: {get_param: ManilaPassword }
|
||||||
|
manila::keystone::auth::region: {get_param: KeystoneRegion }
|
||||||
|
manila::api::keystone_tenant: 'service'
|
||||||
|
step_config: |
|
||||||
|
include ::tripleo::profile::base::manila::api
|
||||||
|
|
|
@ -0,0 +1,119 @@
|
||||||
|
heat_template_version: 2016-04-08
|
||||||
|
|
||||||
|
description: >
|
||||||
|
Openstack Manila base service. Shared by manila-api/scheduler/share services
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
EndpointMap:
|
||||||
|
default: {}
|
||||||
|
description: Mapping of service endpoint -> protocol. Typically set
|
||||||
|
via parameter_defaults in the resource registry.
|
||||||
|
type: json
|
||||||
|
Debug:
|
||||||
|
default: ''
|
||||||
|
description: Set to True to enable debugging on all services.
|
||||||
|
type: string
|
||||||
|
RabbitPassword:
|
||||||
|
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
|
||||||
|
# Config specific parameters, to be provided via parameter_defaults
|
||||||
|
ManilaGenericEnableBackend:
|
||||||
|
type: boolean
|
||||||
|
default: true
|
||||||
|
ManilaGenericBackendName:
|
||||||
|
type: string
|
||||||
|
default: tripleo_generic
|
||||||
|
ManilaGenericDriverHandlesShareServers:
|
||||||
|
type: string
|
||||||
|
default: true
|
||||||
|
ManilaGenericSmbTemplateConfigPath:
|
||||||
|
type: string
|
||||||
|
default: '$state_path/smb.conf'
|
||||||
|
ManilaGenericVolumeNameTemplate:
|
||||||
|
type: string
|
||||||
|
default: 'manila-share-%s'
|
||||||
|
ManilaGenericVolumeSnapshotNameTemplate:
|
||||||
|
type: string
|
||||||
|
default: 'manila-snapshot-%s'
|
||||||
|
ManilaGenericShareMountPath:
|
||||||
|
type: string
|
||||||
|
default: '/shares'
|
||||||
|
ManilaGenericMaxTimeToCreateVolume:
|
||||||
|
type: string
|
||||||
|
default: '180'
|
||||||
|
ManilaGenericMaxTimeToAttach:
|
||||||
|
type: string
|
||||||
|
default: '120'
|
||||||
|
ManilaGenericServiceInstanceSmbConfigPath:
|
||||||
|
type: string
|
||||||
|
default: '$share_mount_path/smb.conf'
|
||||||
|
ManilaGenericShareVolumeFsType:
|
||||||
|
type: string
|
||||||
|
default: 'ext4'
|
||||||
|
ManilaGenericCinderVolumeType:
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
ManilaGenericServiceInstanceUser:
|
||||||
|
type: string
|
||||||
|
default: ''
|
||||||
|
ManilaGenericServiceInstancePassword: #SET THIS via parameter_defaults
|
||||||
|
type: string
|
||||||
|
hidden: true
|
||||||
|
ManilaGenericServiceInstanceFlavorId:
|
||||||
|
type: number
|
||||||
|
default: 1
|
||||||
|
ManilaGenericServiceNetworkCidr:
|
||||||
|
type: string
|
||||||
|
default: '172.16.0.0/16'
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
role_data:
|
||||||
|
description: Role data for the Manila Base service.
|
||||||
|
value:
|
||||||
|
service_name: manila_base
|
||||||
|
config_settings:
|
||||||
|
manila::rabbit_userid: {get_param: RabbitUserName}
|
||||||
|
manila::rabbit_password: {get_param: RabbitPassword}
|
||||||
|
manila::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
|
||||||
|
manila::rabbit_port: {get_param: RabbitClientPort}
|
||||||
|
manila::debug: {get_param: Debug}
|
||||||
|
manila::db::mysql::user: manila
|
||||||
|
manila::db::mysql::host: {get_param: [EndpointMap, MysqlNoBracketsInternal, host]}
|
||||||
|
manila::db::mysql::dbname: manila
|
||||||
|
manila::db::database_db_max_retries: -1
|
||||||
|
manila::db::database_max_retries: -1
|
||||||
|
manila_generic_enable_backend: {get_param: ManilaGenericEnableBackend}
|
||||||
|
manila::backend::generic::title: {get_param: ManilaGenericBackendName}
|
||||||
|
manila::backend::generic::driver_handles_share_servers: {get_param: ManilaGenericDriverHandlesShareServers}
|
||||||
|
manila::backend::generic::smb_template_config_path: {get_param: ManilaGenericSmbTemplateConfigPath}
|
||||||
|
manila::backend::generic::volume_name_template: {get_param: ManilaGenericVolumeNameTemplate}
|
||||||
|
manila::backend::generic::volume_snapshot_name_template: {get_param: ManilaGenericVolumeSnapshotNameTemplate}
|
||||||
|
manila::backend::generic::share_mount_path: {get_param: ManilaGenericShareMountPath}
|
||||||
|
manila::backend::generic::max_time_to_create_volume: {get_param: ManilaGenericMaxTimeToCreateVolume}
|
||||||
|
manila::backend::generic::max_time_to_attach: {get_param: ManilaGenericMaxTimeToAttach}
|
||||||
|
manila::backend::generic::service_instance_smb_config_path: {get_param: ManilaGenericServiceInstanceSmbConfigPath}
|
||||||
|
manila::backend::generic::share_volume_fstype: {get_param: ManilaGenericShareVolumeFsType}
|
||||||
|
manila::backend::generic::cinder_volume_type: {get_param: ManilaGenericCinderVolumeType}
|
||||||
|
manila::service_instance::service_instance_user: {get_param: ManilaGenericServiceInstanceUser}
|
||||||
|
manila::service_instance::service_instance_password: {get_param: ManilaGenericServiceInstancePassword}
|
||||||
|
manila::service_instance::service_instance_flavor_id: {get_param: ManilaGenericServiceInstanceFlavorId}
|
||||||
|
manila::service_instance::service_network_cidr: {get_param: ManilaGenericServiceNetworkCidr}
|
||||||
|
manila::db::mysql::allowed_hosts:
|
||||||
|
- '%'
|
||||||
|
- "%{hiera('mysql_bind_host')}"
|
||||||
|
|
|
@ -0,0 +1,57 @@
|
||||||
|
heat_template_version: 2016-04-08
|
||||||
|
|
||||||
|
description: >
|
||||||
|
Manila-scheduler service configured with Puppet
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
EndpointMap:
|
||||||
|
default: {}
|
||||||
|
description: Mapping of service endpoint -> protocol. Typically set
|
||||||
|
via parameter_defaults in the resource registry.
|
||||||
|
type: json
|
||||||
|
NovaPassword:
|
||||||
|
type: string
|
||||||
|
description: The password for the nova service and db account, used by nova-api.
|
||||||
|
hidden: true
|
||||||
|
NeutronPassword:
|
||||||
|
description: The password for the neutron service and db account, used by neutron agents.
|
||||||
|
type: string
|
||||||
|
hidden: true
|
||||||
|
ManilaPassword:
|
||||||
|
description: The password for the manila service account.
|
||||||
|
type: string
|
||||||
|
hidden: true
|
||||||
|
|
||||||
|
resources:
|
||||||
|
ManilaBase:
|
||||||
|
type: ./manila-base.yaml
|
||||||
|
properties:
|
||||||
|
EndpointMap: {get_param: EndpointMap}
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
role_data:
|
||||||
|
description: Role data for the Manila-scheduler role.
|
||||||
|
value:
|
||||||
|
service_name: manila_scheduler
|
||||||
|
config_settings:
|
||||||
|
map_merge:
|
||||||
|
- get_attr: [ManilaBase, role_data, config_settings]
|
||||||
|
- manila::compute::nova::nova_admin_auth_url: {get_param: [EndpointMap, KeystoneInternal, uri]}
|
||||||
|
manila::compute::nova::nova_admin_password: {get_param: NovaPassword}
|
||||||
|
manila::compute::nova::nova_admin_tenant_name: 'service'
|
||||||
|
manila::db::mysql::password: {get_param: ManilaPassword}
|
||||||
|
manila::network::neutron::neutron_url: {get_param: [EndpointMap, NeutronInternal, uri]}
|
||||||
|
manila::network::neutron::neutron_admin_auth_url: {get_param: [EndpointMap, NeutronAdmin, uri]}
|
||||||
|
manila::network::neutron::neutron_admin_password: {get_param: NeutronPassword}
|
||||||
|
manila::sql_connection:
|
||||||
|
list_join:
|
||||||
|
- ''
|
||||||
|
- - {get_param: [EndpointMap, MysqlInternal, protocol]}
|
||||||
|
- '://manila:'
|
||||||
|
- {get_param: ManilaPassword}
|
||||||
|
- '@'
|
||||||
|
- {get_param: [EndpointMap, MysqlInternal, host]}
|
||||||
|
- '/manila'
|
||||||
|
step_config: |
|
||||||
|
include ::tripleo::profile::base::manila::scheduler
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
heat_template_version: 2016-04-08
|
||||||
|
|
||||||
|
description: >
|
||||||
|
Manila-share service configured with Puppet
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
EndpointMap:
|
||||||
|
default: {}
|
||||||
|
description: Mapping of service endpoint -> protocol. Typically set
|
||||||
|
via parameter_defaults in the resource registry.
|
||||||
|
type: json
|
||||||
|
|
||||||
|
resources:
|
||||||
|
ManilaBase:
|
||||||
|
type: ./manila-base.yaml
|
||||||
|
properties:
|
||||||
|
EndpointMap: {get_param: EndpointMap}
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
role_data:
|
||||||
|
description: Role data for the Manila-share role.
|
||||||
|
value:
|
||||||
|
service_name: manila_share
|
||||||
|
config_settings:
|
||||||
|
map_merge:
|
||||||
|
- get_attr: [ManilaBase, role_data, config_settings]
|
||||||
|
- manila::volume::cinder::cinder_admin_tenant_name: 'service'
|
||||||
|
step_config: |
|
||||||
|
include ::tripleo::profile::base::manila::share
|
|
@ -0,0 +1,27 @@
|
||||||
|
heat_template_version: 2016-04-08
|
||||||
|
|
||||||
|
description: >
|
||||||
|
The manila-share service with Pacemaker configured with Puppet
|
||||||
|
|
||||||
|
parameters:
|
||||||
|
EndpointMap:
|
||||||
|
default: {}
|
||||||
|
description: Mapping of service endpoint -> protocol. Typically set
|
||||||
|
via parameter_defaults in the resource registry.
|
||||||
|
type: json
|
||||||
|
|
||||||
|
resources:
|
||||||
|
|
||||||
|
ManilaShareBase:
|
||||||
|
type: ../manila-share.yaml
|
||||||
|
|
||||||
|
outputs:
|
||||||
|
role_data:
|
||||||
|
description: Role data for the manila-share pacemaker role.
|
||||||
|
value:
|
||||||
|
service_name: manila_share
|
||||||
|
config_settings:
|
||||||
|
map_merge:
|
||||||
|
- get_attr: [ManilaShareBase, role_data, config_settings]
|
||||||
|
step_config: |
|
||||||
|
include ::tripleo::profile::pacemaker::manila
|
|
@ -23,6 +23,7 @@ resources:
|
||||||
glance_registry_vip: {get_input: glance_registry_vip}
|
glance_registry_vip: {get_input: glance_registry_vip}
|
||||||
sahara_api_vip: {get_input: sahara_api_vip}
|
sahara_api_vip: {get_input: sahara_api_vip}
|
||||||
swift_proxy_vip: {get_input: swift_proxy_vip}
|
swift_proxy_vip: {get_input: swift_proxy_vip}
|
||||||
|
manila_api_vip: {get_input: manila_api_vip}
|
||||||
nova_api_vip: {get_input: nova_api_vip}
|
nova_api_vip: {get_input: nova_api_vip}
|
||||||
nova_metadata_vip: {get_input: nova_metadata_vip}
|
nova_metadata_vip: {get_input: nova_metadata_vip}
|
||||||
ceilometer_api_vip: {get_input: ceilometer_api_vip}
|
ceilometer_api_vip: {get_input: ceilometer_api_vip}
|
||||||
|
|
Loading…
Reference in New Issue