关于服务器的问题求助
什么是服务器
服务器一般是指server(服务器)
server是一个多义词,您可以选择查看以下义项
无论从“硬”的角度还是“软”的角度而言,Client(Terminal)-
- Server
结构都是网络的根本架构,又称为C/S结构。(而浏览器--服务器结构也就是Browser--Server结构(B/S结构)无非也是C/S结构的一种,因为相对于http
server而言,任何browser都是它的client)。而无论“软”还是“硬”,无论是作为物理上的服务器还是服务器端的软件(server-u),Server
都始终存在着可靠性、高可用性和可扩充性的要求。
2硬件服务
Server是一种高性能计算机,作为网络的节点,存储、处理网络上80%的数据、信息,因此也被称为网络的灵魂。做一个形象的比喻:服务器就像是邮局的交换机,而微机、笔记本、PDA、手机等固定或移动的网络终端,就如散落在家庭、各种办公场所、公共场所等处的电话机。与外界日常的生活、工作中的电话交流、沟通,必须经过交换机,才能到达目标电话;同样如此,网络终端设备如家庭、企业中的微机上网,获取资讯,与外界沟通、娱乐等,也必须经过服务器,因此也可以说是服务器在“组织”和“领导”这些设备。
服务器的构成与微机基本相似,有处理器、硬盘、内存、系统总线等,它们是针对具体的网络应用特别制定的,因而服务器与微机在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面存在差异很大。尤其是随着信息技术的进步,网络的作用越来越明显,对自己信息系统的数据处理能力、安全性等的要求也越来越高,如果您在进行电子商务的过程中被黑客窃走密码、损失关键商业数据;如果您在自动取款机上不能正常的存取,您应该考虑在这些设备系统的幕后指挥者————服务器,而不是埋怨工作人员的素质和其他客观条件的限制。
服务器是用来帮助大量用户访问同一数据或资源。服务器可以是高效率的电脑、专用超级服务器、中档服务器、甚至还可以是大型机。但是,它们有着对其各自正确操作都至关重要的相似要求和特性。
可以非常绝对的说,服务器必须具备以下特性,以便在当今的公司环境中发挥作用:服务器必须具有出色的可靠性,必须具备可用性和可扩充性。企业越来越依赖于服务器运营。这种依赖使大多数服务器功能变成了"关键任务"型。企业可以计算出某台服务器在发生故障时的生产效率损失小时数,并将其转化为金额。
3软件服务
服务器端软件是相对于客户端 (
Client )
软件而言的。所谓服务器端软件,是指能够开放网络端口,接受其他的客户端软件建立连接,并且通过此连接与客户端软件之间交换数据的软件。这一开放特定端口,接受客户端软件连接,并通过此连接与客户端软件交换数据的行为称为“服务”(service)。
服务器端软件的种类很多,随其所提供的服务的不同而分类。常见的有http
server,ftp server,pop3 server,smtp server,irc server,proxy
server等等,每种类型里都有不同的版本,可以运行在不同的硬件及软件平台上。这些软件可以单独运行在某一台计算机上,也可以共同运行在同一台计算机上。它们各自开放不同的端口等待不同的客户端软件连接。比如http
server通常开放80端口,ftp server通常开放21端口等等。
除常用的服务器端软件之外,还有一种服务器端软件,可能是人们日常所忽略的,那就是许多的后门木马。它们潜入系统后,暗自打开某些非常用的端口,当该端口受到特定类型的网络数据扫描后并接受其登陆之后,即跟控制端(客户端)建立连接。著名的灰鸽子木马,植入在受侵机器里的,也就是一个服务器端软件。(当然,并非所有的木马都是通过放置服务器端软件而实现)。
4可靠性能
物理上的可靠性
可靠性是保持可靠而一致的特性,数据完整性和在发生之前对硬件故障做出警告是可靠性的两个方面。冗余电源和风扇、可预报的硬盘和风扇故障以及RAID(独立磁盘冗余阵列)系统是常见的可靠性特性例子。
服务器端软件的可靠性
软件上的可靠性主要表现为令服务(service)更加稳定,不易于发生系统崩溃,不易于导致系统数据丢失,不易于导致连接被中断或者重置。从某种角度上说,软件的可靠性,同时也是系统稳定性(Stablity)的另一说法。
5高可用性
高可用性是指随时存在并且可以立即使用的特性。它既可以指系统本身,也可以指用户实时访问其所需内容的能力。高可用性的另一主要方面就是从系统故障中迅速恢复的能力。高可用性系统可能使用、也可能不使用冗余组件,但是它们应该具备运行关键热插拔组件的能力。热插拔是指在电源仍然接通且系统处于正常运行之中的情况下,用新组件替换故障组件的能力。
高可用性的典型范例是检测潜在故障并透明地重定向或将故障程序切换给其它地区或系统。例如,一些SCSI设备科研自动地将数据从难以读取的扇区传输到备用扇区,而且操作系统和用户都不会察觉到这一变化。
6可扩充性
可扩充性是指增加服务器容量(在合理范围内)的能力。不论服务器最初的容量有多大,您都可以放心,可以迅速实现容量的增加。由于访问互联网的用户越来越多,而且交易量日益增加,因而最终需要升级服务器。
可扩充性的因素包括:
增加内存的能力
增加处理器的能力
增加磁盘容量的能力
操作系统的限制
什么是云服务器
云服务器是一种虚拟的服务器资源,它通过云计算技术,把多个物理服务器组成一个网络,提供强大的计算和存储能力。云服务器采用虚拟化技术,用户可以根据自己的需求来分配资源,实现快速、灵活的部署。
云服务器的优势
相对于传统服务器,云服务器有很多优势。第一,云服务器的资源可以根据实际需求动态调整,无需人工管理,大大降低了维护成本。第二,云服务器具有高可用性,能够自动切换故障节点;同时,分布式架构也保证了数据的安全性。第三,云服务器提供了全球范围的服务,用户可以根据实际需要选择合适的物理位置部署服务器,提高了用户体验。
云服务器的应用场景
云服务器适用于很多场景,例如网站托管、文件存储、游戏服务器、数据处理等。对于个人和小型企业来说,云服务器可以解决基础设施问题,让他们更专注于业务的开发和营销。对于大型企业,云服务器可以帮助他们快速应对业务变化,提高业务的扩展性和弹性。
云服务器提供商
目前市面上有很多云服务器提供商,例如亚马逊、阿里云、腾讯云、华为云等。用户在选择云服务器提供商时需要注意不同提供商之间的特点和差异,同时也需要考虑价格、技术支持、用户口碑等综合因素。
总结
云服务器作为一种新兴的计算和存储解决方案,已经成为了越来越多企业的首选。在未来的发展中,云服务器仍将发挥重要作用,满足不同用户的需求,为业务的发展提供有力支持。
SQL Server 提供了几个为服务器或数据库打造高可用性的可选方案。 高可用性可选方案包括:
AlwaysOn 故障转移群集实例
作为 SQL Server AlwaysOn 产品/服务的一部分,AlwaysOn 故障转移群集实例利用 Windows Server 故障转移群集 (WSFC) 功能通过冗余在实例级别(故障转移群集实例 (FCI))提供了本地高可用性。 FCI 是在 Windows Server 故障转移群集 (WSFC) 节点上和(可能)多个子网中安装的单个 SQL Server 实例。 在网络中,FCI 显示为在单台计算机上运行的 SQL Server 实例,不过它提供了从一个 WSFC 节点到另一个 WSFC 节点的故障转移(如果当前节点不可用)。
有关详细信息,请参阅 AlwaysOn 故障转移群集实例 (SQL Server)。
AlwaysOn 可用性组
AlwaysOn 可用性组 是 SQL Server 2012 中引入的企业级高可用性和灾难恢复解决方案,可使一个或多个用户数据库的可用性达到最高。 AlwaysOn 可用性组要求 SQL Server 实例驻留在 Windows Server 故障转移群集 (WSFC) 节点上。 有关详细信息,请参阅 AlwaysOn 可用性组 (SQL Server)。
注意 注意
FCI 可利用 AlwaysOn 可用性组提供数据库级别的远程灾难恢复。 有关详细信息,请参阅故障转移群集和 AlwaysOn 可用性组 (SQL Server)。
数据库镜像
注意 注意
后续版本的 Microsoft SQL Server 将删除该功能。请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。建议改用 AlwaysOn 可用性组。
数据库镜像是一种解决方案,可提供几乎是瞬时的故障转移,以提高数据库的可用性。 数据库镜像可以用来维护相应生产数据库(称为“主体数据库”)的单个备用数据库(或“镜像数据库”)。 有关详细信息,请参阅数据库镜像 (SQL Server)。
日志传送
与 AlwaysOn 可用性组 和数据库镜像一样,日志传送是数据库级操作。 可以使用日志传送来维护单个生产数据库(称为“主数据库”)的一个或多个热备用数据库(称为“辅助数据库”)。 有关日志传送的详细信息,请参阅关于日志传送 (SQL Server)。
Windows Server 2008的七个应用场景,其中很重要的一个就是高可用性,也许有人会说,在Windows Server 2003中也有关于高可用的特性,比如群集、网络负载均衡、灾难恢复等。既然作为Server 2008一个重要的应用场景,高可用性的改进和变化自然也是很大的,到底会有怎样的变化呢
首先我们要明确,什么是可用性,可用性包括可靠性、故障和恢复。一个系统的可靠性,故障发生时间间隔和故障恢复速度,共同决定了这个系统的可用性。那么我们通常都如何来衡量一个系统的可用性呢最常用的方法就是使用数字“9”,通常我们会以几个“9”来说明系统的可用性,让我们看看下面这张表吧:
通过这张表,我们不难发现,要做到3个“9”级别的系统可用性,每年只允许我们有877个小时的停机时间。当然,可用性是只能用“9”,而不可能用“8”或者“7”来衡量的。一个系统的高可用性,需要很多方面共同实现,如硬件、网络、操作系统、应用层面都需要有相应的高可用解决方案,在操作系统层面上,微软的Windows Server已经为我们提供了很好的高可用解决方案:Cluster(群集,一种并行或分布式的系统,由全面互连的计算机集合组成,可以作为一个统一的计算机资源使用)。
相信很多人都已经了解了Windows Server的群集,我就不再详细解释什么是群集,如何实现群集了,主要想谈一谈Windows Server 2008中群集的变化。首先,最明显、最直观的就是名称的变化,群集在Windows NT4时代就已经有了,那是叫做Microsoft Cluster Services(MSCS),到了Windows 2000时代,改叫做Server Clustering,而在Windows Server 2008中,群集有了个更为形象的名称,Failover Clustering(WSFC),我觉得名字起的很形象,Fail-服务器故障了,Over-转移到其它机器上,正好叫做Failover。当然,名称的改进是不会对企业用户有很大实际意义的,那就让我来看看它在技术上的改进吧。
在这里我还是想讨论一下高可用性方案对企业用户的价值,我们经常说,或者经常会听到各个厂商说,高可用方案能够降低TCO,可很多企业都对这个有所质疑,本来一台服务器能完成的工作,现在需要购买额外的服务器,明明硬件成本、维护成本甚至人员成本都增加了,怎么还能降低TCO呢那就让我们回想去年发生的一件事情吧,那是2007年的10月底的一天,时值2008年奥运会门票第二阶段发售之日,记得当时的售票策略是先到先得,于是乎,在发售门票开始时,便有成千上万乃至上百万的用户蜂拥到奥运门票销售网站,霎时间网站就因为并发连接过大而无法响应了。在那之后的一天时间里,服务器也没能恢复正常工作,以至于后来不得不改变了门票的分配方式。我想这件事情大家可能都了解,也许是售票系统的软件设计问题,也许是硬件性能的问题,总之这套售票系统既不可靠,还发生了故障,而且没能恢复,可用性的三大方面一项也没满足,自然谈不上高可用啦。那么我们想一想,没有高可用带来的损失吧,要知道奥运可是当前我们伟大祖国的大事,而且也是全世界瞩目的大事,在如此之大的事情上出现了这么重大的失误,我想这件事造成的损失很难用几千、几万的钱来衡量了,如果当初高可用方案做得很好,当然也就没有损失了,甚至可能带来很高的信誉。由此可见,高可用性方案决不是只会给企业增加成本的,而是真正的降低了企业面临的风险,降低了TCO。
既然看到了高可用性的价值所在,让我们来看看Windows Server 2008故障转移群集还带给了我们哪些惊喜吧。
我们很多企业已经意识到了实现高可用性方案的重要性,也有很多企业希望尽快实现这样的高可用方案,但在实施的时候经常会遇到各种各样的问题,其中很大一部分是因为之前在创建Windows Server Cluster的时候,过程非常复杂,还受到了很多条件的限制,造成了群集实施的困难。在Windows Server 2008中,对于群集的创建和管理都有了很多改进,能够让企业的IT管理员更轻松的实现高可用的方案。
群集安装前的准备:我们知道群集的安装不仅需要有软件的准备,还需要对硬件做好配置,如配置好共享存储设备,配置好群集心跳线等等,由于配置众多,往往我们无法去判断当前的条件是否能够满足群集的安装要求,即使能够满足,在部署了群集之后,又是否能够安全可靠,实现自动切换呢。在Windows Server 08的群集创建前,增加了一个“验证”的步骤,这个步骤会对操作系统的一致性(每个节点)、基础架构(如CPU、内存)、配置(是否是域成员)、硬件设备(HBA、NIC)、节点连通性、兼容性、共享存储、软件(如IP地址的配置)做出必要的检测和验证,并且还会模拟群集创建完成后的故障转移,以确保群集的安装万无一失。相信大家对群集的安装条件都很了解,在这特别提示一点,就是群集节点的内、外网卡一定要设置在不同的网段,否则在群集管理器中只能够看到节点的一块网卡哦。另外还有,就是群集是否可以安装在DC上的问题,首先说这是可以的,但是我们包括微软绝对不推荐的,最近就因为客户将DC作为群集节点遇到了各种怪异的问题,总之,还是按照微软推荐的Best Practice进行配置。
企业在配置群集时,另外一个主要的考虑就是共享存储,要知道共享存储设备是很贵的,不是所有企业都愿意为了实现高可用去购买昂贵的存储设备的。(当然,中石油、中移动一类的企业刨除在外,记得在给移动做项目的时候,被人家告知,刚刚买了多少多少存储,才花了600多万,真便宜。汗!无语了)昂贵的存储设备,限制了群集在企业中的部署,并且还有个致命的问题:单点故障,也就是说,一旦群集的共享存储有幸休个假的话,整个群集也要跟着去休假了。在Windows Server 2003时代,就通过更新引入了一种新的群集仲裁模式,可以在没有共享存储的情况下,使用共享文件夹作为群集的仲裁资源(需要安装kb921181更新)。在Windows Server 2008中将会包含四种群集仲裁模式,这既可以帮助没有共享存储的企业实现高可用,也可以消除单点故障的问题。这四种模式分别是:多数仲裁模式、多数节点模式、磁盘仲裁、文件共享仲裁。
群集中的每个节点和磁盘存储均有投票权,当有节点或者存储发生故障时,由群集中的所有节点和存储进行投票,决定群集资源如何进行切换,这种模式中,即使共享存储设备发生故障(当然需要共享存储中只有仲裁资源,而没有其它数据资源,如Exchange mailbox store),群集仍然能够正常运行,这就有效避免了群集的单点故障问题。
与多数仲裁模式的区别是群集节点连接的存储设备是没有投票权的,这种模式通常采用的存储设备是iSCSI的存储设备,这样能够实现异地的高可用解决方案(这在Windows Server 2003中是很难实现的,不仅因为受到了仲裁模式的限制,还因为群集心跳线之前采用的是广播的方式,是无法跨越路由的,自然也就无法实现异地高可用啦)。
最后提示一点,在Windows Server 2003群集的文件共享仲裁模式中,仅能够支持两节点的群集,而在Windows Server 2008中,将可以支持更多的节点。
随着Windows Server 2008的正是发布,现在大家对它的兴趣也越来越浓了,越来越多的企业希望能够了解它有哪些新的特性,其实企业是否会升级到08,主要考虑的一个方面是它是否具有足够的吸引力。
刚刚和同事讨论完Windows Server 2008的群集,发现其中还是有很多有意义的改变。之前我们讨论过了08群集的仲裁模式,通过对仲裁模式的改进,彻底消除了之前群集的一大诟病:单点故障。很多企业在部署群集的时候,都会考虑到单点故障的问题,如果投入了巨大的成本,实现了服务、应用的高可用,可却因为存储设备的单点故障而造成整个系统的崩溃,企业肯定是不希望看到的。Windows Server 2008故障转移群集彻底解决了这个问题,让我们可以轻松地面对发生的各种故障。
当然,在之前做过的很多项目中,客户都提到过这样一个问题,能否做异地的高可用。其实这是很现实的问题,特别是对于一些大型企业,通常不会在一个地点办公,可能在全国、全世界都有分支机构,那么他们就需要实现异地的高可用,一旦某一地点发生了诸如停电、着火、地震、山崩、海啸、911撞楼(当然概率比较小,不过也不是没可能啦J)这样的灾害,可能就会对整个企业的业务和应用系统造成破坏,如果这时候企业无法进行系统的异地切换,就可能会长时间停机,从而损失巨大。在之前的Windows群集中,实现异地的高可用很困难,因为群集的节点之间是需要进行通讯的,而这种通讯采用的是UDP多播方式,是无法跨越路由器进行传输的,这就限制了企业实现异地高可用。在Server 08中,群集的节点通讯不再采用UDP多播,而是使用了TCP单播的方式,可以跨越路由,并且Server 08群集能够很好地支持IPv6,这就使实现异地群集成为可能,并且只要节点之间可以通讯,就很容易实现。
另外在Windows Server 2008群集中的很重要一项功能就是与虚拟化的结合,虚拟化也是Server 08的一个很重要特性,后面我也会对虚拟化技术做相应的介绍。其实虚拟化技术的实现,是无法脱离高可用的,甚至可以这么说,没有高可用,虚拟化技术就没有意义!。通过虚拟化,我们可以将很多服务和应用放置在同一物理服务器上,但这无疑增加了这些应用和服务所面临的风险,因此企业必然需要在实现虚拟化的同时,有很好的高可用方案。我们在一些已经实现了虚拟化的企业客户中,也遇到了类似的问题,我想虚拟化可能是未来服务器发展的一个趋势,但高可用永远都会是服务器所必不可少的。
0条评论