最近在研究openstack keystone遇到了一个问题,关于keystone token-get的,在这里记录一下,方便以后查阅。
如果只是获取keystone user-list 只需要设置下面两个环境变量
export OS_SERVICE_TOKEN=050fc374829f30d9eb5d
export OS_SERVICE_ENDPOINT=http://controller:35357/v2.0
只设置这两个环境变量,获取token的命令会报错
root@controller:~# keystone token-get
‘NoneType’ object has no attribute ‘has_service_catalog
要如何设置环境变量才能使用者命令呢?设置如下环境变量:
export OS_USERNAME=admin
export OS_PASSWORD=openstack
export OS_TENANT_NAME=admin
export OS_AUTH_URL=http://controller:35357/v2.0root@controller:~# export OS_USERNAME=admin
root@controller:~# export OS_PASSWORD=openstack
root@controller:~# export OS_TENANT_NAME=admin
root@controller:~# export OS_AUTH_URL=http://controller:35357/v2.0
keystone user-list是可以的,我们再看看token-get是否可以
root@controller:~# keystone token-get
WARNING: Bypassing authentication using a token & endpoint (authentication credentials are being ignored).
‘NoneType’ object has no attribute ‘has_service_catalog
似乎不行
这个时候其实少了一步操作
unset OS_SERVICE_TOKEN OS_SERVICE_ENDPOINT
root@controller:~# unset OS_SERVICE_TOKEN OS_SERVICE_ENDPOINT