Openstack迁移

准备工作,提前准备共享存储(nfs等):


0、共享存储

每个计算节点/var/lib/nova/instances目录挂载到同一共享目录(nfs等),并且设置权限(777)。



1. 每个计算节点上的/etc/libvirt/qemu.conf配置中修改以下:

user = "root
group = "root"

修改后重启libvirtd服务。

尝试过,如果不修改上述内容,虽然显示热迁移成功,但是无法登录虚机,虚机的网络也ping不通。

2. 每个计算节点上的/etc/nova/nova.conf中的 live_migration_flag要打开,将注释去掉,修改后重启openstack-nova-compute服务。

3. 需要注意的是成功热迁移的前提必须是虚机是正常启动的,如果compute-node-01迁移到compute-node-02后,虚机无法直接迁移回compute-node-01上,只有重新启动过才能热迁移。

另外遇到热迁移失败,可以查看以下日志:

/var/log/libvirt/qemu/instance-xx.log 


配置


  • 添加live_migration_flag

    修改nova的配置文件,在[libvirt] 段下 添加如下字段


live_migration_flag="VIR_MIGRATE_UNDEFINE_SOURCE,VIR_MIGRATE_PEER2PEER,VIR_MIGRATE_LIVE,VIR_MIGRATE_PERSIST_DEST,VIR_MIGRATE_TUNNELLED"
  • 修改libvirt配置

    配置versh免密码连接,修改/etc/libvirt/libvirtd.conf

添加如下配置



listen_tls = 0

listen_tcp = 1 tcp_port = "16509" listen_addr = "172.16.201.8" #根据自己的计算节点IP改写 auth_tcp = "none" 

修改/etc/sysconfig/libvirtd 添加如下参数



LIBVIRTD_CONFIG=/etc/libvirt/libvirtd.conf

LIBVIRTD_ARGS="--listen"



重启libvirt


systemctl restart libvirtd.service

查看监听端口:



[root@compute1 ~]# netstat -lnpt | grep libvirtd

tcp        0      0 172.16.206.6:16509 0.0.0.0:* LISTEN 9852/libvirtd 

测试:


在compute1节点上:

virsh -c qemu+tcp://compute2/system

在compute2节点上

virsh -c qemu+tcp://compute1/system



如果能无密码连接上去,表示配置没问题

动态迁移

  • 查看所有实例

nova list

  • 查看需要迁移虚拟机实例

nova show f3d749ba-98e1-4624-9782-6da729ad164c

  • 查看可用的计算节点
    nova-manage service list

  • 查看目标节点资源
    nova-manage service describe_resource computer1

  • 开始迁移,正常无任何回显

nova live-migration 8da00f69-05f6-4425-9a8a-df56b79a474f computer1

  • 也可以通过dashboard 节点迁移
    用节点迁移需要使用admin管理员用户执

冷迁移配置

冷迁移需要启动nova账户,并配置ssh 免密码认证


usermod -s /bin/bash nova

su - nova

ssh-keygen -t rsa

#生成密钥

cp -fa id_rsa.pub authorized_keys

将密钥复制到所有计算节点的/var/lib/nova/.ssh下,并设置权限为nova用户

编辑/etc/nova/nova.conf的配置文件,修改下面参数


allow_resize_to_same_host=True 

scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ServerGroupAntiAffinityFilter,ServerGroupAffinityFilter 

在计算节点重启nova服务


systemctl restart openstack-nova-compute

在controller节点重启nova 相关服务


systemctl restart openstack-nova-api.service openstack-nova-scheduler.service 
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值