On Mon, Mar 26, 2012 at 11:12 AM, David Kranz <[email protected]>wrote:
> Thanks for the explanation. But I am still a little confused about the > point of the templates. Having two implementations, one simple and one less > simple, is not simpler than having only one. You still need to user the CLI > for user, roles, etc. so having a different mechanism for endpoints does > not seem simple. With regard to performance, won't these endpoint values be > changing infrequently and so any reasonable caching strategy would give > good performance? Or am I missing something? > The preference is to switch the default to the SQL driver, the other backend was simply the first driver written and will likely be deprecated. --andy > -David > > > On 3/26/2012 1:39 PM, Dolph Mathews wrote: > > 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 <[email protected]>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 <[email protected]> >> wrote: >> >> I’m also getting the same error on latest master branch (updated today) >> >> Using setup created by devstack >> >> >> >> -Mandar >> >> >> >> *From:* [email protected] [ >> mailto:openstack-bounces+mandar.vaze= <openstack-bounces+mandar.vaze=> >> [email protected]] *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"<[email protected]>; >> >> *Date: * Sun, Mar 25, 2012 04:35 AM >> >> *To: * "openstack"<[email protected]>; >> >> *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 : [email protected] >> Unsubscribe : https://launchpad.net/‾openstack >> More help : https://help.launchpad.net/ListHelp >> >> _______________________________________________ >> Mailing list: https://launchpad.net/~openstack >> Post to : [email protected] >> Unsubscribe : https://launchpad.net/~openstack >> More help : https://help.launchpad.net/ListHelp >> >> >> >> _______________________________________________ >> Mailing list: https://launchpad.net/~openstack >> Post to : [email protected] >> Unsubscribe : https://launchpad.net/~openstack >> More help : https://help.launchpad.net/ListHelp >> >> >> >> _______________________________________________ >> Mailing list: https://launchpad.net/~openstack >> Post to : [email protected] >> Unsubscribe : https://launchpad.net/~openstack >> More help : https://help.launchpad.net/ListHelp >> >> > > > _______________________________________________ > Mailing list: https://launchpad.net/~openstack > Post to : [email protected] > Unsubscribe : https://launchpad.net/~openstack > More help : https://help.launchpad.net/ListHelp > >
_______________________________________________ Mailing list: https://launchpad.net/~openstack Post to : [email protected] Unsubscribe : https://launchpad.net/~openstack More help : https://help.launchpad.net/ListHelp

