loiv 发表于 2015-10-13 13:43:50

CloudStack升级实战:4.1.x至4.3版本

CloudStack升级实战:4.1.x至4.3版本

  

  转载:http://www.68idc.cn/help/jiabenmake/qita/2014033177553.html

  
  前言
  本文不再对升级过程做太详细说明。
  升级指南参考我的另外一篇博文:
  

  另外,生产环境中,如果需要升级,一定要进行多次模拟测试!
  备份工作一定要做好。确定万无一失再进行升级!
  

  环境
  CloudStack:4.1.1 → 4.3.0
  虚拟化:KVM
  主机系统:RHEL6.3
  

  升级过程
  

  一、上传4.3的系统虚拟机模版
  由于不同版本的CS所使用的系统虚拟机模版不一样。为了确保在升级完成后,系统虚拟机等组件能正常工作,官方首先建议在升级前就先把对应版本的系统虚拟机模版导入。方便升级后,现有系统虚拟机的更新。
  

  1.由于我4.1.1的环境中仅存在kvm虚拟化平台,所以我只需上传4.3 for kvm的系统虚拟机模版。各位根据自己的环境上传。如果异构环境的话,建议3个模版全部上传。
  

  注意:
  注册模版严格按照升级文档要求来写。上传后系统虚拟机模版会有2个,一个是systemvm-kvm-4.3,另一个为默认的:SystemVM Template(KVM). 无须手动干预。也不要去手动删除它。
  


  

  上传成功。查看模版信息:
  


  

  

  二、备份数据库
  备份数据库是为了出现错误时回滚升级操作,保证在升级新版本失败时,可以正常回滚到旧版本的基础。
  1.首先,停止management服务
  # service cloudstack-management stop
  2.(选做)停止usage服务,如果你在使用的话
  # service cloudstack-usage stop
  3.(选做)如果你使用了本地存储,,需修改本地存储路径,将路径最后的斜杠“/”移除
  查看当前的本地存储信息:
# mysql -ucloud -p1qaz2wsx -e "select id,name,path from cloud.storage_pool where pool_type='Filesystem'"+-----+--------------+--------------------------+| id | name | path |+-----+--------------+--------------------------+| 201 | SJCloudKVM-2| /var/lib/libvirt/images/ |+-----+--------------+--------------------------+#  #修改如上本地存储路径,将路径最后的斜杠“/”移除:
# mysql -ucloud -p1qaz2wsx -e 'update cloud.storage_pool set path="/var/lib/libvirt/images" where path="/var/lib/libvirt/images/"';# mysql -ucloud -p1qaz2wsx -e "select id,name,path from cloud.storage_pool wherepool_type='Filesystem'"+-----+--------------+-------------------------+| id | name | path |+-----+--------------+-------------------------+| 201 | SJCloudKVM-2 | /var/lib/libvirt/images |+-----+--------------+-------------------------+#  #唯一的变化为路径最后的斜杠被移除。此步骤为官方要求。
  4.开始备份数据库
  # mysqldump -uroot -proot cloud > cloudstack-backup.sql
  

  三、制作4.3YUM源
  此步骤不再啰嗦,不会的可以看我另一篇博客:
  #仅看下我的cloudstack的repo文件
# cat /etc/yum.repos.d/cloudstack.reponame=Apache CloudStack 4.3.0baseurl=http://192.168.100.3/cloudstack/430/enabled=1gpgcheck=0# yum clean all; yum makecache  

  

  四、升级管理端主机:
  #停止cloudstack-management服务
  # service cloudstack-management stop
  #upgrade cloudstack-management软件包
  # yum upgrade cloudstack-management -y
  #启动cloudstack-management服务
  # service cloudstack-management start
  

  管理端升级完成!
  

  五、升级KVM主机:
  #停止cloudstack-agent服务
# service cloudstack-agent stop# killall jsvc  #upgrade cloudstack-agent软件包
  # yum upgrade cloudstack-agent -y
  #查找/etc/cloudstack/agent/environment.properties文件中,有无如下行:
# grep -r "paths.script" /etc/cloudstack/agent/environment.propertiespaths.script=/usr/share/cloudstack-common  #确定存在paths.script行,如果没有,自行添加上去。
  #启动cloudstack-agent服务
  # service cloudstack-agent start
  #确定服务启动
# service cloudstack-agent statuscloudstack-agent (pid 19059) is running...  

  KVM主机升级完成!
  

  六、登录CS管理页面
  1.查看CS版本是否更新成功。
  2.设置全局变量”integration.api.port“参数为:8096
  在升级结束后cloud-sysvmadm脚本会使用这个端口,进行对系统虚拟机的管理。
  3.并确保在防火墙中开放此端口的访问。
  


  


  

  七、升级系统虚拟机
  升级系统虚拟机有几种办法:
  1.官方说只需要重启系统虚拟机即可。你可以手动或者借助cloudstack-sysvmadm脚本。 #但我未验证是否可行。
  2.销毁系统虚拟机,待系统自行创建      #我在升级SSVM和CPVM过程中是采用这种方式。
  3.手动点击使用新模版更新系统虚拟机   #我在升级VR过程中是采用这种方式。
  

  升级前系统虚拟机状态:

  

  手动升级虚拟路由器虚拟机:
  


  

  升级完毕后,该升级选项消失:

  

  至此,CS4.1.1 到4.3.0的升级工作全部完成!
  升级过程中,虚拟机实例没有出现异常宕机情况

  

  验证
  

  更新前我有一台虚拟机实例:
  

  

  更新后此实例没有被影响:

  

  

  更新前,我主存储本地路径信息:

  

  更新后的信息:

  

  创建新的虚拟机测试:

  

  

  

  九、新版UI
  

  登录界面:

  

  控制板:

  


  

  项目视图:
  


  

  基础架构视图:
  


  

  

  十、扯犊子
  使用CS的过程中,状况百出,特别是面对一坨有一坨的java异常。
  那种感觉,你懂得。
  蛋疼菊紧人憔悴。
  但,生活还得继续。
  活着,就要继续被虐。
  

  什么是经验?
  经验就是CS虐了你千百遍,脑子缺根筋的你还要当它是初恋似的一次又一次扑上去。
  为啥扑不对?“姿势”很重要。
  

  

  

  

  

  

  

  
页: [1]
查看完整版本: CloudStack升级实战:4.1.x至4.3版本