【连载】OpenStack-F版本升级之Glance

Adela_09 2012-11-15
F版的一些变化

对依赖库的变化主要是添加了一个jsonschema并去掉了对xattr、pysendfile及swift1.4.8的依赖,如果采用swift作为存储后端需要有python-swiftclient,另外还需要F版的Keystone。配置方面主要把认证中间件的配置从paste配置中移到了server配置中。功能上添加了V2版的api接口。
备份与安装

停止现有服务,并备份数据
    
    [root@stackcc update_glance]# service glance-api stop  
    [root@stackcc update_glance]# service glance-registry stop  
    [root@stackcc update_glance]# cp -R /etc/glance ./glance-etc  
    [root@stackcc update_glance]# mysqldump -uglance -p glance > glance.sql 


下载并安装相关软件,因为我之前已经升级完了Keystone及Swift,这里只要安装jsonschema及Glance就可以了。
    

    [root@stackcc update_glance]# pip install jsonschema  
    [root@stackcc update_glance]# git clone git://github.com/openstack/glance.git  
    [root@stackcc update_glance]# cd glance  
    [root@stackcc glance]# git checkout -b folsom origin/stable/folsom  
    [root@stackcc glance]# python setup.py install > install.info  

补充:如果还要在这台服务器上安装python-glanceclient的话,这里用pip install jsonschema==0.2安装就好,不然也会被删除重装的。原本采用以下方式安装glance的,安装后版本号不对成了0.0.0,我提了个bug在这(详情)
  

    [root@stackcc update_glance]# wget https://github.com/openstack/glance/archive/stable/folsom.zip  
    [root@stackcc update_glance]# unzip folsom   
    [root@stackcc update_glance]# cd glance-stable-folsom/  
    [root@stackcc glance-stable-folsom]# python setup.py install  
    [root@stackcc glance-stable-folsom]# ll /usr/lib/python2.6/site-packages/ | grep glance  
    drwxr-xr-x 4 root root 4096 Nov 14 17:00 glance-0.0.0-py2.6.egg  
    drwxr-xr-x. 4 root root 4096 Jun 2 21:56 glance-2012.1-py2.6.egg  

配置Glance

将F的配置文件拷入到/etc/glance下替换掉原来的文件并修改相关配置glance-api.conf修改了以下选项:
  

    default_store = swift  
    sql_connection = mysql://glance:glance@localhost/glance  
    notifier_strategy = qpid  
    swift_store_user = service:glance  
    swift_store_create_container_on_put = True  
    admin_tenant_name = service  
    admin_user = glance  
    admin_password = service123  
    config_file = /etc/glance/glance-api-paste.ini  
    flavor=keystone  

glance-registry.conf中要修改的相关选项基本同上,其它配置文件没动。注意这里的config_file文件的路径要写绝对路径,不然在用glance index命令时就只出了个标题行,就没其它内容了,也不返回。
同步数据库并启动相关服务
  

    [root@stackcc glance]# glance-manage db_sync  
    [root@stackcc glance]# glance-manage db_version  
    15  
    [root@stackcc glance]# service glance-api start  
    [root@stackcc glance]# service glance-registry start  
    [root@stackcc glance]# service glance-api status  
    glance-api (pid  13218) is running...  
    [root@stackcc glance]# service glance-registry status  
    glance-registry (pid  13331) is running...  

测试命令glance index发现有警告,可以通过pip install python-glanceclient安装新版的glanceclient并且会依赖安装python-keystoneclient,替换我刚安装的jsonschema为0.2版本,升级prettytable==0.6.1,如果机器上安装有E版的novaclient会冲突,可以用pip uninstall python-novaclient直接卸载再用pip install python-novaclient安装新版(这里我尝试不卸载老版直接安装没有反应)。最后如果要使用v2版api还需要调整Keystone中的endpoint。

作者:姜永
http://blog.csdn.net/ugyn109/article/details/8185397
Global site tag (gtag.js) - Google Analytics