🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] ## 迁移说明 当openstack管理的计算节点越来越多的时候,控制节点的压力越来越大,由于所有的服务都安装在控制节点,这时候控制节点上的openstack服务随时都团灭的风险。 openstack是基于soa架构设计的,服务都可以迁移,本次我们演示将glance镜像服务,由控制节点迁移到compute2上 **glance镜像服务迁移的主要步骤** 1. 停止控制节点上的glance服务 2. 新节点迁移glance数据库 3. 在新的节点上安装配置glance 4. 迁移原有glance镜像文件 5. 修改keystone中glance的api地址 6. 修改所有节点nova配置文件中glance的api地址 7. 测试,上传镜像,创建实例 ## 迁移实施 ### 1)停止控制节点上的glance服务 **停止服务** ```sh systemctl stop openstack-glance-api.service openstack-glance-registry.service systemctl disable openstack-glance-api.service openstack-glance-registry.service ``` **导出数据库** ```sh mysqldump -uroot -B glance >glance.sql ``` ### 2)新节点迁移glance数据库 **新节点安装数据库** ```sh yum install mariadb-server.x86_64 python2-PyMySQL -y systemctl start mariadb systemctl enable mariadb mysql_secure_installation ``` **导入glance数据库并授权** ```sh scp controller:/root/glance.sql /root/ mysql < glance.sql mysql> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' \ IDENTIFIED BY 'GLANCE_DBPASS'; GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' \ IDENTIFIED BY 'GLANCE_DBPASS'; ``` ### 3)安装配置glance服务 **安装glance服务** ```sh yum install openstack-glance -y ``` **修改glance配置文件** ```sh #从controller拷贝配置 ssh controller 'cat /etc/glance/glance-api.conf' >/etc/glance/glance-api.conf ssh controller 'cat etc/glance/glance-registry.conf ' >/etc/glance/glance-registry.conf #修改数据库信息 sed -i "/connection/ s#controller#$(hostname)#g" /etc/glance/glance-api.conf sed -i "/connection/ s#controller#$(hostname)#g" /etc/glance/glance-registry.conf ``` **启动服务** ```sh systemctl start openstack-glance-api.service openstack-glance-registry.service systemctl enable openstack-glance-api.service openstack-glance-registry.service ``` ### 4)迁移原有镜像文件 ```sh scp -rp 10.0.0.11:/var/lib/glance/images/* /var/lib/glance/images chown -R glance:glance /var/lib/glance/images/ ``` ### 5)修改keystone中glance的api地址 **在控制节点上** ```sh #导出数据库 mysqldump -uroot keystone endpoint >endpoint.sql cp endpoint.sql /opt/ endpoint.sql.bak #修改文件并导回数据库 sed -i 's#http://controller:9292#http://10.0.0.32:9292#g' endpoint.sql mysql keystone < endpoint.sql #验证 openstack endpoint list|grep image ``` ### 6)修改所有节点nova配置文件 ```sh sed -i 's#http://controller:9292#http://10.0.0.32:9292#g' /etc/nova/nova.conf grep '9292' /etc/nova/nova.conf systemctl restart openstack-nova-api.service openstack-nova-compute.service ``` ### 7)测试,上传镜像,创建实例 [centos7镜像列表](http://mirrors.ustc.edu.cn/centos-cloud/centos/7/images/) [centos7.4-1809下载地址](http://mirrors.ustc.edu.cn/centos-cloud/centos/7/images/CentOS-7-x86_64-GenericCloud-1809.qcow2 )