虚拟机迁移
环境准备
#虚拟机的创建都是通过nova用户创建的,当进行虚拟机迁移时,当前node节点会把虚拟机关机,然后把虚拟机的镜像(磁盘文件)拷贝到迁移的node节点上,在迁移的node节点上创建虚拟机
1、usermod nova -s /bin/bash
#虚拟机迁移时,会把一个node节点上的虚拟机镜像文件(磁盘文件)拷贝到另一个node节点上,是通过nova用户拷贝的,这就要求nova用户可以登录(nova用户默认是不能登录的),这样才可以进行虚拟机的迁移
2、echo centos | passwd --stdin nova #给nova用户设置密码
3、su - nova #切换到nova用户
4、ssh-keygen #生成nova用户的公钥
5、ssh-copy-id nova@172.31.7.107
ssh-copy-id nova@172.31.7.108
#虚拟机迁移时,是非交互式操作,所以需要拷贝公钥到各个node节点,以及本机也需要拷贝一份公钥;因为在修改虚拟机类型时,有可能在本机拷贝虚拟机镜像,修改完类型的虚拟机则也有可能是迁移至本机,则需要允许nova用户ssh本机;虚拟机迁移是不会迁移至本机的,但是修改虚拟机类型时,虚拟机有可能会迁移至本机;
#每个node节点都需要所有node节点的公钥,拷贝完后进行ssh测试
虚拟机迁移
1、选择一个实例进行迁移,需要管理员才可以进行迁移
2、确认迁移;迁移时,只能把虚拟机迁移至虚拟机所在的可用域中(计算节点分组)的其他node节点,不能把虚拟机迁移至其他可用域的node节点
3、tail -f /var/log/nova/*.log #通过node节点的nova日志,查看虚拟机被迁移至哪个node节点
修改虚拟机类型
创建的虚拟机,后期使用资源不足,需要扩充虚拟机的资源时,如cpu、内存、磁盘等,则需要修改虚拟机的类型
1、vim /etc/nova/nova.conf
allow_resize_to_same_host=true
#开启允许后期动态调整虚拟机的资源,如果不修改,则无法动态调整虚拟机资源;每个node节点都需要开启
2、重启nova服务
3、选择需要调整资源(类型)的虚拟机
4、选择调整后的实例资源大小,选择的是实例类型名称
5、点击确认
6、tail -f /var/log/nova/*.log
#通过node节点的nova日志,查看虚拟机被迁移至哪个node节点;调整虚拟机类型,虚拟机也会被迁移至当前虚拟机所在可用域的其他node节点;虚拟机会被关闭,然后把虚拟机镜像拷贝到其他node节点进行创建(调整虚拟机类型,虚拟机也有可能被迁移至本机上)
7、进入到修改类型的虚拟机中,查看磁盘大小、CPU核心数、IP地址是否是改变(没变为正常)、内存大小
注意
修改虚拟机类型时,CPU及内存都可以调小,但是磁盘无法调小,只能调大