昨天上午在更改admin-token时出现了一些问题,导致无法再次登录Dashboard,一直出现如下的错误提示:Error: An error occurred authenticating. Please try again later. 然后在超级终端下keystone user-list,还是不正常
No handlers could be found for logger "keystoneclient.client
的错误提示,在网上查了很久,终于在一个地方看到了解决方案。出现此种问题就要检查:
1、你输入的admin_token和脚本中的以及keystone.conf中是一致的;
2、确定你的keystone.conf中包含
#driver = keystone.catalog.backends.sql.Catalog
driver = keystone.catalog.backends.templated.TemplatedCatalog
template_file = /etc/keystone/default_catalog.templates
按照这种步骤查找之后竟然发现找不到keystone.conf,可能是重装脚本时出现了错误,于是重新安装keystone,并更改了密码,最终可以正常登录Dashboard.
附:安装和配置keystone
1:安装keystone
apt-get install keystone pyth-keystone python-keystoneclient
2:配置keystone
需要更改/etc/keystone/keystone.con两个地方
默认定义的token就是ADMIN,我使用dell作为token
[DEFAULT]
bind_host = 0.0.0.0
public_port = 5000
admin_port = 35357
#admin_token = ADMIN
admin_token=dell
另外一个地方是
[catalog]
#driver = keystone.catalog.backends.sql.Catalog
driver = keystone.catalog.backends.templated.TemplatedCatalog
template_file = /etc/keystone/default_catalog.templates
重启服务
service keystone restart
3:导入数据
这个是通过修改devstack的keystone_data.sh 脚本。实现导入数据。如果你上面的设置都和我一样,那直接运行这个脚本就可以。
wget http://onestack.googlecode.com /files/gen_keystone_data.sh -Onovadbadmin gen_keystone_data.shchmod +x gen_keystone_data.sh运行脚本, 如果你修改的默认的用户名和密码,你需要修改脚本。修改两个地方
第一个是登录dashboard的admin的密码
第二个就是keystone的token
ADMIN_PASSWORD=${ADMIN_PASSWORD:-dell}
#ADMIN_PASSWORD=${ADMIN_PASSWORD:-admin}
SERVICE_PASSWORD=${SERVICE_PASSWORD:-$ADMIN_PASSWORD}
export SERVICE_TOKEN="dell"
#exportSERVICE_TOKEN="Centrin"
exportSERVICE_ENDPOINT="<a href="http://localhost:35357/v2.0">http://localhost:35357/v2.0</a>"
SERVICE_TENANT_NAME=${SERVICE_TENANT_NAME:-service}
然后运行这个脚本
./gen_keystone_data.sh
顺利运行,会什么输出也没有
echo $?
0
接下来就是添加环境变量
exportOS_TENANT_NAME=admin
exportOS_USERNAME=admin
exportOS_PASSWORD=dell
exportOS_AUTH_URL="http://localhost:5000/v2.0/"
然后运行 keystone user-list
出现
至此已经安装配置完成。
具体可参考:http://www.lylinux.org/2012/09/ubuntu-12-04%E4%B8%AD%E5%8D%95%E7%BD%91%E5%8D%A1%E9%83%A8%E7%BD%B2openstack/