Description of problem:
Due to some change forced by the switch to newer keystone version (see https://review.openstack.org/#/c/485521/), the trust mechanism in Sahara uses the configuration values from the section [keystone_authtoken] (this may change in the future).
Two of the values that are needed by Sahara (user_domain_name and project_domain_name) are not filled (even with default values) by default by puppet-sahara. sahara-engine tries to read them when starting to create a cluster (two KeyError exceptions visible in sahara-engine.log).
A simple fix is change the function which retrieves those values to accept a default value (which is easier than changing all systems which writes sahara.conf).
A fix was proposed upstream but it's not yet in stable/pike; this is to ensure that it will be imported.
Version-Release number of selected component (if applicable):
Fix merged in master, backport for pike proposed.
Stable Pike merged, moving to POST to move this forward.
The patch landed in a format that could be tested (and it's not going away from that branch).
It is now possible to spawn clusters.
Tested with a containerized deployment (Spark and CDH 5.7):
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.