一切福田,不離方寸,從心而覓,感無不通。

Category Archives: Server

Module ngx_http_proxy_module

Example Configuration Directives proxy_bind proxy_buffer_size proxy_buffering proxy_buffers proxy_busy_buffers_size proxy_cache proxy_cache_bypass proxy_cache_convert_head proxy_cache_key proxy_cache_lock proxy_cache_lock_age proxy_cache_lock_timeout proxy_cache_max_range_offset proxy_cache_methods proxy_cache_min_uses proxy_cache_path proxy_cache_purge proxy_cache_revalidate proxy_cache_use_stale proxy_cache_valid proxy_connect_timeout proxy_cookie_domain proxy_cookie_path proxy_force_ranges proxy_headers_hash_bucket_size proxy_headers_hash_max_size proxy_hide_header proxy_http_version proxy_ignore_client_abort proxy_ignore_headers proxy_intercept_errors proxy_limit_rate proxy_max_temp_file_size proxy_method proxy_next_upstream proxy_next_upstream_timeout proxy_next_upstream_tries proxy_no_cache proxy_pass proxy_pass_header proxy_pass_request_body proxy_pass_request_headers proxy_read_timeout proxy_redirect proxy_request_buffering proxy_send_lowat proxy_send_timeout proxy_set_body proxy_set_header proxy_ssl_certificate proxy_ssl_certificate_key proxy_ssl_ciphers proxy_ssl_crl proxy_ssl_name proxy_ssl_password_file proxy_ssl_server_name proxy_ssl_session_reuse proxy_ssl_protocols proxy_ssl_trusted_certificate proxy_ssl_verify proxy_ssl_verify_depth proxy_store proxy_store_access proxy_temp_file_write_size proxy_temp_path Embedded Variables The ngx_http_proxy_module module allows passing requests to another server.   Example Configuration  

  Directives Syntax: proxy_bind […]

龙生   15 May 2017
View Details

Windows server 2012网络负载均衡NLB

Windows server 2012网络负载均衡NLB 今天把NLB给装了下,就截图分享给大家吧,其实界面貌似和2003都差不多,基本上没有什么改变,算是给大家熟悉界面了。 虽然工作组也可以搭建NLB,不过实际公司使用大多数都是域环境,对于工作组我就不多做介绍了,大家可以自行百度,本次因为是实验,所以我在虚拟机里面给每台机器只加了一块网卡,一般来说,都是需要两块以上的网卡的 我这里有三台机器,NLB1,NLB2和NLB3 首先打开NLB2和NLB3服务器管理器,添加网络负载均衡NLB 接下来在NLB1机器搭建域环境 这里我们的域名就设置为loveworld.com 环境搭起来后,我们就开始配置NLB,打开负载均很管理器,选择新建 添加一台机器作为一个节点 基本上按照默认设置就可以 设置一个集群ip,以后我们访问这个ip就可以了 这里我们设置为多播,关于多播和单播,建议大家百度下,大家也可先把实验做完,然后再百度深入理解 然后添加另外一台机器 这里的优先级设置为2 配置完成 为了方便验证,我们在NLB2和NLB3两台机器上安装了IIS,然后设置index.htm分别显示为NLB2、NLB3。 我们在NLB1上首先ping一下集群的ip 10.1.1.1,可以ping通,然后再NLB1上打开浏览器,输入http://10.1.1.1,如图: 在这里我们可以发现是打开的NLB2的WEB服务,我们将NLB2这台机器暂停掉 然后清空IE历史记录,重新在NLB1上输入http://10.1.1.1 在这里,我们看到,自动切换到了NLB3上面 在实际操作过程中,我们可以搭建两台web服务器,两台web服务器可以用DFS文件服务实现同步,其中一台挂掉了,另外一台就会自动切换过去,两台都没挂掉的情况下,还可以实现负载均衡,大大的提高了web服务的效率和安全性。   from:http://www.shangxueba.com/jingyan/1657358.html

龙生   03 Apr 2015
View Details

Windows平台下安装Hadoop

1、安装JDK1.6或更高版本 官网下载JDK,安装时注意,最好不要安装到带有空格的路径名下,例如:Programe Files,否则在配置Hadoop的配置文件时会找不到JDK(按相关说法,配置文件中的路径加引号即可解决,但我没测试成功)。 2、安装Cygwin Cygwin是Windows平台下模拟Unix环境的工具,需要在安装Cygwin的基础上安装Hadoop,下载地址:http://www.cygwin.com/ 根据操作系统的需要下载32位或64的安装文件。 1)、双击下载好的安装文件,点击下一步,选择install from internet 2)、选择安装路径 3)、选择local Package Directory 4)、选择您的Internet连接方式 5)、选择合适的安装源,点击下一步 6)、在Select Packages界面里,Category展开net,选择如下openssh和openssl两项 如果要在Eclipe上编译Hadoop,需要安装Category为Base下的sed 如果想在Cygwin上直接修改hadoop的配置文件,可以安装Editors下的vim 7)、点击“下一步”,等待安装完成。 3、配置环境变量 在“我的电脑”上点击右键,选择菜单中的“属性",点击属性对话框上的高级页签,点击”环境变量"按钮,在系统变量列表里双击“Path”变量,在变量值后输入安装的Cygwin的bin目录,例如:D:\hadoop\cygwin64\bin 4、安装sshd服务 双击桌面上的Cygwin图标,启动Cygwin,执行ssh-host-config -y命令 执行后,会提示输入密码,否则会退出该配置,此时输入密码和确认密码,回车。最后出现Host configuration finished.Have fun!表示安装成功。 输入net start sshd,启动服务。或者在系统的服务里找到并启动Cygwin sshd服务。 可能会遇到无法安装和启动sshd服务的问题,可参考此连接http://www.cnblogs.com/kinglau/p/3261886.html。 另外如果是Win8操作系统,启动Cygwin时,需要以管理员身份运行(右键图标,选择以管理员身份运行),否则会因为权限问题,提示“发生系统错误5”。 5、配置SSH免密码登录 执行ssh-keygen命令生成密钥文件 如下图所示,输入:ssh-keygen -t dsa -P " -f ~/.ssh/id_dsa,注意-t -P -f参数区分大小写。 ssh-keygen是生成密钥命令 -t 表示指定生成的密钥类型(dsa,rsa) -P表示提供的密语 -f指定生成的密钥文件。 注意:~代表当前用户的文件夹,/home/用户名 执行此命令后,在你的Cygwin\home\用户名 路径下面会生成.ssh文件夹,可以通过命令ls -a /home/用户名  查看,ssh -version命令查看版本。 执行完ssh-keygen命令后,再执行下面命令,就可以生成authorized_keys文件了。 cd ~/.ssh/ cp id_dsa.pub authorized_keys 如下图所示: 然后执行exit命令,退出Cygwin窗口 6、再次在桌面上双击Cygwin图标,打开Cygwin窗口,执行ssh localhost命令,第一次执行该命令会有提示,输入yes后,回车即可。如下图所示 7、安装Hadoop hadoop官网下载http://hadoop.apache.org/releases.html。 把hadoop压缩包解压到/home/用户名 目录下,文件夹名称更改为hadoop,可以不修改,但后边在执行命令时稍显麻烦。 (1)单机模式配置方式 单机模式不需要配置,这种方式下,Hadoop被认为是一个单独的Java进程,这种方式经常用来调试。 (2)伪分布模式 可以把伪分布模式看作是只有一个节点的集群,在这个集群中,这个节点既是Master,也是Slave,既是NameNode,也是DataNode,既是JobTracker,也是TaskTracker。 这种模式下修改几个配置文件即可。 配置hadoop-env.sh,记事本打开改文件,设置JAVA_HOME的值为你的JDK安装路径,例如: JAVA_HOME="D:\hadoop\Java\jdk1.7.0_25" 配置core-site.xml

配置hdfs-site.xml

配置mapred-site.xml

  8、启动Hadoop 打开Cgywin窗口,执行cd […]

龙生   03 Apr 2015
View Details

集群、分布式、负载均衡区别与联系

1、Linux集群主要分成三大类( 高可用集群, 负载均衡集群,科学计算集群)(下面只介绍负载均衡集群) 负载均衡集群(Load Balance Cluster) 负载均衡系统:集群中所有的节点都处于活动状态,它们分摊系统的工作负载。一般Web服务器集群、数据库集群和应用服务器集群都属于这种类型。 负载均衡集群一般用于相应网络请求的网页服务器,数据库服务器。这种集群可以在接到请求时,检查接受请求较少,不繁忙的服务器,并把请求转到这些服务器上。从检查其他服务器状态这一点上看,负载均衡和容错集群很接近,不同之处是数量上更多。 2、负载均衡系统: 负载均衡又有DNS负载均衡(比较常用)、IP负载均衡、反向代理负载均衡等,也就是在集群中有服务器A、B、C,它们都是互不影响,互不相干的,任何一台的机器宕了,都不会影响其他机器的运行,当用户来一个请求,有负载均衡器的算法决定由哪台机器来处理,假如你的算法是采用round算法,有用户a、b、c,那么分别由服务器A、B、C来处理; 3、分布式是指将不同的业务分布在不同的地方。 而集群指的是将几台服务器集中在一起,实现同一业务。 分布式中的每一个节点,都可以做集群。 而集群并不一定就是分布式的。 举例:就比如新浪网,访问的人多了,他可以做一个群集,前面放一个响应服务器,后面几台服务器完成同一业务,如果有业务访问的时候,响应服务器看哪台服务器的负载不是很重,就将给哪一台去完成。 而分布式,从窄意上理解,也跟集群差不多, 但是它的组织比较松散,不像集群,有一个组织性,一台服务器垮了,其它的服务器可以顶上来。 分布式的每一个节点,都完成不同的业务,一个节点垮了,哪这个业务就不可访问了。 from:http://itsoul.iteye.com/blog/777212

龙生   03 Apr 2015
View Details

服务器集群

服务器集群就是指将很多服务器集中起来一起进行同一种服务,在客户端看来就像是只有一个服务器。集群可以利用多个计算机进行并行计算从而获得很高的计算速度,也可以用多个计算机做备份,从而使得任何一个机器坏了整个系统还是能正常运行。   服务器集群简介 一旦在服务器上安装并运行了群集服务,该服务器即可加入群集。群集化操作可以减少单点故障数量,并且实现了群集化资源的高可用性。下述各节简要介绍了群集创建和群集操作中的节点行为。[1] 注意:有关安装群集服务器的信息,请参阅 Windows server 2003产品家族的帮助和部署指南。 关于Windows Server 2003的企业版和Datacenter版都可以支持最大达8个节点的集群配置;其典型的特征是可为数据库、消息系统、文件与打印服务这些关键业务应用,提供高可用性和可扩展性,在集群中的多个服务器(节点)保持不间断的联系。即是说如果在集群中的某一节点因出错或维护不可用时,另一节点会立刻提供服务,以实现容错。正在访问服务的用户可以继续访问,而不会察觉到服务已经由另一台服务器(节点)提供。[2] 创建群集 在服务器群集产品中含有用来在服务器上安装群集软件和创建新群集的群集安装实用工具。创建新群集时,首先在选择作为群集的第一个成员的计算机上运行该实用工具。第一步是确定群集名称并创建群集数据库和初始的群集成员列表来定义新群集。 Windows server 2003 群集新增了一个群集管理设置向导以及使用 cluster.exe命令行界面创建( 包括从远程创建 )群集的功能。 创建群集的第二步是,添加可供所有群集成员使用的共用数据存储设备。这样,创建的新群集将带有一个节点、自己的本地数据存储设备以及群集共用资源 —— 通常是磁盘或数据存储和连接介质资源。 创建群集的最后一步是,在另外将要成为群集成员的每一台计算机上运行安装实用工具。每当将新节点添加到群集中时,新节点都会自动从群集的原始成员获得现有群集数据库的副本。当节点加入或形成群集时,群集服务会更新该节点私有的配置数据库副本。 形成群集 如果服务器运行了群集服务并且无法找到群集中的其它节点,它自己可以形成一个群集。要形成群集,节点必须能够获得对仲裁资源的独占权。 当最初形成群集时,群集中的第一个节点将包括群集配置数据库。每当有新节点加入群集时,新节点都会在本地获得并保持群集配置数据库的副本。仲裁资源用恢复日志(其中含有同节点无关的群集配置和状态数据)的形式存储配置数据库的最新版本。 在群集运行中,群集服务使用仲裁恢复日志执行以下操作 : 保证只有一组活动、可相互通讯的节点才能形成群集 仅当某个节点可以获得对仲裁资源的控制权时 , 才允许它形成群集 仅当某个节点可以同控制仲裁资源的节点通讯时 , 才允许它加入或留在现有群集中 集群服务的状态 从群集中的其它节点和群集服务管理接口的角度看,当形成群集时,群集中的每个节点可能处于三种不同状态中的一种。事件处理器会记录这些状态,而事件日志管理器会将这些状态复制到群集的其它节点。群集服务状态包括: 脱机。此时的节点不是完全有效的群集成员。该节点及其群集服务器可能在运行,也可能未运行。 联机。此时的节点是完全有效的群集成员。它遵从群集数据库的更新、对仲裁算法施加自己的影响、维护心跳通讯,并可以拥有和运行资源组。 暂停。它只能支持它当前已拥有的那些资源组。之所以提供暂停状态,是为了允许执行某些维护。大多数服务器群集组件会将联机和暂停视为等价的状态。 优势 一、集群系统可解决所有的服务器硬件故障,当某一台服务器出现任何故障,如:硬盘、内存、CPU、主板、I/O板以及电源故障,运行在这台服务器上的应用就会切换到其它的服务器上。 二、集群系统可解决软件系统问题,我们知道,在计算机系统中,用户所使用的是应用程序和数据,而应用系统运行在操作系统之上,操作系统又运行在服务器上。这样,只要应用系统、操作系统、服务器三者中的任何一个出现故障,系统实际上就停止了向客户端提供服务,比如我们常见的软件死机,就是这种情况之一,尽管服务器硬件完好,但服务器仍旧不能向客户端提供服务。而集群的最大优势在于对故障服务器的监控是基于应用的,也就是说,只要服务器的应用停止运行,其它的相关服务器就会接管这个应用,而不必理会应用停止运行的原因是什么。 三、集群系统可以解决人为失误造成的应用系统停止工作的情况,例如,当管理员对某台服务器操作不当导致该服务器停机,因此运行在这台服务器上的应用系统也就停止了运行。由于集群是对应用进行监控,因此其它的相关服务器就会接管这个应用。 缺点 我们知道集群中的应用只在一台服务器上运行,如果这个应用出现故障,其它的某台服务器会重新启动这个应用,接管位于共享磁盘柜上的数据区,进而使应用重新正常运转。我们知道整个应用的接管过程大体需要三个步骤:侦测并确认故障、后备服务器重新启动该应用、接管共享的数据区。因此在切换的过程中需要花费一定的时间,原则上根据应用的大小不同切换的时间也会不同,越大的应用切换的时间越长。 加入群集 寻找 如果一个服务器要加入现有群集 , 则它必须运行群集服务并且必须成功找到群集中的其它节点。在找到其它节点后,加入的服务器必须接受群集成员资格验证,并获得群集配置数据库的副本。 条件 加入现有群集的过程开始于 Windows Server 2003 或 Windows 2000 Service Control Manager 在节点上启动群集服务之时。在启动过程中,群集服务会配置并装入该节点的本地数据设备。它并不会试图将共用的群集数据设备作为节点联机,因为现有群集可能正在使用这些设备。 过程 为了查找其它节点 , 会启动一个发现过程。当节点发现任何群集成员时,它将执行身份验证序列。第一个群集成员会对新加入者进行身份验证,并且在新服务器得到成功验证后返回成功状态。如果验证不成功(未能识别待加入节点的群集成员身份,或者它使用了无效的帐户密码),则加入群集的请求会被拒绝。 验证 进行成功验证后,首先联机的群集节点会检查加入节点上的配置数据库副本。如果该副本已过时,对加入服务器进行验证的群集节点会为加入的服务器发送该数据库的更新副本。刚加入群集的节点在收到复制的数据库后,可以用它查找共享资源并根据需要将它们联机。 脱离群集 当节点关闭或群集服务被停止时,节点可能脱离群集。但当节点不执行群集操作(比如不向群集配置数据库提交更新)时,节点也可能被迫脱离(被逐出)群集。 如果节点根据预先的计划脱离群集,它会向其它所有节点成员发送 ClusterExit 消息,通知它们它将脱离群集。该节点不等待任何响应就会立即进行关闭资源和所有群集连接的操作。由于其余节点收到了退出消息,因此它们不会执行在节点意外失效或网络通讯停止时发生的重新分组过程以重新确立群集成员身份。 方法 有两种常用的服务器集群方法,一种是将备份服务器连接在主服务器上,当主服务器发生故障时,备份服务器才投入运行,把主服务器上所有任务接管过来。另一种方法是将多台服务器连接,这些服务器一起分担同样的应用和数据库计算任务,改善关键大型应用的响应时间。同时,每台服务器还承担一些容错任务,一旦某台服务器出现故障时,系统可以在系统软件的支持下,将这台服务器与系统隔离,并通过各服务器的负载转嫁机制完成新的负载分配。PC服务器中较为常见的是两台服务器的集群,UNIX系统可支持8台服务器的集群系统,康柏的专用系统OpenVMS可支持多达96台服务器的集群系统。 集群的特点 在集群系统中,所有的计算机拥有一个共同的名称,集群内任一系统上运行的服务可被所有的网络客户所使用。集群必须可以协调管理各分离组件的错误和失败,并可透明的向集群中加入组件。用户的公共数据被放置到了共享的磁盘柜中,应用程序被安装到了所有的服务器上,也就是说,在集群上运行的应用需要在所有的服务器上安装一遍。当集群系统在正常运转时,应用只在一台服务器上运行,并且只有这台服务器才能操纵该应用在共享磁盘柜上的数据区,其它的服务器监控这台服务器,只要这台服务器上的应用停止运行(无论是硬件损坏、操作系统死机、应用软件故障,还是人为误操作造成的应用停止运行),其它的服务器就会接管这台服务器所运行的应用,并将共享磁盘柜上的相应数据区接管过来。其接管过程如下图所示(以应用A为例): 1.应用A正常工作时; 2.应用A停止工作后,其它的备用服务器将该应用接管过来。 具体接管过程分三部执行: a.系统接管 b.加载应用 c.客户端连接 集群技术的分类 高可用集群 高可用集群的英文全称是High […]

龙生   03 Apr 2015
View Details

集群技术

集群(cluster)技术是一种较新的技术,通过集群技术,可以在付出较低成本的情况下获得在性能、可靠性、灵活性方面的相对较高的收益,其任务调度则是集群系统中的核心技术。 集群是一组相互独立的、通过高速网络互联的计算机,它们构成了一个组,并以单一系统的模式加以管理。一个客户与集群相互作用时,集群像是一个独立的服务器。集群配置是用于提高可用性和可缩放性。 目的 1 提高性能 一些计算密集型应用,如:天气预报、核试验模拟等,需要计算机要有很强的运算处理能力,现有的技术,即使普通的大型机其计算也很难胜任。这时,一般都使用计算机集群技术,集中几十台甚至上百台计算机的运算能力来满足要求。提高处理性能一直是集群技术研究的一个重要目标之一。 2 降低成本 通常一套较好的集群配置,其软硬件开销要超过100000美元。但与价值上百万美元的专用超级计算机相比已属相当便宜。在达到同样性能的条件下,采用计算机集群比采用同等运算能力的大型计算机具有更高的性价比。 3 提高可扩展性 用户若想扩展系统能力,不得不购买更高性能的服务器,才能获得额外所需的CPU 和存储器。如果采用集群技术,则只需要将新的服务器加入集群中即可,对于客户来看,服务无论从连续性还是性能上都几乎没有变化,好像系统在不知不觉中完成了升级。 4 增强可靠性 集群技术使系统在故障发生时仍可以继续工作,将系统停运时间减到最小。集群系统在提高系统的可靠性的同时,也大大减小了故障损失。 分类 1 科学集群 科学集群是并行计算的基础。通常,科学集群涉及为集群开发的并行应用程序,以解决复杂的科学问题。科学集群对外就好像一个超级计算机,这种超级计算机内部由十至上万个独立处理器组成,并且在公共消息传递层上进行通信以运行并行应用程序。 2 负载均衡集群 负载均衡集群为企业需求提供了更实用的系统。负载均衡集群使负载可以在计算机集群中尽可能平均地分摊处理。负载通常包括应用程序处理负载和网络流量负载。这样的系统非常适合向使用同一组应用程序的大量用户提供服务。每个节点都可以承担一定的处理负载,并且可以实现处理负载在节点之间的动态分配,以实现负载均衡。对于网络流量负载,当网络服务程序接受了高入网流量,以致无法迅速处理,这时,网络流量就会发送给在其它节点上运行的网络服务程序。同时,还可以根据每个节点上不同的可用资源或网络的特殊环境来进行优化。与科学计算集群一样,负载均衡集群也在多节点之间分发计算处理负载。它们之间的最大区别在于缺少跨节点运行的单并行程序。大多数情况下,负载均衡集群中的每个节点都是运行单独软件的独立系统。 但是,不管是在节点之间进行直接通信,还是通过中央负载均衡服务器来控制每个节点的负载,在节点之间都有一种公共关系。通常,使用特定的算法来分发该负载。 3 高可用性集群 当集群中的一个系统发生故障时,集群软件迅速做出反应,将该系统的任务分配到集群中其它正在工作的系统上执行。考虑到计算机硬件和软件的易错性,高可用性集群的主要目的是为了使集群的整体服务尽可能可用。如果高可用性集群中的主节点发生了故障,那么这段时间内将由次节点代替它。次节点通常是主节点的镜像。当它代替主节点时,它可以完全接管其身份,因此使系统环境对于用户是一致的。 高可用性集群使服务器系统的运行速度和响应速度尽可能快。它们经常利用在多台机器上运行的冗余节点和服务,用来相互跟踪。如果某个节点失败,它的替补者将在几秒钟或更短时间内接管它的职责。因此,对于用户而言,集群永远不会停机。 在实际的使用中,集群的这三种类型相互交融,如高可用性集群也可以在其节点之间均衡用户负载。同样,也可以从要编写应用程序的集群中找到一个并行集群,它可以在节点之间执行负载均衡。从这个意义上讲,这种集群类别的划分是一个相对的概念,不是绝对的。 系统结构 根据典型的集群体系结构,集群中涉及到的关键技术可以归属于四个层次: (1)网络层:网络互联结构、通信协议、信号技术等。 (2)节点机及操作系统层高性能客户机、分层或基于微内核的操作系统等。 (3)集群系统管理层:资源管理、资源调度、负载平衡、并行IPO、安全等。 (4)应用层:并行程序开发环境、串行应用、并行应用等。 集群技术是以上四个层次的有机结合,所有的相关技术虽然解决的问题不同,但都有其不可或缺的重要性。 集群系统管理层是集群系统所特有的功能与技术的体现。在未来按需(On Demand)计算的时代,每个集群都应成为业务网格中的一个节点,所以自治性(自我保护、自我配置、自我优化、自我治疗)也将成为集群的一个重要特征。自治性的实现,各种应用的开发与运行,大部分直接依赖于集群的系统管理层。此外,系统管理层的完善程度,决定着集群系统的易用性、稳定性、可扩展性等诸多关键参数。正是集群管理系统将多台机器组织起来,使之可以被称为“集群”。 调度方法 1 进程迁移 进程迁移就是将一个进程从当前位置移动到指定的处理器上。它的基本思想是在进程执行过程中移动它,使得它在另一个计算机上继续存取它的所有资源并继续运行,而且不必知道运行进程或任何与其它相互作用的进程的知识就可以启动进程迁移操作,这意味着迁移是透明的。进程迁移是支持负载平衡和高容错性的一种非常有效的手段。对一系列的负载平衡策略的研究表明:进程迁移是实现负载平衡的基础,进程迁移在很多方面具有适用性。 (1)动态负载平衡。将进程迁移到负载轻或空闲的节点上,充分利用可用资源,通过减少节点间负载的差异来全面提高性能。 (2)容错性和高可用性。某节点出现故障时,通过将进程迁移到其它节点继续恢复运行,这将极大的提高系统的可靠性和可用性。在某些关键性应用中,这一点尤为重要。 (3)并行文件IO。将进程迁移到文件服务器上进行IO,而不是通过传统的从文件服务器通过网络将数据传输给进程。对于那些需向文件服务器请求大量数据的进程,则将有效地减少通讯量,极大地提高效率。 (4)充分利用特殊资源。进程可以通过迁移来利用某节点上独特的硬件或软件能力。 (5)内存导引机制。当一个节点耗尽它的主存时,内存导引机制将允许进程迁移到其它拥有空闲内存的节点,而不是让该节点频繁地进行分页或和外存进行交换。这种方式适合于负载较为均衡,但内存使用存在差异或内存物理配置存在差异的系统。 2 进程迁移的实现角度 进程迁移的实现复杂性及对OS 的依赖性阻碍了进程迁移的广泛使用,尤其是对透明的进程迁移的实现。根据应用的级别,进程迁移可以作为OS 的一部分、用户空间、系统环境的一部分或者成为应用程序的一部分。 (1)用户级迁移:用户级实现较为简单,软件开发和维护也较为容易,因此,现有的很多系统都是采用用户级实现,如Condor和Utopia。但由于在用户级无法获得Kernel的所有状态,因此,对于某类进程,无法进行迁移。另外,由于Kernel空间和User空间之间存在着壁垒,打破这个边界获得Kernel提供的服务需要巨大的开销。因此,用户级实现的效率远远低于内核级实现。 (2)应用级迁移:应用级迁移的实现较为简单,可移植性好,但是需要了解应用程序语义并可能需对应用程序进行修改或重新编译,透明性较差,这方面的系统有Freedman、Skordos等。 (3)内核级迁移:基于内核的实现可以充分利用OS提供的功能,全面的获取进程和OS状态,因此实现效率较高,能够为用户提供很好的透明性。但是由于需要对OS进行修改,实现较为复杂。这方面的典型系统有MOSIX和Sprite系统。 进程迁移的主要工作就在于提取进程状态,然后在目的节点根据进程状态再生该进程。在现实中,一个进程拥有很多状态,并且随着操作系统的演化,进程状态也越来越多样。一般来说,一个进程的状态可以分为以下几类:①进程执行状态。表示当前运行进程的处理器状态,和机器高度相关。包括内核在上下文切换时保存和恢复的信息,如通用和浮点寄存器值、栈指针、条件码等。②进程控制。操作系统系统用来控制进程的所有信,一般包括进程优先级、进程标识,父进程标识等。一旦系统编排了进程控制信息,进程迁移系统必须冻结该进程的运行。③进程Memory状态和进程地址空间。包括进程的所有虚存信息,进程数据和进程的堆栈信息等,是进程状态的最主要的一部分。④进程的消息状态。包括进程缓冲的消息和连接(Link)的控制信息。进程迁移中通讯连接的保持以及迁移后连接的恢复是进程迁移中一项较有挑战意义的问题。⑤文件状态。进程的文件状态包括文件描述符和文件缓冲符。保持文件的Cache一致性和进程间文件同步访问也是进程迁移机制需要着重考虑的。 区别 模拟集群与数字集群不同的地方,说简单点就是:模拟集群在单信道比数字对讲机用户容量要小,语音没有数字对讲机清楚,只能实现简单的数据功能。 数字集群分TDMA和FDMA两种,TDMA是提供给专业用户使用的,是时分的制式。FDMA是提供给民用的,是频分的制式。 FDMA和模拟对讲机相比,除了可以把信道间隔做得更窄(模拟的是25KHz,数字的是12.5KHz两时隙或6.25KHz四时隙),单信道用户量更大外,对用户来说并没有太大的更新体验。 TDMA制式的对讲机和模拟对讲机相比,除了单信道用户容量更大外,还可以现实同频中转。模拟系统中,要实现中转,必须要有收、发频率一对。而在TDMA时分数字系统中,可利用数字技术,通过时隙的转换来实现中转。例如:当中转台收到A时隙的数据时,同时转发出去的数据就是在B时隙上实现的。 现在在中国还没有自己的数字对讲机标准。现在MOTOROLA的数字对讲机是TDMA制式的,ICOM和建伍的数字对讲机是FDMA制式的。[1] 发展趋势 虽然集群系统的构建目前可以说是模块化的,从硬件角度来看可以分为节点机系统、通讯系统、存储系统等,软件角度则主要有操作系统、集群操作系统(COS)、并行环境、编译环境和用户应用软件等,目前高性能计算机的通讯、存储等硬件系统是伴随摩尔定律快速发展的,跟踪、测试、比较最新硬件设备构成的高性能计算机的可能方案也成了高性能计算机厂商的重要科研活动,而所有这些关键部件研发、系统方案科研以及厂商的自主部件研发的高度概括就是“整合计算”。整合硬件计算资源的同时,伴随着整合软件资源,其中集群操作系统COS是软件系统中连接节点机操作系统和用户并行应用的重要“黏合剂”,也是高性能计算机厂商的技术杀手锏。 高性能集群系统目前在国内的应用领域主要集中在气象云图分析和石油勘探的领域。这样的应用对于高性能集群系统来说进入门槛比较低,所以目前这些领域都采用了国内厂商构建的集群系统。虽然对比要处理大量并发的小问题的用于商业计算的高可用性集群来说,高性能集群实现起来要简单一些。但实际上,高性能集群的构建中仍有许多技术上的难点,尤其是高性能集群系统往往是针对一个很独特的科学计算的应用,而对这种应用的实现用高性能集群系统来计算,就必须要先建立数学模型,而这样的建模过程需要大量的对于这种应用模式的理解。总结起来,可管理性、集群的监控、并行程序的实现、并行化的效率以及网络实现是构建高性能集群的几个难点。这其中,并行化程序的实现就是指特定应用领域的特定应用程序在集群系统上的实现。虽然有诸多的技术实现上的难点,但集群系统本身的优势仍然给了厂商们克服难点、攻克高性能集群的力量。首先撇开一些具体的优势不说,从互联网中心服务器的变化来看,可以清晰地观察到集群结构是中心服务器的发展趋势。20世纪90年代以前,中心服务器一般都用大型机(Mainframe),大型机上可以完成一切的应用和服务,用户从终端通过网络完成应用。这种应用模式带来许多的好处:应用集中、比较好部署、系统监控、管理方便等。但大型机的缺点也是非常明显的,主要是设备昂贵,很难实现高可用解决方案;非高可用系统在出现故障时,全部应用都受到影响;操作系统、设备和部件比较专用,用户本身维护困难;可扩展性不强等。这些缺点中的任何一个都是用户难以接受的。随着PC及其操作系统的普及和Intel CPU的性能和稳定性的不断提高,人们逐渐用PC服务器构成的分布式系统(Distributed System)去代替大型机。分布式系统解决了大型机上面提到的多个缺点,却丢弃了大型机应用的优点,服务器多且杂,不好监控、管理,不好部署。因此综合大型机和分布式系统优势的服务器必将成为趋势,集群系统就是这样应运而生的服务器。 from:http://baike.baidu.com/link?url=qJDmsahlNUjNdI2beflLkyCiepcUuDLRNeJ_Sjvyx1sbi0307IIB9J4AxiVKR0b2tJx6Y77TGD4biidfgF8ez_

龙生   03 Apr 2015
View Details

负载均衡

定义 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。 负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。   分类 软/硬件 软件负载均衡解决方案是指在一台或多台服务器相应的操作系统上安装一个或多个附加软件来实现负载均衡,如DNS Load Balance,CheckPoint Firewall-1 ConnectControl等,它的优点是基于特定环境,配置简单,使用灵活,成本低廉,可以满足一般的负载均衡需求。 软件解决方案缺点也较多,因为每台服务器上安装额外的软件运行会消耗系统不定量的资源,越是功能强大的模块,消耗得越多,所以当连接请求特别大的时候,软件本身会成为服务器工作成败的一个关键;软件可扩展性并不是很好,受到操作系统的限制;由于操作系统本身的Bug,往往会引起安全问题。 硬件负载均衡解决方案是直接在服务器和外部网络间安装负载均衡设备,这种设备通常称之为负载均衡器,由于专门的设备完成专门的任务,独立于操作系统,整体性能得到大量提高,加上多样化的负载均衡策略,智能化的流量管理,可达到最佳的负载均衡需求。 负载均衡器有多种多样的形式,除了作为独立意义上的负载均衡器外,有些负载均衡器集成在交换设备中,置于服务器与Internet链接之间,有些则以两块网络适配器将这一功能集成到PC中,一块连接到Internet上,一块连接到后端服务器群的内部网络上。 一般而言,硬件负载均衡在功能、性能上优于软件方式,不过成本昂贵。 本地/全局 负载均衡从其应用的地理结构上分为本地负载均衡(Local Load Balance)和全局负载均衡(Global Load Balance,也叫地域负载均衡),本地负载均衡是指对本地的服务器群做负载均衡,全局负载均衡是指对分别放置在不同的地理位置、有不同网络结构的服务器群间作负载均衡。 本地负载均衡能有效地解决数据流量过大、网络负荷过重的问题,并且不需花费昂贵开支购置性能卓越的服务器,充分利用现有设备,避免服务器单点故障造成数据流量的损失。其有灵活多样的均衡策略把数据流量合理地分配给服务器群内的服务器共同负担。即使是再给现有服务器扩充升级,也只是简单地增加一个新的服务器到服务群中,而不需改变现有网络结构、停止现有的服务。 全局负载均衡主要用于在一个多区域拥有自己服务器的站点,为了使全球用户只以一个IP地址或域名就能访问到离自己最近的服务器,从而获得最快的访问速度,也可用于子公司分散站点分布广的大公司通过Intranet(企业内部互联网)来达到资源统一合理分配的目的。 全局负载均衡有以下的特点: 实现地理位置无关性,能够远距离为用户提供完全的透明服务。 除了能避免服务器、数据中心等的单点失效,也能避免由于ISP专线故障引起的单点失效。 解决网络拥塞问题,提高服务器响应速度,服务就近提供,达到更好的访问质量。 部署方式 负载均衡有三种部署方式:路由模式、桥接模式、服务直接返回模式。 路由模式部署灵活,约60%的用户采用这种方式部署;桥接模式不改变现有的网络架构;服务直接返回(DSR)比较适合吞吐量大特别是内容分发的网络应用。约30%的用户采用这种模式。 路由模式(推荐) 路由模式的部署方式如上图。服务器的网关必须设置成负载均衡机的LAN口地址,且与WAN口分署不同的逻辑网络。因此所有返回的流量也都经过负载均衡。这种方式对网络的改动小,能均衡任何下行流量。 桥接模式 桥接模式配置简单,不改变现有网络。负载均衡的WAN口和LAN口分别连接上行设备和下行服务器。LAN口不需要配置IP(WAN口与LAN口是桥连接),所有的服务器与负载均衡均在同一逻辑网络中。参见下图: 由于这种安装方式容错性差,网络架构缺乏弹性,对广播风暴及其他生成树协议循环相关联的错误敏感,因此一般不推荐这种安装架构。 服务直接返回模式 如上图,这种安装方式负载均衡的LAN口不使用,WAN口与服务器在同一个网络中,互联网的客户端访问负载均衡的虚IP(VIP),虚IP对应负载均衡机的WAN口,负 服务直接返回模式 载均衡根据策略将流量分发到服务器上,服务器直接响应客户端的请求。因此对于客户端而言,响应他的IP不是负载均衡机的虚IP(VIP),而是服务器自身的IP地址。也就是说返回的流量是不经过负载均衡的。因此这种方式适用大流量高带宽要求的服务。

龙生   03 Apr 2015
View Details

iis 6.0 http转向 https(很简单)

  在网上找了好多资料都没找到,无意当中找的了一片文章(国外的网站)帮我解决了问题,因此想与大家分享。 首先错误信息(见图一): 图一 解决方法: 一、验证SSL需要选中的网站(见图二) 1、首先打开所要修改的网站然后右击选择“属性” 2、选择“目录安全性”-->在安全通信中选择“编辑” 3、选择“要求安全通信(SSL)”后点击“确定”。   图二 二、创建一个HttpRedirect.htm 文件保存到“C:\InetPub” HttpRedirect.htm中的代码:

  三、用HttpRedirect.htm文件替换403文件(见图三) 1、打开你的网站右击选择“属性” 2、选择“自定义错误”点击编辑 3、在“文件”中添加HttpRedirect.htm文件(路径为:C:\Inetpub\HttpRedirect.htm) 图三 四、测试 输入的网址:http://会自动跳转到https://   参考网址: http://www.jppinto.com/2009/01/automatically-redirect-http-requests-to-https-on-iis-6/   转自:http://www.cnblogs.com/nanyaxu/archive/2012/11/19/2777507.html

龙生   20 Nov 2012
View Details
1 7 8