Add RabbitMQ as option for Qpid
Adds the rabbitmq puppet module and configures all the plugins to use it. Change-Id: I5e25ec75689aaf63b8c3938fbe845785b964b7fb
This commit is contained in:
parent
e34b032c9e
commit
35f2526338
|
@ -0,0 +1,5 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
|
||||
def get_mq(config, plugin):
|
||||
return plugin + "_%s.pp" % config.get('CONFIG_AMQP_SERVER')
|
|
@ -1,5 +1,5 @@
|
|||
"""
|
||||
Installs and configures qpid
|
||||
Installs and configures amqp
|
||||
"""
|
||||
|
||||
import logging
|
||||
|
@ -19,7 +19,7 @@ from packstack.modules.ospluginutils import gethostlist,\
|
|||
controller = None
|
||||
|
||||
# Plugin name
|
||||
PLUGIN_NAME = "OS-QPID"
|
||||
PLUGIN_NAME = "OS-AMQP"
|
||||
PLUGIN_NAME_COLORED = utils.color_text(PLUGIN_NAME, 'blue')
|
||||
|
||||
logging.debug("plugin %s loaded", __name__)
|
||||
|
@ -27,52 +27,62 @@ logging.debug("plugin %s loaded", __name__)
|
|||
def initConfig(controllerObject):
|
||||
global controller
|
||||
controller = controllerObject
|
||||
logging.debug("Adding OpenStack QPID configuration")
|
||||
logging.debug("Adding OpenStack AMQP configuration")
|
||||
paramsList = [
|
||||
{"CMD_OPTION" : "qpid-host",
|
||||
"USAGE" : "The IP address of the server on which to install the QPID service",
|
||||
"PROMPT" : "Enter the IP address of the QPID service",
|
||||
{"CMD_OPTION" : "amqp-server",
|
||||
"USAGE" : "Set the server for the AMQP service",
|
||||
"PROMPT" : "Set the server for the AMQP service (qpid, rabbitmq)? ",
|
||||
"OPTION_LIST" : ["qpid", "rabbitmq"],
|
||||
"VALIDATORS" : [validators.validate_options],
|
||||
"DEFAULT_VALUE" : "qpid",
|
||||
"MASK_INPUT" : False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME" : "CONFIG_AMQP_SERVER",
|
||||
"USE_DEFAULT" : False,
|
||||
"NEED_CONFIRM" : False,
|
||||
"CONDITION" : False },
|
||||
{"CMD_OPTION" : "amqp-host",
|
||||
"USAGE" : "The IP address of the server on which to install the AMQP service",
|
||||
"PROMPT" : "Enter the IP address of the AMQP service",
|
||||
"OPTION_LIST" : [],
|
||||
"VALIDATORS" : [validators.validate_ssh],
|
||||
"DEFAULT_VALUE" : utils.get_localhost_ip(),
|
||||
"MASK_INPUT" : False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME" : "CONFIG_QPID_HOST",
|
||||
"CONF_NAME" : "CONFIG_AMQP_HOST",
|
||||
"USE_DEFAULT" : False,
|
||||
"NEED_CONFIRM" : False,
|
||||
"CONDITION" : False },
|
||||
{"CMD_OPTION" : "qpid-enable-ssl",
|
||||
"USAGE" : "Enable SSL for the QPID service",
|
||||
"PROMPT" : "Enable SSL for the QPID service?",
|
||||
{"CMD_OPTION" : "amqp-enable-ssl",
|
||||
"USAGE" : "Enable SSL for the AMQP service",
|
||||
"PROMPT" : "Enable SSL for the AMQP service?",
|
||||
"OPTION_LIST" : ["y", "n"],
|
||||
"VALIDATORS" : [validators.validate_options],
|
||||
"DEFAULT_VALUE" : "n",
|
||||
"MASK_INPUT" : False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME" : "CONFIG_QPID_ENABLE_SSL",
|
||||
"CONF_NAME" : "CONFIG_AMQP_ENABLE_SSL",
|
||||
"USE_DEFAULT" : False,
|
||||
"NEED_CONFIRM" : False,
|
||||
"CONDITION" : False },
|
||||
{"CMD_OPTION" : "qpid-enable-auth",
|
||||
"USAGE" : "Enable Authentication for the QPID service",
|
||||
"PROMPT" : "Enable Authentication for the QPID service?",
|
||||
{"CMD_OPTION" : "amqp-enable-auth",
|
||||
"USAGE" : "Enable Authentication for the AMQP service",
|
||||
"PROMPT" : "Enable Authentication for the AMQP service?",
|
||||
"OPTION_LIST" : ["y", "n"],
|
||||
"VALIDATORS" : [validators.validate_options],
|
||||
"DEFAULT_VALUE" : "n",
|
||||
"MASK_INPUT" : False,
|
||||
"LOOSE_VALIDATION": False,
|
||||
"CONF_NAME" : "CONFIG_QPID_ENABLE_AUTH",
|
||||
"CONF_NAME" : "CONFIG_AMQP_ENABLE_AUTH",
|
||||
"USE_DEFAULT" : False,
|
||||
"NEED_CONFIRM" : False,
|
||||
"CONDITION" : False },
|
||||
|
||||
|
||||
]
|
||||
|
||||
|
||||
groupDict = { "GROUP_NAME" : "QPIDLANCE",
|
||||
"DESCRIPTION" : "QPID Config parameters",
|
||||
"PRE_CONDITION" : check_enabled,
|
||||
groupDict = { "GROUP_NAME" : "AMQPLANCE",
|
||||
"DESCRIPTION" : "AMQP Config parameters",
|
||||
"PRE_CONDITION" : False,
|
||||
"PRE_CONDITION_MATCH" : True,
|
||||
"POST_CONDITION" : False,
|
||||
"POST_CONDITION_MATCH" : True}
|
||||
|
@ -80,55 +90,55 @@ def initConfig(controllerObject):
|
|||
controller.addGroup(groupDict, paramsList)
|
||||
|
||||
paramsList = [
|
||||
{"CMD_OPTION" : "qpid-nss-certdb-pw",
|
||||
"USAGE" : "The password for the NSS certificate database of the QPID service",
|
||||
{"CMD_OPTION" : "amqp-nss-certdb-pw",
|
||||
"USAGE" : "The password for the NSS certificate database of the AMQP service",
|
||||
"PROMPT" : "Enter the password for NSS certificate database",
|
||||
"OPTION_LIST" : [],
|
||||
"VALIDATORS" : [validators.validate_not_empty],
|
||||
"DEFAULT_VALUE" : uuid.uuid4().hex[:32],
|
||||
"MASK_INPUT" : False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME" : "CONFIG_QPID_NSS_CERTDB_PW",
|
||||
"CONF_NAME" : "CONFIG_AMQP_NSS_CERTDB_PW",
|
||||
"USE_DEFAULT" : False,
|
||||
"NEED_CONFIRM" : False,
|
||||
"CONDITION" : False },
|
||||
{"CMD_OPTION" : "qpid-ssl-port",
|
||||
"USAGE" : "The port in which the QPID service listens to SSL connections",
|
||||
"PROMPT" : "Enter the SSL port for the QPID service",
|
||||
{"CMD_OPTION" : "amqp-ssl-port",
|
||||
"USAGE" : "The port in which the AMQP service listens to SSL connections",
|
||||
"PROMPT" : "Enter the SSL port for the AMQP service",
|
||||
"OPTION_LIST" : [],
|
||||
"VALIDATORS" : [validators.validate_not_empty],
|
||||
"DEFAULT_VALUE" : "5671",
|
||||
"MASK_INPUT" : False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME" : "CONFIG_QPID_SSL_PORT",
|
||||
"CONF_NAME" : "CONFIG_AMQP_SSL_PORT",
|
||||
"USE_DEFAULT" : False,
|
||||
"NEED_CONFIRM" : False,
|
||||
"CONDITION" : False },
|
||||
{"CMD_OPTION" : "qpid-ssl-cert-file",
|
||||
"USAGE" : "The filename of the certificate that the QPID service is going to use",
|
||||
"PROMPT" : "Enter the filename of the SSL certificate for the QPID service",
|
||||
{"CMD_OPTION" : "amqp-ssl-cert-file",
|
||||
"USAGE" : "The filename of the certificate that the AMQP service is going to use",
|
||||
"PROMPT" : "Enter the filename of the SSL certificate for the AMQP service",
|
||||
"OPTION_LIST" : [],
|
||||
"VALIDATORS" : [validators.validate_not_empty],
|
||||
"DEFAULT_VALUE" : "/etc/pki/tls/certs/qpid_selfcert.pem",
|
||||
"DEFAULT_VALUE" : "/etc/pki/tls/certs/amqp_selfcert.pem",
|
||||
"MASK_INPUT" : False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME" : "CONFIG_QPID_SSL_CERT_FILE",
|
||||
"CONF_NAME" : "CONFIG_AMQP_SSL_CERT_FILE",
|
||||
"USE_DEFAULT" : False,
|
||||
"NEED_CONFIRM" : False,
|
||||
"CONDITION" : False },
|
||||
{"CMD_OPTION" : "qpid-ssl-key-file",
|
||||
"USAGE" : "The filename of the private key that the QPID service is going to use",
|
||||
{"CMD_OPTION" : "amqp-ssl-key-file",
|
||||
"USAGE" : "The filename of the private key that the AMQP service is going to use",
|
||||
"PROMPT" : "Enter the private key filename",
|
||||
"OPTION_LIST" : [],
|
||||
"VALIDATORS" : [validators.validate_not_empty],
|
||||
"DEFAULT_VALUE" : "/etc/pki/tls/private/qpid_selfkey.pem",
|
||||
"DEFAULT_VALUE" : "/etc/pki/tls/private/amqp_selfkey.pem",
|
||||
"MASK_INPUT" : False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME" : "CONFIG_QPID_SSL_KEY_FILE",
|
||||
"CONF_NAME" : "CONFIG_AMQP_SSL_KEY_FILE",
|
||||
"USE_DEFAULT" : False,
|
||||
"NEED_CONFIRM" : False,
|
||||
"CONDITION" : False },
|
||||
{"CMD_OPTION" : "qpid-ssl-self-signed",
|
||||
{"CMD_OPTION" : "amqp-ssl-self-signed",
|
||||
"USAGE" : "Auto Generates self signed SSL certificate and key",
|
||||
"PROMPT" : "Generate Self Signed SSL Certificate",
|
||||
"OPTION_LIST" : ["y","n"],
|
||||
|
@ -136,35 +146,35 @@ def initConfig(controllerObject):
|
|||
"DEFAULT_VALUE" : "y",
|
||||
"MASK_INPUT" : False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME" : "CONFIG_QPID_SSL_SELF_SIGNED",
|
||||
"CONF_NAME" : "CONFIG_AMQP_SSL_SELF_SIGNED",
|
||||
"USE_DEFAULT" : False,
|
||||
"NEED_CONFIRM" : False,
|
||||
"CONDITION" : False },
|
||||
]
|
||||
|
||||
groupDict = { "GROUP_NAME" : "QPIDSSL",
|
||||
"DESCRIPTION" : "QPID Config SSL parameters",
|
||||
"PRE_CONDITION" : check_ssl_enabled,
|
||||
"PRE_CONDITION_MATCH" : True,
|
||||
groupDict = { "GROUP_NAME" : "AMQPSSL",
|
||||
"DESCRIPTION" : "AMQP Config SSL parameters",
|
||||
"PRE_CONDITION" : "CONFIG_AMQP_ENABLE_SSL",
|
||||
"PRE_CONDITION_MATCH" : "y",
|
||||
"POST_CONDITION" : False,
|
||||
"POST_CONDITION_MATCH" : True}
|
||||
|
||||
controller.addGroup(groupDict, paramsList)
|
||||
|
||||
paramsList = [
|
||||
{"CMD_OPTION" : "qpid-auth-user",
|
||||
"USAGE" : "User for qpid authentication",
|
||||
"PROMPT" : "Enter the user for qpid authentication",
|
||||
{"CMD_OPTION" : "amqp-auth-user",
|
||||
"USAGE" : "User for amqp authentication",
|
||||
"PROMPT" : "Enter the user for amqp authentication",
|
||||
"OPTION_LIST" : [],
|
||||
"VALIDATORS" : [validators.validate_not_empty],
|
||||
"DEFAULT_VALUE" : "qpid_user",
|
||||
"DEFAULT_VALUE" : "amqp_user",
|
||||
"MASK_INPUT" : False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME" : "CONFIG_QPID_AUTH_USER",
|
||||
"CONF_NAME" : "CONFIG_AMQP_AUTH_USER",
|
||||
"USE_DEFAULT" : False,
|
||||
"NEED_CONFIRM" : False,
|
||||
"CONDITION" : False },
|
||||
{"CMD_OPTION" : "qpid-auth-password",
|
||||
{"CMD_OPTION" : "amqp-auth-password",
|
||||
"USAGE" : "Password for user authentication",
|
||||
"PROMPT" : "Enter the password for user authentication",
|
||||
"OPTION_LIST" : ["y", "n"],
|
||||
|
@ -172,80 +182,69 @@ def initConfig(controllerObject):
|
|||
"DEFAULT_VALUE" : uuid.uuid4().hex[:16],
|
||||
"MASK_INPUT" : False,
|
||||
"LOOSE_VALIDATION": True,
|
||||
"CONF_NAME" : "CONFIG_QPID_AUTH_PASSWORD",
|
||||
"CONF_NAME" : "CONFIG_AMQP_AUTH_PASSWORD",
|
||||
"USE_DEFAULT" : False,
|
||||
"NEED_CONFIRM" : False,
|
||||
"CONDITION" : False },
|
||||
|
||||
]
|
||||
|
||||
groupDict = { "GROUP_NAME" : "QPIDAUTH",
|
||||
"DESCRIPTION" : "QPID Config Athentication parameters",
|
||||
"PRE_CONDITION" : "CONFIG_QPID_ENABLE_AUTH",
|
||||
groupDict = { "GROUP_NAME" : "AMQPAUTH",
|
||||
"DESCRIPTION" : "AMQP Config Athentication parameters",
|
||||
"PRE_CONDITION" : "CONFIG_AMQP_ENABLE_AUTH",
|
||||
"PRE_CONDITION_MATCH" : "y",
|
||||
"POST_CONDITION" : False,
|
||||
"POST_CONDITION_MATCH" : True}
|
||||
|
||||
|
||||
controller.addGroup(groupDict, paramsList)
|
||||
def check_ssl_enabled(config):
|
||||
return check_enabled(config) and config.get('CONFIG_QPID_ENABLE_SSL') == 'y'
|
||||
|
||||
|
||||
def check_enabled(config):
|
||||
return (config.get('CONFIG_NOVA_INSTALL') == 'y' or
|
||||
config.get('CONFIG_QPID_HOST') != '')
|
||||
|
||||
def initSequences(controller):
|
||||
qpidsteps = [
|
||||
{'title': 'Adding QPID manifest entries', 'functions':[createmanifest]}
|
||||
amqpsteps = [
|
||||
{'title': 'Adding AMQP manifest entries', 'functions':[createmanifest]}
|
||||
]
|
||||
controller.addSequence("Installing QPID", [], [], qpidsteps)
|
||||
controller.addSequence("Installing AMQP", [], [], amqpsteps)
|
||||
|
||||
def createmanifest(config):
|
||||
manifestfile = "%s_qpid.pp"%config['CONFIG_QPID_HOST']
|
||||
manifestfile = "%s_amqp.pp"%config['CONFIG_AMQP_HOST']
|
||||
manifestdata = ""
|
||||
ssl_manifestdata = ""
|
||||
server = utils.ScriptRunner(config['CONFIG_QPID_HOST'])
|
||||
if config['CONFIG_QPID_ENABLE_SSL'] == 'y':
|
||||
config['CONFIG_QPID_ENABLE_SSL'] = 'true'
|
||||
config['CONFIG_QPID_PROTOCOL'] = 'ssl'
|
||||
config['CONFIG_QPID_CLIENTS_PORT'] = "5671"
|
||||
if config['CONFIG_QPID_SSL_SELF_SIGNED'] == 'y':
|
||||
server = utils.ScriptRunner(config['CONFIG_AMQP_HOST'])
|
||||
if config['CONFIG_AMQP_ENABLE_SSL'] == 'y':
|
||||
config['CONFIG_AMQP_ENABLE_SSL'] = 'true'
|
||||
config['CONFIG_AMQP_PROTOCOL'] = 'ssl'
|
||||
config['CONFIG_AMQP_CLIENTS_PORT'] = "5671"
|
||||
if config['CONFIG_AMQP_SSL_SELF_SIGNED'] == 'y':
|
||||
server.append( "openssl req -batch -new -x509 -nodes -keyout %s -out %s -days 1095"
|
||||
% (config['CONFIG_QPID_SSL_KEY_FILE'], config['CONFIG_QPID_SSL_CERT_FILE']) )
|
||||
% (config['CONFIG_AMQP_SSL_KEY_FILE'], config['CONFIG_AMQP_SSL_CERT_FILE']) )
|
||||
server.execute()
|
||||
ssl_manifestdata = getManifestTemplate('qpid_ssl.pp')
|
||||
else:
|
||||
#Set default values
|
||||
config['CONFIG_QPID_CLIENTS_PORT'] = "5672"
|
||||
config['CONFIG_QPID_SSL_PORT'] = "5671"
|
||||
config['CONFIG_QPID_SSL_CERT_FILE'] = ""
|
||||
config['CONFIG_QPID_SSL_KEY_FILE'] = ""
|
||||
config['CONFIG_QPID_NSS_CERTDB_PW'] = ""
|
||||
config['CONFIG_QPID_ENABLE_SSL'] = 'false'
|
||||
config['CONFIG_QPID_PROTOCOL'] = 'tcp'
|
||||
#Set default values
|
||||
config['CONFIG_AMQP_CLIENTS_PORT'] = "5672"
|
||||
config['CONFIG_AMQP_SSL_PORT'] = "5671"
|
||||
config['CONFIG_AMQP_SSL_CERT_FILE'] = ""
|
||||
config['CONFIG_AMQP_SSL_KEY_FILE'] = ""
|
||||
config['CONFIG_AMQP_NSS_CERTDB_PW'] = ""
|
||||
config['CONFIG_AMQP_ENABLE_SSL'] = 'false'
|
||||
config['CONFIG_AMQP_PROTOCOL'] = 'tcp'
|
||||
|
||||
manifestdata = getManifestTemplate('qpid.pp')
|
||||
manifestdata += ssl_manifestdata
|
||||
if config['CONFIG_AMQP_ENABLE_AUTH'] == 'n':
|
||||
config['CONFIG_AMQP_AUTH_PASSWORD'] = 'guest'
|
||||
config['CONFIG_AMQP_AUTH_USER'] = 'guest'
|
||||
|
||||
if config['CONFIG_QPID_ENABLE_AUTH'] == 'y':
|
||||
manifestdata += getManifestTemplate('qpid_auth.pp')
|
||||
else:
|
||||
config['CONFIG_QPID_AUTH_PASSWORD'] = 'guest'
|
||||
config['CONFIG_QPID_AUTH_USER'] = 'guest'
|
||||
manifestdata = getManifestTemplate('amqp.pp')
|
||||
|
||||
#All hosts should be able to talk to qpid
|
||||
|
||||
#All hosts should be able to talk to amqp
|
||||
hosts = ["'%s'" % i for i in filtered_hosts(config, exclude=False)]
|
||||
# if the rule already exists for one port puppet will fail
|
||||
# so i had to add always both qpid ports (plain and SSL) in order
|
||||
# so i had to add always both amqp ports (plain and SSL) in order
|
||||
# to avoid rule changes, this is due some problematic behaviour of
|
||||
# the puppet firewall module
|
||||
# this is a temporary solution, as soon as the firewall module is
|
||||
# updated we'll go back to previous state in which we open just
|
||||
# the needed ports
|
||||
config['FIREWALL_ALLOWED'] = ','.join(hosts)
|
||||
config['FIREWALL_SERVICE_NAME'] = "qpid"
|
||||
config['FIREWALL_SERVICE_NAME'] = "amqp"
|
||||
config['FIREWALL_PORTS'] = "'5671', '5672'"
|
||||
manifestdata += getManifestTemplate("firewall.pp")
|
||||
|
|
@ -10,6 +10,7 @@ import uuid
|
|||
|
||||
from packstack.installer import utils
|
||||
from packstack.installer import validators
|
||||
from packstack.modules.shortcuts import get_mq
|
||||
from packstack.modules.ospluginutils import (getManifestTemplate,
|
||||
appendManifestFile)
|
||||
|
||||
|
@ -93,7 +94,8 @@ def initSequences(controller):
|
|||
|
||||
def create_manifest(config):
|
||||
manifestfile = "%s_ceilometer.pp" % config['CONFIG_CEILOMETER_HOST']
|
||||
manifestdata = getManifestTemplate("ceilometer.pp")
|
||||
manifestdata = getManifestTemplate(get_mq(config, "ceilometer"))
|
||||
manifestdata += getManifestTemplate("ceilometer.pp")
|
||||
config['FIREWALL_ALLOWED'] = "'ALL'"
|
||||
config['FIREWALL_SERVICE_NAME'] = 'ceilometer-api'
|
||||
config['FIREWALL_PORTS'] = "'8777'"
|
||||
|
|
|
@ -15,6 +15,7 @@ from packstack.installer.utils import split_hosts
|
|||
from packstack.installer import basedefs
|
||||
from packstack.installer import utils
|
||||
|
||||
from packstack.modules.shortcuts import get_mq
|
||||
from packstack.modules.ospluginutils import getManifestTemplate, appendManifestFile
|
||||
from packstack.installer import exceptions
|
||||
from packstack.installer import output_messages
|
||||
|
@ -355,8 +356,9 @@ def create_keystone_manifest(config):
|
|||
|
||||
|
||||
def create_manifest(config):
|
||||
manifestdata = getManifestTemplate(get_mq(config, "cinder"))
|
||||
manifestfile = "%s_cinder.pp" % controller.CONF['CONFIG_CINDER_HOST']
|
||||
manifestdata = getManifestTemplate("cinder.pp")
|
||||
manifestdata += getManifestTemplate("cinder.pp")
|
||||
|
||||
if config['CONFIG_CINDER_BACKEND'] == "gluster":
|
||||
manifestdata += getManifestTemplate("cinder_gluster.pp")
|
||||
|
|
|
@ -10,6 +10,7 @@ from packstack.installer import basedefs
|
|||
from packstack.installer import utils
|
||||
from packstack.installer.utils import split_hosts
|
||||
|
||||
from packstack.modules.shortcuts import get_mq
|
||||
from packstack.modules.ospluginutils import getManifestTemplate, appendManifestFile
|
||||
|
||||
# Controller object will be initialized from main flow
|
||||
|
@ -97,7 +98,8 @@ def createmanifest(config):
|
|||
manifestfile = "%s_glance.pp" % controller.CONF['CONFIG_GLANCE_HOST']
|
||||
manifestdata = getManifestTemplate("glance.pp")
|
||||
if config['CONFIG_CEILOMETER_INSTALL'] == 'y':
|
||||
manifestdata += getManifestTemplate('glance_ceilometer.pp')
|
||||
manifestdata += getManifestTemplate(get_mq(config, "glance_ceilometer"))
|
||||
|
||||
hosts = set()
|
||||
if config['CONFIG_NOVA_INSTALL'] == 'y':
|
||||
hosts = split_hosts(config['CONFIG_NOVA_COMPUTE_HOSTS'])
|
||||
|
|
|
@ -9,6 +9,7 @@ import os
|
|||
from packstack.installer import utils
|
||||
from packstack.installer import validators
|
||||
|
||||
from packstack.modules.shortcuts import get_mq
|
||||
from packstack.modules.ospluginutils import (getManifestTemplate,
|
||||
manifestfiles,
|
||||
appendManifestFile)
|
||||
|
@ -190,7 +191,8 @@ def create_manifest(config):
|
|||
config['CONFIG_HEAT_METADATA_HOST'] = config['CONFIG_HEAT_HOST']
|
||||
|
||||
manifestfile = "%s_heat.pp" % controller.CONF['CONFIG_HEAT_HOST']
|
||||
manifestdata = getManifestTemplate("heat.pp")
|
||||
manifestdata = getManifestTemplate(get_mq(config, "heat"))
|
||||
manifestdata += getManifestTemplate("heat.pp")
|
||||
appendManifestFile(manifestfile, manifestdata)
|
||||
|
||||
|
||||
|
|
|
@ -11,6 +11,7 @@ from packstack.installer import utils
|
|||
from packstack.installer import validators
|
||||
from packstack.installer.utils import split_hosts
|
||||
|
||||
from packstack.modules.shortcuts import get_mq
|
||||
from packstack.modules.ospluginutils import getManifestTemplate, appendManifestFile
|
||||
|
||||
# Controller object will be initialized from main flow
|
||||
|
@ -482,11 +483,8 @@ def initConfig(controllerObject):
|
|||
return use_openvswitch_plugin_tunnel(config) or use_ml2_with_ovs(config)
|
||||
|
||||
def use_openvswitch_vxlan(config):
|
||||
return ((use_openvswitch_plugin_tunnel(config) and
|
||||
config['CONFIG_NEUTRON_OVS_TENANT_NETWORK_TYPE'] == 'vxlan')
|
||||
or
|
||||
(use_ml2_with_ovs(config) and
|
||||
'vxlan' in config['CONFIG_NEUTRON_ML2_TYPE_DRIVERS']))
|
||||
return (use_openvswitch_plugin_tunnel(config) and
|
||||
config['CONFIG_NEUTRON_OVS_TENANT_NETWORK_TYPE'] == 'vxlan')
|
||||
|
||||
|
||||
conf_groups = [
|
||||
|
@ -643,6 +641,7 @@ def create_manifests(config):
|
|||
for host in q_hosts:
|
||||
manifest_file = "%s_neutron.pp" % (host,)
|
||||
manifest_data = getManifestTemplate("neutron.pp")
|
||||
manifest_data += getManifestTemplate(get_mq(config, "neutron"))
|
||||
appendManifestFile(manifest_file, manifest_data, 'neutron')
|
||||
|
||||
if host in api_hosts:
|
||||
|
|
|
@ -10,6 +10,7 @@ import platform
|
|||
from packstack.installer import processors, utils, validators
|
||||
from packstack.installer.exceptions import ScriptRuntimeError
|
||||
|
||||
from packstack.modules.shortcuts import get_mq
|
||||
from packstack.modules.ospluginutils import NovaConfig, getManifestTemplate, appendManifestFile, manifestfiles
|
||||
|
||||
# Controller object will be initialized from main flow
|
||||
|
@ -465,7 +466,7 @@ def createcomputemanifest(config):
|
|||
controller.MESSAGES.append(str(ex))
|
||||
|
||||
if config['CONFIG_CEILOMETER_INSTALL'] == 'y':
|
||||
manifestdata += getManifestTemplate("nova_ceilometer.pp")
|
||||
manifestdata += getManifestTemplate(get_mq(config, "nova_ceilometer"))
|
||||
|
||||
# According to the docs the only element that connects directly to nova compute
|
||||
# is nova scheduler
|
||||
|
@ -567,7 +568,8 @@ def createcommonmanifest(config):
|
|||
metadata = config['CONFIG_NOVA_API_HOST']
|
||||
config['CONFIG_NOVA_METADATA_HOST'] = metadata
|
||||
|
||||
data = getManifestTemplate("nova_common.pp")
|
||||
data = getManifestTemplate(get_mq(config, "nova_common"))
|
||||
data += getManifestTemplate("nova_common.pp")
|
||||
appendManifestFile(os.path.split(manifestfile)[1], data)
|
||||
|
||||
|
||||
|
|
|
@ -85,7 +85,7 @@ def copyPuppetModules(config):
|
|||
'concat', 'firewall', 'glance', 'heat', 'horizon',
|
||||
'inifile', 'keystone', 'memcached', 'mongodb',
|
||||
'mysql', 'neutron', 'nova', 'nssdb', 'openstack',
|
||||
'packstack', 'qpid', 'rsync', 'ssh', 'stdlib',
|
||||
'packstack', 'qpid', 'rabbitmq', 'rsync', 'ssh', 'stdlib',
|
||||
'swift', 'sysctl', 'tempest', 'vcsrepo', 'vlan',
|
||||
'vswitch', 'xinetd'))
|
||||
|
||||
|
|
|
@ -0,0 +1,115 @@
|
|||
$amqp = '%(CONFIG_AMQP_SERVER)s'
|
||||
case $amqp {
|
||||
'qpid': {
|
||||
enable_qpid {"qpid":
|
||||
enable_ssl => %(CONFIG_AMQP_ENABLE_SSL)s,
|
||||
enable_auth => '%(CONFIG_AMQP_ENABLE_AUTH)s',
|
||||
}
|
||||
}
|
||||
'rabbitmq': {
|
||||
enable_rabbitmq {"rabbitmq":}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
define enable_rabbitmq {
|
||||
package { "erlang":
|
||||
ensure => "installed"
|
||||
}
|
||||
|
||||
class {"rabbitmq":
|
||||
port => '%(CONFIG_AMQP_CLIENTS_PORT)s',
|
||||
ssl_management_port => '%(CONFIG_AMQP_SSL_PORT)s',
|
||||
ssl => %(CONFIG_AMQP_ENABLE_SSL)s,
|
||||
ssl_cert => '%(CONFIG_AMQP_SSL_CERT_FILE)s',
|
||||
ssl_key => '%(CONFIG_AMQP_SSL_KEY_FILE)s',
|
||||
default_user => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
default_pass => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
package_provider => 'yum',
|
||||
admin_enable => false,
|
||||
}
|
||||
|
||||
Package['erlang']->Class['rabbitmq']
|
||||
}
|
||||
|
||||
define enable_qpid($enable_ssl = 'n', $enable_auth = 'n') {
|
||||
|
||||
class {"qpid::server":
|
||||
config_file => $::operatingsystem? {
|
||||
'Fedora' => '/etc/qpid/qpidd.conf',
|
||||
default => '/etc/qpidd.conf',
|
||||
},
|
||||
auth => $enable_auth ? {
|
||||
'y' => 'yes',
|
||||
default => 'no',
|
||||
},
|
||||
clustered => false,
|
||||
ssl_port => '%(CONFIG_AMQP_SSL_PORT)s',
|
||||
ssl => %(CONFIG_AMQP_ENABLE_SSL)s,
|
||||
ssl_cert => '%(CONFIG_AMQP_SSL_CERT_FILE)s',
|
||||
ssl_key => '%(CONFIG_AMQP_SSL_KEY_FILE)s',
|
||||
ssl_database_password => '%(CONFIG_AMQP_NSS_CERTDB_PW)s',
|
||||
}
|
||||
|
||||
if $enable_ssl {
|
||||
enable_qpid_ssl {"qpid":}
|
||||
}
|
||||
if $enable_auth == 'y' {
|
||||
add_qpid_user {"qpid_user":}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
define enable_qpid_ssl {
|
||||
# User and group for the nss database
|
||||
group { 'qpidd':
|
||||
ensure => 'present',
|
||||
}
|
||||
|
||||
exec { 'stop_qpid' :
|
||||
command => '/sbin/service qpidd stop',
|
||||
onlyif => '/sbin/service qpidd status',
|
||||
}
|
||||
|
||||
user { 'qpidd':
|
||||
ensure => 'present',
|
||||
managehome => true,
|
||||
home => '/var/run/qpidd',
|
||||
gid => 'qpidd',
|
||||
before => Class['qpid::server']
|
||||
}
|
||||
|
||||
Exec['stop_qpid']->User['qpidd']
|
||||
|
||||
file { 'pid_dir':
|
||||
path => '/var/run/qpidd',
|
||||
ensure => directory,
|
||||
owner => 'qpidd',
|
||||
group => 'qpidd',
|
||||
require => User['qpidd'],
|
||||
}
|
||||
|
||||
file_line { 'pid_dir_conf':
|
||||
path => $qpid::server::config_file,
|
||||
line => 'pid-dir=/var/run/qpidd',
|
||||
require => File['pid_dir'],
|
||||
}
|
||||
}
|
||||
|
||||
define add_qpid_user {
|
||||
qpid_user { '%(CONFIG_AMQP_AUTH_USER)s':
|
||||
password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
file => '/var/lib/qpidd/qpidd.sasldb',
|
||||
realm => 'AMQP',
|
||||
provider => 'saslpasswd2',
|
||||
require => Class['qpid::server'],
|
||||
}
|
||||
|
||||
file { 'sasldb_file':
|
||||
path => '/var/lib/qpidd/qpidd.sasldb',
|
||||
ensure => file,
|
||||
owner => 'qpidd',
|
||||
group => 'qpidd',
|
||||
}
|
||||
}
|
|
@ -14,18 +14,6 @@ firewall { '001 mongodb incoming localhost':
|
|||
action => 'accept',
|
||||
}
|
||||
|
||||
class { 'ceilometer':
|
||||
metering_secret => '%(CONFIG_CEILOMETER_SECRET)s',
|
||||
qpid_hostname => '%(CONFIG_QPID_HOST)s',
|
||||
qpid_username => '%(CONFIG_QPID_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_QPID_AUTH_PASSWORD)s',
|
||||
rpc_backend => 'ceilometer.openstack.common.rpc.impl_qpid',
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
qpid_port => '%(CONFIG_QPID_CLIENTS_PORT)s',
|
||||
qpid_protocol => '%(CONFIG_QPID_PROTOCOL)s'
|
||||
}
|
||||
|
||||
class { 'ceilometer::db':
|
||||
database_connection => 'mongodb://localhost:27017/ceilometer',
|
||||
require => Class['mongodb::server'],
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
class { 'ceilometer':
|
||||
metering_secret => '%(CONFIG_CEILOMETER_SECRET)s',
|
||||
qpid_hostname => '%(CONFIG_AMQP_HOST)s',
|
||||
qpid_username => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
rpc_backend => 'ceilometer.openstack.common.rpc.impl_qpid',
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
qpid_port => '%(CONFIG_AMQP_CLIENTS_PORT)s',
|
||||
qpid_protocol => '%(CONFIG_AMQP_PROTOCOL)s'
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
class { 'ceilometer':
|
||||
metering_secret => '%(CONFIG_CEILOMETER_SECRET)s',
|
||||
rabbit_host => '%(CONFIG_AMQP_HOST)s',
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
rabbit_port => '%(CONFIG_AMQP_CLIENTS_PORT)s',
|
||||
rabbit_userid => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
rabbit_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
}
|
|
@ -1,16 +1,3 @@
|
|||
|
||||
class {'cinder':
|
||||
rpc_backend => 'cinder.openstack.common.rpc.impl_qpid',
|
||||
qpid_hostname => "%(CONFIG_QPID_HOST)s",
|
||||
qpid_port => '%(CONFIG_QPID_CLIENTS_PORT)s',
|
||||
qpid_protocol => '%(CONFIG_QPID_PROTOCOL)s',
|
||||
qpid_username => '%(CONFIG_QPID_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_QPID_AUTH_PASSWORD)s',
|
||||
sql_connection => "mysql://cinder:%(CONFIG_CINDER_DB_PW)s@%(CONFIG_MYSQL_HOST)s/cinder",
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
}
|
||||
|
||||
cinder_config {
|
||||
"DEFAULT/glance_host": value => "%(CONFIG_GLANCE_HOST)s";
|
||||
}
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
|
||||
class {'cinder':
|
||||
rpc_backend => 'cinder.openstack.common.rpc.impl_qpid',
|
||||
qpid_hostname => "%(CONFIG_AMQP_HOST)s",
|
||||
qpid_port => '%(CONFIG_AMQP_CLIENTS_PORT)s',
|
||||
qpid_protocol => '%(CONFIG_AMQP_PROTOCOL)s',
|
||||
qpid_username => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
sql_connection => "mysql://cinder:%(CONFIG_CINDER_DB_PW)s@%(CONFIG_MYSQL_HOST)s/cinder",
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
}
|
|
@ -0,0 +1,10 @@
|
|||
|
||||
class {'cinder':
|
||||
rabbit_host => "%(CONFIG_AMQP_HOST)s",
|
||||
rabbit_port => '%(CONFIG_AMQP_CLIENTS_PORT)s',
|
||||
rabbit_userid => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
rabbit_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
sql_connection => "mysql://cinder:%(CONFIG_CINDER_DB_PW)s@%(CONFIG_MYSQL_HOST)s/cinder",
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
}
|
|
@ -1,8 +0,0 @@
|
|||
|
||||
class { 'glance::notify::qpid':
|
||||
qpid_password => '%(CONFIG_QPID_AUTH_PASSWORD)s',
|
||||
qpid_username => '%(CONFIG_QPID_AUTH_USER)s',
|
||||
qpid_hostname => '%(CONFIG_QPID_HOST)s',
|
||||
qpid_port => '%(CONFIG_QPID_CLIENTS_PORT)s',
|
||||
qpid_protocol => '%(CONFIG_QPID_PROTOCOL)s'
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
|
||||
class { 'glance::notify::qpid':
|
||||
qpid_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
qpid_username => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
qpid_hostname => '%(CONFIG_AMQP_HOST)s',
|
||||
qpid_port => '%(CONFIG_AMQP_CLIENTS_PORT)s',
|
||||
qpid_protocol => '%(CONFIG_AMQP_PROTOCOL)s'
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
|
||||
class { 'glance::notify::rabbitmq':
|
||||
rabbit_host => '%(CONFIG_AMQP_HOST)s',
|
||||
rabbit_port => '%(CONFIG_AMQP_CLIENTS_PORT)s',
|
||||
rabbit_use_ssl => '%(CONFIG_AMQP_ENABLE_SSL)s',
|
||||
rabbit_userid => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
rabbit_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
}
|
||||
|
|
@ -1,18 +1,4 @@
|
|||
|
||||
class { 'heat':
|
||||
keystone_host => '%(CONFIG_KEYSTONE_HOST)s',
|
||||
keystone_password => '%(CONFIG_HEAT_KS_PW)s',
|
||||
auth_uri => 'http://%(CONFIG_KEYSTONE_HOST)s:35357/v2.0',
|
||||
rpc_backend => 'heat.openstack.common.rpc.impl_qpid',
|
||||
qpid_hostname => '%(CONFIG_QPID_HOST)s',
|
||||
qpid_username => '%(CONFIG_QPID_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_QPID_AUTH_PASSWORD)s',
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
qpid_port => '%(CONFIG_QPID_CLIENTS_PORT)s',
|
||||
qpid_protocol => '%(CONFIG_QPID_PROTOCOL)s',
|
||||
}
|
||||
|
||||
class {"heat::db":
|
||||
sql_connection => "mysql://heat:%(CONFIG_HEAT_DB_PW)s@%(CONFIG_MYSQL_HOST)s/heat"
|
||||
}
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
|
||||
class { 'heat':
|
||||
keystone_host => '%(CONFIG_KEYSTONE_HOST)s',
|
||||
keystone_password => '%(CONFIG_HEAT_KS_PW)s',
|
||||
auth_uri => 'http://%(CONFIG_KEYSTONE_HOST)s:35357/v2.0',
|
||||
rpc_backend => 'heat.openstack.common.rpc.impl_qpid',
|
||||
qpid_hostname => '%(CONFIG_AMQP_HOST)s',
|
||||
qpid_username => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
|
||||
class { 'heat':
|
||||
keystone_host => '%(CONFIG_KEYSTONE_HOST)s',
|
||||
keystone_password => '%(CONFIG_HEAT_KS_PW)s',
|
||||
auth_uri => 'http://%(CONFIG_KEYSTONE_HOST)s:35357/v2.0',
|
||||
rpc_backend => 'heat.openstack.common.rpc.impl_rabbit',
|
||||
rabbit_host => '%(CONFIG_AMQP_HOST)s',
|
||||
rabbit_user => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
rabbit_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
}
|
|
@ -6,16 +6,4 @@ $neutron_sql_connection = "mysql://${neutron_db_user}:${neutron_db_password}@${n
|
|||
|
||||
$neutron_user_password = '%(CONFIG_NEUTRON_KS_PW)s'
|
||||
|
||||
class { 'neutron':
|
||||
rpc_backend => 'neutron.openstack.common.rpc.impl_qpid',
|
||||
qpid_hostname => '%(CONFIG_QPID_HOST)s',
|
||||
qpid_username => '%(CONFIG_QPID_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_QPID_AUTH_PASSWORD)s',
|
||||
qpid_port => '%(CONFIG_QPID_CLIENTS_PORT)s',
|
||||
qpid_protocol => '%(CONFIG_QPID_PROTOCOL)s',
|
||||
core_plugin => '%(CONFIG_NEUTRON_CORE_PLUGIN)s',
|
||||
allow_overlapping_ips => true,
|
||||
service_plugins => %(SERVICE_PLUGINS)s,
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
|
||||
class { 'neutron':
|
||||
rpc_backend => 'neutron.openstack.common.rpc.impl_qpid',
|
||||
qpid_hostname => '%(CONFIG_AMQP_HOST)s',
|
||||
qpid_username => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
qpid_port => '%(CONFIG_AMQP_CLIENTS_PORT)s',
|
||||
qpid_protocol => '%(CONFIG_AMQP_PROTOCOL)s',
|
||||
core_plugin => '%(CONFIG_NEUTRON_CORE_PLUGIN)s',
|
||||
allow_overlapping_ips => true,
|
||||
service_plugins => %(SERVICE_PLUGINS)s,
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
|
||||
class { 'neutron':
|
||||
rabbit_host => '%(CONFIG_AMQP_HOST)s',
|
||||
rabbit_port => '%(CONFIG_AMQP_CLIENTS_PORT)s',
|
||||
rabbit_user => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
rabbit_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
core_plugin => '%(CONFIG_NEUTRON_CORE_PLUGIN)s',
|
||||
allow_overlapping_ips => true,
|
||||
service_plugins => %(SERVICE_PLUGINS)s,
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
}
|
|
@ -1,14 +1,4 @@
|
|||
|
||||
class { 'ceilometer':
|
||||
metering_secret => '%(CONFIG_CEILOMETER_SECRET)s',
|
||||
qpid_hostname => '%(CONFIG_QPID_HOST)s',
|
||||
qpid_username => '%(CONFIG_QPID_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_QPID_AUTH_PASSWORD)s',
|
||||
rpc_backend => 'ceilometer.openstack.common.rpc.impl_qpid',
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s
|
||||
}
|
||||
|
||||
class { 'ceilometer::agent::auth':
|
||||
auth_url => 'http://%(CONFIG_KEYSTONE_HOST)s:35357/v2.0',
|
||||
auth_password => '%(CONFIG_CEILOMETER_KS_PW)s',
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
|
||||
class { 'ceilometer':
|
||||
metering_secret => '%(CONFIG_CEILOMETER_SECRET)s',
|
||||
qpid_hostname => '%(CONFIG_AMQP_HOST)s',
|
||||
qpid_username => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
rpc_backend => 'ceilometer.openstack.common.rpc.impl_qpid',
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s
|
||||
}
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
|
||||
class { 'ceilometer':
|
||||
metering_secret => '%(CONFIG_CEILOMETER_SECRET)s',
|
||||
rabbit_host => '%(CONFIG_AMQP_HOST)s',
|
||||
rabbit_userid => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
rabbit_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s
|
||||
}
|
||||
|
|
@ -8,14 +8,4 @@ nova_config{
|
|||
"DEFAULT/metadata_host": value => "%(CONFIG_NOVA_METADATA_HOST)s";
|
||||
}
|
||||
|
||||
class { "nova":
|
||||
glance_api_servers => "%(CONFIG_GLANCE_HOST)s:9292",
|
||||
qpid_hostname => "%(CONFIG_QPID_HOST)s",
|
||||
qpid_username => '%(CONFIG_QPID_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_QPID_AUTH_PASSWORD)s',
|
||||
rpc_backend => 'nova.openstack.common.rpc.impl_qpid',
|
||||
qpid_port => '%(CONFIG_QPID_CLIENTS_PORT)s',
|
||||
qpid_protocol => '%(CONFIG_QPID_PROTOCOL)s',
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
}
|
||||
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
|
||||
class { "nova":
|
||||
glance_api_servers => "%(CONFIG_GLANCE_HOST)s:9292",
|
||||
qpid_hostname => "%(CONFIG_AMQP_HOST)s",
|
||||
qpid_username => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
qpid_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
rpc_backend => 'nova.openstack.common.rpc.impl_qpid',
|
||||
qpid_port => '%(CONFIG_AMQP_CLIENTS_PORT)s',
|
||||
qpid_protocol => '%(CONFIG_AMQP_PROTOCOL)s',
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
}
|
|
@ -0,0 +1,10 @@
|
|||
|
||||
class { "nova":
|
||||
glance_api_servers => "%(CONFIG_GLANCE_HOST)s:9292",
|
||||
rabbit_host => "%(CONFIG_AMQP_HOST)s",
|
||||
rabbit_port => '%(CONFIG_AMQP_CLIENTS_PORT)s',
|
||||
rabbit_userid => '%(CONFIG_AMQP_AUTH_USER)s',
|
||||
rabbit_password => '%(CONFIG_AMQP_AUTH_PASSWORD)s',
|
||||
verbose => true,
|
||||
debug => %(CONFIG_DEBUG_MODE)s,
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
$enable_auth = '%(CONFIG_QPID_ENABLE_AUTH)s'
|
||||
|
||||
class {"qpid::server":
|
||||
config_file => $::operatingsystem? {
|
||||
'Fedora' => '/etc/qpid/qpidd.conf',
|
||||
default => '/etc/qpidd.conf',
|
||||
},
|
||||
auth => $enable_auth ? {
|
||||
'y' => 'yes',
|
||||
default => 'no',
|
||||
},
|
||||
clustered => false,
|
||||
ssl_port => '%(CONFIG_QPID_SSL_PORT)s',
|
||||
ssl => %(CONFIG_QPID_ENABLE_SSL)s,
|
||||
ssl_cert => '%(CONFIG_QPID_SSL_CERT_FILE)s',
|
||||
ssl_key => '%(CONFIG_QPID_SSL_KEY_FILE)s',
|
||||
ssl_database_password => '%(CONFIG_QPID_NSS_CERTDB_PW)s',
|
||||
}
|
|
@ -1,15 +0,0 @@
|
|||
qpid_user { '%(CONFIG_QPID_AUTH_USER)s':
|
||||
password => '%(CONFIG_QPID_AUTH_PASSWORD)s',
|
||||
file => '/var/lib/qpidd/qpidd.sasldb',
|
||||
realm => 'QPID',
|
||||
provider => 'saslpasswd2',
|
||||
require => Class['qpid::server'],
|
||||
}
|
||||
|
||||
file { 'sasldb_file':
|
||||
path => '/var/lib/qpidd/qpidd.sasldb',
|
||||
ensure => file,
|
||||
owner => 'qpidd',
|
||||
group => 'qpidd',
|
||||
}
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
# User and group for the nss database
|
||||
|
||||
group { 'qpidd':
|
||||
ensure => 'present',
|
||||
}
|
||||
|
||||
exec { 'stop_qpid' :
|
||||
command => '/sbin/service qpidd stop',
|
||||
onlyif => '/sbin/service qpidd status',
|
||||
}
|
||||
|
||||
user { 'qpidd':
|
||||
ensure => 'present',
|
||||
managehome => true,
|
||||
home => '/var/run/qpidd',
|
||||
gid => 'qpidd',
|
||||
before => Class['qpid::server']
|
||||
}
|
||||
|
||||
Exec['stop_qpid']->User['qpidd']
|
||||
|
||||
file { 'pid_dir':
|
||||
path => '/var/run/qpidd',
|
||||
ensure => directory,
|
||||
owner => 'qpidd',
|
||||
group => 'qpidd',
|
||||
require => User['qpidd'],
|
||||
}
|
||||
|
||||
file_line { 'pid_dir_conf':
|
||||
path => $qpid::server::config_file,
|
||||
line => 'pid-dir=/var/run/qpidd',
|
||||
require => File['pid_dir'],
|
||||
}
|
||||
|
Loading…
Reference in New Issue