← Back to team overview

openstack team mailing list archive

Re: is this a bug in milestone-proposed keystone ? (cannotget endpoint-list, nor create endpoint)

 

I think I'm to blame (apologies!) for suggesting that one driver was
preferred over the other (that was my understanding a few weeks ago, based
on test coverage). However, test coverage has since improved and I think
people are having good experience with the SQL driver.

The two methods are *not* functionally identical. The file-based driver is
simple and high-performance, and the sql-based driver provides flexibility
and API/CLI administration.

I've just proposed a review to clarify each option in the
http://keystone.openstack.org/configuration.html docs:
https://review.openstack.org/#change,5820

As well as a separate review to change the default backend to SQL, since
most users are looking for the CLI management commands out of the box:
https://review.openstack.org/#change,5821

-Dolph

On Mon, Mar 26, 2012 at 8:29 AM, David Kranz <david.kranz@xxxxxxxxxx> wrote:

>  There seems to be an unfortunate difference in opinion out there about
> whether the keystone endpoints should be defined using templates (devstack)
> or keystone calls (ubuntu).  I don't know why keystone is offering two very
> different, but seemingly functionally identical, ways to do this. Is there
> a good reason? Can this be sorted out so there is only one documented way
> to do this?
>
>  -David
>
>
> On 3/26/2012 7:25 AM, Andiabes wrote:
>
> Can you include your config?
> The behavior you're describing seems to be consistent with a missing
> backers configuration ...
>
>  Something like:
>
> [identity]
> driver = keystone.identity.backends.sql.Identity
> [catalog]
> driver = keystone.catalog.backends.sql.Catalog
> Also, where/how are you installing?
>
>
> On Mar 26, 2012, at 6:56 AM, Mandar Vaze <mandar.vaze@xxxxxxxxxxxx> wrote:
>
>   I’m also getting the same error on latest master branch (updated today)*
> ***
>
> Using setup created by devstack****
>
> ** **
>
> -Mandar****
>
> ** **
>
> *From:* openstack-bounces+mandar.vaze=vertex.co.in@xxxxxxxxxxxxxxxxxxx [
> mailto:openstack-bounces+mandar.vaze= <openstack-bounces+mandar.vaze=>
> vertex.co.in@xxxxxxxxxxxxxxxxxxx] *On Behalf Of *.?o 0 O??
> *Sent:* Monday, March 26, 2012 12:45 PM
> *To:* Pierre Amadio
> *Cc:* openstack
> *Subject:* Re: [Openstack] is this a bug in milestone-proposed keystone ?
> (cannotget endpoint-list, nor create endpoint)****
>
> ** **
>
> hi,
>
> I don't know if it is a bug but I come across the same problem and
> wondering how to solve it.****
>
>  ****
>
>  ****
>
> ------------------ Original ------------------****
>
> *From: * "Pierre Amadio"<pierre.amadio@xxxxxxxxxxxxx>;****
>
> *Date: * Sun, Mar 25, 2012 04:35 AM****
>
> *To: * "openstack"<openstack@xxxxxxxxxxxxxxxxxxx>; ****
>
> *Subject: * [Openstack] is this a bug in milestone-proposed keystone ?
> (cannotget endpoint-list, nor create endpoint)****
>
>  ****
>
> Hi there !
>
> I wanted to give a try to the milestone-proposed branch of keystone and
> got stuck quite fast.
>
> I am not sure if i hit a bug and should report it, or if i'm doing
> something wrong.
>
> With previous version of keystone (read packaged on ubuntu precise), i
> was able to create endpoint the following way once keystone has been
> installed:
>
> 1) setting some env variables:
> export KEYSTONE_IP=192.168.122.102 # IP of your keystone API server
> export SERVICE_ENDPOINT=http://$KEYSTONE_IP:35357/v2.0/
> export SERVICE_TOKEN=999888777666
> export NOVA_PUBLIC_URL="http://$NOVA_IP:8774/v1.1/%(tenant_id)s"
> export NOVA_ADMIN_URL=$NOVA_PUBLIC_URL
> export NOVA_INTERNAL_URL=$NOVA_PUBLIC_URL
>
> 2) creating services:
> keystone service-create --name nova --type compute --description
> 'OpenStack Compute Service'
>
> keystone service-create --name swift --type object-store --description
> 'OpenStack Storage Service'
>
> keystone service-create --name glance --type image --description
> 'OpenStack Image Service'
>
> keystone service-create --name keystone --type identity --description
> 'OpenStack Identity Service'
>
> 3) creating an endpoint for those services, starting with the compute
> service:
>
> ID=$(keystone service-list | grep -i compute | awk '{print $2}')
>
>
> keystone endpoint-create --region RegionOne --service_id $ID --publicurl
> $NOVA_PUBLIC_URL --adminurl $NOVA_ADMIN_URL --internalurl
> $NOVA_INTERNAL_URL
>
> When i run this command with milestone-proposed, i experience the
> following:
>
> No handlers could be found for logger "keystoneclient.client"
> The action you have requested has not been implemented. (HTTP 501)
>
>
> Strangely enough, i experience a similar error message when running a
> simple "keystone endpoint-list" whereas command such as "keystone
> user-list" works all right.
>
>
> here is what i have in the keystone logs when trying "endpoint-list":
>
> 2012-03-24 20:30:09    DEBUG [routes.middleware] Matched GET /endpoints
> 2012-03-24 20:30:09    DEBUG [routes.middleware] Route path:
> '{path_info:.*}', defaults: {'controller':
> <keystone.contrib.admin_crud.core.CrudExtension object at 0x2b215d0>}
> 2012-03-24 20:30:09    DEBUG [routes.middleware] Match dict:
> {'controller': <keystone.contrib.admin_crud.core.CrudExtension object at
> 0x2b215d0>, 'path_info': '/endpoints'}
> 2012-03-24 20:30:09    DEBUG [routes.middleware] Matched GET /endpoints
> 2012-03-24 20:30:09    DEBUG [routes.middleware] Route path:
> '/endpoints', defaults: {'action': u'get_endpoints', 'controller':
> <keystone.catalog.core.EndpointController object at 0x2b21210>}
> 2012-03-24 20:30:09    DEBUG [routes.middleware] Match dict: {'action':
> u'get_endpoints', 'controller':
> <keystone.catalog.core.EndpointController object at 0x2b21210>}
> 2012-03-24 20:30:09    DEBUG [keystone.common.wsgi] arg_dict: {}
> 2012-03-24 20:30:09  WARNING [keystone.common.wsgi] The action you have
> requested has not been implemented.
> 2012-03-24 20:30:09    DEBUG [keystone.common.wsgi] ********************
> RESPONSE HEADERS ********************
> 2012-03-24 20:30:09    DEBUG [keystone.common.wsgi] Content-Type =
> application/json
> 2012-03-24 20:30:09    DEBUG [keystone.common.wsgi] Vary = X-Auth-Token
> 2012-03-24 20:30:09    DEBUG [keystone.common.wsgi] Content-Length = 109
> 2012-03-24 20:30:09    DEBUG [keystone.common.wsgi]
> 2012-03-24 20:30:09    DEBUG [keystone.common.wsgi] ********************
> RESPONSE BODY ********************
>
>
> I try to add some debug in
> keystone.catalog.core.EndpointController.get_endpoints() method:
>
>     def get_endpoints(self, context):
>         LOG.debug("PLOP get_endpoints")
>         self.assert_admin(context)
>         LOG.debug("PLOP STILL HERE")      # <= LAST DEBUG LINE
>         endpoint_list = self.catalog_api.list_endpoints(context)
>         LOG.debug("SO, how does endpoint_list looks like ?")
>         for i in endpoint_list:
>             LOG.debug("PLOP: '%s'",s)
>         endpoint_refs = [self.catalog_api.get_endpoint(context, e)
>                          for e in endpoint_list]
>         LOG.debug("PLOP THIS IS THE END")
>         return {'endpoints': endpoint_refs}
>
> So, as i do not see anything after "PLOP STILL HERE", i am assuming
> something is wrong in the catalog_api.list_endpoints() method.
>
> However, i do not understand exactly where it is implemented.
> catalog_api is a Manager instance, wich seems to be a subclass of
> Manager() defined in keystone/keystone/common/manager.py but i am lost
> with the wrapping magic that occurs there.
>
> So, is this a bug that i should file ?
>
>
>
>
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/‾openstack
> Post to     : openstack@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/‾openstack
> More help   : https://help.launchpad.net/ListHelp****
>
>  _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp
>
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp
>
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~openstack
> Post to     : openstack@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~openstack
> More help   : https://help.launchpad.net/ListHelp
>
>

Follow ups

References