Skip to content

Commit

Permalink
Enabling ceilometer HA support
Browse files Browse the repository at this point in the history
ceilometer was not working for multi openstack node cases. The reason was,
ceilometer-collector sending GET requests to wrong port. Correcting that to make
sure that all the requests go to haproxy. Also enabling HA support in ceilometer.

Partial-Bug: 1452837

Change-Id: I07bc83eaa2a73ebae0e60df2a20bb29973649a27
  • Loading branch information
bansalnikhil committed May 3, 2016
1 parent 68d4232 commit 8771491
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 15 deletions.
16 changes: 6 additions & 10 deletions fabfile/tasks/install.py
Original file line number Diff line number Diff line change
Expand Up @@ -298,17 +298,15 @@ def install_ceilometer_compute_node(*args):
@EXECUTE_TASK
@roles('openstack')
def install_contrail_ceilometer_plugin():
"""Installs contrail ceilometer plugin pkgs in the first node of openstack role."""
execute("install_contrail_ceilometer_plugin_node", env.host_string)
"""Installs contrail ceilometer plugin pkgs in all nodes of openstack role."""
if env.roledefs['openstack']:
execute("install_contrail_ceilometer_plugin_node", env.host_string)

@task
def install_contrail_ceilometer_plugin_node(*args):
"""Installs contrail ceilometer plugin pkgs in one or list of nodes.
USAGE:fab install_contrail_ceilometer_plugin_node:user@1.1.1.1,user@2.2.2.2"""
for host_string in args:
if env.roledefs['openstack'] and \
host_string != env.roledefs['openstack'][0]:
continue
with settings(host_string=host_string):
if not is_ceilometer_contrail_plugin_install_supported():
continue
Expand Down Expand Up @@ -345,16 +343,14 @@ def install_contrail_ceilometer_plugin_node(*args):
@EXECUTE_TASK
@roles('openstack')
def install_ceilometer():
"""Installs ceilometer pkgs in all nodes defined in first node of openstack role."""
execute("install_ceilometer_node", env.host_string)
"""Installs ceilometer pkgs in all nodes defined in all nodes of openstack role."""
if env.roledefs['openstack']:
execute("install_ceilometer_node", env.host_string)

@task
def install_ceilometer_node(*args):
"""Installs openstack pkgs in one or list of nodes. USAGE:fab install_ceilometer_node:user@1.1.1.1,user@2.2.2.2"""
for host_string in args:
if env.roledefs['openstack'] and \
host_string != env.roledefs['openstack'][0]:
continue
with settings(host_string=host_string):
if not is_ceilometer_install_supported():
continue
Expand Down
15 changes: 10 additions & 5 deletions fabfile/tasks/provision.py
Original file line number Diff line number Diff line change
Expand Up @@ -649,6 +649,12 @@ def fixup_ceilometer_conf_common():
sudo("openstack-config --set %s database connection %s" % (conf_file, value))
amqp_server_ip = get_openstack_amqp_server()
sudo("openstack-config --set %s DEFAULT rabbit_host %s" % (conf_file, amqp_server_ip))
# If HA is enabled, then use the frontend HAProxy Rabbit port
rabbit_port = "5672"
if get_openstack_internal_vip():
rabbit_port = "5673"
sudo("openstack-config --set %s DEFAULT rabbit_port %s" % (conf_file,
rabbit_port))
value = "/var/log/ceilometer"
sudo("openstack-config --set %s DEFAULT log_dir %s" % (conf_file, value))
value = "a74ca26452848001921c"
Expand Down Expand Up @@ -878,7 +884,7 @@ def setup_ceilometer_compute_node(*args):
@roles('openstack')
def setup_contrail_ceilometer_plugin():
"""Provisions contrail ceilometer plugin in the first node defined in openstack role."""
if env.roledefs['openstack'] and env.host_string == env.roledefs['openstack'][0]:
if env.roledefs['openstack']:
execute("setup_contrail_ceilometer_plugin_node", env.host_string)

@task
Expand All @@ -904,7 +910,7 @@ def setup_contrail_ceilometer_plugin_node(*args):
@roles('openstack')
def setup_ceilometer():
"""Provisions ceilometer services in all nodes defined in openstack role."""
if env.roledefs['openstack'] and env.host_string == env.roledefs['openstack'][0]:
if env.roledefs['openstack']:
execute("setup_ceilometer_node", env.host_string)
execute("setup_network_service") #Provisions in cfgm node

Expand Down Expand Up @@ -1047,9 +1053,8 @@ def setup_openstack():
if is_package_installed('contrail-openstack-dashboard'):
execute('setup_contrail_horizon_node', env.host_string)
if is_ceilometer_provision_supported():
if env.host_string == env.roledefs['openstack'][0]:
execute("setup_ceilometer_node", env.host_string)
execute("setup_network_service") #Provisions in cfgm node
execute("setup_ceilometer_node", env.host_string)
execute("setup_network_service") #Provisions in cfgm node
execute("setup_image_service_node", env.host_string)
execute("setup_identity_service_node", env.host_string)

Expand Down

0 comments on commit 8771491

Please sign in to comment.