First configure rabbitMQ by adding vhost and user with administrator rights:
sudo rabbitmqctl add_user murano murano sudo rabbitmqctl set_user_tags murano administrator sudo rabbitmqctl add_vhost murano sudo rabbitmqctl set_permissions -p murano murano ".*" ".*" ".*"Edit configuration file:
user@work:~/murano-api$ nano ./etc/murano-api.confConfigure it according to your environment:
[DEFAULT] section sets up logging.
In [reports] section you can set names for new rabbitMQ queues.
[rabbitmq] section sets up host configuration where rabbitMQ with just created user and vhost is running.
[DEFAULT] # Show more verbose log output (sets INFO log level output) verbose = True # Show debugging output in logs (sets DEBUG log level output) debug = True # Address to bind the server to bind_host = 0.0.0.0 # Port the bind the server to bind_port = 8082 # Log to this file. Make sure the user running skeleton-api has # permissions to write to this file! log_file = /tmp/murano-api.log #A valid SQLAlchemy connection string for the metadata database sql_connection = sqlite:///murano.sqlite [reports] results_exchange = task-results results_queue = task-results reports_exchange = task-reports reports_queue = task-reports [rabbitmq] host = localhost port = 5672 virtual_host = murano login = murano password = muranoEdit one more configuration file:
user@work:~/murano-api$ nano ./etc/murano-api-paste.iniConfigure keystone auth_token in [filter:authtoken] section. For more information see Auth-Token Middleware with Username and Password
[pipeline:murano-api] pipeline = authtoken context apiv1app [app:apiv1app] paste.app_factory = muranoapi.api.v1.router:API.factory [filter:context] paste.filter_factory = muranoapi.api.middleware.context:ContextMiddleware.factory [filter:authtoken] paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory auth_host = localhost auth_port = 35357 auth_protocol = http admin_tenant_name = admin admin_user = admin admin_password = password signing_dir = /tmp/keystone-signing-muranoapiRegister murano-api service in Openstack (note: you need to be authorized in Openstack to run this commands)
user@work:~/$ keystone service-create --name muranoapi --type murano --description "Murano-Api Service" user@work:~/$ keystone endpoint-create --region RegionOne --service-id The ID field returned by the keystone service-create --publicurl http://x.x.x.x:8082 (where x.x.x.x - host ip where murano-api installed) --internalurl the same as publicurl --adminurl the same as publicurl


