The "use" line in the swift3 section is wrong. Your config tells the proxy to 
load that module from the swift project (ie from swift import swift3). However, 
that won't work because swift3 isn't shipped with swift. Instead you need to 
have something like "use = egg:swift3#middleware".

For more info on how the paste deploy config works, see 
http://pythonpaste.org/deploy/#config-format


--John



On Jan 8, 2013, at 6:59 AM, Sandopolus <sandopo...@gmail.com> wrote:

> Hi all
> 
> I have managed to get the Swift installation working correctly with the Swift 
> API's using tempauth.
> But i am currently having issues when starting the Proxy after adding the 
> Swift3 setup into the Proxy config and i was hoping someone could point me in 
> the right direction.
> 
> My current setup is as follows:
> 
> Swift 1.7.4 installation on CentOS 6 using the EPEL6 packages on AWS.
> The Swift Proxy and Memcache are running on node 1
> The Swift Account, Container and Object servers are running on node 2
> 
> During startup of the Proxy Server i am getting an error which i have put 
> below. Searching online revealed similar issues when swift3 wasn't installed, 
> but i have checked the following things below and it looks like swift3 is 
> installed. Python isn't my main language so still a bit lost and finding my 
> way around the language.
> Any pointers would be appreciated.
> 
> Items checked on the Proxy Node
> Package manager says openstack-swift-plugin-swift3.noarch 
> 1.0.0-0.20120711git.el6 is installed
> Python terminal help('modules') command lists both swift and swift3
> Python terminal help('modules swift3') command returns the following 2 lines
>  - swift3 - Static Web Middleware for OpenStack Swift
>  - swift3.middleware - The swift3 middleware will emulate the S3 REST api on 
> top of swift.
> 
> Proxy Server Startup Error
> sudo swift-init proxy start
> Starting proxy-server...(/etc/swift/proxy-server.conf)
> Traceback (most recent call last):
>   File "/usr/bin/swift-proxy-server", line 22, in <module>
>     run_wsgi(conf_file, 'proxy-server', default_port=8080, **options)
>   File "/usr/lib/python2.6/site-packages/swift/common/wsgi.py", line 138, in 
> run_wsgi
>     loadapp('config:%s' % conf_file, global_conf={'log_name': log_name})
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 247, in loadapp
>     return loadobj(APP, uri, name=name, **kw)
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 271, in loadobj
>     global_conf=global_conf)
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 296, in loadcontext
>     global_conf=global_conf)
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 320, in _loadconfig
>     return loader.get_context(object_type, name, global_conf)
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 450, in get_context
>     global_additions=global_additions)
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 562, in _pipeline_app_context
>     for name in pipeline[:-1]]
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 454, in get_context
>     section)
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 476, in _context_from_use
>     object_type, name=use, global_conf=global_conf)
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 406, in get_context
>     global_conf=global_conf)
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 296, in loadcontext
>     global_conf=global_conf)
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 328, in _loadegg
>     return loader.get_context(object_type, name, global_conf)
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 620, in get_context
>     object_type, name=name)
>   File 
> "/usr/lib/python2.6/site-packages/PasteDeploy-1.5.0-py2.6.egg/paste/deploy/loadwsgi.py",
>  line 659, in find_egg_entry_point
>     for prot in protocol_options] or '(no entry points)'))))
> LookupError: Entry point 'swift3' not found in egg 'swift' (dir: 
> /usr/lib/python2.6/site-packages; protocols: paste.filter_factory, 
> paste.filter_app_factory; entry_points: )
> 
> proxy-server.conf is as follows
> 
> [DEFAULT]
> bind_port = 8080
> workers = 8
> user = swift
> 
> [pipeline:main]
> pipeline = healthcheck cache swift3 tempauth proxy-logging proxy-server
> 
> [app:proxy-server]
> use = egg:swift#proxy
> allow_account_management = true
> account_autocreate = true
> 
> [filter:swift3]
> use = egg:swift#swift3
> 
> [filter:tempauth]
> use = egg:swift#tempauth
> user_system_root = testpass .admin http://X.X.X.X:8080/v1/AUTH_system
> 
> [filter:healthcheck]
> use = egg:swift#healthcheck
> 
> [filter:cache]
> use = egg:swift#memcache
> memcache_servers = 127.0.0.1:11211
> 
> [filter:catch_errors]
> use = egg:swift#catch_errors
> 
> [filter:proxy-logging]
> use = egg:swift#proxy_logging
> 
> 
> 
> Ta
> 
> Sandy
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________
Mailing list: https://launchpad.net/~openstack
Post to     : openstack@lists.launchpad.net
Unsubscribe : https://launchpad.net/~openstack
More help   : https://help.launchpad.net/ListHelp

Reply via email to