精华内容
下载资源
问答
  • 集群

    千次阅读 2016-11-16 09:23:19
    随着Internet技术的迅猛发展,网络技术、性能的不断提高,高可伸缩性、高可用性、可管理性、价格有效性的网络服务技术将成为网络服务技术的主导。各种平台下的技术方案应运而生。本文试图以一篇完整的理论+实践性的...

    此文凝聚笔者不少心血请尊重笔者劳动,转载请注明出处。http://freeze.blog.51cto.com/

    随着Internet技术的迅猛发展,网络技术、性能的不断提高,高可伸缩性、高可用性、可管理性、价格有效性的网络服务技术将成为网络服务技术的主导。各种平台下的技术方案应运而生。本文试图以一篇完整的理论+实践性的文字来介绍如何在优秀的开源操作系统Linux下创建低成本、高性能、高可用的服务集群系统(也叫集群系统),希望通过笔者努力,让您对集群有一定的了解。

     集群的起源:
    集群并不是一个全新的概念,其实早在七十年代计算机厂商和研究机构就开始了对集群系统的研究和开发。由于主要用于科学工程计算,所以这些系统并不为大家所熟知。直到Linux集群的出现,集群的概念才得以广为传播。
    对集群的研究起源于集群系统的良好的性能可扩展性(scalability)。提高CPU主频和总线带宽是最初提供计算机性能的主要手段。但是这一手段对系统性能的提供是有限的。接着人们通过增加CPU个数和内存容量来提高性能,于是出现了向量机,对称多处理机(SMP)等。但是当CPU的个数超过某一阈值,象SMP这些多处理机系统的可扩展性就变的极差。主要瓶颈在于CPU访问内存的带宽并不能随着CPU个数的增加而有效增长。与SMP相反,集群系统的性能随着CPU个数的增加几乎是线性变化的。
    几种计算机系统的可扩展性:

    集群系统的优点并不仅在于此。下面列举了集群系统的主要优点:
    1. 高可扩展性:如上所述。
    2. 高可用性:集群中的一个节点失效,它的任务可以传递给其他节点。可以有效防止单点失效。
    3. 高性能:负载平衡集群允许系统同时接入更多的用户。
    4. 高性价比:可以采用廉价的符合工业标准的硬件构造高性能的系统。

    集群类型 :

    最常见的三种集群类型包括:

    负载均衡集群: LB:   load balancing

    高可用性集群: HA:High Availability

    高性能也叫科学集群:HP : High Performance 






     
     

    负载均衡集群    (LB:load balancing)

    负载均衡集群为企业需求提供了更实用的系统。如名称所暗示的,该系统使负载可以在计算机集群中尽可能平均地分摊处理。该负载可能是需要均衡的应用程序处理负载或网络流量负载。这样的系统非常适合于运行同一组应用程序的大量用户。每个节点都可以处理一部分负载,并且可以在节点之间动态分配负载,以实现平衡。对于网络流量也是如此。通常,网络服务器应用程序接受了太多入网流量,以致无法迅速处理,这就需要将流量发送给在其它节点上运行的网络服务器应用。还可以根据每个节点上不同的可用资源或网络的特殊环境来进行优化。


    高可用性集群   (HA:High Availability)

    高可用性集群的出现是为了使集群的整体服务尽可能可用,以便考虑计算硬件和软件的易错性。如果高可用性集群中的主节点发生了故障,那么这段时间内将由次节点代替它。次节点通常是主节点的镜像,所以当它代替主节点时,它可以完全接管其身份,并且因此使系统环境对于用户是一致的。

    在集群的这三种基本类型之间,经常会发生混合与交杂。于是,可以发现高可用性集群也可以在其节点之间均衡用户负载,同时仍试图维持高可用性程度。同样,可以从要编入应用程序的集群中找到一个并行集群,它可以在节点之间执行负载均衡。尽管集群系统本身独立于它在使用的软件或硬件,但要有效运行系统时,硬件连接将起关键作用。


    高性能集群    (HP :High Performance )

    通常,第一种涉及为集群开发并行编程应用程序,以解决复杂的科学问题。这是并行计算的基础,尽管它不使用专门的并行超级计算机,这种超级计算机内部由十至上万个独立处理器组成。但它却使用商业系统,如通过高速连接来链接的一组单处理器或双处理器 PC,并且在公共消息传递层上进行通信以运行并行应用程序。因此,您会常常听说又有一种便宜的 Linux 超级计算机问世了。但它实际是一个计算机集群,其处理能力与真的超级计算机相等,通常一套象样的集群配置开销要超过 $100,000。这对一般人来说似乎是太贵了,但与价值上百万美元的专用超级计算机相比还算是便宜的。

     下面笔者着重介绍前两种集群方式,也是企业中最常用的。(不是做科学研究,模拟原子弹爆炸,宇宙曲线计算等的大型项目高性能集群一般用不到)

            一、负载均衡集群    (LB:load balancing)

     

    负载均衡技术主要应用   

    1、DNS负载均衡 最早的负载均衡技术是通过DNS来实现的,在DNS中为多个地址配置同一个名字,因而查询这个名字的客户机将得到其中一个地址,从而使得不同的客户访问不同的服务器,达到负载均衡的目的。DNS负载均衡是一种简单而有效的方法,因此,对于同一个名字,不同的客户端会得到不同的地址,他们也就连结不同地址上的Web服务器,从而达到负载平衡的目的。例如 : 当客户端连结 www.51cto.com这名称时,DNS 有能力依序将名称解析到 202.1.1.1 、 202.1.1.2 、202.1.1.3和 202.1.1.4等不同的网络地址,而这些是提供相同服务的主机,让客户端不自觉有不同 .
        2、代理服务器负载均衡 使用代理服务器,可以将请求转发给内部的服务器,使用这种加速模式显然可以提升静态网页的访问速度。然而,也可以考虑这样一种技术,使用代理服务器将请求均匀转发给多台服务器,从而达到负载均衡的目的。 
        3、地址转换网关负载均衡 支持负载均衡的地址转换网关,可以将一个外部IP地址映射为多个内部IP地址,对每次TCP连接请求动态使用其中一个内部地址,达到负载均衡的目的。
        4、协议内部支持负载均衡 除了这三种负载均衡方式之外,有的协议内部支持与负载均衡相关的功能,例如HTTP协议中的重定向能力等,HTTP运行于TCP连接的最高层。
        5、NAT负载均衡 NAT(Network Address Translation 网络地址转换)简单地说就是将一个IP地址转换为另一个IP地址,一般用于未经注册的内部地址与合法的、已获注册的Internet IP地址间进行转换。适用于解决Internet IP地址紧张、不想让网络外部知道内部网络结构等的场合下。
        6、反向代理负载均衡 普通代理方式是代理内部网络用户访问internet上服务器的连接请求,客户端必须指定代理服务器,并将本来要直接发送到internet上服务器的连接请求发送给代理服务器处理。反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。反向代理负载均衡技术是把将来自internet上的连接请求以反向代理的方式动态地转发给内部网络上的多台服务器进行处理,从而达到负载均衡的目的。
        7、混合型负载均衡 在有些大型网络,由于多个服务器群内硬件设备、各自的规模、提供的服务等的差异,我们可以考虑给每个服务器群采用最合适的负载均衡方式,然后又在这多个服务器群间再一次负载均衡或群集起来以一个整体向外界提供服务(即把这多个服务器群当做一个新的服务器群),从而达到最佳的性能。我们将这种方式称之为混合型负载均衡。此种方式有时也用于单台均衡设备的性能不能满足大量连接请求的情况下。

     笔者用一幅图为例,简单介绍下负载均衡原理:

    用户通过互联网访问到某个网站时,,前端的Load Balancer(类似负载均衡器)根据不同的算法或某种特定的方式,将请求转发到后端真正的服务器(节点),后台多台服务器共同分担整个网站的压力。后台的某个节点如果有宕机,其他节点也可以提供服务,从而维持整个网站的正常运行.

     负载均衡可以针对不同的网路层次

    链路聚合技术(第二层负载均衡)是将多条物理链路当作一条单一的聚合逻辑链路使用,网络数据流量由聚合逻辑链路中所有物理链路共同承担,由此在逻辑上增大了链路的容量,使其能满足带宽增加的需求.

    现在经常使用的是4至7层的负载均衡。

    第四层负载均衡将一个Internet上合法注册的IP地址映射为多个内部服务器的IP地址,对每次TCP连接请求动态使用其中一个内部IP地址,达到负载均衡的目的。在第四层交换机中,此种均衡技术得到广泛的应用,一个目标地址是服务器群VIP(虚拟IP,Virtual IP address)连接请求的数据包流经交换机,交换机根据源端和目的IP地址、TCP或UDP端口号和一定的负载均衡策略,在服务器IP和VIP间进行映射,选取服务器群中最好的服务器来处理连接请求。

    第七层负载均衡控制应用层服务的内容,提供了一种对访问流量的高层控制方式,适合对HTTP服务器群的应用。第七层负载均衡技术通过检查流经的HTTP报头,根据报头内的信息来执行负载均衡任务。 

    第七层负载均衡优点表现在如下几个方面:

    1。通过对HTTP报头的检查,可以检测出HTTP400、500和600系列的错误信息,因而能透明地将连接请求重新定向到另一台服务器,避免应用层故障。

    2。可根据流经的数据类型(如判断数据包是图像文件、压缩文件或多媒体文件格式等),把数据流量引向相应内容的服务器来处理,增加系统性能。

    3。能根据连接请求的类型,如是普通文本、图象等静态文档请求,还是asp、cgi等的动态文档请求,把相应的请求引向相应的服务器来处理,提高系统的性能及安全性。

    缺点: 第七层负载均衡受到其所支持的协议限制(一般只有HTTP),这样就限制了它应用的广泛性,并且检查HTTP报头会占用大量的系统资源,势必会影响到系统的性能,在大量连接请求的情况下,负载均衡设备自身容易成为网络整体性能的瓶颈。

    实现负载均衡有两种方式:

    1、硬件:

    如果我们搜一搜"负载均衡",会发现大量的关于F5等负载均衡设备的内容,基于硬件的方式,能够直接通过智能交换机实现,处理能力更强,而且与系统无关,这就是其存在的理由.但其缺点也很明显:
    首先是贵,这个贵不仅是体现在一台设备上,而且体现在冗余配置上.很难想象后面服务器做一个集群,但最关键的负载均衡设备却是单点配置,一旦出了问题就全趴了.
    第二是对服务器及应用状态的掌握:硬件负载均衡,一般都不管实际系统与应用的状态,而只是从网络层来判断,所以有时候系统处理能力已经不行了,但网络可能还来得及反应(这种情况非常典型,比如应用服务器后面内存已经占用很多,但还没有彻底不行,如果网络传输量不大就未必在网络层能反映出来)。
    所以硬件方式更适用于一大堆设备、大访问量、简单应用

    一般而言,硬件负载均衡在功能、性能上优于软件方式,不过成本昂贵。

    在网站上搜索了一些硬件负载均衡设备的报价.是不是很吓人.动则几十万,贵则上百万.

     硬件load balance厂商和产品列表:

    公司名称:          Alteon Websystems(Nortel):

    产品                 ACEDirector, AceSwitch 180等

    http://products.nortel.com/go/product_content.jsp?segId=0&parId=0&prod_id=37160&locale=en-US

    ------------------------------------------------------------------------------------------------------------------------------------------公司名称:          F5 networks:

     

    产品:                 BIG-IP

    http://www.f5networks.co.jp/

    http://www.f5networks.co.jp/product/bigip/ltm/index.html

    http://www.f5.com/products/bigip/

    ------------------------------------------------------------------------------------------------------------------------------------------

    公司名称:          Arrow Point(Cisco):

    产品:                 CS-100

    http://www.ecrunch.com/listingview.php?listingID=59&PHPSESSID=3c21a8f95a6459132a120d4335dcf506

    ------------------------------------------------------------------------------------------------------------------------------------------

    公司名称:          Cisco

    产品:                 Local Director 400 series

    http://www.cisco.com/en/US/products/hw/contnetw/ps1894/index.html

    ------------------------------------------------------------------------------------------------------------------------------------------

    公司名称:          RADWARE

    产品:                 APP Director (Web server director)

    http://www.radware.com/

    http://www.radware.com/content/products/appdirector/default.asp

    ------------------------------------------------------------------------------------------------------------------------------------------

    公司名称:          Abocom(友旺)

    产品:               MH系列多路负载均衡器

    http://www.abocom.com.cn/product.asp?xlflid=12

    台湾公司,生产家用和企业用负载均衡器, 看上去比较 业余

    ------------------------------------------------------------------------------------------------------------------------------------------

    公司名称:          Intel

    产品:                 NetStructure(网擎) 7170 traffic director

    http://www.intel.com/support/netstructure/sb/cs-009599.htm

    ------------------------------------------------------------------------------------------------------------------------------------------

    公司名称: Coyote Point

    http://www.coyotepoint.com/

    专门做硬件load balance的公司好称性价比超过F5的公司

    ------------------------------------------------------------------------------------------------------------------------------------------

    公司名称:          Foundry Networks

    产品:                ServerIron

    http://www.foundrynet.com/products/webswitches/serveriron/index.html

    ------------------------------------------------------------------------------------------------------------------------------------------

    公司名称: HydraWeb

    产品:     HydraWeb Dispatcher 

    可以看出,硬件设备的昂贵程度不是每个企业都可以用起的,而且实际上如果几台服务器,用F5之类的绝对是杀鸡用牛刀(而且得用两把牛刀),而用软件就要合算得多,因为服务器同时还可以跑应用,呵呵,下面来看看可以在linux平台实现负载均衡的软件。

    2、软件:

    软件负载均衡解决方案是指在一台或多台服务器相应的操作系统上安装一个或多个附加软件来实现负载均衡,它的优点是基于特定环境,配置简单,使用灵活,成本低廉,可以满足一般的负载均衡需求。

    著名项目:开源软件 最著名的是LVS.

     LVS提供了两大类负载均衡技术及其配套集群管理软件

    ·三种IP负载均衡技术 + IP虚拟服务器软件IPVS
    ·基于内容请求分发的内核Layer-7交换机KTCPVS和集群管理软件(解决后端服务器组提供不同的内容的问题)

     

    ★★★LVS系统结构与特点

    1. Linux Virtual Server:简称LVS。是由中国一个Linux程序员章文嵩博士发起和领导的,基于Linux系统的服务器集群解决方案,其实现目标是创建一个具有良好的扩展性、高可靠性、高性能和高可用性的体系。许多商业的集群产品,比如RedHat的Piranha、 Turbo Linux公司的Turbo Cluster等,都是基于LVS的核心代码的。

    2. 体系结构:使用LVS架设的服务器集群系统从体系结构上看是透明的,最终用户只感觉到一个虚拟服务器。物理服务器之间可以通过高速的 LAN或分布在各地的WAN相连。最前端是负载均衡器,它负责将各种服务请求分发给后面的物理服务器,让整个集群表现得像一个服务于同一IP地址的虚拟服务器。

    3. LVS的三种模式工作原理和优缺点: Linux Virtual Server主要是在负载均衡器上实现的,负载均衡器是一台加了 LVS Patch的2.2.x版内核的Linux系统。LVS Patch可以通过重新编译内核的方法加入内核,也可以当作一个动态的模块插入现在的内核中。

    功能

    有实现三种IP负载均衡技术八种连接调度算法IPVS软件。IPVS内部实现上,采用了高效的Hash函数和垃圾回收机制,能正确处理所调度报文相关的ICMP消息(有些商品化的系统反而不能)。虚拟服务的设置数目没有限制,每个虚拟服务有自己的服务器集。它支持持久的虚拟服务(如HTTP CookieHTTPS等需要该功能的支持),并提供详尽的统计数据,如连接的处理速率和报文的流量等。针对大规模拒绝服务(Deny of Service)攻击,实现了三种防卫策略

    负载均衡器可以运行在以下三种模式下:

    简单说明下图简称:以下CIP为客户端IP,VIP为服务器向外提供服务的IP,DIP为Director与内部服务器节点通信的IP,RIP为内部真实服务器的IP。

    (1)Virtual Server via NAT(VS-NAT):用地址翻译实现虚拟服务器。地址转换器有能被外界访问到的合法IP地址,它修改来自专有网络的流出包的地址。外界看起来包是来自地址转换器本身,当外界包送到转换器时,它能判断出应该将包送到内部网的哪个节点。优点是节省IP 地址,能对内部进行伪装;缺点是效率低,因为返回给请求方的流量经过转换器。

    整个过程如图所示:CIP为客户Client的IP,VIP为服务器对外的IP,RIP为内部真实服务器的IP

    (2)Virtual Server via Direct Routing(VS-DR):用直接路由技术实现虚拟服务器。当参与集群的计算机和作为控制管理的计算机在同一个网段时可以用此法,控制管理的计算机接收到请求包时直接送到参与集群的节点。直接路由模式比较特别,很难说和什么方面相似,前2种模式基本上都是工作在网络层上(三层),而直接路由模式则应该是工作在数据链路层上(二层)。其原理 为,DR和REAL SERVER都使用同一个IP对外服务。但只有DR对ARP请求进行响应,所有REAL SERVER对本身这个IP的ARP请求保持静默。也就是说,网关会把对这个服务IP的请求全部定向给DR,而DR收到数据包后根据调度算法,找出对应的 REAL SERVER,把目的MAC地址改为REAL SERVER的MAC并发给这台REAL SERVER。这时REAL SERVER收到这个数据包,则等于直接从客户端收到这个数据包无异,处理后直接返回给客户端。由于DR要对二层包头进行改换,所以DR和REAL SERVER之间必须在一个广播域,也可以简单的理解为在同一台交换机上。

     DR模式:DR模式是这样工作的,当CIP访问VIP后,VIP把数据包通过DIP转交给RIP,RIP在收到数据包后通过网卡别名欺骗(节点的网卡配置别名,IP为VIP),直接用别名的VIP相应客户端,从而加快了回应速度,也避免了Director成为地址转换的单点故障.目前主要应用的为DR模式的负载均衡.

     

    (3)Virtual Server via IP Tunneling (VS-TUN):用IP隧道技术实现虚拟服务器。这种方式是在集群的节点不在同一个网段时可用的转发机制,是将IP包封装在其他网络流量中的方法。为了安全的考虑,应该使用隧道技术中的VPN,也可使用租用专线。 集群所能提供的服务是基于TCP/IP的Web服务、Mail服务、News服务、DNS服务、Proxy服务器等等.

    TUN模式:采用NAT技术时,由于请求和响应报文都必须经过调度器地址重写,当客户请求越来越多时,调度器的处理能力将成为瓶颈。为了解决这个问题,调度器把请求报文通过IP隧道转发至真实服务器,而真实服务器将响应直接返回给客户,所以调度器只处理请求报文。由于一般网络服务应答比请求报文大许多,采用 VS/TUN技术后集群系统的最大吞吐量可以提高10倍。(通过重写ip来实现,真实服务器直接回复客户端。tun原理请参阅VPN原理!),与上图比较,注意节点的VIP和RIP的区别.

    介绍完上面3种负载均衡模式,下面来看看负载均衡调度算法.

    IPVS调度器实现了如下八种负载调度算法

    ·1.轮叫(Round Robin

    调度器通过"轮叫"调度算法将外部请求按顺序轮流分配到集群中的真实服务器上,它均等地对待每一台服务器,而不管服务器上实际的连接数和系统负载。

    ·2.加权轮叫(Weighted Round Robin

    调度器通过"加权轮叫"调度算法根据真实服务器的不同处理能力来调度访问请求。这样可以保证处理能力强的服务器处理更多的访问流量。调度器可以自动问询真实服务器的负载情况,并动态地调整其权值。

    ·3.最少链接(Least Connections

    调度器通过"最少连接"调度算法动态地将网络请求调度到已建立的链接数最少的服务器上。如果集群系统的真实服务器具有相近的系统性能,采用"最小连接"调度算法可以较好地均衡负载

    ·4.加权最少链接(Weighted Least Connections

    在集群系统中的服务器性能差异较大的情况下,调度器采用"加权最少链接"调度算法优化负载均衡性能,具有较高权值的服务器将承受较大比例的活动连接负载。调度器可以自动问询真实服务器的负载情况,并动态地调整其权值。

    ·5.基于局部性的最少链接(Locality-Based Least Connections

    "基于局部性的最少链接调度算法是针对目标IP地址的负载均衡,目前主要用于Cache集群系统。该算法根据请求的目标IP地址找出该目标IP地址最近使用的服务器,若该服务器是可用的且没有超载,将请求发送到该服务器;若服务器不存在,或者该服务器超载且有服务器处于一半的工作负载,则用"最少链接"的原则选出一个可用的服务器,将请求发送到该服务器。

    ·6.带复制的基于局部性最少链接(Locality-Based Least Connections with Replication

    "带复制的基于局部性最少链接"调度算法也是针对目标IP地址的负载均衡,目前主要用于Cache集群系统。它与LBLC算法的不同之处是它要维护从一个目标IP地址到一组服务器的映射,而LBLC算法维护从一个目标IP地址到一台服务器的映射。该算法根据请求的目标IP地址找出该目标IP地址对应的服务器组,按"最小连接"原则从服务器组中选出一台服务器,若服务器没有超载,将请求发送到该服务器,若服务器超载;则按"最小连接"原则从这个集群中选出一台服务器,将该服务器加入到服务器组中,将请求发送到该服务器。同时,当该服务器组有一段时间没有被修改,将最忙的服务器从服务器组中删除,以降低复制的程度。

    ·7.目标地址散列(Destination Hashing

    "目标地址散列"调度算法根据请求的目标IP地址,作为散列键(Hash Key)从静态分配的散列表找出对应的服务器,若该服务器是可用的且未超载,将请求发送到该服务器,否则返回空。

    ·8.源地址散列(Source Hashing

    "源地址散列"调度算法根据请求的源IP地址,作为散列键(Hash Key)从静态分配的散列表找出对应的服务器,若该服务器是可用的且未超载,将请求发送到该服务器,否则返回空。


     
    IPVS的缺点

    在基于IP负载调度技术中不会区分内容!所以就要求后端服务器提供相同的服务。而事实呢很多web应用总后端服务器都担任不同的角色,比如专门存放html的、专门存放图片的、专门存放CGI

    ★★★内核Layer-7交换机KTCPVS(基于内容转发可以提高单台服务器cache的命中率)  KTCPVS工作流程

    在基于IP负载调度技术中,当一个TCP连接的初始SYN报文到达时,调度器就选择一台服务器,将报文转发给它。此后通过查发报文的IPTCP报文头地址,保证此连接的后继报文被转发到该服务器。这样,IPVS无法检查到请求的内容再选择服务器,这就要求后端服务器组提供相同的服务,不管请求被发送到哪一台服务器,返回结果都是一样的。但是,在有些应用中后端服务器功能不一,有的提供HTML文档,有的提供图片,有的提供CGI,这就需要基于内容的调度 (Content-Based Scheduling)

    由于用户空间 TCP Gateway的开销太大

    他们提出在操作系统的内核中实现Layer-7交换方法,来避免用户空间与核心空间的切换和内存复制的开销。在Linux操作系统的内核中,我们实现了Layer-7交换,称之为KTCPVSKernel TCP Virtual Server)。目前,KTCPVS已经能对HTTP请求进行基于内容的调度但它还不很成熟,在其调度算法和各种协议的功能支持等方面,有大量的工作需要做。

    虽然应用层交换处理复杂,它的伸缩性有限,但应用层交换带来以下好处:

     相同页面的请求被发送到同一服务器,可以提高单台服务器的Cache命中率。

    一些研究[5]表明WEB访问流中存在局部性。Layer-7交换可以充分利用访问的局部性,将相同类型的请求发送到同一台服务器,使得每台服务器收到的请求具有更好的相似性,可进一步提高单台服务器的Cache命中率。

    后端服务器可运行不同类型的服务,如文档服务,图片服务,CGI服务和数据库服务等。 

     

    ----------------------------------------------------------------------------------------------------------------------------------------------------

     二、    高可用性集群   (HA:High Availability)

     

    1、什么是高可用集群 

    高可用集群,英文原文为High Availability Cluster,简称HA Cluster,是指以减少服务中断(如因服务器宕机等引起的服务中断)时间为目的的服务器集群技术。简单的说,集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源。这些单个的计算机系统就是集群的节点(node)。

    高可用集群的出现是为了使集群的整体服务尽可能可用,从而减少由计算机硬件和软件易错性所带来的损失。它通过保护用户的业务程序对外不间断提供的服务,把因软件/硬件/人为造成的故障对业务的影响降低到最小程度。如果某个节点失效,它的备援节点将在几秒钟的时间内接管它的职责。因此,对于用户而言,集群永远不会停机。高可用集群软件的主要作用就是实现故障检查和业务切换的自动化。

    只有两个节点的高可用集群又称为双机热备,即使用两台服务器互相备份。当一台服务器出现故障时,可由另一台服务器承担服务任务,从而在不需要人工干预的情况下,自动保证系统能持续对外提供服务。双机热备只是高可用集群的一种,高可用集群系统更可以支持两个以上的节点,提供比双机热备更多、更高级的功能,更能满足用户不断出现的需求变化。

     

    2、为什么要使用高可用集群?

    先来看一组数据说明:

    系统可用性分类
    可用比例 
    (Percent Availability)
    年停机时间 
    (downtime/year)
    可用性分类
    99.5
    3.7天
    常规系统(Conventional)
    99.9
    8.8小时
    可用系统(Available)
    99.99
    52.6分钟
    高可用系统(Highly Available)
    99.999
    5.3分钟
    Fault Resilient
    99.9999
    32秒
    Fault Tolerant
    对于关键业务,停机通常是灾难性的。因为停机带来的损失也是巨大的。下面的统计数字列举了不同类型企业应用系统停机所带来的损失。
    表 2. 停机给企业带来的损失
    应用系统
    每分钟损失(美元)
    呼叫中心(Call Center)
    27000
    企业资源计划(ERP)系统
    13000
    供应链管理(SCM)系统
    11000
    电子商务(eCommerce)系统
    10000
    客户服务(Customer Service Center)系统
    27000
     

    随着企业越来越依赖于信息技术,由于系统停机而带来的损失也越拉越大。

     

     高可用集群主要是在linux平台搭建的,在linux上实现高可用的解决方案有哪些:

      Linux平台常见的高可用集群 有这些:

    1. 开放源代码的 HA 项目 (http://www.linux-ha.org/)
    linux-HA 项目历史悠久, 很多linux 发行附带的HA集群都是采用了linux-HA 的heartbeat系统和相关的组件.需要构建完全的开源,自由而且免费的高可用集群的用户可以选择.


    2  RedHat 公司 的 开放源代码RedHat Cluster Suite, 简称RHCS . (产品介绍http://www.redhat.com/solutions/clustersuite/)
    - RHCS实际上是一个套件,除了现在提到的高可用集群软件,还包含了一个基于LVS的负载均衡软件.
    - RHCS包含的集群软件,是GPL协议下开放源代码的集群系统. 
    - RHCS目前的版本有 RHCS v3和 v4,分别对应于RedHat 企业版Linux的 3.0家族和4.0家族.
    - RHCS是一个独立的产品,不包括在RedHat Enterprise Linux当中,无论是购买还是下载,都是单独存在的.(其实就是heartbeat的改进版,改个名,加入了些东西)

    3. Novell 公司 的 开放源代码高可用集群HA套件

    Novell 公司并购了欧洲Linux第一大厂SuSE之后,成为全球能够抗衡RedHat的主要力量. 

    SuSE企业版Linux 带有一套开放源代码的HA集群软件,包括 HA project的heartbeat, heartbeat-ldirectord, heartbeat-pils, heartbeat-stonith, 集群关联的存储软件drbd, 虚拟IP的 src_vipa软件.和RHCS不同的是,SuSE/Novell 企业版Linux自带的 HA集群软件并非一个独立的软件,如上介绍,而是由不同的开放源代码项目提供的不同部分的程序。

    4. Novell 公司的Novell Cluster Service

    Novell 在败落前,曾经是一家非常伟大的公司,有着非常雄厚的技术力量。 早在10多年前,Novell公司就在集群领域独树一帜,是当时唯一能够在PC服务器上构建出32节点集群的厂商.
    Novell收购SuSE公司之后,将原来在Novell netware操作系统上的大量企业级应用移植和整合到了SuSE Linux Enterprise Linux平台, Novell 当时名震集群领域的Novell Cluster Service 也被整合移植到了Linux平台.
    Novell Cluster Service是一个商业系统,并非开放源代码产品
    这里可以看到细节
    http://www.novell.com/products/openenterpriseserver/ncs.html

    5. Steeleye Lifekeeper for linux (产品介绍
    http://www.steeleye.com/)

    steeleye 公司是集群行业非常著名的公司,他们的集群系统最早是AT&T 贝尔实验室开发的,后来被卖给了金融行业的著名IT公司NCR公司。(不少朋友到ATM取钱的时候也许会看到NCR制造的ATM机). lifekeeper集群的历史非常悠久,后来steeleye又得到了几个从当时的巨头DEC跳槽来的核心开发人员.因此lifekeeper的构架和品质是有非常好的口碑的.

    6. HP MC/Service Guard for linux (
    http://h71028.www7.hp.com/enterprise/cache/6468-0-0-0-121.aspx)

    HP在和Compaq合并之前,在HP-UX平台有一套旗舰级的高可用集群系统(MC/SG for HP-UX),被广泛部署在各种关键业务计算领域。比如银行,电信,金融等等。主要的硬件平台是PA-RISC架构的小型机和中型机系统.
    Compaq在和HP合并之前,在Alpha 平台有一套旗舰级的高可用集群,叫做(TruCluster).被广泛部署在各种关键业务计算领域,比如国防,航天,制造等等。主要的硬件平台是Alpha架构的小型机和中型机.
    随着两个公司的合并,两套著名的集群系统也完成了合并,新的产品仍旧叫做MC/SG,但是可以跑在PA-RISC, IA, IA64平台.
    5年前,HP将MC/SG集群系统移植到了linux平台,并发展至今.  HP MC/SG for linux有着非常高的品质和长期在高度关键业务要求的领域发展的背景。

    7. Turbolinux  高可用集群系统
    Turbolinux 这几年发展的颇不顺利,从创始人走人到公司在日本的股权变动. 颇让人担忧。
    TurboLinux 的高可用集群软件有两个.
    a. TurboLinux Cluster HA 3.1 
    b. TurboLinux8 ClusterPro
    因为都没有在具体的项目中深入用过,不做更多解释.


     

    笔者以最常用的heartbeat为例介绍高可用集群:

    下图是一个Heartbeat集群的一般拓扑图。在实际应用中,由于节点的数目、网络结构和磁盘类型配置的不同,拓扑结构可能会有不同。

    Heartbeat的组成:

    Heartbeat提供了高可用集群最基本的功能,例如,节点间的内部通信方式、集群合作管理机制、监控工具和失效切换功能等。目前的最新版本是Heartbeat 2.x,这里的讲述也是以Heartbeat 2.x为主。下面介绍Heartbeat 2.0的内部组成,主要分为以下几大部分。

    heartbeat:节点间通信检测模块。

    ha-logd:集群事件日志服务。

    CCM(Consensus Cluster Membership):集群成员一致性管理模块。

    LRM(Local Resource Manager):本地资源管理模块。

    Stonith Daemon:使出现问题的节点从集群环境中脱离。

    CRM(Cluster Resource Management):集群资源管理模块。

    Cluster policy engine:集群策略引擎。

    Cluster transition engine:集群转移引擎。

     从上图中可以看出,Heartbeat内部结构由三大部分组成。

    (1)集群成员一致性管理模块(CCM)

    CCM用于管理集群节点成员,同时管理成员之间的关系和节点间资源的分配。Heartbeat模块负责检测主次节点的运行状态,以决定节点是否失效。ha-logd模块用于记录集群中所有模块和服务的运行信息。

    (2)本地资源管理器(LRM)

    LRM负责本地资源的启动、停止和监控,一般由LRM守护进程lrmd和节点监控进程Stonith Daemon组成。lrmd守护进程负责节点间的通信;Stonith Daemon通常是一个Fence设备,主要用于监控节点状态,当一个节点出现问题时处于正常状态的节点会通过Fence设备将其重启或关机以释放IP、磁盘等资源,始终保持资源被一个节点拥有,防止资源争用的发生。

    (3)集群资源管理模块(CRM)

    CRM用于处理节点和资源之间的依赖关系,同时,管理节点对资源的使用,一般由CRM守护进程crmd、集群策略引擎和集群转移引擎3个部分组成。集群策略引擎(Cluster policy engine)具体实施这些管理和依赖;集群转移引擎(Cluster transition engine)监控CRM模块的状态,当一个节点出现故障时,负责协调另一个节点上的进程进行合理的资源接管。

    在Heartbeat集群中,最核心的是Heartbeat模块的心跳监测部分和集群资源管理模块的资源接管部分。心跳监测一般由串行接口通过串口线来实现,两个节点之间通过串口线相互发送报文来告诉对方自己当前的状态。如果在指定的时间内未受到对方发送的报文,就认为对方失效,这时资源接管模块将启动,用来接管运行在对方主机上的资源或者服务


     

    ----------------------------------------------------------------------------------------------------------------------------------------------------                           三.高性能集群    (HP :High Performance )  

    这种集群一般企业或者个人很少应用到,  高性能计算群集HPC。它可以解决世界上最为复杂和艰巨的计算难题,并且能够轻松处理。在气象建模、模拟撞车试验、人体基因绘图以及核爆炸模拟等多种与人类生命相关的重要领域都要用到HPC。随着其性能突飞猛进的提高和成本的急剧下降,HPC迅速走出科学研究实验室,步入主流商业领域。通过将集群和大型SMP系统的性能进行完美结合,HPC正在步入网格计算时代,它将使任何人都能随时随地、经济高效地进行计算,在商业上得到更好的应用。众多企业都被其几乎不可抗拒特性和优势所打动,并争相进行部署。除政府、教育和国家实验室等公共部门之外,HPC在制造、金融、能源、生命科学和数字媒体等行业都广受青睐。(此类集群应用有一定局限性,笔者接触不多,不做过多介绍。)

    下面是一张某公司的高性能集群组成图:

     基础架构:聚合结点、网络以及存储等硬件子系统的基础设施,提供整个集群系统的供电、散热、布线等功能<登录结点:用户登录到集群的工作场所,用户通过它来完成程序的编译调试等工作
    计算结点:用于执行用户程序的结点服务器。
    存储结点:是挂接存储设备、向系统中的其它结点提供存储服务的服务器。
    监控结点:用来监控系统各部分的运行状态、进行远程电源管理和事件告警服务等工作。
    存储交换网络:用来连接存储结点和磁盘阵列。
    计算网:计算结点在运行程序时的通信设施。由高速的通信网络构成,如Infiniband网络。
    管理网:用于集群系统管理的网络,一般采用千兆以太网。
    视频切换系统:通过它可以将选定结点机的keyboard、video和mouse重定向到监控台上,从而可以在监控台上对结点进行各种终端的操作

    集群软件系统结构图:

    设备系统固件层:通信软件和外部设备在适配器上的固件程序
     结点系统软件层:结点操作系统及其核心扩展,如操作系统、设备驱动程序、文件系统扩展等
     集群系统软件层:集群单一映象的操作管理软件。包括集群管理系统、集群监控系统、作业调度系统等 

    应用支撑环境层:科学计算应用的支撑平台。如并行环境、数学库、多核线程调试工具等
     应用程序层:科学工程计算类的实际应用。

    高性能集群笔者接触不多就不过多介绍了,笔者上传一个惠普公司的一个高性能集群案例,在附件里,要想深入了解的话可以看下。

     

    这篇也忙活好多天,因为网络的问题。还好,今天总算告一段落了,下面准备写一篇在linux上实现集群的应用篇,尽请关注。如有错误的地方请指出,笔者尽快修改,多谢各位朋友多多支持,
    此文凝聚笔者不少心血请尊重笔者劳动,转载请注明出处。http://freeze.blog.51cto.com/

     

    本文出自 “夜的博客” 博客,请务必保留此出处http://freeze.blog.51cto.com/1846439/388957

    展开全文
  • 最近网络攻击较多,很多人中招了,希望大家养成良好的习惯,避免无谓的损失. 下面谈谈如何抵卸针对PostgreSQL数据库的攻击. 1 数据库物理隔离 目前最理想的方式,可惜大多数情况下我们达不到这个要求. 将WEB服务器和...

    最近网络攻击较多,很多人中招了,希望大家养成良好的习惯,避免无谓的损失.
    下面谈谈如何抵卸针对PostgreSQL数据库的攻击.

    1 数据库物理隔离

    目前最理想的方式,可惜大多数情况下我们达不到这个要求.

    • 将WEB服务器和数据库集群单独组网,使用一个独立的网段.在防火墙上只打开80端口(开放的端口越多越不安全),各个应用程序使用反向代理映射.
    • WEB服务器和数据库集群在机房内,任何修改必须先在测试环境测试无误后方能申请进入机房操作,操作至少两人再场共同确认.
    • 完善的生成环境管理规章制度

    通过上述办法可以最大限度的避免有意或无意的删除数据库,近一段时间已经发生很多次了,保证数据的安全.

    2 不具备上述条件或需要远程的

    ##创建好数据库后首先回收postgres数据库的public权限
    ###revoke all on database postgres from public;
    ##postgres数据库只允许在本机使用用户名和密码登录
    host    postgres             all             127.0.0.1/32            md5
    ##创建好test库后首先回收test数据库的public权限
    ###revoke all on database test from public;
    ##test数据只允许用test用户从任意主机登录
    host	test		test		0.0.0.0/0		md5
    ## 缺点是每创建一个数据库实例都需要修改pg_hba.conf,无需停机重新"pg_ctl  -D 数据目录 reload"
    
    • 修改postgresql.conf
    #修改默认的侦听端口号,随便改一下即可,注意修改后要设置防火墙
    port = 25432
    #修完成客户端认证的最长时间,以秒计
    authentication_timeout=5s
    
    • 使用高强度的密码
    • 配置Windows防火墙或linux防火墙,允许新配置的端口通行.

    经过上述步骤后,可大幅提升数据的安全性,有效抵卸针对PostgreSQL数据库的攻击.
    如条件允许建议还是使用数据库物理隔离.

    3 SSL

    不建议在数据库,建议https并结合第一节的方式使用.

    展开全文
  • 本文提出了一种基于混合集群的关联方法来检测 Web 漏洞 DDOS 攻击。 我们的方法有两个主要领域,即检测 Web 漏洞 DDOS 攻击和使用基于聚类的方法引入一种区分攻击流量和合法流量的有效方法。 该模型还确保减少误报...
  • ceph存储 ceph集群网络配置

    千次阅读 2014-11-27 09:55:54
    建立一个高性能的Ceph存储集群网络配置是至关重要的。 Ceph的存储集群不执行CEPH客户的路由请求或路由调度。相反, Ceph的Client直接提出请求CEPH OSD守护进程。 Ceph的OSD守护代表Ceph的客户端执行数据备份,这意味...

    简介

    建立一个高性能的Ceph存储集群网络配置是至关重要的。 Ceph的存储集群不执行CEPH客户的路由请求或路由调度。相反, Ceph的Client直接提出请求CEPH OSD守护进程。 Ceph的OSD守护代表Ceph的客户端执行数据备份,这意味着备份和其他因素施加额外负荷Ceph的存储集群网络。

    我们的快速入门(Our Quick Start configurations)提供了一个简单的Ceph的配置文件,它也只是设置MON的IP地址和守护进程的主机名。除非你指定集群网络, Ceph只假定一个单一的“公用”网络。 Ceph的功能只在一个公共网络中有效,但与第二的“集群”在大型集群网络,您可能会看到显着的性能改善。

    我们建议运行Ceph的存储群集有两个网络:一个公共网络(前端)和集群(背面)网络。为了支持两个网络,每个Ceph的节点将需要有一个以上的网卡。

    Network Settings(网络配置)_1

    考虑经营两个独立的网络有以下几个原因:

    性能: CEPH OSD守护进程处理数据复制为Ceph的客户。 Ceph的OSD守护不止一次地备份数据,Ceph的OSD守护程序之间的网络负载轻松相形见绌Ceph的客户端和Ceph的存储集群之间的网络负载。这可以引入延迟,并引发一个性能问题。恢复和再平衡还可以引入显着的延迟,在公共网络上。Ceph的备份数据的可扩展性和高可用性的其他细节,见MON/ OSD心跳流量的详细信息。
    安全性:虽然大多数人一般都是合法公民,一个小部分人,确喜欢搞什么被称为拒绝服务(DoS)攻击。 Ceph的OSD守护进程之间的通信被中断时,可能不再反映安置组一个active+clean的状态,这可能会阻止用户读取和写入数据。一个非常好的方式来防御这种类型的攻击是保持一个完全独立的集群网络没有直接连接到互联网。另外,考虑使用消息签名以击败欺骗攻击。

    IP TABLES

    默认情况下,守护程序绑定到端口6800:7100范围内,这个范围内,你的自由选择配置。在配置您的IP表,检查默认的iptables的 6800:7100范围内的端口。您可以配置这个范围内的端口
            sudo iptables -L

    一些Linux发行版有这样的规则:拒绝所有入站请求,除了SSH所有的网络接口外。例如:

    REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
    你需要删除你的公共和集群网络上的最初规则,把它们替换为相应的规则,当你准备变更Ceph的节点上的端口。

    MON的iptables

    Ceph-MON默认情况下,监听端口6789上。此外, Ceph-MON总是在公共网络上操作。如果您使用下面的例子添加到规则当中,确保您用公网接口(例如,为eth0, eth1的,等等)替换下面的"iface" , 用公网的IP地址和公共网络的网络端口替换 {ip-address}和{netmask}
    sudo iptables -A INPUT -i {iface} -p tcp -s {ip-address}/{netmask} --dport 6789 -j ACCEPT

    MDS IP表

    Ceph的元数据服务器监听在公共网络上的第一个可用端口——6800端口。确保您打开了每个运行Ceph节点的Ceph的数据服务器的6800端口。当您使用下面的例子中添加到表中时,确保您用公网接口(例如,为eth0, eth1的,等等)替换下面的"iface" , 用公网的IP地址和公共网络的网络端口替换 {ip-address}和{netmask}。例如:
    sudo iptables -A INPUT -i {iface} -m multiport -p tcp -s {ip-address}/{netmask} --dports 6800:6810 -j ACCEPT

    OSD IPtables


    默认情况下, Ceph的OSD守护进程绑定到一个Ceph节点的第一个可用端口——6800端口。确保您打开至少有三个端口,在端口6800开始运行在主机上的每一个OSD 。 Ceph的节点上每个Ceph的OSD守护程序最多可以使用三个端口:
    一个用于客户端和MON交谈。
    一个数据发送到其它的OSD。

    一个用于心态检验。

     

    端口是特定端口,因此您不需要打开任何比Ceph的节点上运行的守护进程所需的端口数还多的端口。您可能会考虑开设一些额外的端口,一个守护进程失败的情况下,并重新启动,而不让去重新启动守护进程绑定到一个新的端口。
    如果您设置了独立的公共网络和集群网络,你必须为公共网络和集群网络设定规则,因为客户会利用公共网络连接,而其他Ceph的OSD守护进程将使用集群网络连接。当您使用下面的例子中添加到表中时,确保您用公网接口(例如,为eth0, eth1的,等等)替换下面的"iface" , 用公网的IP地址和公共网络的网络端口替换 {ip-address}和{netmask}。例如:

    sudo iptables -A INPUT -i {iface}  -m multiport -p tcp -s {ip-address}/{netmask} --dports 6800:6810 -j ACCEPT
    提示:如果您运行Ceph的元数据服务器在同一Ceph的节点,他们为Ceph的OSD守护实例,你可以加固公共网络配置的步骤。确保您打开每个主机的每个守护进程所需的端口数量。

    CEPH NETWORKS

    要设置Ceph的网络配置,您必须添加一个网络配置在配置文件在[global ]部分。我们5分钟的快速启动提供了一个简单的Ceph的配置文件,假设一个公网客户端和服务器上相同的网络和子网。 Ceph的功能仅对一个公共的网络起作用。然而, Ceph可以建立更具体的标准,其中包括多个IP网络和公共网络的子网。您也可以建立单独的集群网络处理OSD心跳,对象备份和故障恢复。不要混淆IP您在您的配置设置面向公众的IP地址的网络客户端的IP地址,可以使用它来访问您的服务。典型的内部IP网络往往是192.168.0.0 10.0.0.0  。
    提示:如果您指定一个以上的IP地址和子网掩码,无论是公共或群集网络的子网内的网络必须能够路由到对方。此外,请确保您包括您的IP为他们必要的表和开放端口的每一个IP地址/子网。
    注意:Ceph使用CIDR表示法的子网(例如, 10.0.0.0/24 ) 。
    当你配置你的网络,你可能会重新启动您的群集或重新启动每个守护进程。 Ceph的守护程序动态绑定,所以你不必重新启动整个集群一次,如果你改变你的网络配置。

    PUBLIC NETWORK

    要配置公共网络,下面的选项添加到您的Ceph的配置文件的[ global]部分。

    [global]
            ...
            public network = {public-network/netmask}

    CLUSTER NETWORK

    如果你声明一个群集网络,OSDs将在整个集群网络中路由​​心跳、对象备份和故障恢复。这可以提高性能相比,相比于使用一个单一的网络。要配置群集网络,下面的选项添加到您的Ceph的配置文件的[ global]部分。
    [global]
            ...
            cluster network = {cluster-network/netmask}
    我们宁愿从公共网络或互联网为增加安全性,集群网络不可达。

    CEPH DAEMONS


    Ceph的有一个网络配置的要求,适用于所有的守护进程: Ceph的配置文件中必须为每个守护进程指定主机。 Ceph的Ceph的配置文件还要求指定MON的IP地址和端口。
    提示:主机设置是主机的短名称(即不是FQDN ) ,它不是一个IP地址。输入hostname -s 在命令行中检索的主机名。
    [mon.a]
    
            host = {hostname}
            mon addr = {ip-address}:6789
    
    [osd.0]
            host = {hostname}
    您不必为守护进程设置主机IP地址。如果你有一个静态IP配置以及公共和集群网络的运行, Ceph的配置文件可以指定为每个守护进程的主机的IP地址。一个守护进程设置一个静态的IP地址,下面的选项(s)应出现在守护进程的ceph.conf文件中。
    [osd.0]
            public addr = {host-public-ip-address}
            cluster addr = {host-cluster-ip-address}

    一个NIC OSD在两个网络集群
    一般来说,我们不建议用一个NIC在两个网络群集部署OSD主机。然而,你可以在公共网络上操作OSD主机,通过在Ceph配置文件的[ osd.n ]部分添加公共ip地址,其中n是指有一个NIC的OSD ​​。此外,在公共网络和集群网络必须能够将流量路由到对方,这是我们出于安全原因,不推荐。

    网络配置设置

     

    网络配置设置不是必需的。Ceph的假设公共网络的所有主机上运行,除非您特别配置群集网络。

    公共网络

    公共网络配置,可以明确定义为公网的IP地址和子网。您可能专门分配静态IP地址或覆盖公共网络的守护进程。

    公共网络

    说明:公众(前端)网络(例如,192.168.0.0/24)的IP地址和网络掩码。[全局]设置。您可以指定用逗号分隔的子网。
    类型:{IP地址} / {子网掩码} , {IP地址} / {子网掩码}]
    要求:没有
    默认:N / A

    公共地址

    说明:公众(前端)网络的IP地址。设置每个守护。
    类型:IP地址
    要求:没有
    默认:N / A

    群集网络

    群集网络配置允许你声明一个集群网络,并明确定义为集群网络的IP地址和子网。您可能专门分配静态IP地址或覆盖集群网络的设置,使用集群地址设置为特定的OSD守护。

    集群网络

     

    说明:集群的IP地址和网络掩码网络(如10.0.0.0/24)。[全局]设置。您可以指定用逗号分隔的子网。
    类型:{IP地址} / {子网掩码} , {IP地址} / {子网掩码}]
    要求:没有
    默认:N / A

    集群地址

    说明:集群网络的IP地址。设置每个守护。
    类型:地址
    要求:没有
    默认:N / A

    绑定

    绑定设置默认的端口范围Ceph的OSD和MDS守护的使用。默认范围为6800:7100。确保您的IP表配置,您可以使用配置的端口范围。

    您也可以启用Ceph的守护程序绑定到IPv6地址。

    绑定最小端口号

    说明:最低端口号,其中一个OSD或MDS守护的绑定。
    类型:32位整数
    默认:6800
    要求:没有

    绑定最大端口号

    说明:最大端口号,其中一个OSD或MDS守护的绑定。
    类型:32位整数
    默认:7100
    要求:No

    绑定IPV6地址

    说明:启用Ceph的守护进程绑定到IPv6地址。
    类型:Boolean
    默认:假
    要求:No

    主机

    Ceph配置文件中,预计一个主机设置在每个宣布监控器、元数据服务器和OSD。

    mon addr

    说明:查看{主机名},{端口}的列表,客户端可以使用连接到Ceph的监视器。
    类型:String
    要求:没有
    默认:N / A

    host

    说明:主机名。使用此设置特定的守护进程实例(例如,[osd.0] )。
    类型:String
    要求:是,守护实例。
    默认:本地

    提示:不要使用本地主机。为了让您的主机名,在命令行上执行 hostname -s 和使用您的主机的名称。

    重要:使用第三方部署系统,查找你的主机名时,你不应该指定主机的任何值。

    TCP

    Ceph的默认情况下禁用TCP缓冲。

    tcp nodelay

    说明:Ceph使tcp NODELAY的每个请求立即发送(无缓冲)。禁用Nagle算法,增加网络流量,它可以引入延迟。如果遇到大量的小数据包,您可以尝试禁用TCP NODELAY。
    类型:Boolean
    要求:No
    默认:true

    tcp rcvbuf

    说明:在接收端上的一个网络连接。默认情况下禁用。
    类型:32位
    要求:没有
    默认:0

    ms tcp read timeout

    说明:如果一个客户端或守护程序发出请求到另一个Ceph的守护进程,并没有删除未使用的连接,TCP超时定义连接,指定的秒数后闲置。
    类型:64位
    要求:没有
    默认:900 15分钟。

     

    展开全文
  • 常见网络攻击与防御总结

    千次阅读 2020-09-22 16:31:05
    常见网络攻击与防御 1、CSRF攻击与防御 1.1 什么是CSRF 1.2 防御CSRF攻击 1.2.1 验证码 1.2.2 Refer Check(添加Referer识别) 1.2.3 Anti CSRF Token(添加token验证) 2、sql注入攻击 2.1 什么是sql注入...

    常见网络攻击与防御

    1、CSRF攻击与防御

    1.1 什么是CSRF

    1.2 防御CSRF攻击

    1.2.1 验证码

    1.2.2 Refer Check(添加Referer识别)

    1.2.3 Anti CSRF Token(添加token验证)

    2、sql注入攻击

    2.1 什么是sql注入攻击

    2.2 sql注入产生原因及威胁

    2.3 防御sql注入攻击

    3、XSS攻击

    3.1 什么是XSS攻击

    3.2 XSS的攻击方式

    3.3 如何防御XSS攻击

    4、DDos攻击

    4.1 什么是DDos攻击

    4.2 DDos攻击的常用方式

    4.2.1 攻击带宽

    4.2.2  攻击系统

    4.2.3 攻击应用

    4.2.4 混合攻击

    4.3 DDos的防御

    4.3.1 设置高性能设备

    4.3.2. 带宽得保证

    4.3.3 不要忘记升级

    4.3.4 异常流量的清洗

    4.3.5 考虑把网站做成静态页面

    4.3.6. 分布式集群防御

    5、中间人攻击(MiTM)

    5.1 什么是中间人攻击

    5.2 SSL证书欺骗攻击

    5.3 MiTM的几种方式

    5.3.1 嗅探

    5.3.2 数据包注入

    5.3.3 会话劫持

    5.3.4 SSL 剥离攻击

    5.4 小结

    6 HSTS简介

    6.1 什么是HSTS

    6.2 HSTS能解决的问题


    1、CSRF攻击与防御

    1.1 什么是CSRF

    CSRF全名是Cross Site Request Forgery,翻译过来,即跨站请求伪造。那它是如何伪造的呢?案例如下:

    假如用户登录了a网站http://www.a.com,网站有一个get请求 xxx/delete?id=1 用于删除用户个人信息。 这时候弹出一个引人入胜的广告被用户点击,或者用户突然有更重要的访问其他网站的需求而直接开了一个tab,暂停了a网站的访问。以上等原因用户来到了b网站(也可能是钓鱼网站) http://www.b.com。 b网站内已经藏好了一张不可见的图片 <img src="xxx/delete?id=1" />; 等用户返回a网站时,发现自己的个人信息不见了!

    没错,就是这个看不见的图片,发送了删除个人信息的请求到a服务器,而a服务器又缺少相应的防御措施,引起了灾难。类似的场景也可能是用户的财产损失、账号注销……等等,倘若该链接通过消息或发帖接口发送给好友或公共平台,好友或平台用户查看到后,攻击就会像病毒一样散播开来(参照百度曾经的CSRF Worm)。

    http是无状态的,即不会区分哪个用户、哪个请求,不会记录请求状态。所以才会有session、cookie用以区分用户和校验身份。这一步通过了,请求就认为是合法的了。所以说我们只要拿到了这个身份凭证(session、cookie),就可以进行伪造发起CSRF攻击。

    1.2 防御CSRF攻击

    1.2.1 验证码

    http是无状态的,即不会区分哪个用户、哪个请求,不会记录请求状态。所以才会有session、cookie用以区分用户和校验身份。这一步通过了,请求就认为是合法的了。所以说我们只要拿到了这个身份凭证(session、cookie),

    1.2.2 Refer Check(添加Referer识别)

    如果一个请求来自域www.a.com,那么服务器验证客户端的请求来源时,HTTP请求头的Referer字段值就是www.a.com。这一步需要服务端来实现。问题在于,服务器不是什么时候都能取到Referer,甚至一些情况下是不发送Referer的。

    1.2.3 Anti CSRF Token(添加token验证)

    CSRF 的本质是所有被伪造攻击的请求的参数都是可被猜测到的。那我们在请求参数里加上随机生成的token,攻击成本将瞬间扩大。token必须满足不可预测,假如我们随机产生的token是一个8位数字,那攻击者暴力破解是分分钟的事。token必须同时满足保密性和随机性。

    2、sql注入攻击

    2.1 什么是sql注入攻击

    Sql 注入攻击是通过将恶意的 Sql 查询或添加语句插入到应用的输入参数中,再在后台 Sql 服务器上解析执行进行的攻击,它目前黑客对数据库进行攻击的最常用手段之一。

    2.2 sql注入产生原因及威胁

    当我们访问动态网页时, Web 服务器会向数据访问层发起 Sql 查询请求,如果权限验证通过就会执行 Sql 语句。这种网站内部直接发送的Sql请求一般不会有危险,但实际情况是很多时候需要结合用户的输入数据动态构造 Sql 语句,如果用户输入的数据被构造成恶意 Sql 代码,Web 应用又未对动态构造的 Sql 语句使用的参数进行审查,则会带来意想不到的危险。原因小结如下:

    (1)WEB开发人员无法保证所有的输入都已经过滤;

    (2)攻击者利用发送给SQL服务器的输入参数构造可执行的SQL代码(可加入到get请求、post请求、http头信息、cookie中)

    (3)数据库未做相应的安全配置。

    Sql 注入带来的威胁主要有如下几种方式:

    1. 猜测数据库名,备份数据库;
    2. 猜解字段名称;
    3. 遍历系统的目录结构,分析结构并发现WEB虚拟目录,植入木马;
    4. 查询当前用户的数据库权限;
    5. 设置新的数据库帐户提权得到数据库管理员账户权限;
    6. 利用存储过程获取操作系统管理员账户;
    7. 客户端脚本攻击:通过正常的输入提交方式将恶意脚本提交到数据库中,当其他用户浏览此内容时就会受到恶意脚本的攻击;
    8. 客户端脚本攻击:通过SQL注入方式将恶意脚本提交到数据库中,直接使用SQL语法UPDATE数据库,并将注入SQL经过“HEX编码”,然后通过exec执行“动态”SQL的特性运行脚本。

    2.3 防御sql注入攻击

    (1)永远不要信任客户端提交的数据,一定要对客户端提交的数据进行校验,校验可以考虑数据类型,字符长度或者正则表达式等方式。

    (2)对客户端提交的数据进行转义,例如将" ' "转义为" ' "。

    (3)采用预编译绑定变量的SQL语句而不是直接拼接SQL语句。

    (4)避免在生产环境中,直接输出错误信息,因为这些错误信息有可能被攻击者利用。

    (5)严格执行数据库账号权限管理。

    (6)对用户敏感信息特别是密码做严格加密处理。

    3、XSS攻击

    3.1 什么是XSS攻击

    XSS攻击的全称是跨站脚本攻击(Cross Site Scripting),为不跟层叠样式表(Cascading Style Sheets,CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。跨站脚本攻击也就是在网站里嵌入恶意脚本程序,当用户打开网站时,窃取Cookie,盗取信息。

    3.2 XSS的攻击方式

    (1)URI参数传递

    (2)表单提交参数

    3.3 如何防御XSS攻击

    (1)继承HttpServletRequestWrapper,然后重写(@Override)getParameter()、getHeader()等等方法。

    (2)文件上传不走HttpServletRequestWrapper,需要继承CommonsMultipartResolver,重写方法。

    4、DDos攻击

    4.1 什么是DDos攻击

    DDos(Distributed Denial of Service),即分布式拒绝服务攻击,DDos攻击是基于Dos发展来的。什么是Dos呢?首先简单介绍一下Dos,Dos就是利用信任的客户端向服务端频繁发送请求,从而达到服务器处理不过来,请求超时。所以Dos其实就是一对一的,在邮件设施还不太好的情况是有效的,对于性能极佳的服务器压根不管用了,所以就有了DDos,分布式拒绝服务攻击。

    DDos攻击过程是分布式的,首先黑客可能会通过程序控制大量的计算机,然后通过这个计算机群在同一个时间,发送大量的请求到目标服务器,从而达到服务器处理不过来,请求超时的情况。

    4.2 DDos攻击的常用方式

    4.2.1 攻击带宽

    跟交通堵塞情况一样,大家都应该清楚:当网络数据包的数量达到或者超过上限时,会出现网络拥堵、响应缓慢的情况。DDoS 就是利用这个原理,发送大量网络数据包,占满被攻击目标的全部带宽,从而造成正常请求失效,达到拒绝服务的目的。

    攻击者可以使用 ICMP 洪水攻击(即发送大量 ICMP 相关报文)、或者 UDP 洪水攻击(即发送用户数据报协议的大包或小包),使用伪造源 IP 地址方式进行隐匿,并对网络造成拥堵和服务器响应速度变慢等影响。

    但是,这种直接方式通常依靠受控主机本身的网络性能,所以效果不是很好,还容易被查到攻击源头。于是反射攻击就出现,攻击者使用特殊的数据包,即 IP 地址指向作为反射器的服务器,源 IP 地址被伪造成攻击目标的 IP,反射器接收到数据包的时候就被骗了,会将响应数据发送给被攻击目标,然后就会耗尽目标网络的带宽资源。

    4.2.2  攻击系统

    创建 TCP 连接需要客户端与服务器进行三次交互,也就是常说的“三次握手”。这个信息通常被保存在连接表结构中,但是表的大小有限,所以当超过存储量,服务器就无法创建新的 TCP 连接。

    攻击者利用这一点,用受控主机建立大量恶意的 TCP 连接,占满被攻击目标的连接表,使其无法接受新的 TCP 连接请求。如果攻击者发送了大量的 TCP SYN 报文,让服务器在短时间内产生大量的半开连接,连接表也会被很快占满,导致无法建立新的 TCP 连接,这个方式是 SYN 洪水攻击,很多攻击者都比较常用。

    浅析DDoS攻击及防御

    4.2.3 攻击应用

    由于 DNS 和 Web 服务的广泛性和重要性,这两种服务就成为消耗应用资源的分布式拒绝服务攻击的主要目标。比如,向 DNS 服务器发送大量查询请求,从而达到拒绝服务的效果,如果每一个 DNS 解析请求所查询的域名都是不同的,那么就有效避开服务器缓存的解析记录,达到更好的资源消耗效果。当 DNS 服务的可用性受到威胁,互联网上大量的设备都会受到影响而无法正常使用,这个过程即DNS Query Flood攻击。攻击的过程为:

    (1)通过程序控制,向目标服务器的DNS服务器,发送大量的域名解析请求,不过这些域名基本是随机生成的,比如改下端口什么的。

    (2)DNS服务器接收到域名之后,先去缓存里查找是否有这个域名,然后发现没有,之后,DNS服务器就会向上层的DNS服务器递归查询了,指导向上查询了全球13台根DNS服务器。这时候肯定会出现域名解析超时的情况。

    近些年,Web 技术发展非常迅速,如果攻击者利用大量的受控主机不断地向 Web 服务器恶意发送大量 HTTP 请求,要求 Web 服务器处理,就会完全占用服务器资源,让正常用户的 Web 访问请求得不到处理,导致拒绝服务。一旦 Web 服务受到这种攻击,就会对其承载的业务造成致命的影响。

    4.2.4 混合攻击

    随着僵尸网络向小型化的趋势发展,为降低攻击成本,有效隐藏攻击源,躲避安全设备,同时保证攻击效果,针对应用层的小流量慢速攻击已经逐步发展壮大起来。因此,从另一个角度来说,DDoS 攻击方面目前主要是两个方面:一是 UDP 及反射式大流量高速攻击,二是多协议小流量及慢速攻击。

    4.3 DDos的防御

    DDos的防御主要有以下方面:

    4.3.1 设置高性能设备

    要保证网络设备不能成为瓶颈,因此选择路由器、交换机、硬件防火墙等设备时要尽量选用知名度高、口碑好的产品。并且,假如和网络提供商有特殊关系或协议的话就更好了,当大量攻击发生时请他们在网络接点处做一下流量限制来对抗某些种类的 DDoS 攻击是非常有效的。

    4.3.2. 带宽得保证

    网络带宽直接决定了能抗受攻击的能力,假若仅仅只有 10M 带宽的话,无论采取什么措施都很难对抗现在的 SYN Flood 攻击。所以,最好选择 100M 的共享带宽,当然是挂在 1000M 的主干上了。

    4.3.3 不要忘记升级

    在有网络带宽保证的前提下,请尽量提升硬件配置,要有效对抗每秒 10 万个 SYN 攻击包。而且最好可以进行优化资源使用,提高 web server 的负载能力。

    4.3.4 异常流量的清洗

    通过 DDoS 硬件防火墙对异常流量的清洗过滤,通过数据包的规则过滤、数据流指纹检测过滤、及数据包内容定制过滤等顶尖技术能准确判断外来访问流量是否正常,进一步将异常流量禁止过滤。

    4.3.5 考虑把网站做成静态页面

    将网站尽可能做成静态页面,不仅能大大提高抗攻击能力,而且还给黑客入侵带来不少麻烦,最好在需要调用数据库的脚本中,拒绝使用代理的访问,经验表明,使用代理访问你网站的 80% 属于恶意行为。

    4.3.6. 分布式集群防御

    这是目前网络安全界防御大规模 DDoS 攻击的一种有效办法。分布式集群防御的特点是在每个节点服务器配置多个 IP 地址,并且每个节点能承受不低于 10G 的 DDoS 攻击,如一个节点受攻击无法提供服务,系统将会根据优先级设置自动切换另一个节点,并将攻击者的数据包全部返回发送点,使攻击源成为瘫痪状态,从更为深度的安全防护角度去影响企业的安全执行决策。

    5、中间人攻击(MiTM)

    5.1 什么是中间人攻击

    (1)中间人攻击的定义:

    中间人攻击是指攻击者与通讯的两端分别创建独立的联系,并交换其所收到的数据,使通讯的两端认为他们正在通过一个私密的连接与对方直接对话,但事实上整个会话都被攻击者完全控制。

    简单来说,攻击者在请求和响应传输途中,拦截并篡改内容。对于 HTTP 来说,由于设计的简单,不需要太多步骤就可以进行监听和修改报文;在这里主要是针对 HTTPS,HTTPS 使用了 SSL 加密协议,是一种非常安全的机制,目前并没有方法直接对这个协议进行攻击,一般都是在建立 SSL 连接时,利用中间人获取到 CA证书、非对称加密的公钥、对称加密的密钥;有了这些条件,就可以对请求和响应进行拦截和篡改。

    (2)中间人攻击需要截获请求响应

    对于中间人攻击,有一个前提就是:需要截获到客户端与服务器通信的线路。抓包工具一般都是用户主动将其设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析。对于其它工具则是利用 DNS欺骗、ARP投毒、劫持网关等手段,将客户端的请求重定向到攻击者的机器,以便进行网络抓包。

    5.2 SSL证书欺骗攻击

    (1)SSL 证书欺骗攻击流程大概如下:

    • 截获客户端与服务器通信的通道
    • 然后在 SSL 建立连接的时候,进行中间人攻击
    • 将自己伪装成客户端,获取到服务器真实有效的 CA 证书(非对称加密的公钥)
    • 将自己伪装成服务器,获取到客服端的之后通信的密钥(对称加密的密钥)
    • 有了证书和密钥就可以监听之后通信的内容了

    图示如下: 

    (2)这个避免方法就是:

    • 客户端不要轻易信任证书;
    • App 可以提前预埋证书在本地。

    5.3 MiTM的几种方式

    5.3.1 嗅探

    嗅探或数据包嗅探是一种用于捕获流进和流出系统/网络的数据包的技术。网络中的数据包嗅探就好像电话中的监听。记住,如果使用正确,数据包嗅探是合法的;许多公司出于“安全目的”都会使用它。

    5.3.2 数据包注入

    在这种技术中,攻击者会将恶意数据包注入常规数据中。这样用户便不会注意到文件/恶意软件,因为它们是合法通讯流的一部分。在中间人攻击和拒绝式攻击中,这些文件是很常见的。

    5.3.3 会话劫持

    你曾经遇到过“会话超时”错误吗?如果你进行过网上支付或填写过一个表格,你应该知道它们。在你登录进你的银行账户和退出登录这一段期间便称为一个会话。这些会话通常都是黑客的攻击目标,因为它们包含潜在的重要信息。在大多数案例中,黑客会潜伏在会话中,并最终控制它。这些攻击的执行方式有多种。

    5.3.4 SSL 剥离攻击

    SSL剥离或SSL降级攻击是MiTM攻击的一种十分罕见的方式,但是也是最危险的一种。众所周知,SSL/TLS证书通过加密保护着我们的通讯安全。在SSL剥离攻击中,攻击者使SSL/TLS连接剥落,随之协议便从安全的HTTPS变成了不安全的HTTP,从而截获用户的传输内容。

    SSL 剥离就是将客户端的 HTTPS 请求降级成 HTTP 请求,阻止 HTTP 请求重定向成 HTTPS ,流程图如下:

    5.4 小结

    中间人攻击主要是伪装身份,然后截取通信的内容,对于 HTTP 是可以很轻松的截获;但是对于 HTTPS,主要是在建立 SSL 连接的时候,骗取到证书和密钥。防御中间人攻击主要手段有客户端不要轻易信任证书和App 可以提前预埋证书在本地。

    6 HSTS简介

    6.1 什么是HSTS

    HSTS(HTTP Strict Transport Security) 是一种Web安全协议,它的作用是在本地强制客户端(如浏览器)使用HTTPS与服务器创建连接。服务器开启HSTS的方法是,当客户端通过HTTPS发出请求时,在服务器返回的超文本传输协议响应头中包含STS(Strict-Transport-Security)字段。

    6.2 HSTS能解决的问题

    HSTS主要针对以下三个威胁:

    • 用户书签中的链接或者手动输入的地址是example.com,然后浏览器以HTTP方式访问。这种方式可能遭遇中间人劫持;
    • HTTPS页面的链接无意中包含HTTP,这个HTTP页面可能被中间人劫持;
    • 在传输过程中可能会被拦截流量,而浏览器显示证书错误链接不安全时用户可能点击继续访问不安全的链接。

    HSTS针对以上三个威胁的解决方案:

    • 支持HSTS的浏览器直接内部重定向,用HTTPS取代HTTP访问目标域名;
    • 第二点同上;
    • 在证书错误的时候没有目标页的链接入口,用户不能忽略浏览器警告继续访问网站。

    如前所述,若没有使用HSTS,虽然会出现安全警告,但是仍可选择继续不安全的连接。而如果使用了HSTS,则无法继续不安全的链接。

     

     

     

    声明:本文部分内容整理来源于网络,仅做个人学习使用!侵删~

    本文部分内容参考链接:

    (1)https://juejin.im/post/6844904071938342925

    (2)https://www.infoq.cn/article/miG6Xf0i3cfl1XH3iQcp

    (3)https://www.jianshu.com/p/a4d719bdf7ce

    (4)https://blog.csdn.net/u014427391/article/details/80384317
     

     

    展开全文
  • LVS集群系统网络核心原理分析

    千次阅读 2014-08-05 13:13:58
    LVS集群技术 LVS集群技术 作者:FunBSD 最后更新:2005年5月18日 目录 Preface IPVS HeatBeat Ldirectord Patch Scripts Reference Preface 集群技术主要分为三大类: 高可用性...
  • 1、NTP 反射和放大攻击无论是基于 DNS 还是基于 NTP,其最终都是基于 UDP 协议的。在 UDP 协议中正常情况下客户端发送请求包到服务端,服务端返回响应包到客户端,但是 UDP 协议是面向无连接的,所以客户端发送...
  • 当然了,除了使用性价比高的设备和专用负载分流设备外,还有一些其他选择来帮你解决此问题,就是搭建集群服务器通过整合多台普通的服务器设备并以同一个地址对外提供相同的服务,今天杰哥就带领大家学习企业中常用的...
  • 值得注意的是,存在多种类型的攻击,这些攻击会损坏网络中的传感器节点。 其中,干扰是一种高风险的攻击,它完全阻止了无线网络中的数据传输。 由于无线传感器网络主要应用于危机发生地和战地应用,一致和安全的...
  • 服务集群的解决方案 企业在实践使用Docker部署、运行微服务应用的时候,无论是一开始就布局微服务架构,或者从传统的单应用架构进行微服务化迁移。都需要能够处理更复杂的集群中的服务调度、编排、监控等问题。下面...
  • 身份对等的群组密钥管理方案不适用成员异构、链路状态非可靠的星内集群自组织网络。针对该问题,本文提出一种基于K 级门限密钥的自治群组密钥管理方案,通过多级共享的方式使得高层的密钥碎片被多个解密密钥共享,...
  • Linux 集群

    千次阅读 2020-12-20 19:36:18
    1.2 集群的分类1.2.1 负载均衡集群 – LBC1.2.2 高可用集群 – HAC1.2.3 高性能运算集群 – HPC二、负载均衡集群1. LVS 相关原理3. LVS 实验构建三、高可用集群 一、集群概述 1.1 集群是什么? 定义: 集群是一组...
  • RocketMQ 集群踩坑记

    2020-10-28 16:12:00
    集群节点进程神秘消失 现象描述 接到告警和运维反馈,一个 RocketMQ 的节点不见了。此类现象在以前从未发生过,消失肯定有原因,开始查找日志,从集群的 broker.log、stats.log、storeerror.log、store.log、...
  • Tair集群

    千次阅读 2013-12-19 09:34:46
    1. Tair总述 1.1 系统架构 一个Tair集群主要包括3个必选模块:configserver、dataserver和client,一个...两台configserver互为主备并通过维护和dataserver之间的心跳获知集群中存活可用的dataserver,构建数据在集群
  • 性能价格比高,集群在服务器体系结构中所占的比重越来越大,集群应用的领域越来越多,如科学计算、生物工程、Web服务、FTP服务、E-Mail服务等等,这些集群服务器暴露在网络中,受到了越来越多有针对性的恶意破坏及攻击。...
  • 国外DDOS穿盾集群

    2019-04-19 16:51:29
    国外DDOS穿盾集群 可穿金盾 安全狗 安全盾 冰盾 云锁等等。支持轮询 并发 支持所有系统上线
  • DOS(Denial-of-Service)/D DOS(Distributed Denial-of-Service)网络攻击不但给被攻击目标带来麻烦,而且还严重干扰与被攻击目标共享网络的其它流量 。...基于集群的自动鉴别和控制机制包括对DOS/D DOS网络攻击集群的鉴
  • 大家好,今天给大家分享一下:几种常见的网络攻击方式的介绍以及短信防攻击策略的后端实现。 一、背景介绍 有人的地方就有江湖,有数据交互的地方,就存在入侵风险。 只有知己知彼,才能百战不殆。我们学习相关...
  • 本文目的: 1.搭建Ethereum私有链和节点集群; 2.熟悉以太坊智能合约的部署和使用流程; 3.了解以太坊智能合约的应用和常见安全性问题; 参考: https://www.jianshu.com/p/3aa80732ed73 ...
  • 数据库集群技术

    千次阅读 2016-03-29 09:11:29
    1.数据库集群的作用:  理想的数据库集群应该可以做到以下几点:  ◆ 在需要更高数据库处理速度的时候,我们只需简单增加数据库服务器就可以了。这样可以大大减小硬件投资的风险,而且大大提高现有服务的质量...
  • Web服务器集群搭建

    千次阅读 2019-05-24 15:31:10
    搭建一个高可用的网站服务器集群,能承受高并发请求,能抵御一般的网络攻击,任何一台服务器的退服不影响整个集群的运作,并且能对各服务器的运行情况作出实时监控。 1.2、详细需求 Web主服务器(Centos1 Nginx+...
  • Memcache 集群

    千次阅读 2013-12-19 14:26:03
    Memcache集群环境下缓存解决方案 Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。...
  • 省钱的服务器集群

    2011-05-03 16:50:00
    以下这些知名机构用价廉低耗的计算机构建集群,同样提供了近乎实时的处理能力,它们用于搜寻早期宇宙的迹象、研发下一代雷达或又快又经济地运行网络测试。他们的做法值得借鉴。 GPU集群与天文研究 ...
  • M4 Linux集群DDOS

    2018-10-07 20:32:53
    什么是DDOS攻击? DDoS也就是分布式拒绝服务攻击。它使用与普通的拒绝服务攻击同样的方法,但是发起攻击的源是多个。通常攻击者使用下载的工具渗透无保护的主机,当...本工具只属于网络测试工具,禁止用于非法活动行为!
  • 或许提到奇安信,大家听多了,bat,或许不太关注,那么使用过码云,也就是...摘要:奇安信集团作为一家网络安全公司是如何基于 Flink 构建 CEP 引擎实时检测网络攻击?其中面临的挑战以及宝贵的实践经验有哪些?本...
  • 集群概述及分类

    千次阅读 2021-01-05 20:06:41
    集群概述及分类 一、集群的原理及作用 1、什么是集群? 2、集群化的目的? 3、提升服务器性能的方式 二、常见的集群简介 1、负载均衡集群(LBC) 2、高可用集群(HAC) 3、高性能运算集群(HPC) 一、集群的原理及...
  • Ceph分布式集群在线搭建

    千次阅读 2018-09-23 21:51:30
    不管你是想为云平台提供Ceph 对象存储和/或 Ceph 块设备,还是想部署一个 Ceph 文件系统或者把 Ceph 作为他用,所有 Ceph 存储集群的部署都始于部署一个个 Ceph 节点、网络和 Ceph 存储集群。 Ceph 存储集群至少需要...
  • 【Hadoop】集群时间同步

    千次阅读 2018-03-18 11:05:14
    配置NTP服务实现集群时间同步。
  • Linux服务器集群系统

    千次阅读 2004-09-12 02:10:00
    LVS项目介绍 章文嵩博士 (wensong@linux-vs.org)本文介绍了Linux服务器集群系统――LVS(Linux Virtual Server)项目的产生背景和目标,并描述了LVS服务器集群框架及目前提供的软件,列举LVS集群系统的特点和一些...
  • 负载均衡集群LVS

    千次阅读 2017-11-09 21:08:16
    集群分类及不同分类的特点 ​ 计算机集群架构按照功能和结构一般分成以下几类: 1)负载均衡集群(Loadbalancingclusters)简称LBC 2)高可用性集群(High-availabilityclusters)简称HAC ...网络上面一般认为是有三

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 30,702
精华内容 12,280
关键字:

网络攻击集群