The uwsgi keystone jobs are failing with an error like
+ devstack/functions-common:_run_process:L1391: setsid uwsgi /etc/keystone/keystone-uwsgi-admin.ini
+ devstack/functions-common:_run_process:L1395: exit 0
execvp: No such file or directory
I think this is because uwsgi isn't installed on the images. The fix
is to pip install it.
Also, use the full path to the uwsgi executable (even though execvp
is used) because eventlet (calling keystone-all) does.
Also, the uwsgi process wasn't shutting down on ./unstack.sh. This
is worked around by not running master process.
Change-Id: Id02e16c5149ba3dfa13051e87cfccd8e505b7362
... | ... |
@@ -303,7 +303,6 @@ function configure_keystone { |
303 | 303 |
|
304 | 304 |
iniset "$KEYSTONE_PUBLIC_UWSGI_FILE" uwsgi wsgi-file "$KEYSTONE_BIN_DIR/keystone-wsgi-public" |
305 | 305 |
# This is running standalone |
306 |
- iniset "$KEYSTONE_PUBLIC_UWSGI_FILE" uwsgi master true |
|
307 | 306 |
iniset "$KEYSTONE_PUBLIC_UWSGI_FILE" uwsgi threads $(nproc) |
308 | 307 |
iniset "$KEYSTONE_PUBLIC_UWSGI_FILE" uwsgi enable-threads true |
309 | 308 |
iniset "$KEYSTONE_PUBLIC_UWSGI_FILE" uwsgi plugins python |
... | ... |
@@ -316,7 +315,6 @@ function configure_keystone { |
316 | 316 |
|
317 | 317 |
iniset "$KEYSTONE_ADMIN_UWSGI_FILE" uwsgi wsgi-file "$KEYSTONE_BIN_DIR/keystone-wsgi-admin" |
318 | 318 |
# This is running standalone |
319 |
- iniset "$KEYSTONE_ADMIN_UWSGI_FILE" uwsgi master true |
|
320 | 319 |
iniset "$KEYSTONE_ADMIN_UWSGI_FILE" uwsgi threads $API_WORKERS |
321 | 320 |
iniset "$KEYSTONE_ADMIN_UWSGI_FILE" uwsgi enable-threads true |
322 | 321 |
iniset "$KEYSTONE_ADMIN_UWSGI_FILE" uwsgi plugins python |
... | ... |
@@ -563,6 +561,8 @@ function install_keystone { |
563 | 563 |
if is_ssl_enabled_service "key"; then |
564 | 564 |
enable_mod_ssl |
565 | 565 |
fi |
566 |
+ elif [ "$KEYSTONE_DEPLOY" == "uwsgi" ]; then |
|
567 |
+ pip_install uwsgi |
|
566 | 568 |
fi |
567 | 569 |
} |
568 | 570 |
|
... | ... |
@@ -582,8 +582,8 @@ function start_keystone { |
582 | 582 |
tail_log key /var/log/$APACHE_NAME/keystone.log |
583 | 583 |
tail_log key-access /var/log/$APACHE_NAME/keystone_access.log |
584 | 584 |
elif [ "$KEYSTONE_DEPLOY" == "uwsgi" ]; then |
585 |
- run_process key "uwsgi $KEYSTONE_PUBLIC_UWSGI_FILE" "" "key-p" |
|
586 |
- run_process key "uwsgi $KEYSTONE_ADMIN_UWSGI_FILE" "" "key-a" |
|
585 |
+ run_process key "$KEYSTONE_BIN_DIR/uwsgi $KEYSTONE_PUBLIC_UWSGI_FILE" "" "key-p" |
|
586 |
+ run_process key "$KEYSTONE_BIN_DIR/uwsgi $KEYSTONE_ADMIN_UWSGI_FILE" "" "key-a" |
|
587 | 587 |
else # eventlet |
588 | 588 |
# Start Keystone in a screen window |
589 | 589 |
run_process key "$KEYSTONE_BIN_DIR/keystone-all --config-file $KEYSTONE_CONF" |