现在都喜欢炒作“云”的概念。企业有企业“云”,跨国服务商有跨越全世界的“云”,所以小范围来说,自己家里也应该有个“家庭云”
“云”是什么概念?
说白了就是服务器,保持着联网状态的服务器。任何时候,任何地方,只要有需要,只要能联网,登录服务器,并从上面获取所需的信息——这就算是“云”的利用。
什么人需要“家庭云”?
并不是所有人都需要自己的家庭云,但如果你和我一样,并不放心把所有信息都保存在一个看不到摸不着的地方,或者你不愿意支付每月十美金的“托管费用”,你就应该考虑组建自己的家庭云。
组建“家庭云”的必要条件
综上所述,一个“家庭云”应该是家里的一部服务器,并能够从外部网络(互联网)接入并下载上面的信息。所以,要组建“家庭云”,你必须拥有这些东西:
1. 一台配置一般的旧电脑(不用很好,尤其显卡部分,但内存要求比较高)
2.一个足够稳定的路由器,要能够设置端口映射等
3.一个合理的“云”平台(即操作系统)
服务器硬件选择:
以我自己的为例,除了硬盘部分,我的服务器都是由旧电脑零件拼凑而成(不过由于是公司淘汰给我的,所以不算太落后)。
CPU为Intel 四核Q9300,内存为8GB (2 x 4GB)DDR2
并不是所有的人都需要那么高配置,如果读过之前我写的有关Windows Home Server的文章,你会发现奔3的配置用那个系统也就绰绰有余了。
但我这里要求的更高一些,所以8GB内存是必需的。
至于硬盘大小,我新旧硬盘加起来总共达到了6块(还有3块没用上),总容量达到了6TB(使用了RAID 1做安全保护,所以实际容量只有3TB)
为什么要那么多?因为有了服务器后,我的工作电脑已基本不需要硬盘空间。80GB装个系统,足够用了。
“云”平台的选择:
也就是操作系统。喜欢用Linux的高手自然没话说,不过我的“云”是以Home Server 2011为中心的,所以我基本围绕着微软的产品(而且我很喜欢Server 2012)
由于服务器配置不算差,所以我认为在跑Home Server 2011以外,应该还有余地做一些其他事情,譬如运行一个SQL服务器,挂一个VPN和DNS等。
在这样一种假设下,我选择了Windows的Hyper-V作为服务器基本平台。也就是说,我打算利用Hyper-V,运行多个服务器系统,而每一个系统,只做相对独立的任务。
当然,在一个操作系统下晚上上面所有的事情也不是不可能的。但这并不是当下虚拟技术当道的时代推崇的做法。为什么?一、同一操作系统下处理多个任务,容易产生冲突。二、一旦系统损坏,损失的就不仅仅是一项功能。三、便于管理。
最后,我的”云“布局基本定为:
1. 主服务器:Windows Server 2012 with Hyper-V
2. 第一虚拟服务器:Windows Home Server 2011
3. 第二虚拟服务器:Windows Server 2008、2012(都可以,不过我用了2012)
4. 第三虚拟服务器:Linux(测试用)
5. 暂时未定
首先,是主机系统的安装——Windows Server 2012
安装和其他操作系统没有太多区别,省略了……
安装完成后,需要更改服务器名称,开启远程管理,以及安装系统更新等……
我给服务器命名为HyperV-Host,远程管理和远程桌面都开启。
完成上面一步后就可以直接添加“role and features”——这一步,只需要勾选Hyper-V,其他相关组件,系统会自动安装,勾选完使用默认设置完成安装,并重启服务器就好。
第一次配置Hyper-V,会要求选择网卡作为Virtual Switch的“依附卡”。这里情况如下:
1. 如果服务器上只有一个网卡,那么这是唯一选择,不用管,选择好直接下一步。单网卡和双网卡在家庭服务器中没有太大区别。
2. 如果有两个或两个以上的网卡,随便选择一个作为安装Virtual Switch的专用卡。从此,这张网卡将负责链接所有虚拟服务器,而没有被选择作为Virtual Switch的网卡,则将成为服务器主机自己的专用网卡(当然,两张网卡都要接网线,太具体的概念和技术说明这里不作介绍)
完成后,重启,完工……Hyper-V就算安装完成了。打开服务器上的Hyper-V Manager进行虚拟机的安装和配置。
注意:主机上千万不要再安装其他多余的东西,因为主机就是负责运行虚拟机的,需要其他功能,在虚拟服务器上面实现。
下面是我的服务器的一些截图:
每一个虚拟机的配置和安装我就不一一介绍,使用过虚拟机的朋友应该不难理解。这里我只重点介绍两个东西:1.动态内存分配。2.虚拟硬盘配置(尤其是针对Home Server的)。
1. 动态内存分配
在设置每一部虚拟服务器时,配置内存的界面下可以勾选是否使用动态内存分配(默认不使用)。这一技术的好处是,我们可以用1GB内存来启动Windows Server 2012虚拟机,而在其运行过程中,如果内存不够,或太多,虚拟机将根据实际情况自动更改内存大小(看截图)
前面是动态分配的内存,后面是正在使用的内存。如果系统需要更多内存,这两个数字都会自动增加。
这是这台虚拟机的内存设置。记得加亮处要勾选上。另外说一下,我实际给该系统分配的为2GB内存,但前一张图显示系统自动调整为1GB了。
2.虚拟硬盘配置
生成新的虚拟硬盘,实际上就是创建一个虚拟硬盘文件。考虑到我已经使用RAID 1组合来保护数据,因此Home Server中保存的资料,我实际上没有必要再多做一次备份。
再退一步说,即使我需要将Home Server中的文件备份和转移,有了“虚拟硬盘”,我只需将相对应的文件复制一份就可以了(如同复制了硬盘)……
上图最下面的两个文件就分别是我的Home Server中的文件存储盘和终端电脑备份盘(在系统中分别对应E盘和F盘,见下图)。
考虑到我不需要像过去使用Home Server那样,对所有重要文件再进行一次备份,所以每一个硬盘只给了500G空间。
Windows Home Server 2011简称WHS2011,这个系统本身从安装到配置都没有什么困难的,毕竟,这是一款面向普通家庭用户的产品(很可惜,现在停止后续版本开发了,新版本由Windows Server 2012 Essentials替代,不过目前版本寿命延续到2025年)。
看过我以前写的有关第一版Windows Home Server安装和使用的朋友应该还记得,这款产品主要功能就在于备份家里的电脑,并统一管理这些数据。
WHS2011在这一方面没有改变,还是一个家庭数据备份中心。但改进在于:
1.引入了盘符的概念,和普通Windows一样,可以选择保存在C盘、D盘或是E盘等等……
2.增加了File History……这可是巨大有用的功能啊。譬如我正在编辑一个文件,我保存并覆盖掉了旧文件,但后悔了……有了这个功能,我可以选择恢复到过去的版本(即没覆盖前的)。第一版的WHS没有这个(反正我是没发现)
3.可选择备份次数(一日多次备份)。印象中,第一版的WHS只能是一天一次……
WHS2011和旧版没有太大区别,同样通过Dashboard进行设置,同样支持安装add-ins。这里只特别说明一下:
开启File History,右键点击硬盘符,选择属性,然后勾选Enable Shadow Copies就可以了,见图:
另外,WHS2011的Remote Web Access(远程网页登入)功能我弄了好久……这主要是路由器端口映射,以及防火墙阻隔的问题。每个人的路由器不同,所以设置也不尽相同。参看我之前的文章进行设置,重点就是要把80和443两个TCP端口指向WHS2011的IP就可以了(路由自带防火墙最好关闭)。
该功能打开后是这样的(我自定义了Logo和背景图):
手机上面也可以登录,会自动调整为移动版本……不过这个功能我已经不太用得到了,因为下一篇会介绍VPN的接入,有了VPN,我可以直接通过另外一个应用访问服务器上面的共享内容。
VPN是组建家庭云所必需的。有了VPN,手机可以轻松的连入家里网络,也可以彻底摒弃FTP这种不太安全的文件传输方式(后面介绍远程备份时需要用到VPN)
早前介绍过用Home Server来搭建VPN,但这管理起来多少不太方便。WHS2011上面的帐号都是家庭成员,而VPN帐号有的是共享朋友同事使用。所以,使用一个独立的服务器管理独立的账户群,这是比较明智的。
本着体验Server 2012的心情,决定采用这一系统来设置VPN的接入。事实上,这一过程与以往操作并无不同,只是一些细节之处更换了名称。所以,简单一些,我只截图,不多说了。
勾选Remote Access的时候会自动勾选Web Server (IIS)
完成功能添加后会要求进行配置,选择Deploy VPN only(最下面一个)
完成上面这步以后就打开Routing and Remote Access进行IP配置
说明一下:IP必须符合路由分配的范围。譬如你的范围是192.168.1.50 - 192.168.1.100,你在上面的分配就不可以超出这一范围,如果是192.168.1.49,接入到网内的VPN账户可能就无法上网。
VPN接入端创建完成,然后就是创建帐号,并开启远程连接:
注意:最下面加亮的Assign Static IP Addresses不是必须的。不勾选,该账户就会自动分配IP,勾选以后可以固定其IP地址(前一步中设定的那个范围)。
这是手机通过LTE网络连接VPN,再直接访问WHS服务器内容的截图(终极目的,如果速度够快,流量允许,直接播放电影也是可以的……)
光是让自己的“云”只与自己的世界连接,这有点不够,要把别人的云和自己的云连起来,那才是连接了这个世界……
Google Drive、微软SkyDrive、老牌Box.net……这些都是云储存领域大名鼎鼎的产品。用过的朋友就会知道,安装一个客户端,储存在指定文件夹下的文件就会自动与服务器的云端进行同步……
只是这么玩,太逊了……家里如果有三台电脑,你是打算给三台电脑都装上Google Drive、SkyDrive等等等等的客户端吗?如果其中一台笔记本电脑一个月没开机了,你是打算开机以后等着它完成一个月内容的同步以后,再开始使用吗??
太逊了……
有了自己的云,你让自己的云跟谷歌的云、微软的云进行同步就可以了。每次,无论你打开家中任何一台电脑,你只需要访问服务器共享的文件夹,就一定能获得已经同步好的文件……
其实,在服务器上安装Google Drive和SkyDrive并不是问题,与在Windows 7上安装一模一样。但这里问题的关键是——要利用Windows自带的“计划任务”(task scheduler)让以上两款云客户端程序自动在不登录的情况下于系统后台运行。
操作如下:
打开“计划任务”——>创建新任务(不是那个基础任务)——>给任务取一个名字,然后选择“无论是否登录都开始运行”,兼容“Win7和Server 2008 R2系统”
这里说一下,Google Drive的路径如上图所示,SkyDrive的路径在%AppDate%\Local\Microsoft\SkyDrive下。找不到直接打开相应快捷方式的属性就能查看。
为每一个应用程序设置一个开机就自动启动的计划任务后,重启电脑就立即生效了。当然,WHS用户需要通过Dashboard将Google Drive和SkyDrive的文件夹共享(基本操作不需要截图了吧……)