Ask Your Question
0

Openstack heat-api and heat-api-cfn fail to start - ERROR: Unable to locate config file

asked 2017-02-17 00:48:52 -0500

Marcio_SP gravatar image

updated 2017-02-18 11:57:16 -0500

Dears,

I´m installing an enviroment with heat. Before I install heat, the other modules (neutron, nova, glance and so on) was working fine. I strictly followed the manual from https://docs.openstack.org/liberty/install-guide-rdo/heat-install.html (https://docs.openstack.org/liberty/in...), but when I try to start the service with:

systemctl start openstack-heat-api.service openstack-heat-api-cfn.service openstack-heat-engine.service
[root@controller-openstack ~]# systemctl | grep -i heat
● openstack-heat-api-cfn.service                                                      loaded failed     failed          Openstack Heat CFN-compatible API Service
● openstack-heat-api.service                                                          loaded failed     failed          OpenStack Heat API Service
  openstack-heat-engine.service                                                       loaded active     running         Openstack Heat Engine Service

... the services "heat-api" and "heat-api-cfn" simply don´t start. In /var/log/message it is shown the error: "heat-api: ERROR: Unable to locate config file" for both daemons. However, the "heat-engine" starts normally.

So I created the config files "heat-api.conf" and "heat-api-cfn.conf", based on a sample I caught in Internet (I installed at /etc/heat), but the message in the log is still the same.

[root@controller-openstack ~]# cat /var/log/messages | grep heat-api
    Feb 16 21:53:04 controller-openstack heat-api: Option "verbose" from group "DEFAULT" is deprecated for removal.  Its value may be silently ignored in the future.
    Feb 16 21:53:04 controller-openstack heat-api: 2017-02-16 21:53:04.945 30360 WARNING oslo_config.cfg [-] Option "rpc_backend" from group "DEFAULT" is deprecated for removal.  Its value may be silently ignored in the future.
    Feb 16 21:53:04 controller-openstack heat-api: ERROR: Unable to locate config file
    Feb 16 21:53:05 controller-openstack systemd: openstack-heat-api.service: main process exited, code=exited, status=1/FAILURE
    Feb 16 21:53:05 controller-openstack systemd: Unit openstack-heat-api.service entered failed state.
    Feb 16 21:53:05 controller-openstack systemd: openstack-heat-api.service failed.

    Feb 16 21:53:05 controller-openstack heat-api-cfn: Option "verbose" from group "DEFAULT" is deprecated for removal.  Its value may be silently ignored in the future.
    Feb 16 21:53:05 controller-openstack heat-api-cfn: 2017-02-16 21:53:05.188 30361 WARNING oslo_config.cfg [-] Option "rpc_backend" from group "DEFAULT" is deprecated for removal.  Its value may be silently ignored in the future.
    Feb 16 21:53:05 controller-openstack heat-api-cfn: ERROR: Unable to locate config file
    Feb 16 21:53:05 controller-openstack systemd: openstack-heat-api-cfn.service: main process exited, code=exited, status=1/FAILURE
    Feb 16 21:53:05 controller-openstack systemd: Unit openstack-heat-api-cfn.service entered failed state.
    Feb 16 21:53:05 controller-openstack systemd: openstack-heat-api-cfn.service failed.

I´m supposing that the daemon is somehow locating the file, but something is preventing the daemon to work. I tell it because when I uncomment the line rpc_backend in the config files, it stops showing the message "unable to locate config file", and starts showing a error saying that it can not load the qpid driver.

[root@controller-openstack ~]# cat /etc/heat/heat-api-cfn.conf | grep rpc
rpc_backend=heat.openstack.common.rpc.impl_qpid

[root@controller-openstack ~]# cat /var/log/heat/api-cfn.log
...
    2017-02-16 23:58:53.807 24772 CRITICAL heat-api-cfn [-] DriverLoadFailure: Failed to load transport driver "qpid": No 'oslo.messaging.drivers' driver found, looking for 'qpid'
    2017-02-16 23 ...
(more)
edit retag flag offensive close merge delete

1 answer

Sort by » oldest newest most voted
0

answered 2017-02-18 11:55:13 -0500

Marcio_SP gravatar image

Problem solved! The daemon was looking for the file api-paste.ini at /etc/heat, but it was not automatically installed there. There´s no mention of it in the manual.

Tasks done:

  1. Download the file from http://github.com/openstack/osops-example-configs/blob/master/MIT_CSAIL/controller/etc/heat/api-paste.ini (http://github.com/openstack/osops-exa...) and copy it to /etc/heat;

  2. In my personal setup, I had to edit the /etc/heat/api-paste.ini, and change the following parameter: paste.filter_factory = keystonemiddleware.auth_token:filter_factory

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower

Stats

Asked: 2017-02-17 00:48:52 -0500

Seen: 572 times

Last updated: Feb 18 '17