Openstack后期运维(六)----集群收缩

注:在缩减之前,将宿主机上的虚机全部热迁移完成后直接关闭宿主机,会比较省事儿,不用在需要关闭服务。

一、关闭和踢出 nova-compute 服务

  1、关闭服务:WEB 界面 |  管理员  | 系统 | 虚拟机管理器 | 计算主机 | 找到对应的服务点击“关闭服务”

    

   当然,使用命令行也是可以关闭的:

    #  openstack compute service list  # 查看服务列表和名称

    # openstack compute service set  --disable host  service

    

  2、踢出服务

     openstack compute service delete ID    #ID 为 1步骤中列出的ID。

二、剔除网络节点

  1、查看

     # openstack network agent list

    

  2、关闭服务

    # openstack network agent set  --disable ID 

  3、踢出服务

    # openstack network agent delete ID

三、踢出 块存储 服务

  注: 在关闭和踢出 块存储服务 之前,首先确保此服务上没有 卷存在。如果有,需要先迁移走,否则后期虚机无法进行迁移(热迁移和冷迁移)。

  1、查看是否还有卷存在此服务上

    

 

  被使用的卷无法进行迁移。解决办法看博客结尾 附文。

  2、查看和关闭服务

    #openstack volume service list

    

    #openstack volume service set --disable host Binary  

  3、在数据库中清除服务

    cinder 数据库 的 services表

    drop from services where host="和要踢出的服务相关的名称';

附文:

  迁移卷,前提我是使用的dokcer 进行openstack部署的。 卷的驱动文件都保存在服务对应的 docker  _data 文件里。

  1、在数据库cinder,表volumes 中找到对应服务所关联的 卷ID
  select * from cinder.volumes where host="compute-3.ops.ft1@rbd-1#RBD"    # 我以compute-3.ops.ft1@rbd-1#RBD 为例。

     2、在 宿主机 compute-3 的 /var/lib/docker/volumes/cinder/_data 中找到 和 获取到的ID相关的文件,然后拷贝至目标主机 A(如下是前移到了compute-12 主机)。

    scp /var/lib/docker/volumes/cinder/_data/cinder-'fe24213a-f380-4b13-9a7d-d66ce6b1a942*  compute-12:/var/lib/docker/volumes/cinder/_data/

  3、修改数据库记录: 

    # update volumes set host='compute-12.ops.ft1@rbd-1#RBD' where id='fe24213a-f380-4b13-9a7d-d66ce6b1a942';

 

结束

 

posted @ 2021-11-08 11:38  语~默  阅读(223)  评论(0编辑  收藏  举报