Comment 1 for bug 1567084

Revision history for this message
Ignatious Johnson Christopher (ijohnson-x) wrote :

Ignatious,

    This didn’t worked for me, I have tried this earlier and ran into multiple problems (while doing this, contrail-cluster didn't exists):
Along with the change you mentioned, need to change amqp_roles = ['cfgm’] to [] in setup_rabbitmq_cluster task.
Set manage_amqp=yes in env.openstack in testbed.py.
With the above change, it fails with error referring to cfgm in create_default_secgrp_rules
File "/home/sudheendra/contrail-packages/networking/contrail-tools/contrail-fabric-utils/fabfile/tasks/services.py", line 3, in <module>
from misc import zoolink
File "/home/sudheendra/contrail-packages/networking/contrail-tools/contrail-fabric-utils/fabfile/tasks/misc.py", line 147, in <module>
@hosts(*env.roledefs['cfgm'][:1])
KeyError: 'cfgm'
To work around the problem I enabled the other roles under roledefs but keeping all to only openstack in testbed.py
env.roledefs = {
    'all': [host3], <<<<<<<<
    'cfgm': [host1, host2],
    'webui': [host1],
    'openstack': [host3],
    'control': [host1, host2],
    'collector': [host1],
    'database': [host2],
    'compute': [host4, host5, host6],
    'build': [host_build]
}
With the above change it fails to copy the rabbitmq-env.conf to the target node as /etc/rabbitmq folder doesn’t exists.
After adding the code to create this folder on the target it fails in verify_cluster_status with error:
RabbitMQ cluster doesnt list root@10.204.216.111 in running_nodes
By skipping the setup_rabbitmq_cluster for openstack node, I continued with install_orchestrator and setup_orchestrator.
I think install_orchestrator also expects the cfgm and collector roles to be present as part of roledefs otherwise it fails.
setup_orchestor also expects cfgm node to be present, this happens when ceilometer is enabled in testbed.py
The code path is under setup_openstack function:
if env.host_string == env.roledefs['openstack'][0]:
    execute("setup_ceilometer_node", env.host_string)
    execute("setup_network_service") #Provisions in cfgm node <<<<<<<<
By disabling the ceilometer, I could able to complete installation of contrail-openstack on the node.
The other problems that am observing are:
After installing contrail-opensatck on different node, I tried to bringup contrail-cluster using contrail-networking package.
While doing this, I used upgrade_kernel_without_openstack fab task and it failed, but I don’t remember what was the problem.
I will check this again and get back to you.
Tried contrail-cloud package to install contrail-openstack and ran into package dependency issue for nova-novncproxy
Nagendra is checking this.
Thanks,
Sudhee.

From: Ignatious Johnson <email address hidden>
Date: Thursday, April 7, 2016 at 2:47 AM
To: Nagendra Prasath Maynattamai Prem Chandran <email address hidden>
Cc: Abhay Joshi <email address hidden>, Sudheendra Rao <email address hidden>, Nitish Krishna Kaveri Poompatnam <email address hidden>
Subject: Re: Bug in Fab Install of node with ONLY OPENSTACK

Ok we need to set the env.roledefs['rabbit’]
 to empty list as we do in the line
https://github.com/Juniper/contrail-fabric-utils/blob/master/fabfile/config.py#L36 for openstack.

Nitish,
Can you try the fix

env.roledefs['rabbit']
= []

Thanks,
Ignatious