Convert swift storage to composable services
Depends-On: Ie68d7eccf4938bdbdea93327af0638b3fd002b3e Change-Id: I1eb68d0cd5f8bf4bf954dd9f12941bc493345708 Partially-Implements: blueprint composable-services-within-roles
This commit is contained in:
parent
749d24ec9d
commit
50ee410184
|
@ -148,7 +148,6 @@ resource_registry:
|
|||
OS::TripleO::Services::HAproxy: puppet/services/haproxy.yaml
|
||||
OS::TripleO::Services::Keepalived: puppet/services/keepalived.yaml
|
||||
OS::TripleO::Services::Memcached: puppet/services/memcached.yaml
|
||||
OS::TripleO::Services::SwiftProxy: puppet/services/swift-proxy.yaml
|
||||
OS::TripleO::Services::SaharaApi: puppet/services/sahara-api.yaml
|
||||
OS::TripleO::Services::SaharaEngine: puppet/services/sahara-engine.yaml
|
||||
OS::TripleO::Services::Redis: puppet/services/database/redis.yaml
|
||||
|
@ -160,6 +159,8 @@ resource_registry:
|
|||
OS::TripleO::Services::NovaVncproxy: puppet/services/nova-vncproxy.yaml
|
||||
OS::TripleO::Services::NovaCompute: puppet/services/nova-compute.yaml
|
||||
OS::TripleO::Services::Ntp: puppet/services/time/ntp.yaml
|
||||
OS::TripleO::Services::SwiftProxy: puppet/services/swift-proxy.yaml
|
||||
OS::TripleO::Services::SwiftStorage: puppet/services/swift-storage.yaml
|
||||
|
||||
parameter_defaults:
|
||||
EnablePackageInstall: false
|
||||
|
|
|
@ -345,10 +345,6 @@ parameters:
|
|||
default: false
|
||||
description: Whether to deploy Ceph Storage (OSD) on the Controller
|
||||
type: boolean
|
||||
ControllerEnableSwiftStorage:
|
||||
default: true
|
||||
description: Whether to enable Swift Storage on the Controller
|
||||
type: boolean
|
||||
ControllerSchedulerHints:
|
||||
type: json
|
||||
description: Optional scheduler hints to pass to nova
|
||||
|
@ -440,10 +436,6 @@ parameters:
|
|||
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
|
||||
|
@ -587,7 +579,6 @@ parameters:
|
|||
- OS::TripleO::Services::HAproxy
|
||||
- OS::TripleO::Services::Keepalived
|
||||
- OS::TripleO::Services::Memcached
|
||||
- OS::TripleO::Services::SwiftProxy
|
||||
- OS::TripleO::Services::Redis
|
||||
- OS::TripleO::Services::NovaConductor
|
||||
- OS::TripleO::Services::MongoDb
|
||||
|
@ -596,6 +587,8 @@ parameters:
|
|||
- OS::TripleO::Services::NovaConsoleauth
|
||||
- OS::TripleO::Services::NovaVncproxy
|
||||
- OS::TripleO::Services::Ntp
|
||||
- OS::TripleO::Services::SwiftProxy
|
||||
- OS::TripleO::Services::SwiftStorage
|
||||
description: A list of service resources (configured in the Heat
|
||||
resource_registry) which represent nested stacks
|
||||
for each service that should get installed on the Controllers.
|
||||
|
@ -661,6 +654,7 @@ parameters:
|
|||
ObjectStorageServices:
|
||||
default:
|
||||
- OS::TripleO::Services::Ntp
|
||||
- OS::TripleO::Services::SwiftStorage
|
||||
description: A list of service resources (configured in the Heat
|
||||
resource_registry) which represent nested stacks
|
||||
for each service that should get installed on the ObjectStorage nodes.
|
||||
|
@ -846,7 +840,6 @@ resources:
|
|||
PurgeFirewallRules: {get_param: PurgeFirewallRules}
|
||||
EnableGalera: {get_param: EnableGalera}
|
||||
EnableCephStorage: {get_param: ControllerEnableCephStorage}
|
||||
EnableSwiftStorage: {get_param: ControllerEnableSwiftStorage}
|
||||
ExtraConfig: {get_param: ExtraConfig}
|
||||
FencingConfig: {get_param: FencingConfig}
|
||||
Flavor: {get_param: OvercloudControlFlavor}
|
||||
|
@ -885,7 +878,6 @@ resources:
|
|||
RedisVirtualIP: {get_attr: [RedisVirtualIP, ip_address]}
|
||||
RedisVirtualIPUri: {get_attr: [RedisVirtualIP, ip_address_uri]}
|
||||
SwiftHashSuffix: {get_param: SwiftHashSuffix}
|
||||
SwiftMountCheck: {get_param: SwiftMountCheck}
|
||||
SwiftMinPartHours: {get_param: SwiftMinPartHours}
|
||||
SwiftPartPower: {get_param: SwiftPartPower}
|
||||
SwiftReplicas: { get_param: SwiftReplicas}
|
||||
|
@ -1061,7 +1053,6 @@ resources:
|
|||
KeyName: {get_param: KeyName}
|
||||
Flavor: {get_param: OvercloudSwiftStorageFlavor}
|
||||
HashSuffix: {get_param: SwiftHashSuffix}
|
||||
MountCheck: {get_param: SwiftMountCheck}
|
||||
MinPartHours: {get_param: SwiftMinPartHours}
|
||||
PartPower: {get_param: SwiftPartPower}
|
||||
Image: {get_param: SwiftStorageImage}
|
||||
|
|
|
@ -96,10 +96,6 @@ parameters:
|
|||
default: false
|
||||
description: Whether to deploy Ceph Storage (OSD) on the Controller
|
||||
type: boolean
|
||||
EnableSwiftStorage:
|
||||
default: true
|
||||
description: Whether to enable Swift Storage on the Controller
|
||||
type: boolean
|
||||
ExtraConfig:
|
||||
default: {}
|
||||
description: |
|
||||
|
@ -343,10 +339,6 @@ parameters:
|
|||
in the ring.
|
||||
hidden: true
|
||||
type: string
|
||||
SwiftMountCheck:
|
||||
default: 'false'
|
||||
description: Value of mount_check in Swift account/container/object -server.conf
|
||||
type: boolean
|
||||
SwiftMinPartHours:
|
||||
type: number
|
||||
default: 1
|
||||
|
@ -632,7 +624,6 @@ resources:
|
|||
enable_galera: {get_param: EnableGalera}
|
||||
enable_load_balancer: {get_param: EnableLoadBalancer}
|
||||
enable_ceph_storage: {get_param: EnableCephStorage}
|
||||
enable_swift_storage: {get_param: EnableSwiftStorage}
|
||||
manage_firewall: {get_param: ManageFirewall}
|
||||
purge_firewall_rules: {get_param: PurgeFirewallRules}
|
||||
mysql_innodb_buffer_pool_size: {get_param: MysqlInnodbBufferPoolSize}
|
||||
|
@ -750,7 +741,6 @@ resources:
|
|||
swift_ring_build: {get_param: SwiftRingBuild}
|
||||
swift_replicas: {get_param: SwiftReplicas}
|
||||
swift_min_part_hours: {get_param: SwiftMinPartHours}
|
||||
swift_mount_check: {get_param: SwiftMountCheck}
|
||||
enable_package_install: {get_param: EnablePackageInstall}
|
||||
enable_package_upgrade: {get_attr: [UpdateDeployment, update_managed_packages]}
|
||||
swift_proxy_network: {get_attr: [NetIpMap, net_ip_map, {get_param: [ServiceNetMap, SwiftProxyNetwork]}]}
|
||||
|
@ -874,7 +864,6 @@ resources:
|
|||
tripleo::ringbuilder::part_power: {get_input: swift_part_power}
|
||||
tripleo::ringbuilder::replicas: {get_input: swift_replicas}
|
||||
tripleo::ringbuilder::min_part_hours: {get_input: swift_min_part_hours}
|
||||
swift_mount_check: {get_input: swift_mount_check}
|
||||
|
||||
# Cinder
|
||||
tripleo::profile::base::cinder::volume::iscsi::cinder_iscsi_address: {get_input: cinder_iscsi_network}
|
||||
|
@ -912,7 +901,6 @@ resources:
|
|||
admin_password: {get_input: admin_password}
|
||||
enable_galera: {get_input: enable_galera}
|
||||
enable_ceph_storage: {get_input: enable_ceph_storage}
|
||||
enable_swift_storage: {get_input: enable_swift_storage}
|
||||
mysql_innodb_buffer_pool_size: {get_input: mysql_innodb_buffer_pool_size}
|
||||
mysql_max_connections: {get_input: mysql_max_connections}
|
||||
mysql::server::root_password: {get_input: mysql_root_password}
|
||||
|
|
|
@ -215,24 +215,6 @@ if hiera('step') >= 4 {
|
|||
}
|
||||
}
|
||||
|
||||
# swift storage
|
||||
if str2bool(hiera('enable_swift_storage', true)) {
|
||||
class { '::swift::storage::all':
|
||||
mount_check => str2bool(hiera('swift_mount_check')),
|
||||
}
|
||||
if(!defined(File['/srv/node'])) {
|
||||
file { '/srv/node':
|
||||
ensure => directory,
|
||||
owner => 'swift',
|
||||
group => 'swift',
|
||||
require => Package['openstack-swift'],
|
||||
}
|
||||
}
|
||||
$swift_components = ['account', 'container', 'object']
|
||||
swift::storage::filter::recon { $swift_components : }
|
||||
swift::storage::filter::healthcheck { $swift_components : }
|
||||
}
|
||||
|
||||
# Ceilometer
|
||||
$ceilometer_backend = downcase(hiera('ceilometer_backend'))
|
||||
case $ceilometer_backend {
|
||||
|
|
|
@ -409,36 +409,6 @@ MYSQL_HOST=localhost\n",
|
|||
}
|
||||
}
|
||||
|
||||
# swift storage
|
||||
if str2bool(hiera('enable_swift_storage', true)) {
|
||||
class {'::swift::storage::all':
|
||||
mount_check => str2bool(hiera('swift_mount_check')),
|
||||
}
|
||||
class {'::swift::storage::account':
|
||||
manage_service => $non_pcmk_start,
|
||||
enabled => $non_pcmk_start,
|
||||
}
|
||||
class {'::swift::storage::container':
|
||||
manage_service => $non_pcmk_start,
|
||||
enabled => $non_pcmk_start,
|
||||
}
|
||||
class {'::swift::storage::object':
|
||||
manage_service => $non_pcmk_start,
|
||||
enabled => $non_pcmk_start,
|
||||
}
|
||||
if(!defined(File['/srv/node'])) {
|
||||
file { '/srv/node':
|
||||
ensure => directory,
|
||||
owner => 'swift',
|
||||
group => 'swift',
|
||||
require => Package['openstack-swift'],
|
||||
}
|
||||
}
|
||||
$swift_components = ['account', 'container', 'object']
|
||||
swift::storage::filter::recon { $swift_components : }
|
||||
swift::storage::filter::healthcheck { $swift_components : }
|
||||
}
|
||||
|
||||
# Ceilometer
|
||||
case downcase(hiera('ceilometer_backend')) {
|
||||
/mysql/: {
|
||||
|
|
|
@ -26,22 +26,6 @@ if hiera('step') >= 1 {
|
|||
}
|
||||
|
||||
if hiera('step') >= 4 {
|
||||
class { '::swift::storage::all':
|
||||
mount_check => str2bool(hiera('swift_mount_check')),
|
||||
}
|
||||
if(!defined(File['/srv/node'])) {
|
||||
file { '/srv/node':
|
||||
ensure => directory,
|
||||
owner => 'swift',
|
||||
group => 'swift',
|
||||
require => Package['openstack-swift'],
|
||||
}
|
||||
}
|
||||
|
||||
$swift_components = ['account', 'container', 'object']
|
||||
swift::storage::filter::recon { $swift_components : }
|
||||
swift::storage::filter::healthcheck { $swift_components : }
|
||||
|
||||
$snmpd_user = hiera('snmpd_readonly_user_name')
|
||||
snmp::snmpv3_user { $snmpd_user:
|
||||
authtype => 'MD5',
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
heat_template_version: 2016-04-08
|
||||
|
||||
description: >
|
||||
OpenStack Swift Storage service configured with Puppet
|
||||
|
||||
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
|
||||
SwiftMountCheck:
|
||||
default: false
|
||||
description: Value of mount_check in Swift account/container/object -server.conf
|
||||
type: boolean
|
||||
|
||||
# DEPRECATED options for compatibility with overcloud.yaml
|
||||
# This should be removed and manipulation of the ControllerServices list
|
||||
# used instead, but we need client support for that first
|
||||
ControllerEnableSwiftStorage:
|
||||
default: true
|
||||
description: Whether to enable Swift Storage on the Controller
|
||||
type: boolean
|
||||
|
||||
parameter_groups:
|
||||
- label: deprecated
|
||||
description: Do not use deprecated params, they will be removed.
|
||||
parameters:
|
||||
- ControllerEnableSwiftStorage
|
||||
|
||||
outputs:
|
||||
role_data:
|
||||
description: Role data for the Swift Proxy role.
|
||||
value:
|
||||
config_settings:
|
||||
# Swift
|
||||
swift::storage::all::mount_check: {get_param: SwiftMountCheck}
|
||||
tripleo::profile::base::swift::storage::enable_swift_storage: {get_param: ControllerEnableSwiftStorage}
|
||||
step_config: |
|
||||
include ::tripleo::profile::base::swift::storage
|
|
@ -18,10 +18,6 @@ parameters:
|
|||
default: default
|
||||
description: Name of an existing Nova key pair to enable SSH access to the instances
|
||||
type: string
|
||||
MountCheck:
|
||||
default: 'false'
|
||||
description: Value of mount_check in Swift account/container/object -server.conf
|
||||
type: boolean
|
||||
MinPartHours:
|
||||
type: number
|
||||
default: 1
|
||||
|
@ -286,7 +282,6 @@ resources:
|
|||
tripleo::ringbuilder::part_power: { get_input: swift_part_power }
|
||||
tripleo::ringbuilder::replicas: {get_input: swift_replicas }
|
||||
swift::storage::all::storage_local_net_ip: {get_input: swift_management_network}
|
||||
swift_mount_check: {get_input: swift_mount_check }
|
||||
tripleo::ringbuilder::min_part_hours: { get_input: swift_min_part_hours }
|
||||
timezone::timezone: {get_input: timezone}
|
||||
snmpd_readonly_user_name: {get_input: snmpd_readonly_user_name}
|
||||
|
@ -307,7 +302,6 @@ resources:
|
|||
snmpd_readonly_user_name: {get_param: SnmpdReadonlyUserName}
|
||||
snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword}
|
||||
swift_hash_suffix: {get_param: HashSuffix}
|
||||
swift_mount_check: {get_param: MountCheck}
|
||||
swift_min_part_hours: {get_param: MinPartHours}
|
||||
swift_ring_build: {get_param: RingBuild}
|
||||
swift_part_power: {get_param: PartPower}
|
||||
|
|
Loading…
Reference in New Issue