你好,游客 登录 注册 发布搜索
背景:
阅读新闻

OpenStack集群支持多虚拟化技术的实现方法

[日期:2015-05-12] 来源:CSDN  作者: [字体: ]

  OpenStack 每个新版本都能实现一些需求和解决一些问题。其中被企业用户问的最多的一个问题是:同一个 OpenStack 集群能同时支持多种虚拟化技术么(Mutil-Hypervisor)?

  答案当然是 Yes!在说明如何配置 Mutil-Hypervisor 前,我们需要了解什么是 Mutil-Hypervisor。

 

  Mutil-Hypervirsor 简介

  对很多用户来说,仅采用一种虚拟化技术难以满足他们的需求,所以用户可能会同时采用其它虚拟化技术。比如:1.用户不想被某个虚拟化厂商绑定限 制;2. 某些虚拟化产品要求高额的 License,无疑加重了用户的财政开销;3.单个虚拟化产品的功能不满足用户所有的需求。随着虚拟化技术越来越成熟,Mutil- Hypervisor 的需求场景变得越来越常见,但是往 OpenStack 集群增添其它虚拟化技术前,需要慎重全面的考虑它带来的困难及更为复杂的架构。

  Openstack 设计之初,重点支持的是 Qemu-Kvm 虚拟化平台。但是大量的企业已经采用了其它的虚拟化平台,比如:Xen,ESXI 等。并且企业不愿意去更改已有的 IT 架构设施,因此 OpenStack 需要支持 Mutil-Hypervirsor。

  

 

  OpenStack 支持哪些虚拟化平台

  OpenStack nova-compute 支持多种虚拟化平台,如下所示:

  KVM-Qemu – Kernel-based Virtual Machine. The virtual disk formats that it supports is inherited from QEMU since it uses a modified QEMU program to launch the virtual machine. The supported formats include raw images, the qcow2, and VMware formats.

  LXC – Linux Containers (through libvirt), use to run Linux-based virtual machines.

  QEMU – Quick EMUlator, generally only use for development purposes.

  UML – User Mode Linux, generally only use for development purposes.

  VMware vSphere 4.1 update 1 and newer, runs VMware-based Linux and Windows images through a connection with a vCenter server or directly with an ESXi host.

  Xen – XenServer, Xen Cloud Platform (XCP), used to run Linux or Windows virtual machines. You must install the nova-compute service in a para-virtualized VM.

  Hyper-V – Server virtualization with Microsoft’s Hyper-V, use to run Windows, Linux, and FreeBSD virtual machines. Runs nova-compute natively on the Windows virtualization platform.

  Ironic – Not a Hypervisor in the traditional sense, this driver provisions physical hardware through pluggable sub-drivers (for example, PXE for image deployment, and IPMI for power management).

  Docker - use to manage container.

  关于更多 Hypervisor 详情,请参见 http://wiki.openstack.org/HypervisorSupportMatrix

  OpenStack 配置 Mutil-Hypervisor

  

 

  我们以 VMware ESXI Hypervisor 为例,阐述如何配置 OpenStack 使之在采用 KVM Hypervisor 的场景下再支持 VMware ESXI Hypervisor。在配置 Mutil-Hypervisor 环境前,我们假定您已经部署了一套采用 KVM 的 OpenStack 集群(Havana及以后版本) 和 一套管理任意数量 ESXI 主机的 Vcenter 5.5 集群。OpenStack 支持 VMware vSphere 系列产品,并且能够使用它的一些高级功能,比如:vMotion, 高可用,动态资源调度。下为 Mutil-Hypervisor 的架构图:

  从上图可知:VMware vCentor 并不能被直接添加到 openstack 集群中,我们需要新增一个 compute-node 节点,通过 compute-node 节点管理 vCentor 节点。一个 nova-compute 只能管理一个 vCentor 集群,我们可以往单个 vCentor 添加任意数量的 ESXI host,如果你想管理两个不同的 vCentor 集群,你需要两个 nova-compute 节点,分别管理对于的 vCentor 集群。

  注:

  和像 KVM 等这些基于 Linux 内核的 Hypervisors 不同,vSphere 集成到 OpenStack 时需要一个 vCenter Server 管理 ESXI host,其管理的虚拟机运行在 ESXI host 上,而非 nova-compute 节点上。

  虽然 OpenStack 集群可以支持多种虚拟化平台,但是每一个 nova-compute 节点之能够支持一种虚拟化平台,因此 Mutil-Hypervirsor 需要多个 nova-compute 节点。

  前提和局限

  DRS(Dynamic Resource scheduler ): 开启 DRS 功能,支持虚拟机自动调度。

  Shared storage: vCentor 集群必须支持共享存储

  Clusters and data stores: vCenter 下虚拟机的存储必须由 vCenter 管理的集群提供。

  Networking: VMware 支持通过 nova-network 或者 neutron 管理 vCenterr 下的虚拟机网络。

  Security groups. 若采用 nova-network,security groups 的特别将丢失;采用 neutron,可以保留该特性。

  VNC. KVM 默认 5900 – 6000 端口用于虚拟机 vnc。ESX 则采用 5900-6105 端口。

  SSH Keys: vCenter 不支持 SSH keys 注入虚拟机。

  配置 Openstack Mutil-Hypervisor

  1.计算节点(novavmware1)安装 nova-compute

  “apt-get install nova-compute nova-compute-vmware python-suds”

  2.配置计算节点novavmware nova.conf文件

  [DEFAULT]

  compute_driver=vmwareapi.VMwareVCDriver

  [libvirt]

  libvirt_type=vmwareapi

  [vmware]

  host_ip=

  host_username=

  host_password=

  cluster_name=

  datastore_regex=

  wsdl_location=file:///vmware-sdk/SDK/vsphere-ws/wsdl/vim25/vimService.wsdl #(optional)

  3.完成 nova.conf 里 vnc、AMQP 等配置项

  4.计算节点novavmware1安装 nova-network

  “apt-get install nova-network nova-api-metadata”

  5.制作 vmdk 镜像,并上传至 glance

  $ qemu-img convert -f qcow2 /Downloads/ubuntu.img -O vmdk ubuntu.vmdk $ glance image-create –name ubuntu –is-public=True –container-format=bare –disk-format=vmdk –property vmware-disktype=”sparse” –property vmware-adaptertype=”lsiLogic” –property Hypervisor_type=”vmware” < ubuntu.vmdk

  至此,Openstack Mutil-Hypervisor 环境配件完毕,试试在 ESX node 创建第一个虚拟机~

收藏 推荐 打印 | 录入:574107552 | 阅读:
相关新闻      
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款