如何更换 OpenStack 默认的 Hypervisor
OpenStack 几乎支持现在所有主流的虚拟技术和 Hypervisor,如 KVM, Hyper-V, LXC, QEMU, UML, VMWare ESX/ESXi, Xen/XenServer 等,未来还会支持 OpenVZ 和 VirtualBox. 不过 OpenStack 首选的 Hypervisor 是 KVM,OpenStack 安装后默认使用的是 KVM (–libvirt_type=kvm),不需要特别配置。
如果由于某种原因,比如服务器 CPU 不支持 Intel VT-x/AMD-V 不能使用 KVM 或者想简单尝试一下另外一种 Hypervisor 怎么办呢?方法很容易,1、更改 OpenStack Nova 的配置文件(–libvirt_type);2、给所有的 Compute 结点装上相应的 Hypervisor 就可以了。
以下以 LXC 为例来说明如何更换 OpenStack Nova 的 Hypervisor,LXC 使用的是与 Xen 和 KVM 完全不同的虚拟技术,和 OpenVZ 的容器技术有点类似。
首先在所有 openstack nova compute 结点上替换现有的 nova-compute-kvm 到 nova-compute-lxc: $ sudo apt-get install nova-compute-lxc LXC 使用 cgroup 文件系统来限制资源和进程,libvirt 需要 cgroup 文件系统来运行 LXC,我们只要在 nova compute 上创建一个 ctroups 目录并且在 /etc/fstab 最后加上 none /cgroups cgroup cpuacct,memory,devices,cpu,freezer,blkio 0 0 这行就可以了,别忘了重启系统: $ sudo mkdir /cgroups$ vi /etc/fstabnone /cgroups cgroup cpuacct,memory,devices,cpu,freezer,blkio 0 0$ sudo reboot 重启后可以看到 /cgroups 下面多了很多东西: $ ls /cgroup/blkio.io_merged cpu.sharesblkio.io_queued devices.allowblkio.io_service_bytes devices.denyblkio.io_serviced devices.listblkio.io_service_time libvirtblkio.io_wait_time memory.failcntblkio.reset_stats memory.force_emptyblkio.sectors memory.limit_in_bytesblkio.throttle.io_service_bytes memory.max_usage_in_bytesblkio.throttle.io_serviced memory.memsw.failcntblkio.throttle.read_bps_device memory.memsw.limit_in_bytesblkio.throttle.read_iops_device memory.memsw.max_usage_in_bytesblkio.throttle.write_bps_device memory.memsw.usage_in_bytesblkio.throttle.write_iops_device memory.move_charge_at_immigrateblkio.time memory.numa_statblkio.weight memory.oom_controlblkio.weight_device memory.soft_limit_in_bytescgroup.clone_children memory.statcgroup.event_control memory.swappinesscgroup.procs memory.usage_in_bytescpuacct.stat memory.use_hierarchycpuacct.usage notify_on_releasecpuacct.usage_percpu release_agentcpu.rt_period_us taskscpu.rt_runtime_us 修改 OpenStack Nova 配置,将 nova-compute.conf 里面的 –libvirt_type=kvm 改成 lxc: $ sudo vi /etc/nova/nova-compute.conf--libvirt_type=lxc$ sudo restart nova-compute 重启所有 nova compute 结点上的 nova-compute 服务,有必要的话重启所有 nova compute 结点。
那镜像怎么办呢?以前为 KVM 上传的镜像也可以用在 LXC 上吗?嗯,可以。
下载 oneiric-server-cloudimg-amd64.tar.gz 解压并镜像到 OpenStack: $ wget http://uec-images.ubuntu.com/oneiric/current/oneiric-server-cloudimg-amd64.tar.gz$ tar zxvf oneiric-server-cloudimg-amd64.tar.gz$ euca-bundle-image -i oneiric-server-cloudimg-amd64.img $ euca-upload-bundle -b oneiric -m /tmp/oneiric-server-cloudimg-amd64.img.manifest.xml $ euca-register oneiric/oneiric-server-cloudimg-amd64.img.manifest.xml$ euca-describe-images IMAGE ami-00000001 oneiric/oneiric-server-cloudimg-amd64.img.manifest.xml available private x86_64 machine instance-store$ euca-run-instances -k vpsee -t m1.tiny ami-00000001$ euca-describe-instances RESERVATION r-4bbu7bd7 sanbi defaultINSTANCE i-00000001 ami-00000001 172.16.39.6 172.16.39.6 running vpsee (vpseecloud, node00) 0 m1.tiny 2012-01-20T08:04:05Z nova ami-00000000 ami-00000000 需要注意的是,OpenStack 目前不支持混合 Hypervisor,也就是说所有 nova compute 结点上必须使用同一种 Hypervisor,不过支持混合 Hypervisor 的 OpenStack 正在计划开发中。
求IT高手:思科的GN3软件,打开时提示没有IOS系统,具体该怎么做...
哎,不给发链接。
解决方法:1.到鸿鹄论坛的模拟器技术模块下载IOS文件,一般是3640的IOS,有交换模块,能做交换机的实验。
2.不会使用IOS和GNS3和SereCRT?我建议你加群76883240,这个群专门学思科的和CCNA考试的,很多人都懂这个,你也可以在那里叫我,可以发资料给你看懂。
我Q名叫风烟俱净。
如何安装配置Citrix XenDesktop的GRID vGPU
Citrix XenDesktop对GPU虚拟化的支持使虚拟桌面管理员在运行图形应用时能够获得很好的性能。
Citrix针对XenServer 6.2 SP1增加了vGPU功能以支持虚拟化的Nvidia GRID K1以及K2 GPU。
vGPU可以用于XenDesktop 7.1桌面以及服务器操作系统。
在应用虚拟桌面时一直在面临的存在的一个主要的障碍就是图形应用程序性能不佳。
例如,CAD软件比如CATIA以及AutoCAD在虚拟机上运行时性能可能存在问题。
因此,Citrix管理员必须降低这类应用的图形数据质量,这损害了最终用户的体验。
Nvidia GRID vGPU技术针对虚拟桌面的图形应用提供了解决方案。
管理员通用的做法就是禁用Windows的视觉效果,涉及浏览器中显示缩略图、菜单渐现、淡没效果、窗口以及任务栏的Aero主题,以及像桌面透视这样的显示效果。
使用只不过占了K1主板4个GPU的八分之一的vGPU,用户体验能够得到很好的提升,因此管理员不必再采用之前的通用做法。
最后的结果就是虚拟桌面在界面和用户体验方面处于与物理桌面同等的水平。
安装GRID vGPU功能Nvidia对较少的服务器使用GRID卡进行了认证,而且只能在XenServer Hypervisor尤其是XenServer 6.2 SP1上使用GRID vGPU功能。
在XenServer主机上安装了GRID卡后,接下来需要安装Nvidia vGPU GRID管理驱动(可以在Nvidia官方网站下载)。
Nvidia vGPU GRID管理驱动为XenServer提供了针对GPU的准虚拟化驱动程序。
在XenServer的GUI管理控制台XenCenter中,GPU标签将显示可用的GPU。
共享或不共享针对需要最佳性能的工作负载,Citrix为管理员提供了使用整个GPU的灵活性。
同时管理员也能够将GPU分割为可共享的vGPU。
在服务器级可以配置如下选项:放置策略。
放置策略决定了运行在物理服务器上的虚拟机将如何共享GPU。
可以选择在同一个GPU上虚拟尽可能多的vGPU,也可以为实现最高的性能在不同的GPU上虚拟出vGPU。
可选的vGPU类型。
虚拟机可以选择不同类型的GRID GPU:? 整个GPU直通:不共享GPU,提供了最好的性能。
? GRID K260Q:每个GPU分配给两个用户,1920MB的视频内存,最多支持四个分辨率为2560x1600的显示桌面。
? GRID K240Q:每个GPU分配给四个用户,960MB的视频内存,最多支持两个分辨率为2560x1600的显示桌面。
? GRID K200:每个GPU 分配给八个用户,256MB的视频内存,最多支持两个分辨率为1920x1200的显示桌面。
管理员可以限制系统能够使用的vGPU类型。
请注意针对基于服务器操作系统的XenDesktop虚拟机也就是XenApp,仅支持直通类型的GPU。
创建主镜像并配置XenDesktop在XenServer中,XenDesktop使用主镜像虚拟机创建或部署新桌面。
虚拟机使用的GPU类型可以在GPU类型下拉列表中选择。
请记住,为使Windows识别GPU,需要安装Nvidia GRID显示驱动程序。
XenDesktop 虚拟交付代理(VDA)同样会安装在虚拟机上。
为允许HDX协议识别可用的GPU,还应该启用HDX 3-D Pro选项。
最后,需要对XenDesktop进行配置以支持GPU。
针对新启用vGPU的XenServer,XenDesktop需要一个连接与资源记录。
在创建记录时,XenDesktop会询问是否想使用图形虚拟化,可以设置想要的vGPU类型。
请注意选择的vGPU类型应该与主虚拟机相匹配。
接下来是创建XenDesktop虚拟机目录与交付组。
XenDesktop通过匹配在连接与资源记录中设置的GPU类型来确认虚拟机目录能够使用之前创建的主镜像虚拟机。
允许共享使用价格昂贵的GPU使XenDesktop成为了一个更完善的解决方案,即使是性能要求最高的用例也能够保证其使用体验。
另外,可以快速地调整桌面虚拟机的配置,通过增加CPU等级、内存以及图形性能来满足工作负载的要求。
centos 6.6怎么升级内核
1. 准备工作 确认内核及版本信息 [root@hostname ~]# uname -r2.6.32-220.el6.x86_64 [root@hostname ~]# cat /etc/centos-release CentOS release 6.5 (Final) 安装软件 编译安装新内核,依赖于开发环境和开发库# yum grouplist //查看已经安装的和未安装的软件包组,来判断我们是否安装了相应的开发环境和开发库;# yum groupinstall "Development Tools" //一般是安装这两个软件包组,这样做会确定你拥有编译时所需的一切工具# yum install ncurses-devel //你必须这样才能让 make *config 这个指令正确地执行# yum install qt-devel //如果你没有 X 环境,这一条可以不用# yum install hmaccalc zlib-devel binutils-devel elfutils-libelf-devel //创建 CentOS-6 内核时需要它们 如果当初安装系统是选择了Software workstation,上面的安装包几乎都已包含。
2. 编译内核 获取并解压内核源码,配置编译项 Linux内核版本有两种:稳定版和开发版 ,Linux内核版本号由3个数字组成:r.x.y r: 主版本号 x: 次版本号,偶数表示稳定版本;奇数表示开发中版本。
y: 修订版本号 , 表示修改的次数 去 http://www.kernel.org 首页,可以看到有stable, longterm等版本,longterm是比stable更稳定的版本,会长时间更新,因此我选择 3.10.58。
[root@sean ~]#wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.10.28.tar.xz [root@sean ~]# tar -xf linux-3.10.58.tar.xz -C /usr/src/ [root@sean ~]# cd /usr/src/linux-3.10.58/ [root@sean linux-3.10.58]# cp /boot/config-2.6.32-220.el6.x86_64 .config 我们在系统原有的内核配置文件的基础上建立新的编译选项,所以复制一份到当前目录下,命名为.config。
接下来继续配置:[root@sean linux-3.10.58]# sh -c 'yes "" | make oldconfig' HOSTCC scripts/basic/fixdep HOSTCC scripts/kconfig/conf.o SHIPPED scripts/kconfig/zconf.tab.c SHIPPED scripts/kconfig/zconf.lex.c SHIPPED scripts/kconfig/zconf.hash.c HOSTCC scripts/kconfig/zconf.tab.o HOSTLD scripts/kconfig/conf scripts/kconfig/conf --oldconfig Kconfig.config:555:warning: symbol value 'm' invalid for PCCARD_NONSTATIC.config:2567:warning: symbol value 'm' invalid for MFD_WM8400.config:2568:warning: symbol value 'm' invalid for MFD_WM831X.config:2569:warning: symbol value 'm' invalid for MFD_WM8350.config:2582:warning: symbol value 'm' invalid for MFD_WM8350_I2C.config:2584:warning: symbol value 'm' invalid for AB3100_CORE.config:3502:warning: symbol value 'm' invalid for MMC_RICOH_MMC** Restart config...*** General setup*... ...XZ decompressor tester (XZ_DEC_TEST) [N/m/y/?] (NEW) Averaging functions (AVERAGE) [Y/?] (NEW) y CORDIC algorithm (CORDIC) [N/m/y/?] (NEW) JEDEC DDR data (DDR) [N/y/?] (NEW) ## configuration written to .config make oldconfig会读取当前目录下的.config文件,在.config文件里没有找到的选项则提示用户填写,然后备份.config文件为.config.old,并生成新的.config文件,参考http://stackoverflow.com/questions/4178526/what-does-make-oldconfig-do-exactly-linux-kernel-makefile 有的文档里介绍使用make memuconfig,它便是根据需要定制模块,类似界面如下:(在此不需要) 开始编译 [root@sean linux-3.10.58]# make -j4 bzImage //生成内核文件 [root@sean linux-3.10.58]# make -j4 modules //编译模块 [root@sean linux-3.10.58]# make -j4 modules_install //编译安装模块-j后面的数字是线程数,用于加快编译速度,一般的经验是,逻辑CPU,就填写那个数字,例如有8核,则为-j8。
(modules部分耗时30多分钟) 安装 [root@sean linux-3.10.58]# make install 实际运行到这一步时,出现ERROR: modinfo: could not find module vmware_balloon,但是不影响内核安装,是由于vsphere需要的模块没有编译,要避免这个问题,需要在make之前时修改.config文件,加入 HYPERVISOR_GUEST=yCONFIG_VMWARE_BALLOON=m (这一部分比较容易出问题,参考下文异常部分) 修改grub引导,重启 安装完成后,需要修改Grub引导顺序,让新安装的内核作为默认内核。
编辑 grub.conf文件,vi /etc/grub.conf#boot=/dev/sda default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu title CentOS (3.10.58) root (hd0,0)...数一下刚刚新安装的内核在哪个位置,从0开始,然后设置default为那个数字,一般新安装的内核在第一个位置,所以设置default=0。
重启reboot:boot-with-new-kernel 确认当内核版本 [root@sean ~]# uname -r3.10.58 升级内核成功!3. 异常 编译失败(如缺少依赖包) 可以先清除,再重新编译:# make mrproper #完成或者安装过程出错,可以清理上次编译的现场# make clean 在vmware虚拟机上编译,出现类似下面的错误 [root@sean linux-3.10.58]# make install sh /usr/src/linux-3.10.58/arch/x86/boot/install.sh 3.10.58 arch/x86/boot/bzImage \ System.map "/boot" ERROR: modinfo: could not find module vmware_balloon 可以忽略,如果你有强迫症的话,尝试以下...
如何修改devstack安装的openstack界面
OpenStack的安装和配置有一点复杂,特别对于初学者来,第一次安装OpenStack时经常会碰到很多的问题。
不过在Openstack社区中,一些开发者开发了一些自动化脚本来方便搭建OpenStack的开发环境,其中,DevStack是其中相对比较完善的,也是OpenStack官方网站推荐的用于了解OpenStack时搭建环境的方法。
DevStack是由Rackspace公司开源的一套用Bash编写的自动化脚本,用于为OpenStack构建和配置一整套完整的开发环境。
DevStack的官方网站为http://devstack.org/,可以到该网站上查看DevStack脚本的使用方法及其工作原理。
目前,DevStack对Ubuntu 12.04和Fedora 16及以上的Ubuntu和Fedora系统有比较完善的支持,选择在其他操作系统上使用DevStack可能需要做一些修改才能正常工作。
所以,这里的示例以在Ubuntu 12.04 系统上使用DevStack脚本来搭建OpenStack开发环境,其过程非常简单,只分为如下两个步骤:(1)下载DevStack的代码仓库,命令行如下:git clone git://github.com/openstack-dev/devstack.git (2)运行stack.sh脚本,命令行操作如下:jay@my-ubuntu:~$ cd devstack/ jay@my-ubuntu:~/devstack$ ./stack.sh Horizon is now available at http://192.168.158.31/ Keystone is serving at http://192.168.158.31:5000/v2.0/ Examples on using novaclient command line is in exercise.sh The default users are: admin and demo The password: admin This is your host ip: 192.168.158.31 stack.sh completed in 1663 seconds.#看到最后这样的信息,说明OpenStack已经成功安装和配置 由于stack.sh脚本会自动下载大量的被依赖的软件包和OpenStack源代码,还要进行各种配置文件和数据库的初始化,所以第一次执行stack.sh脚本比较花费时间,大约需要几十分钟到一个小时不等(根据处理器速度和网络带宽的不同而不同)。
在Ubuntu系统中运行stack.sh脚本过程中,因为需要经常使用“sudo”命令去安装软件包和写配置文件,所以可能会提示输入当前用户的密码;因为需要配置一些数据库、OpenStack的认证,所以可能会有一些数据库用户名、密码的确认需要与用户进行交互。
在执行DevStack的stack.sh之前,用户也可以填写本地自己配置的文件名为localrc的配置文件,示例如下:DATABASE_PASSWORD=123456 #请根据需要修改此配置文件 RABBIT_PASSWORD=123456 SERVICE_TOKEN=123456 SERVICE_PASSWORD=123456 ADMIN_PASSWORD=admin HOST_IP=192.168.111.111 如果准备了这样的本地配置文件,那么在运行stack.sh脚本时就会减少这些密码和认证信息的确认过程。
关于Hypervisor的配置,在DevStack源代码库的默认配置文件stackrc中有如下的两行配置:VIRT_DRIVER=${VIRT_DRIVER:-libvirt} LIBVIRT_TYPE=${LIBVIRT_TYPE:-kvm} 所以,DevStack安装OpenStack时,默认是设置libvirt作为Hypervisor的驱动的,使用QEMU/KVM作为Hypervisor,只有在不能成功加载“kvm”模块时才会退回到使用QEMU纯软件模拟的虚拟化方式。
在执行完stack.sh脚本安装好OpenStack之后,也可以查看“kvm”和“kvm_intel”(或“kvm_amd”)模块是否成功加载,还可以查看/etc/nova/nova.conf文件中有如下两项:libvirt_type=kvm compute_driver=libvirt.LibvirtDriver 一般来说,正常执行完DevStack中的stack.sh脚本后,OpenStack的各项服务(如计算、镜像、控制面板、网络等)都已经正常打开处于可用状态。
当然,如果安装过程中有一些错误出现,则可以根据其源代码进行相应的修改来解决或绕过一些问题。
当时需要管理这些OpenStack服务时,或者运行stack.sh前需要清理环境时,可以执行DevStack中的unstack.sh脚本来停止OpenStack相关的服务和清理一些中途安装出错的环境。
当然,DevStack这一套脚本一般用于部署的是OpenStack开发环境,对于在实际生产环境中大规模部署OpenStack云计算基础架构来说,还并不够完善。
不过,可以根据OpenStack官方的一些部署参考文档(见本章末尾的“参考阅读”)和实际的应用场景,以DevStack为基础来构建一套个性化的OpenStack生产环境。
如何将windows物理机转换成hyper虚拟机
你好,1、一台安装好Windows Server 2008 的服务器,装好HYPER-V组件,这台服务器就是HYPER-V服务器了。
2、在HYPER-V服务器上安装VMWare convertor(不需要安装agent)。
3、下载VMDK to VHD Convertor并解压到HYPER-V服务器的本地某个目录。
4、在HYPER-V服务器上创建一个网络共享以便目标服务器能访问到。
5、运行VMware convertor,目标为你需要转换为虚拟机的物理机。
6、转换成功后,生产的是VMDK文件,这时就需要用到VMDK to VHD Convertor来讲VMDK转换为VHD了。
7、新建一台HYPER-V虚拟机,并加载上一步转换出来的VHD文件,注意,此时先不要启用这台虚拟机的网络连接。
8、启动该虚拟机,登录并让发现新硬件向导运行,此时主要先不要插入integration services的镜像。
重启。
9、再次登陆后,插入integration services镜像,安装好后,重启。
10、第三次登录后,让integration services继续安装,直至完成,再次重启。
11、登录后查看网络连接,如果没有,需要将虚拟机关掉后,添加legacy network adapter。
12、把在虚拟机上用不到的软件或其他东西整理一下,比如一些硬件管理的软件。
13、如果一切正常的话,关掉原来的物理机,连通虚拟机的网络,搞定。
xen虚拟化技术的特性是什么?
管理宿主机,虚拟机集中管理,通过xencenter对虚拟机进行全生命周期管理。
强大的标签,搜索功能。
帮助管理员轻松识别和管理虚拟基础架构。
存储支持广泛本地存储,IDE,SATA,SCSI,SAS.共享存储支持NFS,ISCIS,NetApp等。
支持CIFS协议通过Microsoft Windows认证的系统,其全新的win存储驱动与多个虚拟磁盘配合使用时,帮助降低总系统开销,改善性能。
网络支持虚拟交换机VLAN技术,冗余网络链路通过支持active/active模式的NIC聚合。
监控通过资源池全新的持久性能统计数据,可对虚拟机性能和服务器总体性能进行实时监控和图形化分析,自定义CPU,磁盘,网络饿警报阀值并根据设定的EMAIL服务器和地址发送给收件人。
备份强大的备份功能,将虚拟机从虚拟平台中导出,导入到另外一套XENserver,操作简单,方便。
支持一台虚拟机同时拷贝多台,缩减自动部署时间和工作。
转载请注明出处51数据库 » hypervisor软件下载