Ask Your Question
0

[SOLVED] How to solve InternalServerError: Internal Server Error (HTTP 500) on first project creation following Ocata rdo guide?

asked 2017-07-17 10:24:36 -0500

sebastien gravatar image

updated 2017-07-19 03:28:10 -0500

Greetings,

I have been following the Ocata rdo guide to deploy Openstack and I am encountering the following error:

https://docs.openstack.org/ocata/fr/install-guide-rdo/keystone-install.html (https://docs.openstack.org/ocata/fr/i...) From this page, once at the openstack project create step, I get this:

# openstack project create --domain default --description "Projet 0 - Service" service --debug

START with options: [u'project', u'create', u'--domain', u'default', u'--description', u'Projet 0 - Service', u'service', u'--debug']
options: Namespace(access_key='', access_secret='***', access_token='***', access_token_endpoint='', access_token_type='', auth_type='', auth_url='http://srv-virt-stack1:35357/v3/', cacert=None, cert='', client_id='', client_secret='***', cloud='', code='', consumer_key='', consumer_secret='***', debug=True, default_domain='default', default_domain_id='', default_domain_name='', deferred_help=False, discovery_endpoint='', domain_id='', domain_name='', endpoint='', identity_provider='', insecure=None, interface='', key='', log_file=None, old_profile=None, openid_scope='', os_beta_command=False, os_compute_api_version='', os_identity_api_version='3', os_image_api_version='', os_network_api_version='', os_object_api_version='', os_project_id=None, os_project_name=None, os_volume_api_version='', passcode='', password='***', profile=None, project_domain_id='', project_domain_name='Default', project_id='', project_name='admin', protocol='', redirect_uri='', region_name='', timing=False, token='***', trust_id='', url='', user_domain_id='', user_domain_name='Default', user_id='', username='admin', verbose_level=3, verify=None)
Auth plugin password selected
auth_config_hook(): {'auth_type': 'password', 'beta_command': False, u'compute_api_version': u'2', 'key': None, u'database_api_version': u'1.0', 'cacert': None, 'auth_url': 'http://srv-virt-stack1:35357/v3/', u'network_api_version': u'2', u'message': u'', u'image_format': u'qcow2', 'networks': [], u'image_api_version': u'2', 'verify': True, u'dns_api_version': u'2', u'object_store_api_version': u'1', 'username': 'admin', u'container_infra_api_version': u'1', 'verbose_level': 3, 'region_name': '', 'api_timeout': None, u'baremetal_api_version': u'1', 'auth': {'user_domain_name': 'Default', 'project_name': 'admin', 'project_domain_name': 'Default'}, 'default_domain': 'default', u'container_api_version': u'1', u'image_api_use_tasks': False, u'floating_ip_source': u'neutron', u'orchestration_api_version': u'1', 'timing': False, 'password': '***', u'application_catalog_api_version': u'1', u'key_manager_api_version': u'v1', u'metering_api_version': u'2', 'deferred_help': False, u'identity_api_version': '3', u'volume_api_version': u'2', 'cert': None, u'secgroup_source': u'neutron', u'status': u'active', 'debug': True, u'interface': None, u'disable_vendor_agent': {}}
defaults: {u'auth_type': 'password', u'status': u'active', u'compute_api_version': u'2', 'key': None, u'database_api_version': u'1.0', 'api_timeout': None, u'baremetal_api_version': u'1', u'image_api_version': u'2', u'container_infra_api_version': u'1', u'metering_api_version': u'2', u'image_api_use_tasks': False, u'floating_ip_source': u'neutron', u'orchestration_api_version': u'1', 'cacert': None, u'network_api_version': u'2', u'message': u'', u'image_format': u'qcow2', u'application_catalog_api_version': u'1', u'key_manager_api_version': u'v1', 'verify': True, u'identity_api_version': u'2.0', u'volume_api_version': u'2', 'cert': None, u'secgroup_source': u'neutron', u'container_api_version': u'1', u'dns_api_version': u'2', u'object_store_api_version': u'1', u'interface': None, u'disable_vendor_agent': {}}
cloud cfg: {'auth_type': 'password', 'beta_command': False, u'compute_api_version': u'2', 'key': None, u'database_api_version': u'1.0', 'cacert': None, 'auth_url': 'http://srv-virt-stack1:35357/v3/', u'network_api_version': u'2', u'message': u'', u'image_format': u'qcow2', 'networks': [], u'image_api_version': u'2', 'verify': True, u'dns_api_version': u'2', u'object_store_api_version': u'1', 'username': 'admin', u'container_infra_api_version': u'1', 'verbose_level': 3, 'region_name': '', 'api_timeout': None, u'baremetal_api_version': u'1', 'auth': {'user_domain_name': 'Default', 'project_name': 'admin', 'project_domain_name': 'Default'}, 'default_domain': 'default', u'container_api_version': u'1', u'image_api_use_tasks': False, u'floating_ip_source': u'neutron', u'orchestration_api_version': u'1', 'timing': False, 'password': '***', u'application_catalog_api_version': u'1', u'key_manager_api_version': u ...
(more)
edit retag flag offensive close merge delete

Comments

I'm getting the same thing following the standard docs here: docs.openstack.org/ocata/install-guide-rdo/keystone-users

openstack project create --domain default --description "Service Project" service --debug OpenStackConfigException: Missing value auth-url required for auth plugin password ..

stackattack gravatar imagestackattack ( 2017-07-17 18:39:28 -0500 )edit

Yes, in fact all of my openstack commands return this error: Missing value auth-url required for auth plugin password. I wonder if the database is amiss.

stackattack gravatar imagestackattack ( 2017-07-17 18:41:01 -0500 )edit

"Missing value auth-url required for auth plugin password"

You need to set environment variables, for example as shown at https://docs.openstack.org/ocata/inst....

Bernd Bausch gravatar imageBernd Bausch ( 2017-07-19 03:21:22 -0500 )edit

Well, that document page is actually 2 pages later. Are they out of sequence?

stackattack gravatar imagestackattack ( 2017-07-19 11:01:50 -0500 )edit

My mistake; I should have sent you this link: https://docs.openstack.org/ocata/inst....

Bernd Bausch gravatar imageBernd Bausch ( 2017-07-19 18:43:34 -0500 )edit

3 answers

Sort by ยป oldest newest most voted
0

answered 2017-07-18 02:12:28 -0500

sebastien gravatar image

updated 2017-07-19 03:27:20 -0500

UPDATE: Bernd helped me solve this through.

the /usr/share/keystone/wsgi-keystone.conf file coming along with the openstack-keystone-11.0.1-1.el7.noarch package seems to have an error in it.

One line is missing on the keystone-admin VirtualHost :

<VirtualHost *:35357>
    WSGIDaemonProcess keystone-admin processes=1 threads=1 user=keystone group=keystone display-name=%{GROUP}
    WSGIProcessGroup keystone-admin
    WSGIScriptAlias / /usr/bin/keystone-wsgi-admin
    WSGIApplicationGroup %{GLOBAL}
    WSGIPassAuthorization On
    LimitRequestBody 114688
    <IfVersion >= 2.4>
      ErrorLogFormat "%{cu}t %M"
    </IfVersion>
    ErrorLog /var/log/httpd/keystone.log
    CustomLog /var/log/httpd/keystone_access.log combined
    LogLevel DEBUG
    <Directory /usr/bin>
        <IfVersion >= 2.4>
            Require all granted
        </IfVersion>
        <IfVersion < 2.4>
            Order allow,deny
            Allow from all
        </IfVersion>
    </Directory>
</VirtualHost>

Adding the first line (WSGIDaemonProcess ..) solved this issue. Thank you all for your support, I am now moving on with the installation guide ! I will keep you posted if I find any other issues.


Following, the logs that helped find the issue

Greetings Bernd,

Thank you for your reply.

here is what the VirtualHost look like with Ocata:

# ls -l /etc/httpd/conf.d/wsgi-keystone.conf
lrwxrwxrwx 1 root root 38 Jul 17 11:43 /etc/httpd/conf.d/wsgi-keystone.conf -> /usr/share/keystone/wsgi-keystone.conf

ls -l /usr/share/keystone/wsgi-keystone.conf
-rw-r--r-- 1 root keystone 1837 Jul 17 15:02 /usr/share/keystone/wsgi-keystone.conf

...
<VirtualHost *:35357>
    WSGIProcessGroup keystone-admin
    WSGIScriptAlias / /usr/bin/keystone-wsgi-admin
    WSGIApplicationGroup %{GLOBAL}
    WSGIPassAuthorization On
    LimitRequestBody 114688
    <IfVersion >= 2.4>
      ErrorLogFormat "%{cu}t %M"
    </IfVersion>
    ErrorLog /var/log/httpd/keystone.log
    CustomLog /var/log/httpd/keystone_access.log combined

    <Directory /usr/bin>
        <IfVersion >= 2.4>
            Require all granted
        </IfVersion>
        <IfVersion < 2.4>
            Order allow,deny
            Allow from all
        </IfVersion>
    </Directory>
</VirtualHost>
...

And here is what the package deployed:

# ls -l /usr/bin/keystone-wsgi-admin
-rwxr-xr-x 1 root root 1807 May 11 10:27 /usr/bin/keystone-wsgi-admin

   # ls -l /usr/bin/keystone-*
    -rwxr-xr-x 1 root root  159 May 11 10:27 /usr/bin/keystone-manage
    -rwxr-xr-x 1 root root 1807 May 11 10:27 /usr/bin/keystone-wsgi-admin
    -rwxr-xr-x 1 root root 1812 May 11 10:27 /usr/bin/keystone-wsgi-public

I am not so familiar with WSGI but it doesn't seem to me the VirtualHost is misconfigured.

Here is an update with the debug output of what was required :

[root@srv-virt-stack1 log]# openstack catalog list
Discovering versions from the identity service failed when creating the password plugin. Attempting to determine version from URL.
Internal Server Error (HTTP 500)
[root@srv-virt-stack1 log]# openstack catalog list --debug
START with options: [u'catalog', u'list', u'--debug']
options: Namespace(access_key='', access_secret='***', access_token='***', access_token_endpoint='', access_token_type='', auth_type='', auth_url='http://srv-virt-stack1:35357/v3/', cacert=None, cert='', client_id='', client_secret='***', cloud='', code='', consumer_key='', consumer_secret='***', debug=True, default_domain='default', default_domain_id='', default_domain_name='', deferred_help=False, discovery_endpoint='', domain_id='', domain_name='', endpoint='', identity_provider='', insecure=None, interface='', key='', log_file=None, old_profile=None, openid_scope='', os_beta_command=False, os_compute_api_version='', os_identity_api_version='3', os_image_api_version='', os_network_api_version='', os_object_api_version='', os_project_id=None, os_project_name=None, os_volume_api_version='', passcode='', password='***', profile=None, project_domain_id='', project_domain_name='Default', project_id='', project_name='admin', protocol='', redirect_uri='', region_name='', timing=False, token='***', trust_id='', url='', user_domain_id='', user_domain_name='Default', user_id='', username='admin', verbose_level=3, verify=None)
Auth ...
(more)
edit flag offensive delete link more

Comments

My knowledge of web servers including apache is sketchy. Something must be wrong at this level, otherwise I don't know where the error comes from. Apache logs? Other errors in the Keystone log?

Bernd Bausch gravatar imageBernd Bausch ( 2017-07-18 18:17:26 -0500 )edit
1

There is a difference between your and my config file. I found it after googling for similar errors and finding https://stackoverflow.com/questions/2.... Your file has no WSGIDaemonProcess clause.

Bernd Bausch gravatar imageBernd Bausch ( 2017-07-18 18:22:40 -0500 )edit

Why that is so? No idea, but try to handcraft the clause and see what happens.

Bernd Bausch gravatar imageBernd Bausch ( 2017-07-18 18:24:01 -0500 )edit

Greetings Bernd,

You nailed it! I added the following line at the beginning of the VirtualHost and it worked!

WSGIDaemonProcess keystone-admin processes=1 threads=1 user=keystone group=keystone display-name=%{GROUP}

Thank you for your support, I'll update my answer right away. Cheers!

sebastien gravatar imagesebastien ( 2017-07-19 02:58:33 -0500 )edit

Perfect. But it's strange that this line was not created when installing the Keystone package.

Bernd Bausch gravatar imageBernd Bausch ( 2017-07-19 03:22:35 -0500 )edit
0

answered 2017-07-18 04:26:39 -0500

TijoV gravatar image

openstack catalog list

Please provide output

edit flag offensive delete link more

Comments

[root@srv-virt-stack1 log]# openstack catalog list Discovering versions from the identity service failed when creating the password plugin. Attempting to determine version from URL. Internal Server Error (HTTP 500)

I'll put the debug as an answer

sebastien gravatar imagesebastien ( 2017-07-18 09:48:35 -0500 )edit

That command won't run as root, you need be the user which can run openstack commands, then try again

TijoV gravatar imageTijoV ( 2017-07-19 05:48:29 -0500 )edit
0

answered 2017-07-17 20:49:09 -0500

Bernd Bausch gravatar image

"No WSGI daemon process called 'keystone-admin' has been configured"

That's the root of your problem. Something went wrong with the configuration of the web server, which should have been done automatically when you installed openstack-keystone. Perhaps there is a problem with the package?

This is what I have in /etc/httpd/conf.d/10-keystone_wsgi_admin.conf (a Liberty installation, but should be very similar in Ocata):

<VirtualHost *:35357>
  ServerName allinone.home

  ## Vhost docroot
  DocumentRoot "/var/www/cgi-bin/keystone"

  ## Directories, there should at least be a declaration for /var/www/cgi-bin/keystone

  <Directory "/var/www/cgi-bin/keystone">
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    Require all granted
  </Directory>

  ## Logging
  ErrorLog "/var/log/httpd/keystone_wsgi_admin_error.log"
  ServerSignature Off
  CustomLog "/var/log/httpd/keystone_wsgi_admin_access.log" combined
  WSGIApplicationGroup %{GLOBAL}
  WSGIDaemonProcess keystone_admin display-name=keystone-admin group=keystone processes=1 threads=1 user=keystone
  WSGIProcessGroup keystone_admin
  WSGIScriptAlias / "/var/www/cgi-bin/keystone/admin"
  WSGIPassAuthorization On
</VirtualHost>
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-07-17 10:24:36 -0500

Seen: 159 times

Last updated: Jul 19