发新话题
打印

超级家庭网络之二 --- 我的虚拟化云端家庭网络

超级家庭网络之二 --- 我的虚拟化云端家庭网络

看这篇之前请各位先移步到以下链接看看第一篇里面所叙述的打造这个家庭网络的前因:http://bbs.m0n0china.org/viewthread.php?tid=16611&extra=page%3D1

继续,本来最初开始只是想简单弄一下就完了,懒得折腾那么多!想着弄一台破机器,然后跑个m0n0做路由就完了,没那么多事,但是后来发现大家对功能的要求很多,所以才决定部署一个企业级的家庭网络,以满大家需求!

设计思路的需求其实很简单,大家要求无非是以下几个:

1、高吞吐量的带宽、内网高性能全千兆
2、安全,实施完成后基本再无需担心病毒、流氓软件、木马等困扰
3、实现安全浏览,各客户端可以有选择性的无需任何设置即可翻墙、匿名网上IM和浏览等!
4、用户数据集中化、下载及资源共享等
5、常见应用采用远程运行,以达到即便客户端机器完全重装,常用应用及数据也无需备份及恢复即可原状态继续运行!

综合以上需求,就必须要用到虚拟化,因为仅靠单台物理服务器的话,无法同时完成上面的所有事情,即便能同时完成,安全性及可管理性也高不到哪去!

对于虚拟化,本人的单位工作环境中过去采用vmware,现在采用的hyper-v,经验告诉我在基于windows server 2008 r2的环境下,hyper-v更具可管理性及实施便捷性,对硬件支持也更好,性能也对比vmware来说更好!

且更重要的是hyper-v的新技术remoteFX可以使得虚拟机能得到物理本地级别的2d/3d性能体验,意味着你能在虚拟机上运行各种游戏、视频程序,而性能相当于物理本机!

决定了软件平台,剩下的就是硬件平台!

硬件上我决定采用两台服务器,一台负责网络基本功能维持,另一台负责应用!

而由于是家庭使用,又必须考虑在性能上可以满足的同时,又不需要付出太大的功耗成本,同时,根据大家都意见,总预算又要控制在8000元以内!

所以,决定采用inteli3-530+H55芯片组作为服务器平台!

两台服务器的配置分别如下:


物理服务器一:

CPUintel i3-530
主板:intel dh55hc
内存:金士顿DDR 3 1333 4GBx2 (共8GB
硬盘:

    西数1T绿盘:BT+emule下载用

    西数1T绿盘:BT+emule下载用


    希捷ES.2 500G:系统盘及虚拟os存放


            16G TOPSSD
工业级:pfsenseVM2dns+dhcp的虚拟os,后图有解释)专用



网卡:INTEl E1G42ET(此网卡专用于独享给虚拟机使用,不和物理系统共用!另,主板上自带一intel 82578dc芯片的千兆网卡,用于管理)

============



物理服务器二:

CPUintel i3-530
主板:intel dh55hc
内存:三星 DDR 3 1333 4GB金条x4 (共16GB
硬盘:

西数1T绿盘:共享仓库

   西数1T绿盘:共享仓库


   西数1T绿盘:共享仓库


   日立1T:系统及部分虚拟OS存放


   日立1T: 部分虚拟OS存放


   希捷ES.2 500G:部分虚拟OS存放



网卡:主板自带intel82572dc,另外也打算再增加一块INTEL E1G42ET,目前购置中,未到货!

================


第一台服务器运行4个虚拟OS
第二台服务器运行9个虚拟OS


下为网络图(点击可以看大图):





服务器一运行的虚拟OS及功能分别如下:

虚拟OS 1 pfsense - 路由及防火墙,虚拟硬件配置为:两个逻辑核心CPU512MB内存,最大8G硬盘(当然是动态的了,以下的所有虚拟OS硬盘均为动态)


采用pfsense的原因很简单,就是因为用惯了pfsense而已


虚拟OS 2windows server 2003 r2 - dnsdhcp服务器,虚拟硬件配置为:1个逻辑核心cpu1G内存,20G硬盘


有人可能会问,为什么不使用pfsense上的dnsdhcp?这是因为pfsense上的dns只是一个转发dns,本身并无根查询及解析、缓存功能,所以在pfsense上没法控制dns污染及屏蔽恶意域名,因此专门弄一个os来做dns server,考虑的是dns缓存及防止dns污染,同时可以屏蔽恶意域名(例如你可以建立一条rm.sina.com.cn的解析以防止浏览新浪的时候出现烦人的视频广告


(-_-无语,这里居然不支持超长帖子,所以只有分拆到楼下继续)





[ 本帖最后由 咖啡星冰乐 于 2011-5-28 00:37 编辑 ]
附件: 您所在的用户组无法下载或查看附件

TOP


(接上)

虚拟OS 3windows server 2008 r2 - 提供vpn出口及代理服务,虚拟硬件配置为:1个逻辑核心cpu1G内存,20G硬盘

使用l2tp链接一国外VPN服务商,此虚拟os里的所有流量均走vpn,并在上面运行proivoxy代理服务器,而下面第2台物理服务器里的几个用于安全浏览的remoteapp虚拟os的浏览器里,均设置http通过此代理来走,这样使用这些浏览器时候,所有流量都是走的vpn通道!

虚拟OS 4windows server 2008 r2 - 下载服务器,虚拟硬件配置为:两个逻辑核心CPU4G内存,总量为2TB硬盘!

各人下载用,每用户可以运行自己的迅雷、emule、及其他bt客户端!同时这台机器也有文件共享功能!


服务器二运行的虚拟OS及功能分别如下:


虚拟OS 1windows server 2008 r2 - remoteAPP服务器(专门针对个人运行QQ),虚拟硬件配置为:1个逻辑核心CPU1G内存,36G硬盘

使用remoteAPP运行QQremoteAPP可能对很多人来说可能有些新奇,其实实际上也不是什么新奇的技术,unix在很久很久很久很久很久很久很久很久很久很久很久以前就早已可以通过xserver来实现,只是微软最近几年才开始搞,过去的方案叫app-v,现在增强后改成remoteAPP


现在解释下remoteAPP是什么?remoteAPP顾名思义,就是远程应用程序,即,应用程序安装在服务器上,而运行的时候,所有的数据读写、运算,也是在服务器端之上,然后通过rdp协议将用户交互展现到终端的桌面,就像运行在本地一样,对于用户来说,跟在本地运行毫无感觉和区别!




(remoteapp管理)

简单的说,你可以理解成,这台服务器上装了一个QQ(或者任何的应用程序),当你运行的时候,通过rdp协议(通俗的讲也就是远程桌面的协议),remoteAPP帮你把这个QQ的窗口单独切出来显示到你的桌面上,所以实际上,你只是在操作这个QQ的窗口而已(就像远程桌面一样,只不过远程桌面你操作的是整个桌面,而现在你只是操作这个QQ的窗口),而所有聊天记录、文件传输、QQ的运行及所有的读写,都是在服务器上!







(在本地通过remoteapp运行qq,跟完全在本地运行的体验没有任何区别)

那么我为什么要这样做呢?大家都知道,国产软件有一个不争的事实,就是都会侵犯你的隐私,上传你的个人数据(你的文档,照片,软件使用情况、浏览记录等),因此,将QQ放到一个单独的OS里运行,跟用户的本地机器是物理隔绝的,他就什么都侵犯不了了,因为这个OS里只运行QQ,没有其他任何的软件,你QQ爱上传什么就上传什么,爱扫描什么就扫描什么,反正这个OS里除了你QQ空无一物,我完全无需担心你会偷走我的任何隐私!

另外,还有一个好处是,因为是单独的os,只运行一个QQ,所以可以尽管使用软件限制策略及applocker策略,设置成只可以运行qq,这样,系统就成了一个准只读状态,只有QQ目录和用户目录里的QQ聊天记录目录可以读写,其他所有的目录均为只读状态(当然系统日志和临时目录还是可以写的)!

因为windows 7以后的操作系统(包括windows server 2008 r2)的软件限制策略和applocker策略是运行在系统底层的,跟系统核心紧密结合,因此,简单的说,他就是一个高度安全也更为运行在底层的HIPS,所以,只要你设置合理,你不用装杀毒软件,就可以无需担心QQ甚至整个系统会中毒,即便别人给你发了病毒,你哪怕明知故犯的去点运行,这个病毒也是运行不了,因为系统底层根本不允许运行规则以外的东西(当然除非这个病毒很nb,他能绕过HIPS直接操作windows的底层,如果是这样,就算你装什么杀毒软件,也是没用了)!






(软件限制策略)

虚拟OS 2windows server 2008 r2 - remoteAPP服务器(专门针对个人运行QQ),虚拟硬件配置为:1个逻辑核心CPU1G内存,36G硬盘

(同上,只是分派给不同用户而已,相当于每个人都有一个专门的os只运行一个qq)


虚拟OS 3windows server 2008 r2 - remoteAPP服务器(专门针对个人运行QQ),虚拟硬件配置为:1个逻辑核心CPU1G内存,36G硬盘

(同上)

虚拟OS 4windows server 2008 r2 -remoteAPP服务器(针对个人专门运行安全浏览行为),虚拟硬件配置为:1个逻辑核心CPU1G内存,36G硬盘

(同上,只不过运行的不是qq,而是运行浏览器,例如ie,例如chrome,例如firefox等,而从前面的网络图里大家可能已经看到了,这一组os有一条红的虚线是连接到vpn的那个os上的,也就是说,在这组服务器上运行的所有浏览器,都已经预先设置好了http代理,当浏览的时候,实际上就是通过vpn的那个os出去了,实现翻墙!这样,再通过remoteapp将这个浏览器映射到用户的桌面上,当用户想浏览youtube等网站的时候,双击专用的图标运行的浏览器,就可以直接翻墙了,无需任何设置和切换!

另外,同样采用了软件限制策略及applockeros上只能运行这些浏览器,因此也不用担心中毒!


[ 本帖最后由 咖啡星冰乐 于 2011-5-28 00:47 编辑 ]
附件: 您所在的用户组无法下载或查看附件

TOP



(接上)

虚拟OS 5windows server 2008 r2 - remoteAPP服务器(针对个人专门运行安全浏览行为的服务器),虚拟硬件配置为:1个逻辑核心CPU1G内存,36G硬盘


(同上)


虚拟OS 6windows server 2008 r2 - remoteAPP服务器(针对个人专门运行安全浏览行为的服务器),虚拟硬件配置为:1个逻辑核心CPU1G内存,36G硬盘

(同上)


虚拟OS 7windows server 2008 r2 - 域服务器,虚拟硬件配置为:1个逻辑核心CPU2G内存,60G硬盘

部署有一个域,所有用户都加入并登陆到域上,实现文件共享映射脚本化,实现域策略!

虚拟OS 8windows server 2008 r2 - 文件共享服务器,虚拟硬件配置为:1个逻辑核心CPU2G内存,总量3.5T的硬盘

文件及储存及共享(例如用户的文档、照片,多媒体文件等)用!

虚拟OS 9windows server 2008 r2 - remoteAPP服务器(运行OFFICE等常用软件),虚拟硬件配置为:1个逻辑核心CPU2G内存,120G硬盘

通过remoteapp运行office等常用软件,这样一来安全,2来无需每台机器都装office这些应用软件!


这个os也通过remoteapp运行很多常用软件,例如网络电视、google earthphotoshop等!


这就是我的家庭网络,其实看图大家就应该很容易理解了,码这么多字是为了解释得详细些!
欢迎大家讨论,但如有讨论需求的,请先完全看完此贴后再跟帖讨论,本人不参与任何没有仔细看贴而提出的无厘头讨论!也别问我为什么不采用linux和其他虚拟化平台等无聊的问题(可以讨论其他平台的虚拟化,但请别问我为什么这样做,因为帖子里都已有说明!)

文末我会尽量列出及随时更新一些常见问题:

1、局域网跑的是千兆,每台客户机及物理服务器采用的都是intel网卡,客户机全用的也都是intel 9300pt,之所以全用intel的网卡,是因为要开巨帧,而在全千兆且交换机也支持的情况下开巨帧,网络性能会提高大约10%20%左右,而同网卡之间开巨帧,性能会更好,协商也会更快!



(千兆网络下一定要开巨帧支持,能很大程度提高网络性能,但这点很多人都不知道!不过百兆网络或者网络里有百兆环境混合就千万别开,否则会造成交换机假死!还有网卡品牌混杂也别开!)


现在我的这个网络里,开了巨帧带单一无其他传输的情况下,服务器与客户机之间拷贝大文件的速度大约可以到80MB/S左右,而不开的话大约在70上下,当然,也受限于磁盘性能!


2、服务器及cpu采用i3主要有两个原因,一个是功耗、价格、性能比上最为优秀,除此外i系列的cpu集成有gpu,因此在hyper-v中可以省掉显卡直接支持remoteFX,假如不采用带有gpucpu,每台服务器就需要另外添置显卡才能在hyper-v上使用remoteFX!如果不使用remoteFX,就无法以remoteAPP的方式运行网络电视等视频程序!


(hyper-v中添加remoteFX支持)

remoteFX
是什么?简单的来说,remoteFX对于虚拟机而言就是一块显卡,这块显卡通过将物理GPU映射给虚拟os使用,使得虚拟os也可使用物理机器上的2d/3d性能,这就意味着你可以在虚拟os上运行各种视频、游戏程序,体验基本接近于物理机器!


3vpn代理上不仅运行有privoxy,同时也可以根据需要运行有tor,通过tor,提供匿名ip访问!跟仅仅使用vpn的区别是,仅适用vpn的话出口只是单一ip,但速度很快,下载也可以到200k/s,而同时使用tor,可以随时更换ip,但速度会变得很慢!

4、大部分虚拟os之间,都在自带防火墙上设置了不允许其他服务器访问,增加了全网的安全性!

5pfsense上没有做流控方案,懒得做了,反正网速快,无所谓,需要的时候再做吧!

6、所有的windows server 2003 r22008 r2均为正版,部分cdkey来自于本人自己的msdn订阅,部分在dreamspark网站上的申请所得!

7pfsensedns专门使用一块廉价ssd是因为这两个虚拟os担负路由和域名解析功能,最为重要,因此必须保持资源的独占性!

8、remoteAPP理论上支持任何应用程序,而不需要应用程序预先支持remoteapp!在安装remoteapp之后,再在服务器本地上安装好你需要运行的应用程序,然后把应用程序设置仅remoteapp控制台,然后会生成一个msi文件用以在客户端设置链接到这个应用程序的配置!另外通过remoteapp运行的任何应用程序所衍生出来的其他运行,也都是在服务器端运行,然后在客户端本地屏幕上显示!例如当你运行qq后,点开某个人的qq空间,所以产生的ie运行进程,也是运行的是服务器上的ie,而非本地!

9、关于性能:网络性能毫无疑问基本没有瓶颈了!至于虚拟os性能,基本上也很好,虽然2号物理服务器上的虚拟os较多,但大多都是轻量级应用,因此性能也比较优异!加上os部署在磁盘上的位置比较合理,因此读写也基本不会产生瓶颈,除非有大量读写!
其实在我的经验里,虚拟化大部分瓶颈都来自于内存和硬盘,因此很多企业级的虚拟化会使用差分盘,并且将os镜像文件放到pci-e的ssd上!而内存,本来我在2号服务器上想上32g的服务器级别主板的,但是无奈价格太贵,因此作罢!所以最终采用了16g方案,不过现在看来运行也不错!只是如果采用32g方案的话,上面的每个os至少可以有2g内存!


现在remoteapp的那些服务器上,每个os的内存占用大概有60%!

另外不做raid,是因为不信任软件raid!仅此而已!

10、关于功耗:实测,服务器一的常态功耗在127W左右,繁忙的时候会到166W!服务二由于内存和硬盘较多,常态功耗在170W,繁忙的时候会到210W!算下来每天大概8度电,一个月240度电左右,所以每月光着两台机器电费大概120元(枯水期,丰水期在80元每月),5户人家约定按照这个标准均摊,因此尚可接受!

11、成本:除去每月的电费和网费(两项加一起每户每月90元),服务器费用总计8900,平均每户1780(一次性)!

另,此文不是什么正式的文档(也懒得去写正式的文档),所以只求描述性,因此在格式和逻辑上有所欠缺,请各位谅解!

[ 本帖最后由 咖啡星冰乐 于 2011-5-28 09:20 编辑 ]
附件: 您所在的用户组无法下载或查看附件

TOP

??????????家庭企业??

TOP

引用:
原帖由 iv8888 于 2011-5-27 23:02 发表
??????????家庭企业??
确切说是企业级的家庭网络!

TOP

顶一下,vmware esx用的多一些,hyper-v没有接触,学习
http://analyst.3322.org
搜索是最好的老师,请善用搜索。
请注意提问的技巧,把问题说清楚。

TOP

引用:
原帖由 analyst 于 2011-5-27 23:26 发表
顶一下,vmware esx用的多一些,hyper-v没有接触,学习
管理员是么?能否设置一下字数可以超过10000?最好能设置成80000吧,否则真的很麻烦,我想编辑一下帖子,就告诉我字数超了!然后就返回未编辑前的状态,很是让我抓狂!

[ 本帖最后由 咖啡星冰乐 于 2011-5-27 23:40 编辑 ]

TOP

Win2008 r2的remoteapp与win 2008的有区别吗是否必须和AD集成?

能否提供一下你的。 (实现文件共享映射脚本化,实现域策略)这里所用到的脚本和组策略

[ 本帖最后由 fkeuping 于 2011-5-27 23:51 编辑 ]

TOP

Win2008 r2的remoteapp与win 2008的有区别吗是否必须和AD集成?

能否提供一下你的。 (实现文件共享映射脚本化,实现域策略)这里所用到的脚本

TOP

杂册掉下面这个啊

TOP

发新话题