×


Error: Function lookup() did not find a value for the name DEFAULT_EXEC_TIMEOUT

Are you trying to resolve 'Error: Function lookup() did not find a value for the name DEFAULT_EXEC_TIMEOUT' ?

We can help you.

Sometimes our customers report to us that they get this error while trying to install OpenStack using packstack.
Packstack is a utility that uses Puppet modules to provide an easy way to deploy an OpenStack Platform environment on one or several machines. However, we may end up with the above error at times while using packstack. And this can be due to any issue with repositories we use.
Here at Ibmi Media, as part of our Server Management Services, we regularly help our Customers to resolve related OpenStack errors.

When do we get Error: Function lookup() did not find a value for the name DEFAULT_EXEC_TIMEOUT ?

We may get this error while trying to install the latest version of OpenStack using packstack.
Using the following commands we can reproduce the error:

sudo dnf install network-scripts -y
sudo systemctl disable firewalld
sudo systemctl stop firewalld
sudo systemctl disable NetworkManager
sudo systemctl stop NetworkManager
sudo systemctl enable network
sudo systemctl start network
sudo dnf update -y
sudo dnf config-manager --enable PowerTools
sudo dnf install -y centos-release-openstack-ussuri
sudo dnf update -y
sudo dnf install -y openstack-packstack
sudo packstack --allinone

Following is the actual result we may get:

Preparing Neutron DHCP Agent entries [ DONE ]
Preparing Neutron Metering Agent entries [ DONE ]
Checking if NetworkManager is enabled and running [ DONE ]
Preparing OpenStack Client entries [ DONE ]
Preparing Horizon entries [ DONE ]
Preparing Swift builder entries [ DONE ]
Preparing Swift proxy entries [ DONE ]
Preparing Swift storage entries [ DONE ]
Preparing Gnocchi entries [ DONE ]
Preparing Redis entries [ DONE ]
Preparing Ceilometer entries [ DONE ]
Preparing Aodh entries [ DONE ]
Preparing Puppet manifests [ DONE ]
Copying Puppet modules and manifests [ DONE ]
Applying 10.20.253.31_controller.pp
10.20.253.31_controller.pp: [ ERROR ]
Applying Puppet manifests [ ERROR ]
ERROR : Error appeared during Puppet run: 10.20.253.31_controller.pp
Error: Function lookup() did not find a value for the name 'DEFAULT_EXEC_TIMEOUT'


What triggers this error ?

The epel repo being enabled causes this error usually. At times the version of puppet in ussuri repo will be 6.14.0. but the installation may have 6.17.0.
We can check the version using the following command depending upon the operating system we use:

[root@openstack ~]# cat /etc/redhat-release
CentOS Linux release 8.2.2004 (Core)
[root@openstack ~]# arch
x86_64
[root@openstack ~]# puppet --version
6.17.0
[root@openstack ~]# hiera --version
3.6.0

Furthermore, installing packages from any unsupported repo can be a reason for this.
Next, we will see the steps we followed to fix this issue for our customers.

How to resolve this error ?

Firstly we need to ensure that epel repo is disabled and try to install Openstack again.
So we need to uninstall it and all the dependencies first and reinstall it after disabling epel.
This can be done with the following commands:

# yum autoremove epel-release
# yum autoremove openstack-packstack
# yum clean all
# yum install -y openstack-packstack

Once we do this we will have all the proper versions of dependencies.
As a result, we will not get the above error while trying to install OpenStack with packstack.

[Need assistance in fixing Linux related errors? We can help you. ]


Conclusion

This article covers how to fix this issue found while installing OpenStack with packstack.
In the case you installed packstack with epel repo enabled, you need to uninstall it and all the dependences, and re-install it after disabling epel, so all the proper versions of dependencies are installed correctly.
1. To begin, ensure that epel repo is disabled and try again.
2. Run the following commands:

# yum autoremove epel-release
# yum autoremove openstack-packstack
# yum clean all
# yum install -y openstack-packstack