Coremail论客运维高可用方案
作者:Coremail 发布时间:2019-03-01
利用信息系统处理业务,如何保证在计划和意外停机期间确保业务运行不间断?各种自然灾害和事件突发,如何避免企业信息系统受到灾害影响?网络灾难发生,如何减少数据的负面影响?
本文邀请了Coremail论客运维高可用方案解决专家,从方案设计到部署等方面,结合某企业邮件系统部署案例,介绍运维高可用解决方案。
邮件系统作为基础信息系统,是企业员工进行工作与交流沟通的重要渠道,企业依赖邮件系统作为通讯平台以支持业务运行。系统在运行中不可避免会出现计算机硬件故障或网络等原因,导致不可以访问邮件系统,一旦出现这种情况,就需要管理员或邮件系统服务提供商去紧急处理。在处理过程中,员工是不能使用邮件系统。对于所有的企业来说,邮件系统服务的中断,不仅影响到企业员工的正常工作与交流,还可能为企业带来营业损失,甚至影响到服务品质和客户的满意度。
而Coremail运维高可用解决方案则能很好的解决这一问题。在介绍搭建运维高可用方案之前,先来科普一个最常用的衡量指标:
RTO:是指恢复时间点目标(Recovery Time Object),即灾难发生后,从IT系统宕机导致业务停顿之刻开始,到IT系统恢复至可以支持各部门运作,业务恢复运营之时,此两点之间的时间段。
RPO:是指恢复点目标(Recovery Point Object),即灾难发生后,容灾系统能把数据恢复到灾难发生前时间点的数据。
而用户的高可用要求越高,需要投入的硬件和软件成本就会越高,如何选择一个适合企业又经济实惠的高可用解决方案,则需要用户在方案设计之初,提出具体的高可用要求。
本文选取了高可用目标RTO为1小时,RPO为15分钟,并且实现同城两个机房高可用的方案为例,从方案设计到部署执行两个方面阐述运维高可用解决方案。
运维高可用解决方案的设计是以邮件系统的架构为基础,初步可分为五层,针对不同的分层,相对应的设计了不同的解决方案:
层次类别 | 1 | 智能DNS |
2 | 实现两中心网络三层互联互通 | |
应用层 | 4 | 数据库集群部署 |
数据库双主部署 | 双主部署 |
1.接入层
该层主要包括DNS智能和负载均衡调优等。同城双活分为对称双活与非对称双活,区别在于两侧机房是否同等配置规模与投入生产。该方式影响接入层的设计与负载均衡。
如果非对称双活设计,一般不考虑备机房数据中心的DNS的映射,直接将备机房业务SERVER与端口纳入主机房F5 server_pool即可。
对称双活设计,即两侧生产规模高度一致,要完全负载业务峰值压力。该设计可以采用与生产机房一致的F5负载均衡设备与DNS映射。
2.网络层
该层主要包括两机房间业务网络打通和数据库层网络打通等。为更高更充分地利用与发挥同城高可用的架构优势,保障生产环境故障时的顺利切换与承载,同城备机房采用与生产机房同等架构的网络架构与SAN 网络架构。
网络交换机与SAN 交换机双节点互做冗余。硬件要求网络设备特别是数据库心跳设备、SAN 交换机设备尽量同厂家同型号,微码版本保持一致。
3.应用层
该层主要包括应用服务器软硬件部署等。由于应用业务数据传递的复杂性与关联性,为保障应用高可用的顺利实现,在应用双活改造过程中,优先保障基本业务的高可用。可按生产环境的应用系统架构配置在备机房进行部署。
后续根据业务应用的需求扩展,可以在备机房进行单边部署配置,降低主生产环境的业务压力与负载。其它单机部署服务器参仿生产规模配置进行部署设计。
使用负载均衡+智能DNS 技术实现应用层在数据中心之间的并行运行,可以提高当前系统的高可用性。
4.存储层
该层主要包括存储层集成部署等。邮件,用户数据均使用分布式存储,通过Coremail多活实时将数据同步到两侧。
5.数据库层
该层主要包括数据库部署等。采用数据库双主架构。正常情况下,各后端服务器会根据配置,分别访问对应的中心数据库服务器。
当数据库中的其中一个点宕机时,存储层访问策略或者数据库双主配置的故障转移策略,会自动将正常访问转移至正常数据库节点上。
在方案设计完成后,接下来的重点就是部署,如何以经济高效的方式完成部署是本次案例的关键。图1则是本次案例的同城双活部署架构图。
从图1可以看出,两个机房的数据库使用物理数据库复制软件实现了数据的同步,两中心数据库形成双主,机房之间通过综合数据网提供基础链路承载和互联互通。
并且两个机房应用服务器利用F5负载均衡技术实现了双活,存储服务器使用分布式存储数据,每台存储服务器既是计算节点也是存储节点。
两个机房之间的SAN交换机,利用广域I/O加速技术和ISL技术实现两个机房交换机之间的各自互联。
当然,每一个企业都存在不同的设计需求,Coremail论客运维高可用方案解决专家建议,在方案进行部署时用户需要依据用户自身的具体情况进行执行,才可达到最佳执行效果。