找回密码
 注册
关于网站域名变更的通知
查看: 818|回复: 1
打印 上一主题 下一主题

通过携程事件,说说保护客户数据不丢的措施。

[复制链接]
  • TA的每日心情

    2019-11-19 16:53
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2019-11-27 13:42 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    携程旅行网官方网站和App突然陷入全面瘫痪,内部功能均无法正常使用。打开主页后点击时均显示“Service Unavailable”,而百度搜索上的携程官方页面也显示404错误。官方表示是因服务器遭受不明攻击所致,技术人员正在紧急修复中。
    根据《法制晚报》微博给出的消息称,携程的服务器数据在此次故障中全部遭受物理删除,且备份数据也无法使用。
    可以说,这对携程来说几乎是一次致命的打击。无巧不成书,就在三天前,曾有人在乌云平台公布了一个有关携程服务器的部署漏洞,但该信息显然被携程忽略了。也有知情网友表示,这次疑为携程内部人员人为误操作,导致服务器数据被删除,且备份数据也无法使用。
    很多技术人员都在谈论:一般人怎么会获得如此高的权限;数据会多重备份,怎么会有删除导致瘫痪一说?
    抛开携程事件不说,本文从硬件的角度,给大家介绍一些我们保护客户数据的硬件手段。

    + W& q7 R5 e: V3 g/ Y/ ^
    1、异地容灾:
    异地容灾,顾名思义就是在不同的地域,构建一套或者多套相同的应用或者数据库,起到灾难后立刻接管的作用。
    现代的企业已经变得越来越依赖数据处理中心进行业务处理,对于这些数据中心来说,业务完全依靠信息技术进行处理。对于信息处理中心来说,对数据的完整性和可用性提出了极高的要求。特别是大型金融、电信等企业,对业务系统的连续性提出了更高的要求,对于这些企事业单位来说,遇到突发的故障事件,没有完备的灾备系统,对于业务系统都是致命的。同样,对许多中小企业来说,必要的灾备系统也是必要的。
    由于异地容灾的解决方案,是两套或者多套数据及设备部署在不同的地域,所以当一个地点发生火灾、地震的情况的时候,在异地的备份可以接管业务。由于平时两地的数据同步,也不会造成用户数据丢失。

    4 E; M! d5 ~" ~- f( M. v1 b
    2、双机备份
    * x  `- |0 m, s7 d3 S# W
    双机热备特指基于高可用系统中的两台服务器的热备(或高可用),因两机高可用在国内使用较多,故得名双机热备,双机高可用按工作中的切换方式分为:主-备方式(Active-Standby方式)和双主机方式(Active-Active方式),主-备方式即指的是一台服务器处于某种业务的激活状态(即Active状态),另一台服务器处于该业务的备用状态(即Standby状态)。而双主机方式即指两种不同业务分别在两台服务器上互为主备状态(即Active-Standby和Standby-Active状态)。
    在企业的发展情况与不同环境因素下,用户对系统的连续工作性和实时性也有着更高的要求,从实际操作面来看,企业用户在工作环节中,要把采集到的实时数据存储在两台计算机上,其中一台采集机故障时,另一台备用的立刻可以接替,并给出警告信号,当采集机恢复后,可自动接替备用机。因此既达到能保存重要数据,又能节省成本,那么双机备份软件就是企业用户的更好选择。
    & W1 ]& G# d  D' K0 r9 }
    基于共享存储(磁盘阵列)的方式
    共享存储方式主要通过磁盘阵列提供切换后,对数据完整性和连续性的保障。用户数据一般会放在磁盘阵列上,当主机宕机后,备机继续从磁盘阵列上取得原有数据。如下图所示
    传统的单存储方式
    这种方式因为使用一台存储设备,往往被业内人士称为磁盘单点故障。但一般来讲存储的安全性较高。所以如果忽略存储设备故障的情况下,这种方式也是业内采用最多的热备方式。
    9 W, d' b6 n! q

    / f9 ^  k1 F3 }9 @/ o
    全冗余方式
    全冗余方式就是双机双存储,基于单台存储的传统双机热备方式,确实存在存储单点故障的情况,为实现存储冗余,存储高可用也已经越来越多的被用户接受。我们从理解上可以看出,双机热备最早是为解决服务器的计划性停机与非计划性宕机的解决方案,但是我们无法实现存储的计划性停机与非计划性宕机带来的服务器停机,而存储作为双机热备中唯一存储数据的设备,它一旦发生故障往往会造成双机热备系统全面崩溃。
    3、单板级主备倒换
    高端设备由于所处网络位置非常重要,不允许出现单点故障,设备一般都配备两块主控板,分别称为主用主控板(Master)和备用主控板(Slave)。其中,主用主控板作为控制平面的核心,与外部和业务板进行业务通信,完成系统内各模块的正常功能;而备用主控板则只作为主用主控板的备份,与外部和业务板没有通信。当主用主控板发生故障时,系统自动进行主备切换,由备用主控板接替主用主控板的工作,保证业务的正常运行

    3 z/ H& f: `. y8 [' }& ?* e
    主备主控板的热备份过程主要分为批量备份、实时备份和数据平滑三个阶段。
    备用主控板启动后,由于此时主用主控板和备用主控板的差异比较大,主用主控板会将当前需要备份的数据批量同步到备用主控板,这个过程称之为批量备份,批量备份时间的长短取决于需要备份数据量的大小。
    # G# m2 A2 |: X, l, v; t
    批量备份过程结束后,系统进入实时备份过程,在此过程中,当主用主控板备份数据发生变化时,备份数据将实时同步到备用板,这个过程通常很快。/ ?* G% ~4 D) a8 ?
    主备倒换后,备用板升为新的主用板,会通知各个模块向业务板进行数据收集和同步,这个过程称之为数据平滑。平滑过程中,各模块主动与业务板进行通信,在硬件状态、链路层状态、配置数据三个方面进行确认和同步,以保证整个系统维护的数据和状态是一致的,从而确保主备切换之后,系统能够正常运行。平滑阶段结束,新的主用板才称之为完全意义上的主用主控板。  L! f2 Y+ |" b

    / @7 {/ E6 t5 G3 d上面的机框,可以看出,电源板、主控板都做了备份两份的配置。

    * ]) C# b/ m* \; {- w
    4、单板资源池
    再如上图中,下面这些电路板一般都是业务或者是接口板,为了防止有单板损坏,按照业务性能满足之外,一般会多备份一块备用电路,如果有正在工作的某一块电路损坏,都可以切换到备用电路板,进行继续工作。
    2 _" L9 Q. O6 T+ x* p& e. f
    5、磁盘阵列
    ( ]0 s  S7 f: U5 y. }1 }2 ^* i
    即然提到了RAID磁盘阵列,那么我们就先来了解一下什么是RAID?所谓的RAID,是Redundant Arrays of Independent Disks的简称,中文为廉价冗余磁盘阵列。由1987年由加州大学伯克利分校提出的,初衷是为了将较廉价的多个小磁盘进行组合来替代价格昂贵的大容量磁盘,希望单个磁盘损坏后不会影响到其它磁盘的继续使用,使数据更加的安全。RAID作为一种廉价的磁盘冗余阵列,能够提供一个独立的大型存储设备解决方案。在提高硬盘容量的同时,还能够充分提高硬盘的速度,使数据更加安全,更加易于磁盘的管理。5 i. z3 I5 O) a' i
    RAID的几种常见工作模式
    • RAID 0
      RAID 0是最早出现的RAID模式,即Data Stripping数据分条技术。RAID 0是组建磁盘阵列中最简单的一种形式,只需要2块以上的硬盘即可,成本低,可以提高整个磁盘的性能和吞吐量。RAID 0没有提供冗余或错误修复能力,是实现成本是最低的。
      : D3 k, L- r" _- T  K
      RAID 0最简单的实现方式就是把N块同样的硬盘用硬件的形式通过智能磁盘控制器或用

      : w- W( ?6 V) M( z
      操作系统中的磁盘驱动程序以软件的方式串联在一起创建一个大的卷集。在使用中电脑数据依次写入到各块硬盘中,它的最大优点就是可以整倍的提高硬盘的容量。如使用了三块80GB的硬盘组建成RAID 0模式,那么磁盘容量就会是240GB。其速度方面,各单独一块硬盘的速度完全相同。最大的缺点在于任何一块硬盘出现故障,整个系统将会受到破坏,可靠性仅为单独一块硬盘的1/N。
        W: D  M! ?  x2 |4 w! ]8 J- ^% X: U
      为了解决这一问题,便出一了RAID 0的另一种模式。即在N块硬盘上选择合理的带区来创建带区集。其原理就是将原先顺序写入的数据被分散到所有的四块硬盘中同时进行读写。四块硬盘的并行操作使同一时间内磁盘读写的速度提升了4倍。
      9 ~# w8 I! L* x: l- v6 @
      在创建带区集时,合理的选择带区的大小非常重要。如果带区过大,可能一块磁盘上的带区空间就可以满足大部分的I/O操作,使数据的读写仍然只局限在少数的一、两块硬盘上,不能充分的发挥出并行操作的优势。另一方面,如果带区过小,任何I/O指令都可能引发大量的读写操作,占用过多的控制器总线带宽。因此,在创建带区集时,我们应当根据实际应用的需要,慎重的选择带区的大小。

      3 ~3 i- B" ~1 U2 K; f
      带区集虽然可以把数据均匀的分配到所有的磁盘上进行读写。但如果我们把所有的硬盘都连接到一个控制器上的话,可能会带来潜在的危害。这是因为当我们频繁进行读写操作时,很容易使控制器或总线的负荷 超载。为了避免出现上述问题,建议用户可以使用多个磁盘控制器。最好解决方法还是为每一块硬盘都配备一个专门的磁盘控制器。
      + s6 _& m8 E3 C5 A' b( A5 f
      虽然RAID 0可以提供更多的空间和更好的性能,但是整个系统是非常不可靠的,如果出现故障,无法进行任何补救。所以,RAID 0一般只是在那些对数据安全性要求不高的情况下才被人们使用。
    • 2
      RAID 1
      RAID 1称为磁盘镜像,原理是把一个磁盘的数据镜像到另一个磁盘上,也就是说数据在写入一块磁盘的同时,会在另一块闲置的磁盘上生成镜像文件,在不影响性能情况下最大限度的保证系统的可靠性和可修复性上,只要系统中任何一对镜像盘中至少有一块磁盘可以使用,甚至可以在一半数量的硬盘出现问题时系统都可以正常运行,当一块硬盘失效时,系统会忽略该硬盘,转而使用剩余的镜像盘读写数据,具备很好的磁盘冗余能力。虽然这样对数据来讲绝对安全,但是成本也会明显增加,磁盘利用率为50%,以四块80GB容量的硬盘来讲,可利用的磁盘空间仅为160GB。另外,出现硬盘故障的RAID系统不再可靠,应当及时的更换损坏的硬盘,否则剩余的镜像盘也出现问题,那么整个系统就会崩溃。更换新盘后原有数据会需要很长时间同步镜像,外界对数据的访问不会受到影响,只是这时整个系统的性能有所下降。因此,RAID 1多用在保存关键性的重要数据的场合。
      / ^& W: o1 c4 d# y
      RAID 1主要是通过二次读写实现磁盘镜像,所以磁盘控制器的负载也相当大,尤其是在需要频繁写入数据的环境中。为了避免出现性能瓶颈,使用多个磁盘控制器就显得很有必要。

      9 {0 p' Z9 y5 J2 M5 S
    • 3
      RAID0+1
      从RAID 0+1名称上我们便可以看出是RAID0与RAID1的结合体。在我们单独使用RAID 1也会出现类似单独使用RAID 0那样的问题,即在同一时间内只能向一块磁盘写入数据,不能充分利用所有的资源。为了解决这一问题,我们可以在磁盘镜像中建立带区集。因为这种配置方式综合了带区集和镜像的优势,所以被称为RAID 0+1。把RAID0和RAID1技术结合起来,数据除分布在多个盘上外,每个盘都有其物理镜像盘,提供全冗余能力,允许一个以下磁盘故障,而不影响数据可用性,并具有快速读/写能力。RAID0+1要在磁盘镜像中建立带区集至少4个硬盘。

      " q! v' E. B- C& u" l4 n
      由于我们此次只是介绍家用台式机如何组建RAID磁盘阵列功能,目前主流的主板也只是提供这三种组建模式,因此其它诸如服务等的高级RAID模式,这里我们将不再过多的介绍。
      ! h+ C8 B3 y  ]5 K

    ! f; @* {& L% C( Q
    RAID 5控制还是比较常用的,于是我研究了一下RAID 5控制,在这里拿出来和大家分享一下,希望对大家有用。RAID 5和RAID4 相似但避免了RAID4 的瓶颈,方法是不用校验磁盘而将校验数据以循环的方式放在每一个磁盘中,RAID 5控制比较复杂,尤其是利用硬件对磁盘阵列的控制,因为这种方式的应用比其他的RAID level 要掌握更多的事情,有更多的输出/入需求,既要速度快,又要处理数据,计算校验值,做错误校正等,所以价格较高,其应用最好是OLTP,至于用于大型文件,不见得有最佳的性能。
    RAID 5在不停机及容错的表现都很好,但如有磁盘故障,对性能的影响较大,大容量的快取内存有助于维持性能,但在OLTP 的应用上,因为每一笔数据或记录(record)都很小,对磁盘的存取频繁,故有一定程度的影响。
    某一磁盘故障时,读取该磁盘的数据需把共用同一校验值分段的所有数据及校验值读出来,再把故障磁盘的数据计算出来;写入时,除了要重覆读取的程序外,还要再做校验值的计算,然后写入更新的数据及校验值;等换上新的磁盘,系统要计算整个磁盘阵列的数据以回复故障磁盘的数据,时间要很长,如系统的工作负载很重的话,有很多输出/入的需求在排队等候时,会把系统的性能拉下来。
    但如使用硬件磁盘阵列的话,其性能就可以得到大幅度的改进,因为硬件磁盘阵列如Arena 系列本身有内置的CPU 与主机系统并行运作,所有存取磁盘的输出入工作都在磁盘阵列本身完成,不花费主机的时间,配合磁盘阵列的快取内存的使用,可以提高系统的整体性能,而优越的SCSI 控制更能增加数据的传输速率,即使在磁盘故障的情况下,主机系统的性能也不会有明显的降低。RAID 5要做的事情太多,所以价格较贵,不适于小系统,但如果是大系统使用大的磁盘阵列的话,RAID 5却是最便宜的方案。以上介绍RAID 5控制。

    5 u3 i) S4 p* s/ s6 I

    ; O, Y# k3 }1 u/ r关于可靠性设计、或者关于冗余设计及数据同步有很多知识可以展开。今天先说这些。
    , C& F& C8 Q, n, v

    该用户从未签到

    2#
    发表于 2019-11-27 16:24 | 只看该作者
    讲的不错,看看
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-3 06:06 , Processed in 0.109375 second(s), 26 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表