您的需求已经提交,我们将在48小时内联系您
全国服务热线:400-1000-221
确定
免费享受企业级云安全服务
获取手机验证码
{{message}}
免费试用

虚拟专用服务器(VPS)入门

作者:
发布时间:2011-11-21
	 VPS(Virtual Private Server 虚拟专用服务器)技术,将一部服务器分割成多个虚拟专享服务器的优质服务。 每个VPS都可分配独立公网IP地址、独立操作系统、独立超大空间、独立内存、独立CPU资源、独立执行程序和独立系统配置等。 用户除了可以分配多个虚拟主机及无限企业邮箱外,更具有独立服务器功能,可自行安装程序,单独重启服务器。 高端虚拟主机用户的最佳选择。虚拟专用服务器确保所有资源为用户独享,给用户最高的服务品质保证,让用户以虚拟主机的价格享受到独立主机的服务品质。

  VPS与专用主机托管和共享主机托管的比较

  VPS是在一个共享硬件上运行的虚拟机器。一台功能通常很强的多核主机经配置后,可以提供专用内存池;共享核心、单核或多核;以及硬盘存储空间。主机通常提供一系列的GNU/Linux操作系统,供客户选择。有些主机还提供一个或多个版本的Windows Server。(苹果允许使用Mac OS X Server虚拟化,但只能用在苹果硬件上,还要求为硬件和每个虚拟化实例单独购买许可证。苹果终止了机架Xserve服务器,因而我们不太可能看到任何大规模的虚拟化。)

  与VPS连接的存储系统具有持续性:如果你的虚拟机或运行虚拟机的主机硬件崩溃或断电,重启后,可以在上一次停运的地方继续运行,当然硬盘故障除外。亚马逊是唯一的例外,我会单独讨论。可能还需要恢复文件系统,这视操作系统而定。由于Linux中有ext3日志功能,我还没有发现除了简略的启动修复之外还需要什么操作(不过,备份虚拟机相当容易,我们会在下一篇文章中讨论)。

  VPS在几个重要方面有别于租赁专用硬件设备或使用共享服务器场地

  如果你向提供商租赁专用机器,无异于被这个硬件绑住了手脚。这在过去还是个特别的优点,因为别人无法使用你的处理器周期资源,你想执行什么任务,可以执行什么任务。

  然而,要是专用硬件出现了故障,主机服务商就得找出备用部件,必须移除、重新指向或恢复驱动程序。有些主机服务商承诺手头备有这种部件。如果你的要求超出了专用设备的限制,就得安排迁移到另一个物理硬件上的事宜。如果你突然需要10个一模一样的专用主机,这安排起来很费时间。

  提供专用硬件的主机托管服务商可能并不为备份主机提供简单的解决方案,备份主机可能完全是你的责任。这就使得恢复同样很困难,或者需要支付按小时计费的昂贵的“远程操作服务费”。

  至于共享主机托管,你与其他用户共享同一台机器。你不知道有多少人的网站或其他服务在系统上运行,也不知道你在某个时间可以使用多少的计算功能。众多的节制系统试图牢牢控制每个用户,但是这好比一群人在拥挤的房间里,只要有个人大声喧哗,别人就无法谈话。

  如果你自己使用过多的资源——无论出于正当原因,还是由于编程上的错误,可能会被踢开、被建议升级到专用硬件,或者受到节制,结果任务完成不了。共享主机通常不断地增量备份,但这得不到保证:你得承担一部分风险,确保自己也有备份。

  (现在开始出现了一种共享主机替代方案,Rackspace的Cloud Sites就是典例。它比共享主机方案要贵不少,你也无法获得根访问权。但是你的文件和脚本散布在能够自动扩展的一组机器上。基本费用相当于一台专用计算机。它奇特地结合了虚拟化和共享主机,适用于不需要调整后台服务器的流量较大的网站。如果某网站大多数时候每天的页面浏览量平均为5万人次,但偶尔猛增至100万人次,那它很适合采用这种方案。还有内容分发网络(CDN),可用于分发静态页面、组件、图像及其他媒体,按每GB量收费。)

  VPS消除了硬件方面的任何顾虑:无论主机服务提供商作出什么决定,其选择对你来说是看不见的。你获得了专用服务器的一些优点,因为VPS看起来就像一个设备,与一组特定的硬件相连接。如果主机有闲置周期,许多服务器允许你在峰值时期的处理器使用率高于保证的极限值,因而在那个方面提供了小小的优势。最近,我在Linode运行的一台MySQL服务器在几小时内保持着400%的处理器使用率。

  你仍要负责维护操作系统的运行,可能会把什么事情弄糟。但是你也可以将系统快照作为备份来保存,万一犯了重大错误,可以迅速恢复到快照。如果主机硬件出现故障,VPS服务可以迅速将你迁移到另一个系统上(我已经碰到过这种事)。

  一旦你创建了合自己心意的VPS,几乎所有VPS服务都允许你复制。遇到了流量激增的情况,你可以启动额外的一横一样的镜像。有些服务还提供工具,以便在这类服务器或循环DNS之间均衡负载。亚马逊在这方面显得尤其灵活,它设计的系统让用户可以启动1000台服务器,然后停用这些服务器,用户只需要为运行期间的使用量付费。

  亚马逊一直是个例外

  亚马逊率先大举进军虚拟服务器主机托管领域;就本文提到的每个方面而言,亚马逊的服务几乎总有例外。(亚马逊不是率先提供虚拟主机的,但据我回忆和发现,亚马逊率先提供实际上没有限制的容量来创建主机,并向持有有效信用卡的人提供服务。)

  剩下来的最大区别在于,亚马逊的标准服务在运行时,不保留一份启动磁盘镜像的持续性常规副本;有办法添加持续性,但我在测试中觉得持续性并不可靠。如果你的标准镜像崩溃了,就无法从那个点来恢复。长期以来,这使得EC2局限于用在负载均衡网站,或者亚马逊的简单存储服务(S3)拥有所有数据最新副本的系统。

  本文提到的其他所有VPS服务只提供持续性磁盘镜像,只有在你付费购买VPS期间,它才完好无损。大多数服务供了存储这种磁盘镜像的功能,即使你删除了实际实例,以后还是可以恢复过来。

  你可以创建一个亚马逊所说的自定义的亚马逊机器镜像(Amazon Machine Image),它让你可以拿来标准发行版后进行修改,然后把它作为可装入的镜像写入,用于许多实例。这对于想要创建某几种特定配置的多个实例的公司来说很有用。

  亚马逊还让你可以根据需要,创建持续一小时、一星期、一个月或更长时间的实例。由于VPS提供商在某个机器上分配了特定的持续性存储空间,实例不用后必须删除掉,不过你通常可以通过存储镜像来恢复,你只要支付存储费,就可以保存存储镜像。

  为了避免没有持续性存储空间的问题,你可以用命令来创建实例,那样它在系统启动时就能执行任务。依赖EC2的那些用户使用这种脚本,即可利用持续性但非挂载式的S3服务,将文件拷贝过去,亚马逊并不因此计算带宽的使用量;可以通过亚马逊弹性块存储(EBS)服务挂载持续性卷;或者连接到亚马逊关系数据库服务(RDS)处的持续性MySQL架构。同时结合三者使用其功能也相当强。

  虽然亚马逊在一年前就开始提供持续性、可启动的EBS卷,但我还是无法让这些卷运行起来如同亚马逊机器镜像(AMI)一样可靠。实例会突然终止。你可以暂停这种实例,不用为运行时间付费;但我并未发现可以在运行状态下恢复这些实例。

  捣鼓了一番后,我还是创建了完全符合自己要求的实例。我使用标准的AMI,然后对它进行定制。一旦定制完毕,我创建了快照,作为基本镜像。我把所有脚本和数据存放在持续性EBS驱动器上。我启动自定义AMI,然后挂载持续性驱动器,运行每周一次的数据库构建任务——这项任务要花几个小时,而且很耗费处理器资源,无法在我的生产环境上运行。又经过了一番调整后,我可以启动AMI,它正确地挂载了EBS卷,开始运行。

  别指望这很容易。即使有比较新的管理控制台可以通过浏览器来使用,你还是无法在亚马逊环境下随便搭建服务器。事先一定要要有更充分的规划,尤其是你要想清楚如何应对实例崩溃及其他因素。

  如何在众多选择当中挑选

  每项服务都有其不同;在比较任何两项服务时,你有时觉得大同小异,而有时又觉得得大相径庭。

  基本的思想是,你购买的是主机计算机的一块资源,封装成了虚拟机。大多数资源的价格按256MB内存的倍数计算,即使服务器可能最少从512MB或1GB开始计算。硬盘存储空间通常按同样的方式来划分,常常按256MB内存的倍数和10GB磁盘存储空间的倍数计算。

  大多数服务让你试用一下:你可以从某个服务级别入手,比如1GB服务器,然后迁移到更高级别(或更低级别),停机时间只有短短几分钟,或者甚至只需要简单的重启。凭我的经验,如果服务器运行Apache或MySQL,每天处理数十万个请求(数万人次页面浏览量),那么至少需要2 GB;如果同一系统上同时运行Apache和MySQL,4 GB必不可少(我自己的配置是一台2GB Web生产系统,另一台是外界无法访问的专用的4 GB MySQL服务器。)

  一两个公共IP地址已包含在内,而专有地址通常是免费的。额外的公共IP地址往往每一个每月需要1美元。大多数主机只允许两到四个额外的公共IP地址。过去运行不同的SSL/TLS Web服务器需要这些公共IP地址,而现在不再是这样了。

  服务和成本方面最主要的变化因素是带宽和吞吐量。每家主机公司都有各种独特的组合,涵盖提供的服务、收取的费用和许下的承诺。为了简单起见,许多主机为每台服务器添加一定数量的带宽,只有用户超过了默认的带宽,才收费。带宽一般与服务器的内存及其他资源成比例。对于我联系的每家主机服务商而言,专用IP之间的流量是免费的。

  比如说,Linode为分配给服务器的每256MB分配了100GB的入站和出站传输带宽。该公司还把你服务器的所有数据分配量汇集起来。我在Linode有2GB和4GB的VPS,每月传输的数据量总共2.4TB。2GB VPS是一台可能超过800GB使用量的Web服务器,但我根本没有接近总数据量,因为我的4GB服务器就运行MySQL,只是通过专用网络来通信。

  与带宽不包含的竞争对手相比,Linode所收的费用相差并不明显。比如说,Rackspace只对传输的初始部分数据收费,费率标准为出站流量(服务器传输到互联网)每GB 0.22美元,入站流量每GB 0.08美元。如果用户每月传输1TB数据,Rackspace要多收220美元,而Rackspace的基本费率已经比几个竞争对手要贵一点。

  Dreamhost和没有列出来的另外几家公司提供了传输数据量没有限制或者非常大的服务,它假设很少有客户会用这样的服务,确实有其道理。Dreamhost完全属于高端VPS主机服务商行列。

  有别于数据传输量的是吞吐量,即每台服务器允许或者保证传输到互联网的每秒兆比特数量。主机服务商并没有特地宣传或解释这一点。

  一般来说,主机服务商为每个VPS提供大约数十Mbps的吞吐量(入站和出站)。你似乎买不起更高速率的服务。有几家服务商提供速率高得惊人的连接,比如一家名为100TB的公司可以为每一台服务器提供千兆以太网交换服务,对互联网连接没有节制措施(然而,要是不进行全面测试,不可能知道在其或其他服务商的系统上与互联网之间的吞吐量通常会是怎样。)

  VPS的另一个优点是,随着后端硬件变得更便宜,服务商不断升级,就算价格没有跌下来,功能应该也会增加。Linode去年就为所有实例添加了40%以上的内存,没有改变价格。需要重启VPS,才能获得新分配的内存资源。

标签: