歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 如何實現同一OpenStack集群同時支持多種虛擬化技術

如何實現同一OpenStack集群同時支持多種虛擬化技術

日期:2017/2/27 15:56:15   编辑:Linux教程

OpenStack 4 歲多啦,每個新版本都能實現一些需求和解決一些問題。其中被企業用戶問的最多的一個問題是:同一個 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.
  • LXCLinux 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 集群。

注:

  1. 和像 KVM 等這些基於 Linux 內核的 Hypervisors 不同,vSphere 集成到 OpenStack 時需要一個 vCenter Server 管理 ESXI host,其管理的虛擬機運行在 ESXI host 上,而非 nova-compute 節點上。
  2. 雖然 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 創建第一個虛擬機
原文鏈接:http://blog.csdn.net/wsfdl/article/details/42840709
Copyright © Linux教程網 All Rights Reserved