[Openstack] Swift+Keystone error

Jesse Andrews anotherjesse at gmail.com
Wed Jun 22 00:22:01 UTC 2011


Todd was doing some work on keystone

  https://github.com/rackspace/keystone/commit/722fcd8ebef3fe1268ace5c05e014f6a945abfab

It still needs some work and might not be at the right place.

Jesse

On Jun 21, 2011, at 4:31 PM, Tres Henry wrote:

> Trying to get a Swift+Keystone dev environment setup and having some issues. I'm running Swift 1.4.2 and have it pointing at Keystone 0.9 (on the same VM) according to the instructions at https://github.com/rackspace/keystone, however, Swift is reporting 500s from Keystone (Auth GET failed: http://127.0.0.1:8080/v1.0 500 Internal Server Error) and the Keystone log says:
> 
> eventlet.wsgi.server: DEBUG    Traceback (most recent call last):
>   File "/usr/lib/python2.6/dist-packages/eventlet/wsgi.py", line 336, in handle_one_response
>     result = self.application(self.environ, start_response)
>   File "/home/tres/nova/keystone/keystone/frontends/legacy_token_auth.py", line 74, in __call__
>     new_request.body = json.dumps(params)
>   File "/usr/lib/pymodules/python2.6/webob/request.py", line 1173, in __setattr__
>     object.__setattr__(self, attr, value)
>   File "/usr/lib/pymodules/python2.6/webob/request.py", line 498, in _body__set
>     raise ValueError("%s requests cannot have body" % self.method)
> ValueError: GET requests cannot have body
> 
> (this was specifically when trying "swift -A http://127.0.0.1:8080/v1.0 -U joeuser -K secrete post container" 
> 
> Here's some relevant configs if it helps:
> 
> -- keystone.conf --
> 
> [DEFAULT]
> # Show more verbose log output (sets INFO log level output)
> verbose = True
> 
> # Show debugging output in logs (sets DEBUG log level output)
> debug = True
> 
> # Which backend store should Keystone use by default.
> # Default: 'sqlite'
> # Available choices are 'sqlite' [future will include LDAP, PAM, etc]
> default_store = sqlite
> 
> # Log to this file. Make sure you do not set the same log
> # file for both the API and registry servers!
> #log_file = /var/log/keystone.log
> log_file = keystone.log
> 
> # SQLAlchemy connection string for the reference implementation
> # registry server. Any valid SQLAlchemy connection string is fine.
> # See: http://www.sqlalchemy.org/docs/05/reference/sqlalchemy/connections.html#sqlalchemy.create_engine
> sql_connection = sqlite:///../keystone/keystone.db
> 
> # Period in seconds after which SQLAlchemy should reestablish its connection
> # to the database.
> sql_idle_timeout = 30
> 
> #Dictionary Maps every service to a header.Missing services would get header X_(SERVICE_NAME) Key => Service Name, Value => Header Name
> service-header-mappings = {'nova' : 'X-Server-Management-Url' , 'swift' : 'X-Storage-Url', 'cdn' : 'X-CDN-Management-Url'}
> 
> # Address to bind the API server
> #TODO Properties defined within app not available via pipeline.Till then server props stay outside.
> server_bind_host = 0.0.0.0
> 
> # Port the bind the API server to
> server_bind_port = 8080
> [app:admin]
> paste.app_factory = keystone.server:admin_app_factory
> 
> # Address to bind the Admin API server
> bind_host = 0.0.0.0
> 
> # Port the bind the Admin API server to
> bind_port = 8081
> 
> [app:server]
> paste.app_factory = keystone.server:app_factory
> 
> [pipeline:keystone-legacy-auth]
> pipeline =
>     legacy_auth
>     server
> 
> [filter:legacy_auth]
> paste.filter_factory = keystone.frontends.legacy_token_auth:filter_factory
> 
> 
> -- proxy-server.conf --
> 
> [DEFAULT]
> bind_port = 8888
> user = root
> log_facility = LOG_LOCAL1
> 
> [pipeline:main]
> pipeline = catch_errors healthcheck cache keystone proxy-server
> 
> [app:proxy-server]
> use = egg:swift#proxy
> allow_account_management = true
> 
> [filter:keystone]
> use = egg:keystone#tokenauth
> auth_protocol = http
> auth_host = 127.0.0.1
> auth_port = 8081
> admin_token = 999888777666
> delay_auth_decision = 0
> service_protocol = http
> service_host = 127.0.0.1
> service_port = 8100
> service_pass = dTpw
> 
> [filter:healthcheck]
> use = egg:swift#healthcheck
> 
> [filter:cache]
> use = egg:swift#memcache
> 
> [filter:catch_errors]
> use = egg:swift#catch_errors
> 
> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack at lists.launchpad.net
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20110621/4c78bb6c/attachment.html>


More information about the Openstack mailing list