ubuntu openstack ocata - 从身份服务中发现版本失败

时间:2018-06-05 18:23:29

标签: ubuntu-16.04 openstack

命令:

openstack --os-auth-url http://controller:5000/v3 \
--os-project-domain-name default --os-user-domain-name default \
--os-project-name demo --os-username demo token issue

错误:

  

创建时,从身份服务中发现版本失败   密码插件。试图从URL确定版本。   内部服务器错误(HTTP 500)

来自keystone.log的错误:

 2018-06-12 10:40:05.888577 mod_wsgi (pid=16170): Target WSGI script '/usr/bin/keystone-wsgi-admin' cannot be loaded as Python module.
2018-06-12 10:40:05.888611 mod_wsgi (pid=16170): Exception occurred processing WSGI script '/usr/bin/keystone-wsgi-admin'.
2018-06-12 10:40:05.888634 Traceback (most recent call last):
2018-06-12 10:40:05.888656   File "/usr/bin/keystone-wsgi-admin", line 51, in <module>
2018-06-12 10:40:05.888688     application = initialize_admin_application()
2018-06-12 10:40:05.888702   File "/usr/lib/python2.7/dist-packages/keystone/server/wsgi.py", line 129, in initialize_admin_application
2018-06-12 10:40:05.888726     config_files=_get_config_files())
2018-06-12 10:40:05.888739   File "/usr/lib/python2.7/dist-packages/keystone/server/wsgi.py", line 53, in initialize_application
2018-06-12 10:40:05.888759     common.configure(config_files=config_files)
2018-06-12 10:40:05.888772   File "/usr/lib/python2.7/dist-packages/keystone/server/common.py", line 30, in configure
2018-06-12 10:40:05.888792     keystone.conf.configure()
2018-06-12 10:40:05.888805   File "/usr/lib/python2.7/dist-packages/keystone/conf/__init__.py", line 126, in configure
2018-06-12 10:40:05.888826     help='Do not monkey-patch threading system modules.'))
2018-06-12 10:40:05.888839   File "/usr/lib/python2.7/dist-packages/oslo_config/cfg.py", line 2288, in __inner
2018-06-12 10:40:05.888860     result = f(self, *args, **kwargs)
2018-06-12 10:40:05.888872   File "/usr/lib/python2.7/dist-packages/oslo_config/cfg.py", line 2478, in register_cli_opt
2018-06-12 10:40:05.888892     raise ArgsAlreadyParsedError("cannot register CLI option")
2018-06-12 10:40:05.888915 ArgsAlreadyParsedError: arguments already parsed: cannot register CLI option

error.log中:

[Tue Jun 12 10:12:18.510745 2018] [mpm_event:notice] [pid 29892:tid 139804806121344] AH00491: caught SIGTERM, shutting down
[Tue Jun 12 10:12:29.674244 2018] [wsgi:warn] [pid 16158:tid 139690338350976] mod_wsgi: Compiled for Python/2.7.11.
[Tue Jun 12 10:12:29.674304 2018] [wsgi:warn] [pid 16158:tid 139690338350976] mod_wsgi: Runtime using Python/2.7.12.
[Tue Jun 12 10:12:29.676957 2018] [mpm_event:notice] [pid 16158:tid 139690338350976] AH00489: Apache/2.4.18 (Ubuntu) mod_wsgi/4.3.0 Python/2.7.12 configured -- resuming normal operations
[Tue Jun 12 10:12:29.676985 2018] [core:notice] [pid 16158:tid 139690338350976] AH00094: Command line: '/usr/sbin/apache2'

请有人帮我解决问题。

1 个答案:

答案 0 :(得分:0)

问题已解决。

根据日志错误在mod_wsgi中。用于身份服务的Web服务网关接口(WSGI)中间件管道在keystone-paste.ini文件中配置,从而使用互联网上提供的openstack docs keystone-paste.ini文件验证我的文件,从而改变了管道配置并解决了问题。 / p>

我已编辑 /etc/keystone/keystone-paste.ini 文件

  1. 在[pipeline:public_api]下

    pipeline = healthcheck cors sizelimit http_proxy_to_wsgi osprofiler url_normalize request_id

  2. 将以上行改为:

    pipeline = healthcheck cors sizelimit http_proxy_to_wsgi osprofiler url_normalize request_id build_auth_context token_auth json_body ec2_extension public_service 
    
    1. 编辑[pipeline:admin_api]

      的方式相同

      pipeline = healthcheck cors sizelimit http_proxy_to_wsgi osprofiler url_normalize request_id

    2. 将管道更改为:

      pipeline = healthcheck cors sizelimit http_proxy_to_wsgi osprofiler url_normalize request_id build_auth_context token_auth json_body ec2_extension s3_extension admin_service 
      
      1. 也在[pipeline:api_v3]

        中进行了更改

        pipeline = healthcheck cors sizelimit http_proxy_to_wsgi osprofiler url_normalize request_id

      2. 将以上行改为:

        pipeline = healthcheck cors sizelimit http_proxy_to_wsgi osprofiler url_normalize request_id build_auth_context token_auth json_body ec2_extension_v3 s3_extension service_v3 
        

        通过进行以下更改问题得到解决。