Glance & Swift integration not working - auth failure

Asked by Jesse Pretorius

I need some help identifying where the bug is in my configuration - I can successfully do keystone actions, a 'glance index', and have also tested that I can upload items into swift using glance's credentials and keystone authentication.

Environment - Openstack Essex on Ubuntu 12.04 LTS

I can't seem to find why when I try to upload an image to glance it fails:
---
glance add name="ubuntu-12.04.1-LTS-x86_64" is_public=true container_format=bare disk_format=qcow2 distro="ubuntu-12.04.1-LTS-x86_64" < precise-server-cloudimg-amd64-disk1.img

Failed to add image. Got error:
Data supplied was not valid.
Details: 400 Bad Request

The server could not comply with the request since it is either malformed or otherwise incorrect.

 Error uploading image: (ClientException): Error while getting answers from auth server
---

---here are the logs through the process - note the ERROR item---
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [glance.api.middleware.version_negotiation] Processing request: POST /v1/images Accept:
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [glance.api.middleware.version_negotiation] Matched versioned URI. Version: 1.0
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [keystone.middleware.auth_token] Authenticating user token
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [keystone.middleware.auth_token] Removing headers from request environment: X-Identity-Status,X-Tenant-Id,X-Tenant-Name,X-User-Id,X-User-Name,X-Roles,X-User,X-Tenant,X-Role
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [routes.middleware] Matched POST /images
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [routes.middleware] Route path: '/images', defaults: {'action': u'create', 'controller': <glance.common.wsgi.Resource object at 0x310a990>}
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [routes.middleware] Match dict: {'action': u'create', 'controller': <glance.common.wsgi.Resource object at 0x310a990>}
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [glance.registry] Adding image metadata...
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [keystone.middleware.auth_token] Authenticating user token
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [keystone.middleware.auth_token] Removing headers from request environment: X-Identity-Status,X-Tenant-Id,X-Tenant-Name,X-User-Id,X-User-Name,X-Roles,X-User,X-Tenant,X-Role
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [routes.middleware] Matched POST /images
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [routes.middleware] Route path: '/images', defaults: {'action': u'create', 'controller': <glance.common.wsgi.Resource object at 0x3541750>}
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [routes.middleware] Match dict: {'action': u'create', 'controller': <glance.common.wsgi.Resource object at 0x3541750>}
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] BEGIN (implicit)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] INSERT INTO images (created_at, updated_at, deleted_at, deleted, id, name, disk_format, container_format, size, status, is_public, location, checksum, min_disk, min_ram, owner, protected) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] (datetime.datetime(2013, 2, 1, 16, 42, 27, 479046), datetime.datetime(2013, 2, 1, 16, 42, 27, 479060), None, 0, '86661d54-2603-437d-8303-9f09b7c0fe78', 'ubuntu-12.04.1-LTS-x86_64', 'qcow2', 'bare', 250413056, 'queued', 1, None, None, 0, 0, 'fdd375d00fb84366a5315dede4478073', 0)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] SELECT image_properties.created_at AS image_properties_created_at, image_properties.updated_at AS image_properties_updated_at, image_properties.deleted_at AS image_properties_deleted_at, image_properties.deleted AS image_properties_deleted, image_properties.id AS image_properties_id, image_properties.image_id AS image_properties_image_id, image_properties.name AS image_properties_name, image_properties.value AS image_properties_value #012FROM image_properties #012WHERE %s = image_properties.image_id
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] ('86661d54-2603-437d-8303-9f09b7c0fe78',)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [sqlalchemy.engine.base.Engine] Col ('image_properties_created_at', 'image_properties_updated_at', 'image_properties_deleted_at', 'image_properties_deleted', 'image_properties_id', 'image_properties_image_id', 'image_properties_name', 'image_properties_value')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] INSERT INTO image_properties (created_at, updated_at, deleted_at, deleted, image_id, name, value) VALUES (%s, %s, %s, %s, %s, %s, %s)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] (datetime.datetime(2013, 2, 1, 16, 42, 27, 486686), datetime.datetime(2013, 2, 1, 16, 42, 27, 486686), None, 0, '86661d54-2603-437d-8303-9f09b7c0fe78', 'distro', 'ubuntu-12.04.1-LTS-x86_64')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] COMMIT
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] SELECT images.created_at AS images_created_at, images.updated_at AS images_updated_at, images.deleted_at AS images_deleted_at, images.deleted AS images_deleted, images.id AS images_id, images.name AS images_name, images.disk_format AS images_disk_format, images.container_format AS images_container_format, images.size AS images_size, images.status AS images_status, images.is_public AS images_is_public, images.location AS images_location, images.checksum AS images_checksum, images.min_disk AS images_min_disk, images.min_ram AS images_min_ram, images.owner AS images_owner, images.protected AS images_protected, image_members_1.created_at AS image_members_1_created_at, image_members_1.updated_at AS image_members_1_updated_at, image_members_1.deleted_at AS image_members_1_deleted_at, image_members_1.deleted AS image_members_1_deleted, image_members_1.id AS image_members_1_id, image_members_1.image_id AS image_members_1_image_id, image_members_1.member AS image_members_1_member, image_members_1.can_share AS image_members_1_can_share, image_properties_1.created_at AS image_properties_1_created_at, image_properties_1.updated_at AS image_properties_1_updated_at, image_properties_1.deleted_at AS image_properties_1_deleted_at, image_properties_1.deleted AS image_properties_1_deleted, image_properties_1.id AS image_properties_1_id, image_properties_1.image_id AS image_properties_1_image_id, image_properties_1.name AS image_properties_1_name, image_properties_1.value AS image_properties_1_value #012FROM images LEFT OUTER JOIN image_members AS image_members_1 ON images.id = image_members_1.image_id LEFT OUTER JOIN image_properties AS image_properties_1 ON images.id = image_properties_1.image_id #012WHERE images.id = %s AND images.deleted = %s
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] ('86661d54-2603-437d-8303-9f09b7c0fe78', 0)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [sqlalchemy.engine.base.Engine] Col ('images_created_at', 'images_updated_at', 'images_deleted_at', 'images_deleted', 'images_id', 'images_name', 'images_disk_format', 'images_container_format', 'images_size', 'images_status', 'images_is_public', 'images_location', 'images_checksum', 'images_min_disk', 'images_min_ram', 'images_owner', 'images_protected', 'image_members_1_created_at', 'image_members_1_updated_at', 'image_members_1_deleted_at', 'image_members_1_deleted', 'image_members_1_id', 'image_members_1_image_id', 'image_members_1_member', 'image_members_1_can_share', 'image_properties_1_created_at', 'image_properties_1_updated_at', 'image_properties_1_deleted_at', 'image_properties_1_deleted', 'image_properties_1_id', 'image_properties_1_image_id', 'image_properties_1_name', 'image_properties_1_value')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [sqlalchemy.engine.base.Engine] Row (datetime.datetime(2013, 2, 1, 16, 42, 27), datetime.datetime(2013, 2, 1, 16, 42, 27), None, 0, '86661d54-2603-437d-8303-9f09b7c0fe78', 'ubuntu-12.04.1-LTS-x86_64', 'qcow2', 'bare', 250413056L, 'queued', 1, None, None, 0L, 0L, 'fdd375d00fb84366a5315dede4478073', 0, None, None, None, None, None, None, None, None, datetime.datetime(2013, 2, 1, 16, 42, 27), datetime.datetime(2013, 2, 1, 16, 42, 27), None, 0, 22L, '86661d54-2603-437d-8303-9f09b7c0fe78', 'distro', 'ubuntu-12.04.1-LTS-x86_64')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [eventlet.wsgi.server] 10.15.10.11 - - [01/Feb/2013 17:42:27] "POST /images HTTP/1.1" 200 625 0.098720
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [glance.api.v1.images] Setting image 86661d54-2603-437d-8303-9f09b7c0fe78 to status 'saving'
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [glance.registry] Updating image metadata for image 86661d54-2603-437d-8303-9f09b7c0fe78...
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [keystone.middleware.auth_token] Authenticating user token
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [keystone.middleware.auth_token] Removing headers from request environment: X-Identity-Status,X-Tenant-Id,X-Tenant-Name,X-User-Id,X-User-Name,X-Roles,X-User,X-Tenant,X-Role
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [routes.middleware] Matched PUT /images/86661d54-2603-437d-8303-9f09b7c0fe78
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [routes.middleware] Route path: '/images/:(id)', defaults: {'action': u'update', 'controller': <glance.common.wsgi.Resource object at 0x3541750>}
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [routes.middleware] Match dict: {'action': u'update', 'controller': <glance.common.wsgi.Resource object at 0x3541750>, 'id': u'86661d54-2603-437d-8303-9f09b7c0fe78'}
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [glance.registry.api.v1.images] Updating image 86661d54-2603-437d-8303-9f09b7c0fe78 with metadata: {u'status': u'saving'}
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] BEGIN (implicit)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] SELECT images.created_at AS images_created_at, images.updated_at AS images_updated_at, images.deleted_at AS images_deleted_at, images.deleted AS images_deleted, images.id AS images_id, images.name AS images_name, images.disk_format AS images_disk_format, images.container_format AS images_container_format, images.size AS images_size, images.status AS images_status, images.is_public AS images_is_public, images.location AS images_location, images.checksum AS images_checksum, images.min_disk AS images_min_disk, images.min_ram AS images_min_ram, images.owner AS images_owner, images.protected AS images_protected, image_members_1.created_at AS image_members_1_created_at, image_members_1.updated_at AS image_members_1_updated_at, image_members_1.deleted_at AS image_members_1_deleted_at, image_members_1.deleted AS image_members_1_deleted, image_members_1.id AS image_members_1_id, image_members_1.image_id AS image_members_1_image_id, image_members_1.member AS image_members_1_member, image_members_1.can_share AS image_members_1_can_share, image_properties_1.created_at AS image_properties_1_created_at, image_properties_1.updated_at AS image_properties_1_updated_at, image_properties_1.deleted_at AS image_properties_1_deleted_at, image_properties_1.deleted AS image_properties_1_deleted, image_properties_1.id AS image_properties_1_id, image_properties_1.image_id AS image_properties_1_image_id, image_properties_1.name AS image_properties_1_name, image_properties_1.value AS image_properties_1_value #012FROM images LEFT OUTER JOIN image_members AS image_members_1 ON images.id = image_members_1.image_id LEFT OUTER JOIN image_properties AS image_properties_1 ON images.id = image_properties_1.image_id #012WHERE images.id = %s AND images.deleted = %s
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] ('86661d54-2603-437d-8303-9f09b7c0fe78', 0)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [sqlalchemy.engine.base.Engine] Col ('images_created_at', 'images_updated_at', 'images_deleted_at', 'images_deleted', 'images_id', 'images_name', 'images_disk_format', 'images_container_format', 'images_size', 'images_status', 'images_is_public', 'images_location', 'images_checksum', 'images_min_disk', 'images_min_ram', 'images_owner', 'images_protected', 'image_members_1_created_at', 'image_members_1_updated_at', 'image_members_1_deleted_at', 'image_members_1_deleted', 'image_members_1_id', 'image_members_1_image_id', 'image_members_1_member', 'image_members_1_can_share', 'image_properties_1_created_at', 'image_properties_1_updated_at', 'image_properties_1_deleted_at', 'image_properties_1_deleted', 'image_properties_1_id', 'image_properties_1_image_id', 'image_properties_1_name', 'image_properties_1_value')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [sqlalchemy.engine.base.Engine] Row (datetime.datetime(2013, 2, 1, 16, 42, 27), datetime.datetime(2013, 2, 1, 16, 42, 27), None, 0, '86661d54-2603-437d-8303-9f09b7c0fe78', 'ubuntu-12.04.1-LTS-x86_64', 'qcow2', 'bare', 250413056L, 'queued', 1, None, None, 0L, 0L, 'fdd375d00fb84366a5315dede4478073', 0, None, None, None, None, None, None, None, None, datetime.datetime(2013, 2, 1, 16, 42, 27), datetime.datetime(2013, 2, 1, 16, 42, 27), None, 0, 22L, '86661d54-2603-437d-8303-9f09b7c0fe78', 'distro', 'ubuntu-12.04.1-LTS-x86_64')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] UPDATE images SET updated_at=%s, status=%s WHERE images.id = %s
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] (datetime.datetime(2013, 2, 1, 16, 42, 27, 590458), 'saving', '86661d54-2603-437d-8303-9f09b7c0fe78')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] COMMIT
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] SELECT images.created_at AS images_created_at, images.updated_at AS images_updated_at, images.deleted_at AS images_deleted_at, images.deleted AS images_deleted, images.id AS images_id, images.name AS images_name, images.disk_format AS images_disk_format, images.container_format AS images_container_format, images.size AS images_size, images.status AS images_status, images.is_public AS images_is_public, images.location AS images_location, images.checksum AS images_checksum, images.min_disk AS images_min_disk, images.min_ram AS images_min_ram, images.owner AS images_owner, images.protected AS images_protected, image_members_1.created_at AS image_members_1_created_at, image_members_1.updated_at AS image_members_1_updated_at, image_members_1.deleted_at AS image_members_1_deleted_at, image_members_1.deleted AS image_members_1_deleted, image_members_1.id AS image_members_1_id, image_members_1.image_id AS image_members_1_image_id, image_members_1.member AS image_members_1_member, image_members_1.can_share AS image_members_1_can_share, image_properties_1.created_at AS image_properties_1_created_at, image_properties_1.updated_at AS image_properties_1_updated_at, image_properties_1.deleted_at AS image_properties_1_deleted_at, image_properties_1.deleted AS image_properties_1_deleted, image_properties_1.id AS image_properties_1_id, image_properties_1.image_id AS image_properties_1_image_id, image_properties_1.name AS image_properties_1_name, image_properties_1.value AS image_properties_1_value #012FROM images LEFT OUTER JOIN image_members AS image_members_1 ON images.id = image_members_1.image_id LEFT OUTER JOIN image_properties AS image_properties_1 ON images.id = image_properties_1.image_id #012WHERE images.id = %s AND images.deleted = %s
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] ('86661d54-2603-437d-8303-9f09b7c0fe78', 0)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [sqlalchemy.engine.base.Engine] Col ('images_created_at', 'images_updated_at', 'images_deleted_at', 'images_deleted', 'images_id', 'images_name', 'images_disk_format', 'images_container_format', 'images_size', 'images_status', 'images_is_public', 'images_location', 'images_checksum', 'images_min_disk', 'images_min_ram', 'images_owner', 'images_protected', 'image_members_1_created_at', 'image_members_1_updated_at', 'image_members_1_deleted_at', 'image_members_1_deleted', 'image_members_1_id', 'image_members_1_image_id', 'image_members_1_member', 'image_members_1_can_share', 'image_properties_1_created_at', 'image_properties_1_updated_at', 'image_properties_1_deleted_at', 'image_properties_1_deleted', 'image_properties_1_id', 'image_properties_1_image_id', 'image_properties_1_name', 'image_properties_1_value')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [sqlalchemy.engine.base.Engine] Row (datetime.datetime(2013, 2, 1, 16, 42, 27), datetime.datetime(2013, 2, 1, 16, 42, 27), None, 0, '86661d54-2603-437d-8303-9f09b7c0fe78', 'ubuntu-12.04.1-LTS-x86_64', 'qcow2', 'bare', 250413056L, 'saving', 1, None, None, 0L, 0L, 'fdd375d00fb84366a5315dede4478073', 0, None, None, None, None, None, None, None, None, datetime.datetime(2013, 2, 1, 16, 42, 27), datetime.datetime(2013, 2, 1, 16, 42, 27), None, 0, 22L, '86661d54-2603-437d-8303-9f09b7c0fe78', 'distro', 'ubuntu-12.04.1-LTS-x86_64')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [eventlet.wsgi.server] 10.15.10.11 - - [01/Feb/2013 17:42:27] "PUT /images/86661d54-2603-437d-8303-9f09b7c0fe78 HTTP/1.1" 200 625 0.092052
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [glance.api.v1.images] Uploading image data for image 86661d54-2603-437d-8303-9f09b7c0fe78 to swift store
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [glance.store.swift] Creating Swift connection with (auth_address=http://10.15.10.10:5000/v2.0/, user=service:glance, snet=False, auth_version=2)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [root] HTTP PERF: 0.22406 seconds to POST http://10.15.10.10:5000/v2.0/tokens)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 ERROR [glance.api.v1.images] Traceback (most recent call last):#012 File "/usr/lib/python2.7/dist-packages/glance/api/v1/images.py", line 398, in _upload#012 image_size)#012 File "/usr/lib/python2.7/dist-packages/glance/store/swift.py", line 362, in add#012 create_container_if_missing(self.container, swift_conn, self.conf)#012 File "/usr/lib/python2.7/dist-packages/glance/store/swift.py", line 544, in create_container_if_missing#012 swift_conn.head_container(container)#012 File "/usr/lib/python2.7/dist-packages/swift/common/client.py", line 883, in head_container#012 return self._retry(None, head_container, container)#012 File "/usr/lib/python2.7/dist-packages/swift/common/client.py", line 835, in _retry#012 self.url, self.token = self.get_auth()#012 File "/usr/lib/python2.7/dist-packages/swift/common/client.py", line 823, in get_auth#012 auth_version=self.auth_version)#012 File "/usr/lib/python2.7/dist-packages/swift/common/client.py", line 243, in get_auth#012 return _get_auth_v2_0(url, user, key, snet)#012 File "/usr/lib/python2.7/dist-packages/swift/common/client.py", line 211, in _get_auth_v2_0#012 raise ClientException("Error while getting answers from auth server")#012ClientException: Error while getting answers from auth server
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 5865 DEBUG [glance.registry] Updating image metadata for image 86661d54-2603-437d-8303-9f09b7c0fe78...
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [keystone.middleware.auth_token] Authenticating user token
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [keystone.middleware.auth_token] Removing headers from request environment: X-Identity-Status,X-Tenant-Id,X-Tenant-Name,X-User-Id,X-User-Name,X-Roles,X-User,X-Tenant,X-Role
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [routes.middleware] Matched PUT /images/86661d54-2603-437d-8303-9f09b7c0fe78
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [routes.middleware] Route path: '/images/:(id)', defaults: {'action': u'update', 'controller': <glance.common.wsgi.Resource object at 0x3541750>}
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [routes.middleware] Match dict: {'action': u'update', 'controller': <glance.common.wsgi.Resource object at 0x3541750>, 'id': u'86661d54-2603-437d-8303-9f09b7c0fe78'}
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [glance.registry.api.v1.images] Updating image 86661d54-2603-437d-8303-9f09b7c0fe78 with metadata: {u'status': u'killed'}
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] BEGIN (implicit)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] SELECT images.created_at AS images_created_at, images.updated_at AS images_updated_at, images.deleted_at AS images_deleted_at, images.deleted AS images_deleted, images.id AS images_id, images.name AS images_name, images.disk_format AS images_disk_format, images.container_format AS images_container_format, images.size AS images_size, images.status AS images_status, images.is_public AS images_is_public, images.location AS images_location, images.checksum AS images_checksum, images.min_disk AS images_min_disk, images.min_ram AS images_min_ram, images.owner AS images_owner, images.protected AS images_protected, image_members_1.created_at AS image_members_1_created_at, image_members_1.updated_at AS image_members_1_updated_at, image_members_1.deleted_at AS image_members_1_deleted_at, image_members_1.deleted AS image_members_1_deleted, image_members_1.id AS image_members_1_id, image_members_1.image_id AS image_members_1_image_id, image_members_1.member AS image_members_1_member, image_members_1.can_share AS image_members_1_can_share, image_properties_1.created_at AS image_properties_1_created_at, image_properties_1.updated_at AS image_properties_1_updated_at, image_properties_1.deleted_at AS image_properties_1_deleted_at, image_properties_1.deleted AS image_properties_1_deleted, image_properties_1.id AS image_properties_1_id, image_properties_1.image_id AS image_properties_1_image_id, image_properties_1.name AS image_properties_1_name, image_properties_1.value AS image_properties_1_value #012FROM images LEFT OUTER JOIN image_members AS image_members_1 ON images.id = image_members_1.image_id LEFT OUTER JOIN image_properties AS image_properties_1 ON images.id = image_properties_1.image_id #012WHERE images.id = %s AND images.deleted = %s
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] ('86661d54-2603-437d-8303-9f09b7c0fe78', 0)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [sqlalchemy.engine.base.Engine] Col ('images_created_at', 'images_updated_at', 'images_deleted_at', 'images_deleted', 'images_id', 'images_name', 'images_disk_format', 'images_container_format', 'images_size', 'images_status', 'images_is_public', 'images_location', 'images_checksum', 'images_min_disk', 'images_min_ram', 'images_owner', 'images_protected', 'image_members_1_created_at', 'image_members_1_updated_at', 'image_members_1_deleted_at', 'image_members_1_deleted', 'image_members_1_id', 'image_members_1_image_id', 'image_members_1_member', 'image_members_1_can_share', 'image_properties_1_created_at', 'image_properties_1_updated_at', 'image_properties_1_deleted_at', 'image_properties_1_deleted', 'image_properties_1_id', 'image_properties_1_image_id', 'image_properties_1_name', 'image_properties_1_value')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [sqlalchemy.engine.base.Engine] Row (datetime.datetime(2013, 2, 1, 16, 42, 27), datetime.datetime(2013, 2, 1, 16, 42, 27), None, 0, '86661d54-2603-437d-8303-9f09b7c0fe78', 'ubuntu-12.04.1-LTS-x86_64', 'qcow2', 'bare', 250413056L, 'saving', 1, None, None, 0L, 0L, 'fdd375d00fb84366a5315dede4478073', 0, None, None, None, None, None, None, None, None, datetime.datetime(2013, 2, 1, 16, 42, 27), datetime.datetime(2013, 2, 1, 16, 42, 27), None, 0, 22L, '86661d54-2603-437d-8303-9f09b7c0fe78', 'distro', 'ubuntu-12.04.1-LTS-x86_64')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] UPDATE images SET updated_at=%s, status=%s WHERE images.id = %s
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] (datetime.datetime(2013, 2, 1, 16, 42, 27, 914836), 'killed', '86661d54-2603-437d-8303-9f09b7c0fe78')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] COMMIT
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] SELECT images.created_at AS images_created_at, images.updated_at AS images_updated_at, images.deleted_at AS images_deleted_at, images.deleted AS images_deleted, images.id AS images_id, images.name AS images_name, images.disk_format AS images_disk_format, images.container_format AS images_container_format, images.size AS images_size, images.status AS images_status, images.is_public AS images_is_public, images.location AS images_location, images.checksum AS images_checksum, images.min_disk AS images_min_disk, images.min_ram AS images_min_ram, images.owner AS images_owner, images.protected AS images_protected, image_members_1.created_at AS image_members_1_created_at, image_members_1.updated_at AS image_members_1_updated_at, image_members_1.deleted_at AS image_members_1_deleted_at, image_members_1.deleted AS image_members_1_deleted, image_members_1.id AS image_members_1_id, image_members_1.image_id AS image_members_1_image_id, image_members_1.member AS image_members_1_member, image_members_1.can_share AS image_members_1_can_share, image_properties_1.created_at AS image_properties_1_created_at, image_properties_1.updated_at AS image_properties_1_updated_at, image_properties_1.deleted_at AS image_properties_1_deleted_at, image_properties_1.deleted AS image_properties_1_deleted, image_properties_1.id AS image_properties_1_id, image_properties_1.image_id AS image_properties_1_image_id, image_properties_1.name AS image_properties_1_name, image_properties_1.value AS image_properties_1_value #012FROM images LEFT OUTER JOIN image_members AS image_members_1 ON images.id = image_members_1.image_id LEFT OUTER JOIN image_properties AS image_properties_1 ON images.id = image_properties_1.image_id #012WHERE images.id = %s AND images.deleted = %s
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 INFO [sqlalchemy.engine.base.Engine] ('86661d54-2603-437d-8303-9f09b7c0fe78', 0)
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [sqlalchemy.engine.base.Engine] Col ('images_created_at', 'images_updated_at', 'images_deleted_at', 'images_deleted', 'images_id', 'images_name', 'images_disk_format', 'images_container_format', 'images_size', 'images_status', 'images_is_public', 'images_location', 'images_checksum', 'images_min_disk', 'images_min_ram', 'images_owner', 'images_protected', 'image_members_1_created_at', 'image_members_1_updated_at', 'image_members_1_deleted_at', 'image_members_1_deleted', 'image_members_1_id', 'image_members_1_image_id', 'image_members_1_member', 'image_members_1_can_share', 'image_properties_1_created_at', 'image_properties_1_updated_at', 'image_properties_1_deleted_at', 'image_properties_1_deleted', 'image_properties_1_id', 'image_properties_1_image_id', 'image_properties_1_name', 'image_properties_1_value')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [sqlalchemy.engine.base.Engine] Row (datetime.datetime(2013, 2, 1, 16, 42, 27), datetime.datetime(2013, 2, 1, 16, 42, 27), None, 0, '86661d54-2603-437d-8303-9f09b7c0fe78', 'ubuntu-12.04.1-LTS-x86_64', 'qcow2', 'bare', 250413056L, 'killed', 1, None, None, 0L, 0L, 'fdd375d00fb84366a5315dede4478073', 0, None, None, None, None, None, None, None, None, datetime.datetime(2013, 2, 1, 16, 42, 27), datetime.datetime(2013, 2, 1, 16, 42, 27), None, 0, 22L, '86661d54-2603-437d-8303-9f09b7c0fe78', 'distro', 'ubuntu-12.04.1-LTS-x86_64')
Feb 1 17:42:27 ang2pcgls1 2013-02-01 17:42:27 4845 DEBUG [eventlet.wsgi.server] 10.15.10.11 - - [01/Feb/2013 17:42:27] "PUT /images/86661d54-2603-437d-8303-9f09b7c0fe78 HTTP/1.1" 200 625 0.099116
Feb 1 17:42:29 ang2pcgls1 2013-02-01 17:42:29 5865 DEBUG [eventlet.wsgi.server] 10.15.10.11,10.15.10.10 - - [01/Feb/2013 17:42:29] "POST /v1/images HTTP/1.1" 400 356 2.171637

My swift settings for glance-api.conf:

default_store = swift
swift_store_auth_address = http://10.15.10.10:5000/v2.0/
swift_store_auth_version = 2
swift_store_user = service:glance
swift_store_key = glancepassword
swift_store_container = glance
swift_store_create_container_on_put = True
swift_store_large_object_size = 200
swift_store_large_object_chunk_size = 200
swift_enable_snet = False

To confirm that swift is using keystone and that the glance user can authenticate, I've verified as follows:

root@ang2pcgls1:~# swift -V 2 -A http://10.15.10.10:5000/v2.0/ -U service:glance -K glancepassword stat -v
StorageURL: http://10.15.10.10:8080/v1/AUTH_fdd375d00fb84366a5315dede4478073
Auth Token: 349821e26ce241aca568ca7742f9e27d
   Account: AUTH_fdd375d00fb84366a5315dede4478073
Containers: 0
   Objects: 0
     Bytes: 0
       Via: 1.1 10.15.10.10:8080
X-Trans-Id: txcd4f9e3493df4460804c6308ae145298
Content-Type: text/plain
Accept-Ranges: bytes

Using this account I'm able to create containers, upload files, delete containers & files.

Question information

Language:
English Edit question
Status:
Solved
For:
Glance Edit question
Assignee:
No assignee Edit question
Solved by:
Jesse Pretorius
Solved:
Last query:
Last reply:
Revision history for this message
Jesse Pretorius (jesse-pretorius) said :
#1

As it turns out I had a typo in one of the modifications to the glance/swift client we did in order to make it refer to the internalURL instead of the publicURL. Today's noddy-badge goes to me. *doh!*

Revision history for this message
Iccha Sethi (iccha-sethi) said :
#2

Haha! It happens sometimes. Glad you got it resolved.