列出windows 2003系统提供的网络服务,并对其应用加以说明?

列出windows 2003系统提供的网络服务,并对其应用加以说明?,第1张

服务器 *** 作系统,又名网络 *** 作系统。相比个人版 *** 作系统,在一个具体的网络中,服务器 *** 作系统要承担额外的管理、配置、稳定、安全等功能,处于每个网络中的心脏部位,其网络 *** 作系统的别称也由此而来。
WINDOWS服务器 *** 作系统大家应该都不会陌生,这是全球最大的 *** 作系统开发商——Microsoft公司开发的。其服务器 *** 作系统重要版本WINNT 40 Server、Win2000/Advanced Server、Win2003/Advanced Server,也支撑起目前市面上应用最多的服务器 *** 作系统——Windows服务器 *** 作系统派应用
Windows Server 2003系列沿用了Windows 2000 Server的先进技术并且使之更易于部署、管理和使用。其结果是:其高效结构有助于使您的网络成为单位的战略性资产。
客户需要的所有对业务至关重要的功能,Windows Server 2003中全部包括,如安全性、可靠性、可用性和可伸缩性。此外,Microsoft已经改进和扩展了Windows服务器 *** 作系统,使贵单位能够体验到Microsoft NET(用于连接信息、人、系统和设备的软件)的好处。
一、Windows Server 2003是一个多任务 *** 作系统,它能够按照您的需要,以集中或分布的方式处理各种服务器角色。其中的一些服务器角色包括:
文件和打印服务器。
Web服务器和Web应用程序服务器。
邮件服务器。
终端服务器。
远程访问/虚拟专用网络()服务器。
目录服务器、域名系统(DNS)、动态主机配置协议(DHCP)服务器和Windows Internet命名服务(WINS)。
流媒体服务器。
二、Windows Server 2003核心技术
Windows Server 2003包含了基于Windows 2000 Server构建的核心技术,从而提供了经济划算的优质服务器 *** 作系统。了解使Windows Server 2003在任意规模的单位里都能成为理想的服务器平台的那些新功能和新技术。了解这一可靠的服务器 *** 作系统如何使得机构和员工工作效率更高并且更好地沟通。
1、可靠
Windows Server 2003具有可靠性、可用性、可伸缩性和安全性,这使其成为高度可靠的平台。
可用性:Windows Server 2003系列增强了群集支持,从而提高了其可用性。对于部署业务关键的应用程序、电子商务应用程序和各种业务应用程序的单位而言,群集服务是必不可少的,因为这些服务大大改进了单位的可用性、可伸缩性和易管理性。在Windows Server 2003中,群集安装和设置更容易也更可靠,而该产品的增强网络功能提供了更强的故障转移能力和更长的系统运行时间。
Windows Server 2003系列支持多达8个节点的服务器群集。如果群集中某个节点由于故障或者维护而不能使用,另一节点会立即提供服务,这一过程即为故障转移。Windows Server 2003还支持网络负载平衡(NLB),它在群集中各个结点之间平衡传入的Internet协议(IP)通讯。
可伸缩性:Windows Server 2003系列通过由对称多处理技术(SMP)支持的向上扩展和由群集支持的向外扩展来提供可伸缩性。内部测试表明,与Windows 2000 Server相比,Windows Server 2003在文件系统方面提供了更高的性能(提高了140%),其他功能(包括Microsoft Active Directory服务、Web服务器和终端服务器组件以及网络服务)的性能也显著提高。Windows Server 2003是从单处理器解决方案一直扩展到32路系统的。它同时支持32位和64位处理器。
安全性:通过将Intranet、Extranet和Internet站点结合起来,各公司超越了传统的局域网(LAN)。因此,系统安全问题比以往任何时候都更为严峻。作为Microsoft对可信赖、安全和可靠的计算的承诺的一部分,公司认真审查了Windows Server 2003系列,以弄清楚可能存在的错误和缺陷。Windows Server 2003在安全性方面提供了许多重要的新功能和改进,包括:
公共语言运行库:本软件引擎是Windows Server 2003的关键部分,它提高了可靠性并有助于保证计算环境的安全。它降低了错误数量,并减少了由常见的编程错误引起的安全漏洞。因此,攻击者能够利用的弱点就更少了。公共语言运行库还验证应用程序是否可以无错误运行,并检查适当的安全性权限,以确保代码只执行适当的 *** 作。
Internet Information Services 60:为了增强Web服务器的安全性,Internet Information Services (IIS) 60在交付时的配置可获得最大安全性。(默认安装“已锁定”。)IIS 60和Windows Server 2003提供了最可靠、最高效、连接最通畅以及集成度最高的Web服务器解决方案,该方案具有容错性、请求队列、应用程序状态监控、自动应用程序循环、高速缓存以及其他更多功能。这些功能是IIS 60中许多新功能的一部分,它们使您得以在Web上安全地执行业务。
2、高效
Windows Server 2003在许多方面都具有使机构和雇员提高工作效率的能力,包括:
文件和打印服务器:任何IT机构的核心都是要求对文件和打印资源进行有效地管理,同时又允许用户安全地使用。随着网络的扩展,位于站点上、远程位置或甚至合伙公司中用户的增加,IT管理员面临着不断增长的沉重负担。Windows Server 2003系列提供了智能的文件和打印服务,其性能和功能性都得到提高,从而使您得以降低TCO。
Active Directory:Active Directory是Windows Server 2003系列的目录服务。它存储了有关网络上对象的信息,并且通过提供目录信息的逻辑分层组织,使管理员和用户易于找到该信息。Windows Server 2003对Active Directory作了不少改进,使其使用起来更通用、更可靠,也更经济。在Windows Server 2003中,Active Directory提供了增强的性能和可伸缩性。它允许您更加灵活地设计、部署和管理单位的目录。
管理服务:随着桌面计算机、便携式计算机和便携式设备上计算量的激增,维护分布式个人计算机网络的实际成本也显著增加了。通过自动化来减少日常维护是降低 *** 作成本的关键。Windows Server 2003新增了几套重要的自动管理工具来帮助实现自动部署,包括Microsoft软件更新服务(SUS)和服务器配置向导。新的组策略管理控制台(GPMC)使得管理组策略更加容易,从而使更多的机构能够更好地利用Active Directory服务及其强大的管理功能。此外,命令行工具使管理员可以从命令控制台执行大多数任务。GPMC拟在Windows Server 2003发行之前作为一个独立的组件出售。
存储服务:Windows Server 2003在存储管理方面引入了新的增强功能,这使得管理及维护磁盘和卷、备份和恢复数据以及连接存储区域网络(SAN)更为简易和可靠。
终端服务器:Microsoft Windows Server 2003的终端服务组件构建在Windows 2000终端组件中可靠的应用服务器模式之上。终端服务使您可以将基于Windows的应用程序或Windows桌面本身传送到几乎任何类型的计算设备上-包括那些不能运行Windows的设备。
3、联网
Windows Server 2003包含许多新功能和改进,以确保您的组织和用户保持连接状态:
XML Web服务:IIS 60是Windows Server 2003系列的重要组件。管理员和Web应用程序开发人员需要一个快速、可靠的Web平台,并且它是可扩展的和安全的。IIS中的重大结构改进包括一个新的进程模型,它极大地提高了可靠性、可伸缩性和性能。默认情况下,IIS以锁定状态安装。安全性得到了提高,因为系统管理员根据应用程序要求来启用或禁用系统功能。此外,对直接编辑XML元数据库的支持改善了管理能力。
联网和通讯:对于面临全球市场竞争挑战的单位来说,联网和通讯是现在的当务之急。员工需要在任何地点、使用任何设备接入网络。合作伙伴、供应商和网络外的其他机构需要与关键资源进行高效地交互,而且,安全性比以往任何时候都重要。Windows Server 2003系列的联网改进和新增功能扩展了网络结构的多功能性、可管理性和可靠性。
Enterprise UDDI服务:Windows Server 2003包括Enterprise UDDI服务,它是XML Web服务的动态而灵活的结构。这种基于标准的解决方案使公司能够运行他们自己的内部UDDI服务,以供Intranet和Extranet使用。开发人员能够轻松而快速地找到并重用单位内可用的Web服务。IT管理员能够编录并管理他们网络中的可编程资源。利用Enterprise UDDI服务,公司能够生成和部署更智能、更可靠的应用程序。
Windows媒体服务:Windows Server 2003包括业内最强大的数字流媒体服务。这些服务是Microsoft Windows Media技术平台下一个版本的一部分,该平台还包括新版的Windows媒体播放器、Windows媒体编辑器、音频/视频编码解码器以及Windows媒体软件开发工具包。
4、最经济
由于PC技术提供了最经济的芯片平台,仅依靠PC就可完成任务已成为采用Windows Server 2003的重要经济动机。而对Windows Server 2003在成本控制方面适合扩大或缩小规模来说,这只是开始。使用Windows NET Server中自带的许多重要服务和组件,各机构可以迅速利用这个易于部署、管理和使用的集成平台。
当您采用了Windows NET Server时,您就成为了帮助使Windows平台更高效的全球网络中的一员。
这种提供全球服务和支持的网络有如下优点:
最大数量的ISV:Microsoft软件拥有遍及世界各地的大量的独立软件供应商(ISV),他们支持Microsoft应用程序并在Windows上生成已认证的自定义应用程序。
全球服务:Microsoft受世界上450,000多名Microsoft认证系统工程师(MCSE)以及供应商和合作伙伴的支持。
培训选项:Microsoft提供各种IT培训,使得IT人员只需交付适当的费用就可以继续扩展他们的技能。
经过认证的解决方案:第三方ISV为Windows提供了数千个经过认证的硬件驱动程序和软件应用程序,使它便于添加新设备和应用程序。另外,Microsoft Solutions Offerings (MSO)可帮助各机构创建能解决业务难题并经得起考验的解决方案。
这种经济的产品和服务系统的获得成本低,从而帮助机构获得更高的生产效率。
XML Web服务和NET
Microsoft NET已与Windows Server 2003系列紧密集成。它使用XML Web服务使软件集成程度达到了前所未有的水平:分散、组块化的应用程序通过Internet互相连接并与其他大型应用程序相连接。
通过集成到构成Microsoft平台的产品中,NET提供了通过XML Web服务迅速可靠地构建、托管、部署和使用安全的联网解决方案的能力。Microsoft平台提供了一套联网所需的开发人员工具、客户端应用程序、XML Web服务和服务器。
这些XML Web服务提供了基于行业标准构建的可再次使用的组件,这些组件调用其他应用程序的功能,调用的方法独立于创建应用程序, *** 作系统、平台或设备用于访问它们的方法。
利用XML Web服务,开发人员可以在企业内部集成应用程序,并跨网络连接合作伙伴和客户。这种先进的软件技术使联合合作成为可能,并且所带来的更有效的商业到商业和商业到用户服务可以对企业收入产生潜在的重要影响。数百万其它用户可以以各种组合使用这些组件,获得高度个性化、智能化的计算体验。
Windows Server 2003系列的其他NET优点有助于开发人员:
利用现有的投资。现有用于Windows Server的基于Windows的应用程序将可以继续运行在Windows Server 2003上,并且可被简便地重新包装为XML Web服务。
减少代码的编写工作量,使用已经掌握了的编程语言和工具。实现这一点要归功于Windows Server 2003内置的应用程序服务,如ASPNET、事务监视、消息队列和数据访问。
进程监视、循环、内置指令用于为应用程序可提供可靠性、可用性和可伸缩性。
所有这些益处都在改进的内核Windows服务器结构中实现并构成了NET的基础。
分为Windows Server 2003 企业版,Windows Server 2003 标准版,Windows Server 2003 Datacenter 版,Windows Server 2003 Web 版对以上版本再分别介绍
再列出Windows Server 2003 各个突出的技术介绍 就OK了

[检测工具]

为了得到完整的调试结果,建议你采用 ApacheBench 或者 >

检测 Apache ,采用 top d 1 显示所有进程的 CPU 和内存情况。另外,还采用 apachectl status 命令

[硬件优化]

1、升级硬件的一般规则:对于 PHP 脚本而言,主要的瓶颈是 CPU ,对于静态页面而言,瓶颈是内存和网络。一台 400 Mhz 的普通奔腾机器所下载的静态页面就能让 T3 专线(45Mbps)饱和。

2、采用 hdparm 来优化磁盘,一般能提升 IDE 磁盘读写性能 200%,但是对 SCSI 硬盘也有效果。(不同类型的硬盘对比)

[策略优化]

3、Apache 处理 PHP 脚本的速度要比静态页面慢 2-10 倍,因此尽量采用多的静态页面,少的脚本。

4、PHP 脚本如果不做缓冲,每次调用都需要编译,因此,安装一个 PHP 缓冲产品能提升 25-100% 的性能。

5、如果你采用了 Linux 系统,建议升级内核到 24,因为静态页面由内核服务。

6、另外一项缓冲技术是把不常修改的 PHP 页面采用 HTML 缓冲输出。

7、不要在 Web 服务器上运行 X-Windows ,关掉没有必要运行的进程。

8、如果能够用文本就不要用图像,尽量减小的尺寸。

9、分散负载,把数据库服务器放到另外的机器上去。采用另外低端的机器服务和 HTML 页面,如果所有的静态页面在另外一台服务器上处理,可以设置 >

10、以上所有的方法都是针对单机而言的,如果你觉得系统还是不够快,可以采用集群,负载均衡,缓冲技术。采用 Squid 作为缓冲,配置 Squid 的方法。

[编译优化]

11、把基于文件的会话切换到基于共享内存的会话。编译 PHP 时采用 --with-mm 选项,在 phpini 中设置 set sessionsave_handler=mm 。这个简单的修改能让会话管理时间缩短一半。

12、采用最新版本的 Apache ,并把 PHP 编译其中,或者采用 DSO 模式,不要采用 CGI 方式。

13、编译 PHP 时,建议采用如下的参数:
--enable-inline-optimization --disable-debug

[配置优化]

14、修改 >

15、如果网络拥挤,CPU 资源不够用,采用 PHP 的 HTML 压缩功能:
output_handler = ob_gzhandler
PHP 404 的用户请不要使用,因为存在内存泄漏问题。

16、修改 >

17、采用数据库的持久连接时,不要把 MaxRequestsPerChild 设置得太大。

[第三方软件优化]

18、如果喜欢从修改 Apache 源码入手,可以安装 lingerd。在页面产生和发送后,每个 Apache 进程都会浪费一段时光在客户连接上,Lingerd 能接管这项工作,让 Apache 迅速服务下一个客户请求。

19、如果你足够勇敢的话,还可以采用 Silicon Graphics 的 Accelerated Apache 补丁。这个工程能使 Apache 13 快 10 倍,使 Apache 20 快 4 倍。

安装一个 PHP 缓冲产品能提升 25-100% 的性能。

[Linux系统优化]

1清理服务器磁盘碎片:

不论Linux文件系统采用什么文件格式(ext3、JFS、XFS、ReiserFS )、何种类型的硬盘(IDE 、SCSI),随着时间的推移文件系统都会趋向于碎片化。ext3、JFS等高级文件系统可以减少文件系统的碎片化,但是并没有消除。在繁忙的数据库服务器中,随着时间的过去,文件碎片化将降低硬盘性能,硬盘性能从硬盘读出或写入数据时才能注意到。时间长了会发现每个磁盘上确实积累了非常多的垃圾文件,释放磁盘空间可以帮助系统更好地工作。Linux最好的整理磁盘碎片的方法是做一个完全的备份,重新格式化分区,然后从备份恢复文件。但是对于7×24小时工作关键任务服务器来说是比较困难的。Kleandisk是一个高效的磁盘清理工具,它能把磁盘上的文件分成不同的"组",比如把所有的"core"文件归成一组(Group),这样要删除所有core文件时只要删除这个组就行了。core文件是当软件运行出错时产生的文件,它对于软件开发人员比较有用,对于其他用户(比如电子邮件服务器)却没有任何意义。因此,如果没有软件开发的需要,见到core文件就可以将其删除。

2、开启硬盘DMA

现在使用的IDE硬盘基本支持DMA66/100/133(直接内存读取)但是Linux发行版本安装后一般没有打开,可以 /etc/rcd/rclocal 最後面加上一行: /sbin/hdparm -d1 –x66 -c3 -m16 /dev/hda 这样以后每次开机,硬盘的 DMA 就会开启,不必每次手动设定。添加前后你可以使用命令:hdparm -Tt /dev/hda 来测试对比一下。

3、调整缓冲区刷新参数

Linux内核中,包含了一些对于系统运行态的可设置参数。缓冲刷新的参数可以通过调整 /proc/sys/vm/bdflush文件来完成,这个文件的格式是这样的:

每一栏是一个参数,其中最重要的是前面几个参数。第一个数字是在"dirty"缓冲区达到多少的时候强制唤醒bdflush进程刷新硬盘,第二个数字是每次让bdflush进程刷新多少个dirty块。所谓dirty块是必须写到磁盘中的缓存块。接下来的参数是每次允许bd flush将多少个内存块排入空闲的缓冲块列表。 以上值为RHEL 40中的缺省值。可以使用两种方法修改:

(1)使用命令

# echo "100 128 128 512 5000 3000 60 0 0">/proc/sys/vm/bdflush

并将这条命令加到/etc/rcd/rclocal文件中去。

(2)在/etc/sysctlconf 文件中加入如下行:

以上的设置加大了缓冲区大小,降低了bdflush被启动的频度,VFS的缓冲刷新机制是Linux文件系统高效的原因之一。

4、优化输入输出

I/O程序对Linux系统性能也是相当重要的,网络硬件I/O对服务器尤其重要。现在大多数Linux服务器使用10/100 Mb以太网。如果有较重的网络负载,则可以考虑千兆以太网卡。如果没有能力购买千兆网卡的话:可以使用多块网卡虚拟成为一块网卡,具有相同的IP地址。这项技术,在Linux中,这种技术称为Bonding。Bonding在Linux24以上内核中已经包含了,只需要在编译的时候把网络设备选项中的 Bonding driver support选中见图1。当然利用Bonding技术配置双网卡绑定的前提条件是两块网卡芯片组型号相同,并且都具备独立的BIOS芯片。

然后,重新编译核心,重新起动计算机,执行如下命令:

现在两块网卡已经象一块一样工作了。这样可以提高集群节点间的数据传输bonding对于服务器来是个比较好的选择,在没有千兆网卡时,用两块100兆网卡作bonding,可大大提高服务器到交换机之间的带宽但是需要在交换机上设置连接bonding网卡的两个子口映射为同一个虚拟接口。编辑 /etc/modulesconf文件,加入如下内容,以使系统在启动时加载Bonding模块。

“mode”的值表示工作模式,共有0、1、2和3四种模式,这里设定为0。Bonding工作在负载均衡(Load Balancing (round-robin))方式下,即两块网卡同时工作,这时理论上Bonding能提供两倍的带宽。Bonding运行在网卡的混杂(Promisc)模式下,而且它将两块网卡的MAC地址修改为一样的。混杂模式就是网卡不再只接收目的硬件地址是自身MAC地址的数据帧,而是可以接收网络上所有的帧。

5、减少虚拟终端机的数量。

Linux安装后系统默认是6个虚拟终端机,也就是 CTRL+ALT F1~F6 那六个,作为服务器使用可以关掉其中四个,只留下 CTRL+ALT F1~F2,大约省下 4 Mbytes 的内存,但是这样一来,X-Window 会从原来的 CTRL+ALT F7 变成 CTRL+ALT F3 。 修改 /etc/inittab 中,将 mingetty 3 ~6 全部加上 # 字号 。

6 关闭一些不用的服务

Linux服务器在启动时需要启动很多系统服务,它们向本地和网络用户提供了Linux的系统功能接口,直接面向应用程序和用户。提供这些服务的程序是由运行在后台的守护进程(daemons)来执行的。守护进程是生存期长的一种进程。它们独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件。他们常常在系统引导装入时启动,在系统关闭时终止。linux系统有很多守护进程,大多数服务器都是用守护进程实现的。如Web服务>网络节点是指一台电脑或其他设备与一个有独立地址和具有传送或接收数据功能的网络相连。节点可以是工作站、客户、网络用户或个人计算机,还可以是服务器、打印机和其他网络连接的设备。每一个工作站﹑服务器、终端设备、网络设备,即拥有自己唯一网络地址的设备都是网络节点。整个网络就是由这许许多多的网络节点组成的,把许多的网络节点用通信线路连接起来,形成一定的几何关系,这就是计算机网络拓扑。

LVS 是 Linux Virtual Server :Linux 虚拟服务器;是一个虚拟的服务器集群多台机器 LB IP。

负载调度器(load balancer) :它是整个LVS 集群对外的前端机器,负责将client请求发送到一组服务器[多台LB IP]上执行,而client端认为是返回来一个同一个IP通常把这个IP 称为虚拟IP/VIP
服务器池(server pool) :一组真正执行client 请求的服务器,一般是我们的web服务器;除了web,还有FTP,MAIL,DNS
共享存储(shared stored) :它为 server pool 提供了一个共享的存储区,很容易让服务器池拥有相同的内容,提供相同的服务

常用术语

VS:Virtual Server #虚拟服务,一个抽象的服务,用于最开始接收 web 请求的服务
Director, Balancer #负载均衡器、分发器
RS:Real Server # 真正提供服务的服务器
CIP: Client IP #用户端IP,发起请求的客户端 IP,一般是公网 IP
VIP:Director Virtual IP #负载均衡器虚拟IP
DIP:Director IP #负载均衡器IP
RIP:Real Server IP #真正提供 web 服务的服务器的 IP

(1)直接路由模式(LVS-DR)
互联网使用比较多的一种模式
DR模式是通过改写请求报文的目标MAC地址,将请求发给真实服务器的,而真实服务器响应后的处理结果直接返回给客户端用户。同TUN模式一样,DR模式可以极大的提高集群系统的伸缩性。而且DR模式没有IP隧道的开销,对集群中的真实服务器也没有必要必须支持IP隧道协议的要求。但是要求调度器LB与真实服务器RS都有一块网卡连接到同一物理网段上,必须在同一个局域网环境。

DR模式特点
优点:和TUN(隧道模式)一样,负载均衡器也只是分发请求,应答包通过单独的路由方法返回给客户端。与VS-TUN相比,VS-DR这种实现方式不需要隧道结构,因此可以使用大多数 *** 作系统做为物理服务器。
缺点:(不能说缺点,只能说是不足)要求负载均衡器的网卡必须与物理网卡在一个物理段上。

(2)NAT模式(LVS-NAT)
NAT模式是通过网络地址转换的方法来实现调度的。首先调度器(LB)接收到客户的请求数据包时(请求的目的IP为VIP),根据调度算法决定将请求发送给哪个后端的真实服务器(RS)。然后调度就把客户端发送的请求数据包的目标IP地址及端口改成后端真实服务器的IP地址(RIP),这样真实服务器(RS)就能够接收到客户的请求数据包了。真实服务器响应完请求后,查看默认路由(NAT模式下我们需要把RS的默认路由设置为LB服务器。)把响应后的数据包发送给LB,LB再接收到响应包后,把包的源地址改成虚拟地址(VIP)然后发送回给客户端。

NAT模式特点:
1、NAT技术将请求的报文和响应的报文都需要通过LB进行地址改写,因此网站访问量比较大的时候LB负载均衡调度器有比较大的瓶颈,一般要求最多之能10-20台节点
2、只需要在LB上配置一个公网IP地址就可以了。
3、每台内部的节点服务器的网关地址必须是调度器LB的内网地址。
4、NAT模式支持对IP地址和端口进行转换。即用户请求的端口和真实服务器的端口可以不一致。

(3)Full NAT模式(LVS-FullNAT)
客户端对VIP发起请求,Director接过请求发现是请求后端服务。Direcrot对请求报文做full-nat,把源ip改为Dip,把目标ip转换为任意后端RS的rip,然后发往后端,rs接到请求后,进行响应,响应源ip为Rip,目标ip还是DIP,又内部路由路由到Director,Director接到响应报文,进行full-nat。将源地址为VIP,目标地址改为CIP
请求使用DNAT,响应使用SNAT

Full NAT模式特点:
FULL NAT 模式也不需要 LBIP 和realserver ip 在同一个网段;
full nat 跟nat 相比的优点是:保证RS回包一定能够回到LVS;因为源地址就是LVS==> 不确定
full nat 因为要更新sorce ip 所以性能正常比nat 模式下降 10%

(4)IP隧道模式(LVS-Tunnel)
采用NAT模式时,由于请求和响应的报文必须通过调度器地址重写,当客户请求越来越多时,调度器处理能力将成为瓶颈。为了解决这个问题,调度器把请求的报文通过IP隧道转发到真实的服务器。真实的服务器将响应处理后的数据直接返回给客户端。这样调度器就只处理请求入站报文,由于一般网络服务应答数据比请求报文大很多,采用VS/TUN模式后,集群系统的最大吞吐量可以提高10倍。
它和NAT模式不同的是,它在LB和RS之间的传输不用改写IP地址。而是把客户请求包封装在一个IP tunnel里面,然后发送给RS节点服务器,节点服务器接收到之后解开IP tunnel后,进行响应处理。并且直接把包通过自己的外网地址发送给客户不用经过LB服务器。

ip隧道模式特点:
负载均衡器只负责将请求包分发给后端节点服务器,而RS将应答包直接发给用户。所以,减少了负载均衡器的大量数据流动,负载均衡器不再是系统的瓶颈,就能处理很巨大的请求量,这种方式,一台负载均衡器能够为很多RS进行分发。而且跑在公网上就能进行不同地域的分发。
隧道模式的RS节点需要合法IP,这种方式需要所有的服务器支持”IP Tunneling”(IP Encapsulation)协议,服务器可能只局限在部分Linux系统上。

四种模式性能比较:
因为DR模式 IP TUNELL 模式都是在package in 时经过LVS ,在package out是直接返回给client,所以二者的性能比NAT 模式高,但IP TUNNEL 因为是TUNNEL 模式比较复杂,其性能不如DR模式;
FULL NAT 模式因为不仅要更换 DST IP 还更换 SOURCE IP 所以性能比NAT 下降10%
4种模式的性能如下:DR ==> IP TUNNEL ==>NAT ==>FULL NAT

转载表面上看,是一套基于B/S方式实现的分布式管理系统,但其实背后的架构是基于C/S完成的。你以为他是一只鞋吗?其实他是一个吹风机。作为界面化的系统,浏览器框架是不可或缺的,但更加重要的东西在Socket上面。

一、需要解决中央控制端到各节点服务器之间的通信。

这个其实牵扯到一个通信协议的问题,各语言都有自己的socket,thread的库,直接调用即可。但是这个通信协议就需要自己来完成了。既不能太简单,太简单了,明码传输,如果别人获知了这个接口,就很容易执行一些令人讨厌的 *** 作。也不能太复杂,太复杂了等于是给自己找麻烦,所以简单的数据包编解码的工作或者用token验证的方式是需要的。通信协议起码要两种,一种是传输命令执行的协议,一种是传输文件的协议。

二、跨语言的socket通信

为什么要跨语言,主控端和代理端通信,用什么语言开发其实无所谓。但是为了给自己省事,尽可能使用服务器上已经有了的默认语言,Ambari前期采用phppuppet的方式管理集群,这不是不可以,puppet自己解决了socket通信协议和文件传输的问题,可你需要为了puppet在每台服务器上都安装ruby。我是个有点服务器和代码洁癖的人。光是为了一个puppet就装个ruby,我觉得心里特对不起服务器的资源。所以我自己写了一个python的代理端。python是不管哪个linux系统在安装的时候就都会有了。然后主控端的通信,可以用python实现,也可以用php实现,但是考虑到对于更多的使用者来说,改php可能要比改tornado简单许多,所以就没用python开发。hadoop分支版本众多,发布出去,用户要自己修改成安装适合自己的hadoop发行版,就势必要改源码,会php的明显比会python的多。php里面的model封装了所有的 *** 作,而python只是个 *** 作代理人的角色而已。

所以也延伸出一个问题,什么语言用来做这种分布式管理系统的代理端比较合适,我自己觉得,也就是python比较合适了, *** 作系统自带,原生的package功能基本够用。用java和php也可以写agent,但是你势必在各节点预先就铺设好jre或者php运行环境。这就跟为什么用python和java写mapred的人最多是一样的。没人拦着你用nodejs写mapred,也可以写,就是你得在每个节点都装v8的解释引擎,不嫌麻烦完全可以这样干。原理参看map/rece论文,不解释。perl也是 *** 作系统原生带的,但是perl的可维护性太差了,还是算了吧。

所以这就牵扯到一个跨语言的socket问题,理论上来说,这不存在什么问题。但这是理论上的,实际开发过程中确实存在问题,比如socket长连接,通信数据包在底层的封装方式不同。我没有使用xml-rpc的原因之一就是我听说php的xmlrpc跟其他语言的xmlrpc有不同的地方,需要修改才能用,我就没有用这种办法。最早是自己定义的 *** 作协议,这时就遇到了这些问题,所以后来直接采用了thrift方式。就基本不存在跨语言的socket通信问题了。

三、代理端执行结果的获取

无论命令还是文件是否在代理端执行成功,都需要获取到执行结果返回给中央端。所以这里也涉及一个读取节点上的stdout和stderr的问题。这个总体来说不是很难,都有现成的包。当然这个时候你需要的是阻塞执行,而不能搞异步回调。

还有个问题是,我要尽可能使用python默认就带的包,而尽量不让服务器去访问internet下载第三方的包。

还有代理端最重要的一点,就是python的版本兼容性。centos5用python24,centos6用python26,ubuntu基本默认都是27。所以一定要最大限度的保证语言的跨版本兼容性,要是每个 *** 作系统和每一个版本我都写一个代理,我一个人就累死了。

四、浏览器端的model,view,controller

这里面你要封装好所有的通信协议,以及需要在节点上面执行的脚本。发送文件的 *** 作和数据库 *** 作也要在model里面完成。

如果对tcl/tk很熟,也可以写基于 *** 作系统界面方式的管理,不用浏览器就是了。

view对我来说是最痛苦的事,都是现学的jQuery怎么用,前端的工作太可怕了。关于这方面,没有太多可描述的,html和js带给我的只有痛苦的回忆,万恶的undefined。

五、跨 *** 作系统的安装文件封装。

要适应不同的 *** 作系统也是个很麻烦的事情,需要用agent提前获知 *** 作系统的发行分支,版本号。然后去找到对应的安装文件去执行。你不能保证一个分布式系统的集群中所有的节点都可以访问internet,更多的情况是这些节点都存在在一个安全的内网中。只有个别几个节点是可以访问外网的。所以,我势必要把所有的安装文件以及他们的依赖尽可能集中起来。我不确定安装 *** 作系统的lzo,yum或者apt-get会去下什么鬼东西,甚至无论是yum还是apt-get,里面都没有hadoop-lzo的库文件。所以,最好的办法是自己编译打包rpm和deb包。直接安装就好了,别去找repo下载什么。

这就是第五步工作,把需要的依赖的东西自己编译打包成rpm和deb。

deb包很好解决,但是rpm就没那么好办了,需要学习rpm的编译文件如何编写,这块是挺麻烦的,但是这玩意用好了还是挺不错的。现在我自制的安装包里面就已经包含了自己编译的lzo和snappy两种压缩库,以及hadoop-gpl-packaging的rpm和deb。下一个发布的easyhadoop将直接支持centos5,6,suse,以及ubuntu/debian的系统上安装hadoop。已经自带了lzo和snappy以及lzop和snzip。

六、把这些所有东西,整合到一个系统里面。

关联这些所有事情间的联系,整合到一个浏览器界面里面去。写一个分布式的管理脚本不难,写一个界面也不难,但是也许是我的水平不行,这两件事结合起来让他们协同工作还是有点难度的。对我来说,写界面的工作可能更难一点。

Cloudera可能是十来个人在写Manager的东西,ambari也是放到github和apachesvn上面,apache基金会的各种committer在写。easyhadoop没他们功能那么强大,一年来只有我一个人设计架构,功能,各种语言的编码,测试,发布。Fortheloveofgod,WhathaveIdone(英文部分请站在山顶仰天长啸)T_T。从前台到后台,到hadoop和生态系统以及他们的依赖软件的单独patch、编译打包。(系统yum或者apt-get的包不如自己打的好使。)

从时间上来看,全球第一款开源的hadoop部署管理系统应该还是属于ambari,2011年8月开始写的,2012年9月底进入apache的incubator。我是大概2012年8月开始写的easyhadoop,全球第一没赶上,估计国内第一个开源的hadoop管理系统还是可以排上的。

问题一:如何做好一个服务器管理员?有哪些管理技巧 总体来说,服务器系统的管理是整个网络管理工作中的重中之重,特别是在小型单位网络中,单位的网络规模比较小,网络设备比较简单,基本上是属于傻瓜式的。
这里的服务器系统包括网络服务器和应用服务器系统两个方面。服务器系统的管理是整个网络管理工作中最重要的部分,因为它是整个网络的核心所在,无论是网络 *** 作系统本身,还是各种网络服务器和应用服务器。
具体来说,服务器系统管理主要是安装、配置和管理网络 *** 作系统、文件服务器、DNS、WINS、DHCP等网络服务器,以及像Web、FTP、E-mail、RAS、NAT等应用服务器。服务器系统管理的最终目标,就是要确保服务器各种协议和服务工作正常,确保服务器的各项性能指标正常发挥。另外,还需要及时地更新服务器系统的版本或补丁程序,这不仅关系到服务器的性能发挥,而且还关系到整个网络系统的安全性,因为现在的 *** 作系统不断有新的安全漏洞被发现,及时安装补丁可以有效地阻止、填补这些安全漏洞。
目前在服务器系统管理方面的重点与难点当然是各种网络 *** 作系统的管理了。在这其中又包括各种不同版本的主流Windows、Linux和UNIX网络 *** 作系统的管理了。而每个系统中所包括的具体管理工作又非常多,非常复杂,但这些又是网络管理员所必须掌握的。至少,在大多数中小型企业中,网络管理员应该掌握主流的Windows和Linux网络 *** 作系统的管理了。在一些较大企业,或者一些特殊行业(如金融、证券和保险等)中,UNIX、Linux系统又是最普遍采用的,所以UNIX和Linux系统管理对于专业网络管理员来说,又是必须要掌握的。当然,像其他应用服务器的管理也是非常重要,而且必须掌握。
2.关键设备的维护与管理
这也是整个网络管理中的重点之一,同时也是非常重要的工作,特别是在网络规模比较大,网络设备比较高档的单位网络中。因为单位网络系统更依赖这些关键设备的正常工作。
计算机网络的关键设备一般包括网络的核心交换机、核心路由器和服务器,它们是网络中的“节点”。对这些节点的维护和管理,除了需要经验积累外,还可以通过一些专门的网络管理系统来监视其工作状态,以便及时发现问题,及时进行维护和故障排除。
另外,为了提高网络的可用性,对一些关键设备进行冗余配置也是必不可少的。冗余包括两层含义,一是从端口角度进行,如对关键设备(如服务器、核心交换机)采取冗余链路连接,这样当其中一个端口出现故障时,另一个冗余链路就可以接替故障链路继续保持正常工作状态;另一层含义是对配置双份的设备或部件,如服务器中的电源、风扇、网卡,甚至内存等,核心交换机和路由器也可以配置两个。在正常工作时,这些冗余设备或部件起到负载均衡的作用,而在某部分出现故障时,则又起备份的作用。
在关键设备维护与管理中,服务器和网络总体性能的监控与管理是个技术重点和难点。要用到各种监控和管理工具,如流量监控工具MRTG、网络性能和通信监控的Sniffer类工具,带宽性能监控的Qcheck和IxChariot工具等。服务器性能方面的监控与管理还可利用 *** 作系统自带的性能和监控管理工具进行。
当然,网络设备的配置与管理是整个关键设备维护与管理的重点与难点,这一点几乎是所有从事网络管理,甚至网络工程技术人员的共识。目前在关键设备方面,主要是以Cisco、华为3等品牌为主,掌握这两个主要品牌设备的配置与管理方法是网络管理员所必需的。
3 用户管理
用户管理是网络管理中的一个重点和难点,所涉及到的方面非常多,如用户账户、密码、文件和网络访问权限、用户权利、用户配置文件及用户安全策略等。既要保证各用户的正常工作不受影响,同时又>>

问题二:win7服务器管理器怎么下载 如果之前在 控制面板 - 程序 - 打开或关闭Windows功能 里没有这个选项勾栏
到官网去下载一下AD的补丁
microsoft/d=7887

然后你再去看 控制面板 - 程序 - 打开或关闭Windows功能 就有如图的东西

希望能帮助你

问题三:如何打开服务管理器 这两个完全可以去掉一个,并不会影响你的计算机安全的,
打开控制面板---管理工具--服务

问题四:什么是服务器的管理ip?有什么作用?怎么配置? 有的服务器限制不同地区的IP登录,因为不同地区的IP不同。也就是限制不同地区的IP段。

问题五:新手站长如何轻松管理服务器安全? 在服务器上安装安全狗软件,并把服务器加入服云。
这样不仅可以为服务器提供防护功能,而且可以登陆服云管理服务器。
服云客户端有web版、pc版、手机端的,可以随时随地了解服务器实时情况并进行调整服务器安全策略来应对攻击。让服务器更安全。
请采纳,谢谢

问题六:如何控制服务器 你的电脑登陆的时候是要登陆到域服务器上吗 如果是的话 那就没办法了 除非你的电脑脱离了域控制器的管理了 也就是说你不登陆到域控制器上 而是登陆本地的账号 比如administrator 你如果登陆到域上 那就只能遵循域管理员设定的规则 除非域管理员给你解除了那些限制 否则你是无法摆脱的 要解除 让管理员给你更高的权限 或者破解你的局域网里的域服务器 给你的登陆账号提权 只有这几种办法 其他的都不行

问题七:系统服务管理器怎么打开 1XP 在 开始---->运行------>输入servicesmsc而win 7 直接在开始,然后--->输入 servicesmsc
如图所示:
2然后就可以打开服务管理器了。
可以点击名称,按照字母进行排序
3选择一个服务后,可以右击,进行开启/关闭 等 *** 作。

问题八:电脑的系统服务管理怎么进入 一、打开电脑的系统服务界面方法:
1、点击开始菜单点击运行(或在键盘上按WIN+R快捷键),打开运行界面,输入servicesmsc指令,按确定。
2、直接在我的电脑图标上右键在d出的菜单中选择管理,d出的计算机管理界面,点击服务和应用程序,就能看到服务选项,双击即可打开服务界面。
3、点击开始菜单,选择控制面板,在管理工具界面,找到服务并双击,即可打开服务界面。
二、启动系统服务
第1步:使用本文中的任何一种方法打开系统服务程序。
第2步:在系统服务窗口中找盯自己需要启动的系统服务,并双击此服务。如打开(DHCP Client)系统服务。
第3步:在打开的系统服务窗口中,单击“启动”按扭即可启动相关的系统服务了。

问题九:如何快速打开服务器管理器 常用方法 服务器管理器,右键,发送到桌面,建立快捷方式

问题十:如何管理服务器上的多个数据库 虽然这将减少托管所有这些数据库的成本,但是,这增加了管理这些系统的复杂性,因为你现在要处理多个服务级协议和维护窗口。当你决定在同一台服务器上托管多个数据库的时候,你要考虑的第一件事是这些系统是否有互补的维护窗口。如果一个系统不能在夜间放慢速度或者离线,另一个系统不能在白天放慢速度或者离线,这些系统就不适合共享一个服务器,因为你在需要为系统使用补丁或者处于其它原因要让系统离线的时候,你没有有效的维护时间窗。 你需要考察的下一个决定因素是这些系统的服务级协议。需要99%的开机时间的系统能够安排在一起,因为你可能会为这些系统(也许是集群解决方案)建立一个比非重要任务系统更强大的环境。这可以为你节省额外的成本,因为你现在不需要采购任何高端系统。具有更高的服务级协议的系统也可能会有同样的维护时间窗。因此,这些系统在一开始就是互补的。 承担工作量 对托管多个数据库的SQL服务器进行维护的最大难题是时机。 当然,当把多个数据库集中在一个SQL服务器的时候需要考虑的最重要的问题是,是否有足够的CPU和内存资源处理这些客户程序添加到这个数据库服务器的工作量。如果单个服务器不能提供需要的CPU和内存资源,那么,把这些数据库都集中在那台服务器上就不是一个好的选择。 当你经过这个整个决策过程并且把这些数据库都放在同一台服务器上之后,你如何保持这些系统的健康和在高峰期仍能运行与其它任何数据库解决方案一样,你仍需要处理自己的备份、索引碎片整理和重建、以及为 *** 作系统和SQL服务器使用补丁。 处理托管多个数据库的SQL服务器的维护的最大难题是时机。你需要保证你的维护任务能够在这个SQL服务器托管的全部数据库计划的维护时间窗内完成。在任何数据库的维护时间窗之外进行维护工作都将引起数据库运行缓慢,因为硬盘和CPU资源现在被维护活动占用了,而不是处理正常的数据库查询。 重新索引工作 已经证明是有用的一个技术是比正常运行重新索引指令更频繁地对你的索引进行碎片整理。整理碎片的指令比重新索引指令有更多的好处。第一,索引碎片整理指令是一种在线 *** 作,而重建索引是一种离线工作(除非你运行SQL服务器2005企业版或者更新的版本)。第二,如果你频繁地运行索引碎片整理指令,每一次运行这个指令的时候工作量都比较少。 例如,你每个星期检查一次索引碎片,它显示碎片是70%。这样,你就可以运行一个索引重建指令清除这些索引。 然而,你在第二天再检查索引碎片的时候会发生什么情况呢它可能是大约8%至10%的碎片。因此,如果你每天运行一个索引碎片整理指令而不是每个星期运行一次索引碎片整理指令,每一天要做的工作就很少,这个工作就能够更快地完成,可能在每天的维护时间窗内完成。 即使你在时间窗内不能让这个系统离线,由于碎片整理 *** 作是一种在线 *** 作,这个系统在整理碎片 *** 作的时间将继续发挥作用,只是反应速度比正常情况下稍微慢一点。 数据库备份 备份是在一台服务器上托管多个数据库的时候需要解决的另一个关键问题。 每一个数据库都有自己的备份要求。备份数据库也许是能够在SQL服务器运行时执行的最繁重的任务。并不是因为这种备份需要占用大量的CPU和内存资源(这个任务占用的资源一般是很低的,除非你在备份的时候对数据库进行压缩),而是因为备份一个大型数据库需要占用大量的硬盘资源。 当进行全面备份的时候,整个数据库必须从硬盘读取。如果你的硬盘系统非常繁忙,这个备份会引起性能严重下降。这种备份的最佳解决方案是选择合适的时机。你还可以寻找能够在备份的同时允许对数据库备份进行压缩的第三方工具。由于这将增加SQL服务器上的CPU的工作量,它通>>


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13231667.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-06-24
下一篇 2023-06-24

发表评论

登录后才能评论

评论列表(0条)

保存