延伸集群双活方案中断业务会给客户造成经济损失会给客户造成声誉损失……双活数据中心客户为什么要建双活数据中心?数据不能丢业务不能断&%¥#!双活数据中心——什么是双活数据中心双活数据中心——什么是双活数据中心双活数据中心——什么是双活数据中心双活数据中心——延伸集群主机平均部署到2个机房;2个机房之间通过裸光纤连接;必须部署一个独立的仲裁节点;双活数据中心——延伸集群仲裁链路机房间链路机房间链路:推荐万兆裸光纤连接,延时<=1ms;小型部署(4~6台主机)支持千兆仲裁链路:推荐延时<=1ms(允许5ms以内波动)带宽建议100Mbps(24台主机)支持规模:一个集群只支持一个延伸卷;延伸卷最少4台主机,最多24台主机;已支持场景:上下两层楼隔壁两栋楼同一园区未来支持场景:两地三中心(通过aCMP统一管理,预计年底支持)同城双活延伸集群——部署仲裁节点物理机部署虚拟机部署部署在第3机房部署在主机房暂时只支持VMware虚拟化平台,后续会支持部署在aCloud平台。支持一体机(aServer1000)发货。支持客户的旧服务器安装。延伸集群——副本必须部署仲裁节点,解决脑裂问题,保证数据可靠性;2个副本分别保存到2个故障域;最佳实践建议:两个故障域配置对称;未来将支持4副本;数据同步写入2个副本,任意一个机房故障,数据0丢失;延伸集群——副本写操作:数据被同时写入2个副本,正常情况下,两个副本都写成功才返回成功;读操作:只从本故障域的副本读取,以优化性能;(虚拟机所在故障域)“2副本+1仲裁”3者至少要有2者正常才能读写,否则不可读写;仲裁:仲裁用于记录指控信息,延伸集群做了优化,当指控发生变化时,才更新仲裁,优化仲裁链路的延时抖动对性能的影响。(“两个副本都正常”“副本1不一致”“副本2不一致”)业务双活&数据双活业务双活数据双活业务在两个故障域同时运行;机房故障时,通过负载将客户的业务切换另一机房恢复;可以实现RPO=0,RTO接近于0的目标;需要业务系统的支持,典型的是基于OracleRAC的业务系统;业务双活复杂度更高;业务只在一个故障域运行;机房故障时,虚拟机HA到另一机房恢复业务;可以实现RPO=0,RTO为分钟级的目标;不需要业务系统支持;数据双活复杂度较低;业务双活B/S架构C/S架构B/S架构的业务系统,通常是“WEB+中间件+OracleRAC”三层架构组成;客户通过浏览器访问;通过域名访问,主要是对公业务,如公积金;必须要有全局负载;C/S架构的业务系统,通常是OracleRAC数据库;客户通过客户端访问;主要通过IP访问,一般是内网业务,医院比较多;业务双活——OracleRAC两节点部署三节点部署OracleRAC双活采用主、备的使用模式,正常场景,只由主故障域的Oracle1节点承载业务;让OracleID小的虚拟机在主故障域运行,作为主节点使用;(OracleRAC为每个节点生成一个ID)主故障域故障后,业务切换到备故障域的Oracle2节点;OracleRAC双活采用主、备的使用模式,正常场景,只由主故障域的Oracle1和Oracle2两个节点承载业务;主故障域部署2个Oracle节点,备故障域部署1个Oracle节点,主故障域的2个节点作为主节点使用;主故障域故障后,业务切换到备故障域的Oracle3节点;业务双活——OracleRAC虚拟机运行位置web1必须在主故障域运行web2必须在备故障域运行中间件1必须在主故障域运行中间件2必须在备故障域运行Oracle1必须在主故障域运行Oracle2必须在备故障域运行虚拟机运行位置Oracle1必须在主故障域运行Oracle2必须在备故障域运行业务双活——OracleRAC虚拟机运行位置web1、web2必须在主故障域运行web3、web4必须在备故障域运行中间件1、中间件2必须在主故障域运行中间件3、中间件4必须在备故障域运行Oracle1、Oracle2必须在主故障域运行Oracle3必须在备故障域运行虚拟机反亲和性(虚拟机调度策略)web1、web2必须在不同主机运行web3、web4必须在不同主机运行中间件1、中间件2必须在不同主机运行中间件3、中间件4必须在不同主机运行Oracle1、Oracle2必须在不同主机运行Oracle3-业务双活——配置虚拟机配置:...