Hi all.

I installed Swift nodes on Ubuntu 12.04 and ubuntu-cloud-archives repo (Havana version) using these guides
http://docs.openstack.org/havana/install-guide/install/apt/content/ch_swift.html
http://docs.openstack.org/developer/swift/howto_installmultinode.html

Here's our software configuration :
                * HAproxy : 192.168.3.251
                        # Swift Proxy
                        listen dev-swiftproxy 0.0.0.0:8080
                          mode    tcp
                          balance source
                          option  tcplog
                          option  tcpka
                          source  0.0.0.0 usesrc clientip
server controller-1 192.168.3.111:8080 check inter 2000 rise 2 fall 5 server controller-2 192.168.3.211:8080 check inter 2000 rise 2 fall 5

                        # Keystone
                        listen dev-auth-public 0.0.0.0:5000
                          mode http
                          balance source
                          option  httplog
                          option  httpclose
                          option  forwardfor
server controller1 192.168.3.141:5000 check inter 2000 rise 2 fall 5 server controller2 192.168.3.241:5000 check inter 2000 rise 2 fall 5
                        listen dev-auth-admin 0.0.0.0:35357
                          mode http
                          balance source
                          option  httplog
                          option  httpclose
                          option  forwardfor
server controller1 192.168.3.141:35357 check inter 2000 rise 2 fall 5 server controller2 192.168.3.241:35357 check inter 2000 rise 2 fall 5

                * Keystone 1 : 192.168.3.141
                * Keystone 2 : 192.168.3.241

                * Swift proxy 1 : 192.168.3.111
                * Swift proxy 2 : 192.168.3.211

My proxy-server.conf is:
                [DEFAULT]
                cert_file = /etc/swift/cert.crt
                key_file = /etc/swift/cert.key
                bind_port = 8080
                workers = 8
                user = swift

                [pipeline:main]
                pipeline = healthcheck cache authtoken keystoneauth proxy-server

                [app:proxy-server]
                use = egg:swift#proxy
                allow_account_management = true
                account_autocreate = true

                [filter:keystoneauth]
                use = egg:swift#keystoneauth
                operator_roles = admin

                [filter:authtoken]
paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory

                # Delaying the auth decision is required to support token-less
                # usage for anonymous referrers ('.r:*').
                delay_auth_decision = true

                # cache directory for signing certificate
                signing_dir = /home/swift/keystone-signing

                # auth_* settings refer to the Keystone server
                auth_protocol = http
                auth_host = 192.168.3.251
                auth_port = 35357

                # the same admin_token as provided in keystone.conf
                admin_token = pass

# the service tenant and swift userid and password created in Keystone
                admin_tenant_name = service
                admin_user = swift
                admin_password = swift

                [filter:cache]
                use = egg:swift#memcache
                memcache_servers = 192.168.1.111:11211

                [filter:catch_errors]
                use = egg:swift#catch_errors

                [filter:healthcheck]
                use = egg:swift#healthcheck

In the "Verify the installation" part when I execute (through HAProxy) : # swift --debug -V 2.0 -A http://192.168.3.251:5000/v2.0 -U service:swift -K swift stat

I have this error :
# swift --debug -V 2.0 -A http://192.168.3.251:5000/v2.0 -U service:swift -K swift stat REQ: curl -i -X POST http://192.168.3.251:5000/v2.0/tokens -H "Content-Type: application/json" -H "User-Agent: python-keystoneclient" DEBUG:keystoneclient.httpclient:REQ: curl -i -X POST http://192.168.3.251:5000/v2.0/tokens -H "Content-Type: application/json" -H "User-Agent: python-keystoneclient" REQ BODY: {"auth": {"tenantName": "service", "passwordCredentials": {"username": "swift", "password": "swift"}}}

DEBUG:keystoneclient.httpclient:REQ BODY: {"auth": {"tenantName": "service", "passwordCredentials": {"username": "swift", "password": "swift"}}}

INFO:urllib3.connectionpool:Starting new HTTP connection (1): 192.168.3.251
                DEBUG:urllib3.connectionpool:"POST /v2.0/tokens HTTP/1.1" 200 
3313
RESP: [200] CaseInsensitiveDict({'date': 'Wed, 23 Oct 2013 13:56:40 GMT', 'vary': 'X-Auth-Token', 'content-length': '3313', 'content-type': 'application/json', 'connection': 'close'}) RESP BODY: {"access": {"token": {"issued_at": "2013-10-23T13:56:40.365230", "expires": "2013-10-24T13:56:40Z", "id": "MIIGTQYJKoZIhvcNAQcCoIIGPjCCBjoCAQExCTAHBgUrDgMCGjCCBKMGCSqGSIb3DQEHAaCCBJQEggSQeyJhY2Nlc3MiOiB7InRva2VuIjogeyJpc3N1ZWRfYXQiOiAiMjAxMy0xMC0yM1QxMzo1Njo0MC4zNjUyMzAiLCAiZXhwaXJlcyI6ICIyMDEzLTEwLTI0VDEzOjU2OjQwWiIsICJpZCI6ICJwbGFjZWhvbGRlciIsICJ0ZW5hbnQiOiB7ImRlc2NyaXB0aW9uIjogIlNlcnZpY2UgVGVuYW50IiwgImVuYWJsZWQiOiB0cnVlLCAiaWQiOiAiNWJlY2I0YTkzZTdmNDk4YmJlODM1MzRmNDQ4MWRjMGQiLCAibmFtZSI6ICJzZXJ2aWNlIn19LCAic2VydmljZUNhdGFsb2ciOiBbeyJlbmRwb2ludHMiOiBbeyJhZG1pblVSTCI6ICJodHRwOi8vMTkyLjE2OC4zLjI1MTo4MDgwL3YxL0FVVEhfNWJlY2I0YTkzZTdmNDk4YmJlODM1MzRmNDQ4MWRjMGQiLCAicmVnaW9uIjogInJlZ2lvbk9uZSIsICJpbnRlcm5hbFVSTCI6ICJodHRwOi8vMTkyLjE2OC4zLjI1MTo4MDgwL3YxL0FVVEhfNWJlY2I0YTkzZTdmNDk4YmJlODM1MzRmNDQ4MWRjMGQiLCAiaWQiOiAiMzdhZWQxODc3NmQ5NDUzZGI3MmE3ODc1ZWM3ZTY5ZGEiLCAicHVibGljVVJMIjogImh0dHA6Ly8xOTIuMTY4LjMuMjUxOjgwODAvdjEvQVVUSF81YmVjYjRhOTNlN2Y0OThiYmU4MzUzNGY0NDgxZGMwZCJ9XSwgImVuZHBvaW50c19saW5rcyI6IFtdLCAidHlwZSI6ICJvYmplY3Qtc3RvcmUiLCAibmFtZSI6ICJzd2lmdCJ9LCB7ImVuZHBvaW50cyI6IFt7ImFkb
WluVVJMI
jogImh0dHA6Ly8xOTIuMTY4LjMuMjUxOjM1MzU3L3YyLjAiLCAicmVnaW9uIjogInJlZ2lvbk9uZSIsICJpbnRlcm5hbFVSTCI6ICJodHRwOi8vMTkyLjE2OC4zLjI1MTo1MDAwL3YyLjAiLCAiaWQiOiAiMGJmNzIxNjM1MmFjNDE4ZmEzODVkNWZmM2ZmODlmMzAiLCAicHVibGljVVJMIjogImh0dHA6Ly8xOTIuMTY4LjMuMjUxOjUwMDAvdjIuMCJ9XSwgImVuZHBvaW50c19saW5rcyI6IFtdLCAidHlwZSI6ICJpZGVudGl0eSIsICJuYW1lIjogImtleXN0b25lIn1dLCAidXNlciI6IHsidXNlcm5hbWUiOiAic3dpZnQiLCAicm9sZXNfbGlua3MiOiBbXSwgImlkIjogIjYzZWVjNjMyYWI3NTRiYzY5NTgzY2M0YTI5Yjc0MDVmIiwgInJvbGVzIjogW3sibmFtZSI6ICJhZG1pbiJ9XSwgIm5hbWUiOiAic3dpZnQifSwgIm1ldGFkYXRhIjogeyJpc19hZG1pbiI6IDAsICJyb2xlcyI6IFsiZjUwNjczYjliNDUwNDQyZGI1OGRkYTExYjQ4M2ZkMmUiXX19fTGCAYEwggF9AgEBMFwwVzELMAkGA1UEBhMCVVMxDjAMBgNVBAgMBVVuc2V0MQ4wDAYDVQQHDAVVbnNldDEOMAwGA1UECgwFVW5zZXQxGDAWBgNVBAMMD3d3dy5leGFtcGxlLmNvbQIBATAHBgUrDgMCGjANBgkqhkiG9w0BAQEFAASCAQAIQUsQ3aCgXsBUZsNToOHh9nSNs3BYbuIQjtrNQaYU65AILsYM+I+kh-woSfjdx29gjnU3G-X0jonYc2wv+OrY3A7DPQjuCov5rPpbm05wOZdXyEp4udXPFR69W5oWcM4K-dzLBBkJBhItKMQ-Jo3SwqxyZIkqP8mfakEDeNwfHGS
+1JDM080
jIU3CZ-h0fnT2+TonXTJpd6if48P2qM5laPAaOjOeC51EGd5gU7-BUhnAgKmlRDy1pWiC953lqM+LR99MEHmdSk03ouMS2Gi9SwSsWn8ZcZDjnwjjr7zJQSbcNMzIM29aU91s8M6AQ9iBLiHNltCcyewmzBb9JRo0", "tenant": {"description": "Service Tenant", "enabled": true, "id": "5becb4a93e7f498bbe83534f4481dc0d", "name": "service"}}, "serviceCatalog": [{"endpoints": [{"adminURL": "http://192.168.3.251:8080/v1/AUTH_5becb4a93e7f498bbe83534f4481dc0d";, "region": "regionOne", "internalURL": "http://192.168.3.251:8080/v1/AUTH_5becb4a93e7f498bbe83534f4481dc0d";, "id": "37aed18776d9453db72a7875ec7e69da", "publicURL": "http://192.168.3.251:8080/v1/AUTH_5becb4a93e7f498bbe83534f4481dc0d"}], "endpoints_links": [], "type": "object-store", "name": "swift"}, {"endpoints": [{"adminURL": "http://192.168.3.251:35357/v2.0";, "region": "regionOne", "internalURL": "http://192.168.3.251:5000/v2.0";, "id": "0bf7216352ac418fa385d5ff3ff89f30", "publicURL": "http://192.168.3.251:5000/v2.0"}], "endpoints_links": [], "type": "identity", "name": "keystone"}], "user": {"username": "swift", "roles_links": [], "id": "63eec632ab754bc69583cc4a29b7405f", "roles": [{"name": "admin"}], "name": "swift"}, "metadata": {"is_admin": 0, "roles": ["f50673b9b450442db58dda11b483fd2e"]}}}

DEBUG:keystoneclient.httpclient:RESP: [200] CaseInsensitiveDict({'date': 'Wed, 23 Oct 2013 13:56:40 GMT', 'vary': 'X-Auth-Token', 'content-length': '3313', 'content-type': 'application/json', 'connection': 'close'}) RESP BODY: {"access": {"token": {"issued_at": "2013-10-23T13:56:40.365230", "expires": "2013-10-24T13:56:40Z", "id": "MIIGTQYJKoZIhvcNAQcCoIIGPjCCBjoCAQExCTAHBgUrDgMCGjCCBKMGCSqGSIb3DQEHAaCCBJQEggSQeyJhY2Nlc3MiOiB7InRva2VuIjogeyJpc3N1ZWRfYXQiOiAiMjAxMy0xMC0yM1QxMzo1Njo0MC4zNjUyMzAiLCAiZXhwaXJlcyI6ICIyMDEzLTEwLTI0VDEzOjU2OjQwWiIsICJpZCI6ICJwbGFjZWhvbGRlciIsICJ0ZW5hbnQiOiB7ImRlc2NyaXB0aW9uIjogIlNlcnZpY2UgVGVuYW50IiwgImVuYWJsZWQiOiB0cnVlLCAiaWQiOiAiNWJlY2I0YTkzZTdmNDk4YmJlODM1MzRmNDQ4MWRjMGQiLCAibmFtZSI6ICJzZXJ2aWNlIn19LCAic2VydmljZUNhdGFsb2ciOiBbeyJlbmRwb2ludHMiOiBbeyJhZG1pblVSTCI6ICJodHRwOi8vMTkyLjE2OC4zLjI1MTo4MDgwL3YxL0FVVEhfNWJlY2I0YTkzZTdmNDk4YmJlODM1MzRmNDQ4MWRjMGQiLCAicmVnaW9uIjogInJlZ2lvbk9uZSIsICJpbnRlcm5hbFVSTCI6ICJodHRwOi8vMTkyLjE2OC4zLjI1MTo4MDgwL3YxL0FVVEhfNWJlY2I0YTkzZTdmNDk4YmJlODM1MzRmNDQ4MWRjMGQiLCAiaWQiOiAiMzdhZWQxODc3NmQ5NDUzZGI3MmE3ODc1ZWM3ZTY5ZGEiLCAicHVibGljVVJMIjogImh0dHA6Ly8xOTIuMTY4LjMuMjUxOjgwODAvdjEvQVVUSF81YmVjYjRhOTNlN2Y0OThiYmU4MzUzNGY0NDgxZGMwZCJ9XSwgImVuZHBvaW50c19saW5rcyI6IFtdLCAidHlwZSI6ICJvYmplY3Qtc3RvcmUiLCAibmFtZSI6ICJzd2lmdCJ9LCB7ImVuZHBvaW50cyI6IFt7ImFkb
WluVVJMI
jogImh0dHA6Ly8xOTIuMTY4LjMuMjUxOjM1MzU3L3YyLjAiLCAicmVnaW9uIjogInJlZ2lvbk9uZSIsICJpbnRlcm5hbFVSTCI6ICJodHRwOi8vMTkyLjE2OC4zLjI1MTo1MDAwL3YyLjAiLCAiaWQiOiAiMGJmNzIxNjM1MmFjNDE4ZmEzODVkNWZmM2ZmODlmMzAiLCAicHVibGljVVJMIjogImh0dHA6Ly8xOTIuMTY4LjMuMjUxOjUwMDAvdjIuMCJ9XSwgImVuZHBvaW50c19saW5rcyI6IFtdLCAidHlwZSI6ICJpZGVudGl0eSIsICJuYW1lIjogImtleXN0b25lIn1dLCAidXNlciI6IHsidXNlcm5hbWUiOiAic3dpZnQiLCAicm9sZXNfbGlua3MiOiBbXSwgImlkIjogIjYzZWVjNjMyYWI3NTRiYzY5NTgzY2M0YTI5Yjc0MDVmIiwgInJvbGVzIjogW3sibmFtZSI6ICJhZG1pbiJ9XSwgIm5hbWUiOiAic3dpZnQifSwgIm1ldGFkYXRhIjogeyJpc19hZG1pbiI6IDAsICJyb2xlcyI6IFsiZjUwNjczYjliNDUwNDQyZGI1OGRkYTExYjQ4M2ZkMmUiXX19fTGCAYEwggF9AgEBMFwwVzELMAkGA1UEBhMCVVMxDjAMBgNVBAgMBVVuc2V0MQ4wDAYDVQQHDAVVbnNldDEOMAwGA1UECgwFVW5zZXQxGDAWBgNVBAMMD3d3dy5leGFtcGxlLmNvbQIBATAHBgUrDgMCGjANBgkqhkiG9w0BAQEFAASCAQAIQUsQ3aCgXsBUZsNToOHh9nSNs3BYbuIQjtrNQaYU65AILsYM+I+kh-woSfjdx29gjnU3G-X0jonYc2wv+OrY3A7DPQjuCov5rPpbm05wOZdXyEp4udXPFR69W5oWcM4K-dzLBBkJBhItKMQ-Jo3SwqxyZIkqP8mfakEDeNwfHGS
+1JDM080
jIU3CZ-h0fnT2+TonXTJpd6if48P2qM5laPAaOjOeC51EGd5gU7-BUhnAgKmlRDy1pWiC953lqM+LR99MEHmdSk03ouMS2Gi9SwSsWn8ZcZDjnwjjr7zJQSbcNMzIM29aU91s8M6AQ9iBLiHNltCcyewmzBb9JRo0", "tenant": {"description": "Service Tenant", "enabled": true, "id": "5becb4a93e7f498bbe83534f4481dc0d", "name": "service"}}, "serviceCatalog": [{"endpoints": [{"adminURL": "http://192.168.3.251:8080/v1/AUTH_5becb4a93e7f498bbe83534f4481dc0d";, "region": "regionOne", "internalURL": "http://192.168.3.251:8080/v1/AUTH_5becb4a93e7f498bbe83534f4481dc0d";, "id": "37aed18776d9453db72a7875ec7e69da", "publicURL": "http://192.168.3.251:8080/v1/AUTH_5becb4a93e7f498bbe83534f4481dc0d"}], "endpoints_links": [], "type": "object-store", "name": "swift"}, {"endpoints": [{"adminURL": "http://192.168.3.251:35357/v2.0";, "region": "regionOne", "internalURL": "http://192.168.3.251:5000/v2.0";, "id": "0bf7216352ac418fa385d5ff3ff89f30", "publicURL": "http://192.168.3.251:5000/v2.0"}], "endpoints_links": [], "type": "identity", "name": "keystone"}], "user": {"username": "swift", "roles_links": [], "id": "63eec632ab754bc69583cc4a29b7405f", "roles": [{"name": "admin"}], "name": "swift"}, "metadata": {"is_admin": 0, "roles": ["f50673b9b450442db58dda11b483fd2e"]}}}

                ERROR:swiftclient:''
                Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/swiftclient/client.py", line 1110, in _retry
                        rv = func(self.url, self.token, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/swiftclient/client.py", line 418, in head_account
                        resp = conn.getresponse()
                  File "/usr/lib/python2.7/httplib.py", line 1030, in 
getresponse
                        response.begin()
                  File "/usr/lib/python2.7/httplib.py", line 407, in begin
                        version, status, reason = self._read_status()
                  File "/usr/lib/python2.7/httplib.py", line 371, in 
_read_status
                        raise BadStatusLine(line)
                BadStatusLine: ''
                ''

Anyone can help me on this?

_______________________________________________
Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack
Post to     : [email protected]
Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack

Reply via email to