Drop mongodb from packstack
Telemetry does not support mongodb anymore and hence mongodb was dropped from tripleo. Lets drop this code completely so we dont end up maintaining dead code. - drop mongodb support - change default ceilometer publishers to gnocchi and panko - add release note for dropping support of mongodb Change-Id: I79bbc6be20bf538173b48976401a43d417520481
This commit is contained in:
parent
385f75b9c4
commit
d90c4b1b68
|
@ -120,10 +120,6 @@ mod 'memcached',
|
|||
:git => 'https://github.com/saz/puppet-memcached',
|
||||
:ref => 'v3.0.1'
|
||||
|
||||
mod 'mongodb',
|
||||
:git => 'https://github.com/puppetlabs/puppetlabs-mongodb',
|
||||
:ref => '0.17.0'
|
||||
|
||||
mod 'mysql',
|
||||
:git => 'https://github.com/puppetlabs/puppetlabs-mysql',
|
||||
:ref => '3.10.0'
|
||||
|
|
|
@ -1079,18 +1079,9 @@ Ceilometer Config parameters
|
|||
**CONFIG_CEILOMETER_SERVICE_NAME**
|
||||
Ceilometer service name. ['httpd', 'ceilometer']
|
||||
|
||||
**CONFIG_CEILOMETER_METERING_BACKEND**
|
||||
Backend driver for Telemetry's metering backend configuration. ['database', 'gnocchi']
|
||||
|
||||
**CONFIG_ENABLE_CEILOMETER_MIDDLEWARE**
|
||||
Whether to enable ceilometer middleware in swift proxy. By default this should be false to avoid unnecessary load.
|
||||
|
||||
MONGODB Config parameters
|
||||
-------------------------
|
||||
|
||||
**CONFIG_MONGODB_HOST**
|
||||
IP address of the server on which to install MongoDB.
|
||||
|
||||
Redis Config parameters
|
||||
-----------------------
|
||||
|
||||
|
|
|
@ -83,28 +83,6 @@ def initConfig(controller):
|
|||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CONF_NAME": "CONFIG_CEILOMETER_METERING_BACKEND",
|
||||
"CMD_OPTION": "ceilometer-metering-backend",
|
||||
"PROMPT": "Enter the metering backend to use",
|
||||
"OPTION_LIST": ['database', 'gnocchi'],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": 'database',
|
||||
"MASK_INPUT": False,
|
||||
"USE_DEFAULT": True,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CONF_NAME": "CONFIG_CEILOMETER_EVENTS_BACKEND",
|
||||
"CMD_OPTION": "ceilometer-events-backend",
|
||||
"PROMPT": "Enter the events backend to use",
|
||||
"OPTION_LIST": ['database', 'panko'],
|
||||
"VALIDATORS": [validators.validate_options],
|
||||
"DEFAULT_VALUE": 'database',
|
||||
"MASK_INPUT": False,
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
|
||||
{"CONF_NAME": "CONFIG_ENABLE_CEILOMETER_MIDDLEWARE",
|
||||
"CMD_OPTION": "enable-ceilometer-middleware",
|
||||
"PROMPT": ("Enable ceilometer middleware in swift proxy"),
|
||||
|
@ -117,19 +95,6 @@ def initConfig(controller):
|
|||
"CONDITION": False},
|
||||
],
|
||||
|
||||
"MONGODB": [
|
||||
{"CMD_OPTION": "mongodb-host",
|
||||
"PROMPT": "Enter the host for the MongoDB server",
|
||||
"OPTION_LIST": [],
|
||||
"VALIDATORS": [validators.validate_ssh],
|
||||
"DEFAULT_VALUE": utils.get_localhost_ip(),
|
||||
"MASK_INPUT": False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME": "CONFIG_MONGODB_HOST",
|
||||
"USE_DEFAULT": False,
|
||||
"NEED_CONFIRM": False,
|
||||
"CONDITION": False},
|
||||
],
|
||||
"REDIS": [
|
||||
{"CMD_OPTION": "redis-host",
|
||||
"PROMPT": "Enter the host for the Redis server",
|
||||
|
@ -166,13 +131,6 @@ def initConfig(controller):
|
|||
"POST_CONDITION": False,
|
||||
"POST_CONDITION_MATCH": True},
|
||||
|
||||
{"GROUP_NAME": "MONGODB",
|
||||
"DESCRIPTION": "MONGODB Config parameters",
|
||||
"PRE_CONDITION": "CONFIG_CEILOMETER_INSTALL",
|
||||
"PRE_CONDITION_MATCH": "y",
|
||||
"POST_CONDITION": False,
|
||||
"POST_CONDITION_MATCH": True},
|
||||
|
||||
{"GROUP_NAME": "REDIS",
|
||||
"DESCRIPTION": "Redis Config parameters",
|
||||
"PRE_CONDITION": "CONFIG_CEILOMETER_COORDINATION_BACKEND",
|
||||
|
@ -189,9 +147,7 @@ def initSequences(controller):
|
|||
if controller.CONF['CONFIG_CEILOMETER_INSTALL'] != 'y':
|
||||
return
|
||||
|
||||
steps = [{'title': 'Preparing MongoDB entries',
|
||||
'functions': [create_mongodb_manifest]},
|
||||
{'title': 'Preparing Redis entries',
|
||||
steps = [{'title': 'Preparing Redis entries',
|
||||
'functions': [create_redis_manifest]},
|
||||
{'title': 'Preparing Ceilometer entries',
|
||||
'functions': [create_manifest]}]
|
||||
|
@ -225,24 +181,6 @@ def create_manifest(config, messages):
|
|||
config['FIREWALL_CEILOMETER_RULES'] = fw_details
|
||||
|
||||
|
||||
def create_mongodb_manifest(config, messages):
|
||||
host = config['CONFIG_MONGODB_HOST']
|
||||
if config['CONFIG_IP_VERSION'] == 'ipv6':
|
||||
config['CONFIG_MONGODB_HOST_URL'] = "[%s]" % host
|
||||
else:
|
||||
config['CONFIG_MONGODB_HOST_URL'] = host
|
||||
|
||||
fw_details = dict()
|
||||
key = "mongodb_server"
|
||||
fw_details.setdefault(key, {})
|
||||
fw_details[key]['host'] = "%s" % config['CONFIG_CONTROLLER_HOST']
|
||||
fw_details[key]['service_name'] = "mongodb-server"
|
||||
fw_details[key]['chain'] = "INPUT"
|
||||
fw_details[key]['ports'] = ['27017']
|
||||
fw_details[key]['proto'] = "tcp"
|
||||
config['FIREWALL_MONGODB_RULES'] = fw_details
|
||||
|
||||
|
||||
def create_redis_manifest(config, messages):
|
||||
if config['CONFIG_CEILOMETER_COORDINATION_BACKEND'] == 'redis':
|
||||
redis_host = config['CONFIG_REDIS_HOST']
|
||||
|
|
|
@ -148,7 +148,7 @@ def copy_puppet_modules(config, messages):
|
|||
os_modules = ' '.join(('aodh', 'apache', 'ceilometer', 'certmonger',
|
||||
'cinder', 'concat', 'firewall', 'glance',
|
||||
'gnocchi', 'heat', 'horizon', 'inifile', 'ironic',
|
||||
'keystone', 'magnum', 'manila', 'memcached', 'mongodb',
|
||||
'keystone', 'magnum', 'manila', 'memcached',
|
||||
'mysql', 'neutron', 'nova', 'nssdb', 'openstack',
|
||||
'openstacklib', 'oslo', 'ovn', 'packstack', 'panko',
|
||||
'rabbitmq', 'redis', 'remote', 'rsync', 'sahara', 'ssh',
|
||||
|
|
|
@ -23,8 +23,6 @@ class packstack::aodh::rabbitmq ()
|
|||
File[$files_to_set_owner] ~> Service<| tag == 'aodh-service' |>
|
||||
}
|
||||
|
||||
$config_mongodb_host = hiera('CONFIG_MONGODB_HOST_URL')
|
||||
|
||||
class { '::aodh':
|
||||
debug => hiera('CONFIG_DEBUG_MODE'),
|
||||
rabbit_use_ssl => hiera('CONFIG_AMQP_SSL_ENABLED'),
|
||||
|
|
|
@ -2,14 +2,8 @@ class packstack::ceilometer ()
|
|||
{
|
||||
create_resources(packstack::firewall, hiera('FIREWALL_CEILOMETER_RULES', {}))
|
||||
|
||||
$config_mongodb_host = hiera('CONFIG_MONGODB_HOST_URL')
|
||||
|
||||
$config_ceilometer_coordination_backend = hiera('CONFIG_CEILOMETER_COORDINATION_BACKEND')
|
||||
|
||||
$config_ceilometer_metering_backend = hiera('CONFIG_CEILOMETER_METERING_BACKEND')
|
||||
|
||||
$config_ceilometer_events_backend = hiera('CONFIG_CEILOMETER_EVENTS_BACKEND')
|
||||
|
||||
$config_gnocchi_host = hiera('CONFIG_KEYSTONE_HOST_URL')
|
||||
|
||||
if $config_ceilometer_coordination_backend == 'redis' {
|
||||
|
@ -25,23 +19,23 @@ class packstack::ceilometer ()
|
|||
$coordination_url = ''
|
||||
}
|
||||
|
||||
class { '::ceilometer::db':
|
||||
database_connection => "mongodb://${config_mongodb_host}:27017/ceilometer",
|
||||
include ::ceilometer
|
||||
|
||||
exec {'ceilometer-db-upgrade':
|
||||
command => 'ceilometer-upgrade --skip-metering-database',
|
||||
path => ['/usr/bin', '/usr/sbin'],
|
||||
try_sleep => 10,
|
||||
tries => 20
|
||||
}
|
||||
|
||||
if $config_ceilometer_metering_backend == 'gnocchi' {
|
||||
Keystone::Resource::Service_identity<||> -> Exec['ceilometer-db-upgrade'] ~>
|
||||
Service['ceilometer-agent-notification']
|
||||
|
||||
include ::gnocchi::client
|
||||
class { '::ceilometer::dispatcher::gnocchi':
|
||||
filter_service_activity => false,
|
||||
url => "http://${config_gnocchi_host}:8041",
|
||||
archive_policy => 'high',
|
||||
resources_definition_file => 'gnocchi_resources.yaml',
|
||||
}
|
||||
class { '::ceilometer::agent::notification':
|
||||
manage_event_pipeline => true,
|
||||
event_pipeline_publishers => ["gnocchi://", "panko://"],
|
||||
}
|
||||
|
||||
class { '::ceilometer::agent::notification': }
|
||||
|
||||
class { '::ceilometer::agent::auth':
|
||||
auth_url => hiera('CONFIG_KEYSTONE_PUBLIC_URL_VERSIONLESS'),
|
||||
auth_password => hiera('CONFIG_CEILOMETER_KS_PW'),
|
||||
|
|
|
@ -1,26 +0,0 @@
|
|||
class packstack::mongodb ()
|
||||
{
|
||||
create_resources(packstack::firewall, hiera('FIREWALL_MONGODB_RULES', {}))
|
||||
$mongodb_host = hiera('CONFIG_MONGODB_HOST')
|
||||
|
||||
# The MongoDB config files differ between versions
|
||||
if (($::operatingsystem == 'fedora' and versioncmp($::operatingsystemrelease, '22') >= 0)
|
||||
or
|
||||
($::operatingsystem != 'fedora' and versioncmp($::operatingsystemrelease, '7.0') >= 0)
|
||||
){
|
||||
$config_file = '/etc/mongod.conf'
|
||||
} else {
|
||||
$config_file = '/etc/mongodb.conf'
|
||||
}
|
||||
|
||||
class { '::mongodb::server':
|
||||
ipv6 => hiera('CONFIG_IP_VERSION') ? {
|
||||
'ipv6' => true,
|
||||
default => false,
|
||||
# TO-DO(mmagr): Add IPv6 support when hostnames are used
|
||||
},
|
||||
smallfiles => true,
|
||||
bind_ip => force_ip($mongodb_host),
|
||||
config => $config_file,
|
||||
}
|
||||
}
|
|
@ -179,7 +179,6 @@ if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' and hiera('CONFIG_PANKO_INSTALL') =
|
|||
}
|
||||
|
||||
if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' {
|
||||
include '::packstack::mongodb'
|
||||
include '::packstack::keystone::ceilometer'
|
||||
include '::packstack::ceilometer::rabbitmq'
|
||||
include '::packstack::ceilometer'
|
||||
|
|
|
@ -0,0 +1,9 @@
|
|||
---
|
||||
fixes:
|
||||
- |
|
||||
Drop mongodb support from packstack. Telemetry does not support this
|
||||
anymore and there is no reason to keep deploying and maintaining this
|
||||
going forward. We will use gnocchi for metrics, panko for events instead.
|
||||
Also dropping command options CONFIG_CEILOMETER_METERING_BACKEND and
|
||||
CONFIG_CEILOMETER_EVENTS_BACKEND as we directly set the publishers
|
||||
in the pipeline.
|
|
@ -29,7 +29,6 @@ $SUDO packstack ${ADDITIONAL_ARGS} \
|
|||
--os-heat-install=y \
|
||||
--os-magnum-install=y \
|
||||
--os-panko-install=y \
|
||||
--ceilometer-events-backend=panko \
|
||||
--provision-uec-kernel-url="/tmp/cirros/cirros-0.3.4-x86_64-vmlinuz" \
|
||||
--provision-uec-ramdisk-url="/tmp/cirros/cirros-0.3.4-x86_64-initrd" \
|
||||
--provision-uec-disk-url="/tmp/cirros/cirros-0.3.4-x86_64-disk.img" \
|
||||
|
|
Loading…
Reference in New Issue