Nova 架构

消息队列:松耦合、异步、负载均衡
运算工作站 网络控制器
Filter Scheduler 是用来判断一个vm应该在哪一台主机上面创建。一台主机选出来被要经历你filters 和weights两个过程。
filters:分类器大致分为2类:主机分类器和cell分类器,主机分类器需要重写hostpass() ,cell分类器需重写cellpass()
nova.conf       --scheduler_driver=nova.scheduler.FilterScheduler
         --scheduler_available_filters=nova.scheduler.filters.standard_filters
         --scheduler_available_filters=myfilter.MyFilter
         --scheduler_default_filters=RamFilter,ComputeFilter,MyFilter

weights:在这一个步骤当中是对刚才过滤得到的主机列表当中,选出最为合适的一台主机。编写自己weighter 应该是 weights.BaseHostWeigher 的子类 ,必须实现weight_multiplier和 weight_object 方法。
nova-conductor是在nova-compute之上的新的服务层。应该避免nova-conductor与nova-compute部署在同一个计算节点,否则移除直接数据库访问就没有任何意义了。
同其他nova服务(nova-api, nova-scheduler)一样,nova-conductor也可水平扩展,即可以在不同的物理机上运行多个nova-conductor实例。
OpenStack有哪两种在线迁移?
  热迁移:热迁移(Live Migration,又叫动态迁移、实时迁移),即虚拟机保存/恢复(Save/Restore):将整个虚拟机的运行状态完整保存下来,同时可以快速的恢复到原有硬件平台甚至是不同硬件平台上。
          恢复以后,虚拟机仍旧平滑运行,用户不会察觉到任何差异。
  Block migration除了实例内存状态要迁移外,还得迁移磁盘文件,速度会慢些,但是它不要求实例存储在共享文件系统中。
Nova cell: http://www.ibm.com/developerworks/cn/cloud/library/1409_zhaojian_openstacknovacell/index.html

openstack regions+cells+availablity zones+host aggregates http://blog.chinaunix.net/uid-20940095-id-4064233.html

猜你喜欢

转载自zouhuiying.iteye.com/blog/2285989