热迁移,也叫在线迁移(live migration),是虚拟机从一台主机上迁移到另一台主机上但是“不中断VM服务”的一种机制。这里“不中断”指的是在用户观感上,VM一直提供服务。而实际上,在热迁移的过程中,VM会短暂地暂停一段时间。
openstack的热迁移是nova组件调用libvirtd完成的。我们一般通过nova配置文件(path:/etc/nova/nova.conf)来设置有关热迁移的参数,从而让VM按照我们希望的方式进行在线迁移。
nova配置文件有关热迁移的参数有如下几个:
- live_migration_bandwidth
- live_migration_downtime
- live_migration_downtime_steps
- live_migration_downtime_delay
- live_migration_completion_timeout
- live_migration_permit_post_copy
- live_migration_permit_auto_converge
下面详细地介绍这几个参数代表的意义以及对热迁移产生的影响。
live_migration_bandwidth
它是迁移期间要使用的最大带宽(以MiB / s为单位),默认值是0,意味着不限制迁移带宽。
live_migration_downtime、live_migration_downtime_steps、live_migration_downtime_delay
这三个参数都是有关热迁移停机时间(down