我在Juno中安装了python-openstackclient,它执行了以下操作:
> Installing collected packages:
> keystoneauth1, python-keystoneclient,
> python-glanceclient,
> python-openstackclient
> Found existing installation:
> python-keystoneclient 0.11.1
>
> Uninstalling python-keystoneclient-0.11.1:
>
> Successfully uninstalled python-keystoneclient-0.11.1
> Found existing installation:
> python-glanceclient 0.15.0
>
> Uninstalling python-glanceclient-0.15.0:
>
> Successfully uninstalled python-glanceclient-0.15.0
> Successfully installed
> keystoneauth1-2.16.0
> python-glanceclient-2.5.0
> python-keystoneclient-3.8.0
> python-openstackclient-3.4.1
现在我需要完全卸载python-openstackclient并恢复keystone和glance的先前版本(和行为)。
在我的“生产”系统中,我有juno没有openstackclient和旧版本的所有软件包(keystone v2,glance等,来自EPEL资源库Centos 7),而在“测试”系统中我有juno并安装了openstackclient和更新版本包的版本(pip存储库)。所以在不久的将来,我必须将生产系统从juno升级到mitaka,并且我需要在测试系统之前对其进行测试。这就是原因,因为我需要在测试和生产系统上进行“相同的相同安装”。
更新: 为了避免使用api v3并回滚到api v2,在控制器节点中,我卸载了所有openstack python数据包,并按照此过程http://docs.openstack.org/juno/install-guide/install/yum/content/ch_overview.html重新安装它们。
我通过以下方式卸载了数据包:
for dep in $(pip show python-openstackclient | grep Requires | sed 's/Requires: //g; s/,//g') ; do echo $dep ; done
for dep in $(pip show python-openstackclient | grep Requires | sed 's/Requires: //g; s/,//g') ; do sudo pip uninstall -y $dep ; done
pip uninstall -y python-openstackclient
yum remove openstack-keystone python-keystoneclient openstack-glance python-glanceclient python-glance-store.noarch openstack-nova-api openstack-nova-cert openstack-nova-conductor openstack-nova-console openstack-nova-novncproxy openstack-nova-scheduler python-novaclient openstack-neutron openstack-neutron-ml2 python-neutronclient openstack-dashboard httpd mod_wsgi memcached python-memcached openstack-swift-proxy python-swiftclient python-keystonemiddleware openstack-heat-api openstack-heat-api-cfn openstack-heat-engine python-heatclient openstack-ceilometer-api openstack-ceilometer-collector openstack-ceilometer-notification openstack-ceilometer-central openstack-ceilometer-alarm python-ceilometerclient python-six python-babel python-cliff python-cinderclient.noarch openstack-cinder python-cinderclient python-oslo-db openstack-swift openstack-swift-plugin-swift3 python-ceilometer
但是当我启动glance image-show ID-image
时出现以下错误:
raise AttributeError(k)
AttributeError: id
id
我无法弄清楚为什么在/glance/api.log中出现INFO keystonemiddleware.auth_token [-] Auth Token confirmed use of v3.0 apis
,尽管默认的Juno安装使用了api v2。我认为问题是彼此相关的。你觉得怎么样?
答案 0 :(得分:0)
解决。 python-openstackclient
安装导致python-requests
库的升级,这与python-glanceclient
冲突。我通过将请求库降级到2.7.0来解决,这是之前的版本。