有些企业由于历史原因,尝尝会有不少备份系统仓促上马,但随着业务的爆炸式发展,导致整个系统愈发沉重,每个备份任务的运行都对业务系统有着不小的冲击,生产流量和备份流量互相争用;
那么在备份系统的设计过程中,该如何平衡存储IO和备份性能?
浅谈两点吧。
1.备份网络和生产业务网络分开,网络上不会对业务产生什么影响。如果实在是分不开,网络是瓶颈,可以尝试备份客户端删重,减少网络流量。但备份客户端删重也会消耗系统的一些性能。
2.备份时间窗口尽量安排在系统低峰期,如果实在是没什么时间窗口,可以尝试存储快照,之后再映射到其他机器,进行备份。这样就完全对原系统不影响。
针对于备份系统中存储IO和备份性能的问题,个人认为可以类比成鱼和熊掌的选择,只能在其中找到一个平衡点、两者不可兼得。
根据自己经验,初浅谈谈对于平衡存储IO、网络和备份性能的一些心得:
生产网络和备份网络隔离这点很多前辈已经提及,若是能在备份系统建立之初就进行隔离,那自然是最好,后续的压力也会少许多。但若是不能隔离或不能完全隔离呢?
首先从LAN网说起,若不能完全隔离,个人通常采用的做法就是流量集中化或本地化。所谓的集中化就是在每个网络段增设Proxy,让流量集中汇聚在一起,使得备份数据量的流向明晰,便于对于备份链路的控制,也为后期备份网络的分离打好基础。此类设计特别适合金融和运营商的生产系统,网络段泾渭分明,管理和维护都特别方便;备份流量本地化,即让备份流量从客户端自身经过交换机到备份介质,不再经过任何主机交互。对于网间交互多的业务系统特别适用,适时将各系统的备份流量错开。若是网络负载较高,推荐采用源端消重备份,虽然会占用一部分主机资源,但能够大幅减少网间压力。纵观主流的源端消重产品,对主机的性能影响CPU占用率基本徘徊在10%上下,内存占用不超过500M,基本也在接受范围内。
对于SAN网络的备份,平衡措施就相对局限很多,针对于大数据量的SAN备份,推荐使用单独的HBA卡进行备份以减小对业务的影响。对于存储IO的压力,没有立竿见影的措施来改善,数据读写的模式极大限制了备份的方式。若存储IO较繁忙,在备份软件上配置基于存储快照的备份能稍缓解此种情况。最近几年,基于SAN的源端数据消重备份也逐渐趋于成熟,若是资源允许可以采用此种备份大幅提高备份效率。
收起备份这个东西在企业往往重视度不高,在业务没起来时,一般只注重有没有这个问题,等业务庞大了,发现现在的数据备份方式、机制、架构等等都不太适合了。
根据自己的经验,我总结备份系统主要有下几个注意点:
1、如果业务不是24小时的或者有空闲期的,一般备份策略 是把各个备份任务放到相对空闲期去执行,切备份并行备份任务的数量不要超过5个,根据你备份主机的性能和所在网段的吞吐能力、还有网络监控阀值(一般都有监控软件,跟网络工程师打好招呼啊)
2、如果可能的话,预算充足,选择客户端具有前端压缩、数据重删的备份软件也不错,但是前端压缩和重删也会对主机性能有一定影响的啊;
3、备份服务器端,选择具有重删、大cache等功能的存储,减少落盘数据量,加大数据落盘速度。结合采用san free/LAN free等等,尽量减少备份对生产系统资源的占用。
4、如果还不解渴,预算充足不要不要的。那好办,每个厂家都有像买车一样顶配的技术在等小白鼠呢,只要有钱,他能让你爽到天上去。实际一点的话,辛苦网络工程师了,单独搞一个备份网络和生产网络物理分隔,需要的主机加个网卡,剩下就看主机性能了,因为这个办法网络的性能不太影响生产了。
方法很多,结合自己实际才是最好的。
收起个人的一点小经验:
备份--其实也是一个不亚于业务容灾的重要环节,但往往备份只会在关键时刻体现它的价值。可能有的企业和客户对此不以为然,认为硬件层面冗余和主机存储冗余即可;甚至都没有一个完整系统规范的备份流程和相应的规章制度,更不用提备份恢复演练或者定期的检测备份数据的完整性,有效性以及在各种应急状况发生时的处理流程。这些都需要一个从无到有逐步建立的过程。需要做好整体规划。
针对题主的平衡存储IO和备份性能议题,前边的兄弟已经阐述的够全面了,我就再说说。
*1、备份方式:
LAN /LAN-free,备份方式的选择也需要针对不通业务和对应的网络环境,对于24*7的业务,以及业务流量较大的应用,备份流量和业务流量一般都建议分开,即生存网络和备份网络相互隔离。当然,如果分不开,对网络来说,需要根据业务增长量以及备份流量做好相应的测试和预留。*
2、备份时间窗口:
备份窗口的选择,也是需要根据备份数据量,业务低负载或者业务空闲时间,以及备份设备性能,备份时间等进行综合考虑,
3、硬件设备:
做好业务备份规划,增长量以及成本预算,选择最合适的设备以及备份架构,对于后期维护和解决问题很大帮助。存储介质的选择需要和具体的业务相对应,长期数据变化量不大的,对于备份恢复时间要求不高的,可以考虑使用磁带;对于恢复时间要求比较高的业务,可以备份到硬盘类的存储设备上,或者使用虚拟带库,目前的虚拟带库,恢复速度也是可以的。
4、关于备份有效性检测:题外
很多时候,可能生成业务,重要系统和重要数据已经进行了很完备的备份,也有了相应的备份要求和规定,但是,很多时候,往往没有做到对于备份数据有效性的检测。尤其是数据库,或者重要业务。有必要而且必须定期做相应的恢复测试。恢复演练,模拟各种故障以及各种紧急状况下的应急处置恢复流程规范,做好分工,俗话说:不怕一万,就怕万一。
1: 备份架构设计
备份系统特别是大数据量的备份,必须要考虑lanfree的方式,将备份子网和存储子网进行隔离。
2: 备份时间评估
采用lanfree方式,备份io是先从存储子网读出,然后再通过备份子网写入备份介质,备份速度同时受限于存储子网和备份子网的HBA,这决定了备份速率和备份恢复时间。
3: 备份对生产的影响
无论哪种备份方式和备份架构,备份时段都必须通过存储子网产生大量的读io,会对生产造成冲击,所以要设置合理的备份时段,一般都是选择业务闲时进行备份。
来点小体验:
能使用硬件解决的问题,相对好解决,资金要有。俗话说一个馒头解决不了的问题,那就用两个馒头解决。
收起第一,做好规划,最好备份网络与业务网络分开
第二,数据量较大的备份作业尽量走LAN free
第三,如果Lan备份,生产各网络区域尽量安装一台media server 。减少跨防火墙备份
最后,备份时间窗口尽量选择业务流量极少的时候
备份总量 / 备份速度 = 备份窗口
窗口越小,对生产影响越小。
1、总量越少,窗口越小
2、速度越大,窗口越小
减少总量的方法
1、备份时去重,减少备份存量和增量
2、合成备份,减少全备份任务次数,因为全备份才是备份的最大开销。
提高速度的方法
1、提高备份网络速度。10Gbps/25Gpbs/40Gpbs备份网络
2、LAN Free,直接改用SAN的备份网络,效率远高于以太网