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
(cherry picked from commit d90c4b1b68)
This commit is contained in:
committed by
Jon Schlueter
parent
f8f1873330
commit
ab1ac2888e
@@ -120,10 +120,6 @@ mod 'memcached',
|
|||||||
:git => 'https://github.com/saz/puppet-memcached',
|
:git => 'https://github.com/saz/puppet-memcached',
|
||||||
:ref => 'v3.0.1'
|
:ref => 'v3.0.1'
|
||||||
|
|
||||||
mod 'mongodb',
|
|
||||||
:git => 'https://github.com/puppetlabs/puppetlabs-mongodb',
|
|
||||||
:ref => '0.17.0'
|
|
||||||
|
|
||||||
mod 'mysql',
|
mod 'mysql',
|
||||||
:git => 'https://github.com/puppetlabs/puppetlabs-mysql',
|
:git => 'https://github.com/puppetlabs/puppetlabs-mysql',
|
||||||
:ref => '3.10.0'
|
:ref => '3.10.0'
|
||||||
|
|||||||
@@ -1079,18 +1079,9 @@ Ceilometer Config parameters
|
|||||||
**CONFIG_CEILOMETER_SERVICE_NAME**
|
**CONFIG_CEILOMETER_SERVICE_NAME**
|
||||||
Ceilometer service name. ['httpd', 'ceilometer']
|
Ceilometer service name. ['httpd', 'ceilometer']
|
||||||
|
|
||||||
**CONFIG_CEILOMETER_METERING_BACKEND**
|
|
||||||
Backend driver for Telemetry's metering backend configuration. ['database', 'gnocchi']
|
|
||||||
|
|
||||||
**CONFIG_ENABLE_CEILOMETER_MIDDLEWARE**
|
**CONFIG_ENABLE_CEILOMETER_MIDDLEWARE**
|
||||||
Whether to enable ceilometer middleware in swift proxy. By default this should be false to avoid unnecessary load.
|
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
|
Redis Config parameters
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
|
|||||||
@@ -83,28 +83,6 @@ def initConfig(controller):
|
|||||||
"NEED_CONFIRM": False,
|
"NEED_CONFIRM": False,
|
||||||
"CONDITION": 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",
|
{"CONF_NAME": "CONFIG_ENABLE_CEILOMETER_MIDDLEWARE",
|
||||||
"CMD_OPTION": "enable-ceilometer-middleware",
|
"CMD_OPTION": "enable-ceilometer-middleware",
|
||||||
"PROMPT": ("Enable ceilometer middleware in swift proxy"),
|
"PROMPT": ("Enable ceilometer middleware in swift proxy"),
|
||||||
@@ -117,19 +95,6 @@ def initConfig(controller):
|
|||||||
"CONDITION": False},
|
"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": [
|
"REDIS": [
|
||||||
{"CMD_OPTION": "redis-host",
|
{"CMD_OPTION": "redis-host",
|
||||||
"PROMPT": "Enter the host for the Redis server",
|
"PROMPT": "Enter the host for the Redis server",
|
||||||
@@ -166,13 +131,6 @@ def initConfig(controller):
|
|||||||
"POST_CONDITION": False,
|
"POST_CONDITION": False,
|
||||||
"POST_CONDITION_MATCH": True},
|
"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",
|
{"GROUP_NAME": "REDIS",
|
||||||
"DESCRIPTION": "Redis Config parameters",
|
"DESCRIPTION": "Redis Config parameters",
|
||||||
"PRE_CONDITION": "CONFIG_CEILOMETER_COORDINATION_BACKEND",
|
"PRE_CONDITION": "CONFIG_CEILOMETER_COORDINATION_BACKEND",
|
||||||
@@ -189,9 +147,7 @@ def initSequences(controller):
|
|||||||
if controller.CONF['CONFIG_CEILOMETER_INSTALL'] != 'y':
|
if controller.CONF['CONFIG_CEILOMETER_INSTALL'] != 'y':
|
||||||
return
|
return
|
||||||
|
|
||||||
steps = [{'title': 'Preparing MongoDB entries',
|
steps = [{'title': 'Preparing Redis entries',
|
||||||
'functions': [create_mongodb_manifest]},
|
|
||||||
{'title': 'Preparing Redis entries',
|
|
||||||
'functions': [create_redis_manifest]},
|
'functions': [create_redis_manifest]},
|
||||||
{'title': 'Preparing Ceilometer entries',
|
{'title': 'Preparing Ceilometer entries',
|
||||||
'functions': [create_manifest]}]
|
'functions': [create_manifest]}]
|
||||||
@@ -225,24 +181,6 @@ def create_manifest(config, messages):
|
|||||||
config['FIREWALL_CEILOMETER_RULES'] = fw_details
|
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):
|
def create_redis_manifest(config, messages):
|
||||||
if config['CONFIG_CEILOMETER_COORDINATION_BACKEND'] == 'redis':
|
if config['CONFIG_CEILOMETER_COORDINATION_BACKEND'] == 'redis':
|
||||||
redis_host = config['CONFIG_REDIS_HOST']
|
redis_host = config['CONFIG_REDIS_HOST']
|
||||||
|
|||||||
@@ -148,7 +148,7 @@ def copy_puppet_modules(config, messages):
|
|||||||
os_modules = ' '.join(('aodh', 'apache', 'ceilometer', 'certmonger',
|
os_modules = ' '.join(('aodh', 'apache', 'ceilometer', 'certmonger',
|
||||||
'cinder', 'concat', 'firewall', 'glance',
|
'cinder', 'concat', 'firewall', 'glance',
|
||||||
'gnocchi', 'heat', 'horizon', 'inifile', 'ironic',
|
'gnocchi', 'heat', 'horizon', 'inifile', 'ironic',
|
||||||
'keystone', 'magnum', 'manila', 'memcached', 'mongodb',
|
'keystone', 'magnum', 'manila', 'memcached',
|
||||||
'mysql', 'neutron', 'nova', 'nssdb', 'openstack',
|
'mysql', 'neutron', 'nova', 'nssdb', 'openstack',
|
||||||
'openstacklib', 'oslo', 'ovn', 'packstack', 'panko',
|
'openstacklib', 'oslo', 'ovn', 'packstack', 'panko',
|
||||||
'rabbitmq', 'redis', 'remote', 'rsync', 'sahara', 'ssh',
|
'rabbitmq', 'redis', 'remote', 'rsync', 'sahara', 'ssh',
|
||||||
|
|||||||
@@ -23,8 +23,6 @@ class packstack::aodh::rabbitmq ()
|
|||||||
File[$files_to_set_owner] ~> Service<| tag == 'aodh-service' |>
|
File[$files_to_set_owner] ~> Service<| tag == 'aodh-service' |>
|
||||||
}
|
}
|
||||||
|
|
||||||
$config_mongodb_host = hiera('CONFIG_MONGODB_HOST_URL')
|
|
||||||
|
|
||||||
class { '::aodh':
|
class { '::aodh':
|
||||||
debug => hiera('CONFIG_DEBUG_MODE'),
|
debug => hiera('CONFIG_DEBUG_MODE'),
|
||||||
rabbit_use_ssl => hiera('CONFIG_AMQP_SSL_ENABLED'),
|
rabbit_use_ssl => hiera('CONFIG_AMQP_SSL_ENABLED'),
|
||||||
|
|||||||
@@ -2,14 +2,8 @@ class packstack::ceilometer ()
|
|||||||
{
|
{
|
||||||
create_resources(packstack::firewall, hiera('FIREWALL_CEILOMETER_RULES', {}))
|
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_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')
|
$config_gnocchi_host = hiera('CONFIG_KEYSTONE_HOST_URL')
|
||||||
|
|
||||||
if $config_ceilometer_coordination_backend == 'redis' {
|
if $config_ceilometer_coordination_backend == 'redis' {
|
||||||
@@ -25,22 +19,22 @@ class packstack::ceilometer ()
|
|||||||
$coordination_url = ''
|
$coordination_url = ''
|
||||||
}
|
}
|
||||||
|
|
||||||
class { '::ceilometer::db':
|
include ::ceilometer
|
||||||
database_connection => "mongodb://${config_mongodb_host}:27017/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::agent::notification':
|
||||||
class { '::ceilometer::dispatcher::gnocchi':
|
manage_event_pipeline => true,
|
||||||
filter_service_activity => false,
|
event_pipeline_publishers => ["gnocchi://", "panko://"],
|
||||||
url => "http://${config_gnocchi_host}:8041",
|
|
||||||
archive_policy => 'high',
|
|
||||||
resources_definition_file => 'gnocchi_resources.yaml',
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
class { '::ceilometer::agent::notification': }
|
|
||||||
|
|
||||||
class { '::ceilometer::agent::auth':
|
class { '::ceilometer::agent::auth':
|
||||||
auth_url => hiera('CONFIG_KEYSTONE_PUBLIC_URL_VERSIONLESS'),
|
auth_url => hiera('CONFIG_KEYSTONE_PUBLIC_URL_VERSIONLESS'),
|
||||||
|
|||||||
@@ -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' {
|
if hiera('CONFIG_CEILOMETER_INSTALL') == 'y' {
|
||||||
include '::packstack::mongodb'
|
|
||||||
include '::packstack::keystone::ceilometer'
|
include '::packstack::keystone::ceilometer'
|
||||||
include '::packstack::ceilometer::rabbitmq'
|
include '::packstack::ceilometer::rabbitmq'
|
||||||
include '::packstack::ceilometer'
|
include '::packstack::ceilometer'
|
||||||
|
|||||||
9
releasenotes/notes/drop-mongodb-a9771fb4f0430a4c.yaml
Normal file
9
releasenotes/notes/drop-mongodb-a9771fb4f0430a4c.yaml
Normal file
@@ -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-heat-install=y \
|
||||||
--os-magnum-install=y \
|
--os-magnum-install=y \
|
||||||
--os-panko-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-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-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" \
|
--provision-uec-disk-url="/tmp/cirros/cirros-0.3.4-x86_64-disk.img" \
|
||||||
|
|||||||
Reference in New Issue
Block a user