未解决
此帖子已超过 5 年
2 Intern
•
1.4K 消息
4
15002
【集中讨论】如何搭建产品测试环境?
本帖背景和目的:学习一门技术,不可或缺的就是搭环境做测试,关键问题在于怎么搭?怎么测?用哪些工具?软硬件各有什么要求?搭建过程中都有哪些问题,如何解决?带着这些问题,我特地开了本帖,希望为大家建立一个分享、交流搭建测试环境的平台,让我们的学习之路更为平坦。你可以说说自己的工具、经验、推荐、最佳实践等等。没有唯一的做法,只有最适合、最合理的做法。也可以提出自己的疑问,集大众之力去解决。
我简单谈谈自己搭建测试环境的做法:
硬件环境:
- Intel i5 CPU (关键是支持Intel-VT-x、Intel-VT-d[可选]、硬件DEP[可选])
- 主板支持最大32GB内存(大容量内存是运行10+ VM的必须)
- OS硬盘SSD,数据硬盘为TB级(存放VM)
- 网络:一般家里带有Internet的LAN网络就足以了
软件环境:
1. 主机虚拟化软件VMWare Workstation:https://my.vmware.com/web/vmware/evalcenter?p=vmware-workstation9 (注册帐号可以下载30天试用版)同类型产品很多,比如VirtuaBox、VPC、Virtual Server、QEMU等等,大家可以自由选择。
2. 共享存储
- EMC VNX-File simulator https://community.emc.com/thread/162719?start=0&tstart=0
- OpenFiler https://openfiler.com/
3. Server Hypervisor
- VMWare ESXi https://www.vmware.com/go/get-free-esxi/ (注册帐号可以获得120天试用)
- Microsoft Hyper-V(其实就是下个Win2008 or later的server OS)http://www.microsoft.com/click/services/Redirect2.ashx?CR_CC=200127475
- KVM http://www.linux-kvm.org/page/Main_Page
4. OpenFlow网络:Mininet - http://yuba.stanford.edu/foswiki/bin/view/OpenFlow/Mininet
5. 云平台:
- Openstack - http://docs.openstack.org/trunk/openstack-compute/install/apt/content/
- CloudStack - http://incubator.apache.org/cloudstack/
6. 虚拟网络:这个比较复杂,个人还没实战过。先可以推荐几个网站,这些更多的是SDN实现,而非专门的网络虚拟化。有兴趣的朋友可以研究+交流:
- Openstack Quantum: http://wiki.openstack.org/Quantum
- FlowVisor: https://openflow.stanford.edu/display/DOCS/Flowvisor
- OpenvSwitch: http://openvswitch.org/
- Floodlight http://floodlight.openflowhub.org/
- NVP - http://nicira.com/ (没得下载…只能看看概念)
- Cisco Nexus 1000v (去VMWARE或Cisco注册个Guest帐号就可以下载)
其实还漏了很多,比如应用程序虚拟化、桌面虚拟化、存储虚拟化,这也是开这个帖子的原因之一,在下个人能力有限,不可能面面俱到,希望集众人之力,让我们的测试环境变得更为完整。
常见问题:(这里是我目前遇到的一些疑问和解决方案,供参考)
A1: ESXi此类软件通常是直接安装在硬件之上的,必须有专门的服务器才能测试吗?
Q1: 你可以先在自己的工作机(比如WINDOWS 7)上安装VMWARE Workstation,随后创建ESXi虚拟机,再用ESXi虚拟机创建虚拟机,即nested VM。不要太担心性能,因为你只是测试,而且我试过,nested VM的性能还是不错的。个人还尝试过用KVM做nested VM,但性能就很差,安装一个nested VM都要好久(我尝试的是WINXP,几乎跑不动,CPU基本都在90%以上)。所以,推荐Workstation。
A2:为什么需要Shared Storage,直接用VM自带的虚拟硬盘不就可以了?
Q2:因为集群环境通常都需要shared storage,比如VMWare vMotion这种功能也都是要在群集环境下才能工作的。
Tip1:我选择workstation还有一个重要原因,就是它可以虚拟化Intel-VT-x or AMD-V,其它产品是否有这个功能我没具体查过,知道的朋友可以分享一下经验。为什么需要这个功能,首先,有些软件必须在硬件支持Intel-VT-x or AMD-v的情况下才能安装,比如Microsoft Hyper-V,我试过在workstation上安装Windows Server 2012,随后安装Hyper-V role,但提示CPU不支持硬件虚拟化。随后,为vCPU打开硬件虚拟化功能后,就能安装了,KVM也一样,不过KVM似乎并不强行要求硬件虚拟化,只不过没有硬件虚拟化性能会很差。
注意:以上仅是我个人搭建测试环境的做法,并非必须如此,其中也可能存在不合理和错误,总之方法和工具的选择在于个人。
Roger_Wu
2 Intern
2 Intern
•
4K 消息
0
2012年11月25日 22:00
现在比以前方便多了,04/05年以前做多平台软件售后的,谁家实验室里都跑满了各种操作系统的物理机。现在基本上少数几台强力一点的hypervisor就行了。
后来包括像Cisco路由器这样的都出了模拟器,有Dynamips、GNS (graphical network simulator)这样的利器,自学CCIE都不是梦。
huangh
30 消息
1
2012年11月25日 23:00
这个有意思。记得以前做实验搭环境,用得最多的还是Vmware搭虚机,那时物理机配置不高,划分给虚拟机内存时还要精打计算。现在内存越来越白菜价,物理机器上的标配也高了,同时跑几个虚机轻松多了。话说回来,虚拟机技术这些年的发展真是挺快的,用起来越来越顺心。
zhouzengchao
2 Intern
2 Intern
•
1.4K 消息
0
2012年11月26日 00:00
支持nested-vm是关键,让我们可以测试hypervisor程序。
liulei_it
2 Intern
2 Intern
•
3.2K 消息
0
2012年11月26日 06:00
唉,自己搭建环境还是费一般周折的再说了购买硬件的价格也不便宜。
最近偶在网上加入了俱乐部,给钱对方负责提供硬件环境随便你怎么捣鼓,
yanzs
2 Intern
2 Intern
•
913 消息
0
2012年11月26日 09:00
看起来很复杂,有机会可以试试,但是硬件条件是个问题!!
liulei_it
2 Intern
2 Intern
•
3.2K 消息
0
2012年11月26日 10:00
就咱拿点可怜的salary要想自己搭建环境实在太难了。
zhouzengchao
2 Intern
2 Intern
•
1.4K 消息
0
2012年11月26日 17:00
我这台只是普通的家用机,有硬件条件只是测试的第一步,关键还是之后如何利用软件来实现测试环境。
zhouzengchao
2 Intern
2 Intern
•
1.4K 消息
0
2012年11月26日 17:00
目前虚拟化软件的功能让我们能自家台式机就可以做各种测试,其实是降低了对硬件的要求。
Roger_Wu
2 Intern
2 Intern
•
4K 消息
0
2012年11月27日 00:00
Red Hat Cluster Suite应该要License,自己搭搭的话用keepalived、heartbeat的都有。
zhouzengchao
2 Intern
2 Intern
•
1.4K 消息
0
2012年11月27日 00:00
有谁搭建过一些Opensource的Cluster吗?
zhouzengchao
2 Intern
2 Intern
•
1.4K 消息
0
2012年11月27日 03:00
多谢Roger提供信息,我找到了相关页面,打算看下怎么玩!
LinuxHA
http://www.linux-ha.org/wiki/Main_Page
Keepalived
http://www.keepalived.org/documentation.html
liulei_it
2 Intern
2 Intern
•
3.2K 消息
0
2012年11月27日 05:00
EMC实验室也可以做这样的实验吧,毕竟个人捣鼓电脑也不容易呀又花钱。
yanzs
2 Intern
2 Intern
•
913 消息
0
2012年11月27日 05:00
呵呵,对,搞个视频讲解会好一点,让我们学习学习!
Yanhong1
1.6K 消息
0
2012年11月27日 05:00
以后你可以在家里录些使用虚机的视频,给大家开开眼,呵呵
yanzs
2 Intern
2 Intern
•
913 消息
0
2012年11月27日 05:00
嗯,虚拟化软件确实是个好东西!