原文:http://www.hengtianyun.com/download-show-id-79.html OpenStack的Resize(升级)功能,我们可以改变虚拟机的CPU核数.内存及磁盘大小,当然虚拟机只能向上升级,不允许向下降级.通过分析源代码,我们发现Resize的过程其实就是冷迁移的过程,Resize多传进去了一个flavor参数.下面将分析OpenStack升级虚拟机和冷迁移的功能. 一.前端入口 (一) Resize /usr/share/openstack-dashboa…
OpenStack之虚机冷迁移代码简析 前不久我们看了openstack的热迁移代码,并进行了简单的分析.真的,很简单的分析.现在天气凉了,为了应时令,再简析下虚机冷迁移的代码. 还是老样子,前端的Horizon代码就省去了,直接看后端的代码实现,前端通过请求的action进入到nova/api/openstack/compute/contrib/admin_actions.py文件.代码如下: @wsgi.action('migrate') def _migrate(self, req, id…
OpenStack之虚机热迁移代码解析 话说虚机迁移分为冷迁移以及热迁移,所谓热迁移用度娘的话说即是:热迁移(Live Migration,又叫动态迁移.实时迁移),即虚机保存/恢复(Save/Restore):将整个虚拟机的运行状态完整保存下来,同时可以快速的恢复到原有硬件平台甚至是不同硬件平台上.恢复以后,虚机仍旧平滑运行,用户不会察觉到任何差异.OpenStack的虚机迁移是基于Libvirt实现的,下面来看看Openstack虚机热迁移的具体代码实现. 首先,由API入口进入到nova/…
一.先决条件 云主机冷迁移,即:将一台云主机从一个计算节点上,迁移到另外一个计算节点上.因为环境原因,所以我们需要准备两个计算节点. 1.1准备环境 在控制节点上,安装一个计算节点 #在控制节点安装nova-compute [root@linux-node1 ~]# yum install openstack-nova-compute –y #在控制节点安装neutron及其组件 [root@linux-node1 ~]# yum install openstack-neutron-linuxb…
一.虚拟机迁移分析 openstacvk虚拟机迁移分为冷迁移和热迁移两种方式. 1.1冷迁移: 冷迁移(cold migration),也叫静态迁移.关闭电源的虚拟机进行迁移.通过冷迁移,可以选择将关联的磁盘从一个数据存储移动到另一个数据存储. 好处:虚拟机不需要位于共享存储器上,数据丢失率小. 缺点:需要关闭电源,业务中断. 1.2热迁移: 热迁移(Live Migration),又叫动态迁移.实时迁移,即虚拟机保存/恢复,通常是将整个虚拟机的运行状态完整保存下来,同时可以快速的恢复到原有硬件…
openStack 重新resize时会进行重新调度,可能在本机Resize 扩展资源,也可能存在的情况时 ,新扩展的资源在当前节点不足分配,整个虚拟机将进行迁移调度,进行异机迁移时需要迁移 的两台主机间能使用nova系统用户经passless登录 具体生成密码的方式为,(1.)切换到nova用户,(2.)生成nova的ssh密钥,(3.)ssh-copy-id nova@10.34.1.10 具体命令: passwd nova ; su - nova; ssh-keygen; ssh-copy…
转自: http://www.cnblogs.com/pycode/p/6494848.html 迁移类型: *非在线迁移 (有时也称之为‘迁移’).也就是在迁移到另外的计算节点时的这段时间虚拟机实例是处于宕机状态的.在此情况下,实例需要重启才能工作. *在线迁移 (或 '真正的在线迁移').实例几乎没有宕机时间.用于当实例需要在迁移时保持运行.在线迁移有下面几种类型: * 基于共享存储的在线迁移.所有的Hypervisor都可以访问共享存储. * 块在线迁移.无须共享存储.但诸如CD-ROM之…
1:开启nova计算节点之间互信 冷迁移需要nova计算节点之间使用nova用户互相免密码访问 默认nova用户禁止登陆,开启所有计算节点的nova用户登录shell. usermod -s /bin/bash nova su - nova ssh-keygen -t rsa #生成密钥 cp -fa id_rsa.pub authorized_keys 将公钥发送给其他计算节点的nova用户的/var/lib/nova/.ssh目录下,注意权限和所属组 2:修改控制节点nova.conf vi…
 java集合框架之java HashMap代码解析 文章Java集合框架综述后,具体集合类的代码,首先以既熟悉又陌生的HashMap开始. 源自http://www.codeceo.com/article/java-hashmap-java-collection.html 签名(signature) public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Se…
031 删除工作表中的空行 如果需要删除工作表中所有的空行,可以使用下面的代码. Sub DelBlankRow() DimrRow As Long DimLRow As Long Dimi As Long rRow= Sheet1.UsedRange.Row LRow= rRow + Sheet1.UsedRange.Rows.Count - 1 Fori = LRow To rRow Step -1 If Application.WorksheetFunction.CountA(Rows(i…