头部背景图片
今晚月色很美、你说是的 -- ZeMing |
今晚月色很美、你说是的 -- ZeMing |

[高可用架构]----新数据中心高可用整理


新数据中心网络项目背景

1
2
3
4
#项目概述
随着我们公司业务发展,异地旧数据中心,容量不足,已经无法满足,
随着我们公司业务对稳定性高可用冗余性等更高要求,后期异地灾备,多活需要
所以我们需要去构建 新的数据中心,面向未来

旧数据中心-问题概述

  • 容量不足,机柜无法满足业务部署
  • 网络质量不佳,影响客户体验
  • 历史遗留,由于历史部署原因,维护不便
  • 设备老化,技术落后,
  • 单点风险,VPN设备和出口单点
  • 安全需求,没有整网硬件防火墙
  • 千兆性能,万兆网络虚拟机需求
  • 多活机房,灾备机房需求

新数据中心,建设思路

  • 高可用 – 拒绝单点,冗余可靠
  • 高性能 – 越快越好,保障底层
  • 可拓展 – 方便扩容,模块部署
  • 易操作 – 方便维护,故障排错
  • 先进性 – 成熟可靠,实用领先
  • 安全性 – 安全可控,保障数据
  • 简单化 – 力求简单,结构清晰
  • 低延迟 – 万兆专线,高质低延

高可用网络要求

高可用性的定义

1
2
3
4
5
传统意义上的可用性(AVAILABILITY )定义为系统正常运行时间占总运行时间的比例(当前的总运行时间包括出问题以后修复所耗费的时间)。
高可用性由两个基本概念组成:
  MTBF(Mean Time Between Failure),系统平均正常运行时间
  MTTR(Mean Time to Repair),系统平均恢复时间
  可用性的计算公式: AVAILABILITY = MTBF / ( MTBF + MTTR ) × 100%

SLA可用率 与 故障时间 关联表

可用性(每年) 故障时间(每年) 备注
98.000000% 7.3天
99.000000% 3.65天
99.900000% 8.76小时 AWS EC2 和阿里云ECS RDS 99.95%可用性
99.990000% 52.56分钟 AWS S3 99.99%可用性和99.999999999%持久性
99.999000% 5.256分钟 即”5个9的可用性”
99.999900% 31.536秒
99.999990% 3.1537秒
99.999999% 0.31538秒
  • 网络节点与网络链路的故障无法完全避免,所以提升网络可用性的重要方法之一是尽量降低系统的故障恢复时间。

高可用技术

数据中心网络高可用涉及技术:
分类分层 | 高可用技术 | 备注
—|—|—|—
物理设备 | 冗余电源、冗余风扇、冗余主控、板卡支持热插拔; |
链路层面 | 以太网链路聚合(手工聚合、LACP); |
二层多路径 | STP、MSTP、SmartLink, VSS,VPC; |
三层多路径 | VRRP、ECMP、动态路由协议多路径; |
故障检测 | NQA、BFD、OAM、DLDP,FailOver; |
不间断转发 | GR、热补丁升级; |
L7多路径 | 状态热备、非对称路径转发; |
数据中心服务高可用涉及技术:
存储冗余 | RAID,DRBD , San , NAS , GFS , CEPH; |
二层冗余 | Bond 链路绑定 lvs-dr
三层冗余 | Keepalived, ECMP
四层冗余 | LVS (NAT TUNNEL Full-NAT,
七层冗余 | Nginx,Haproxy
应用冗余 | Dubbox, spring cloud
容器冗余 | Swarm、Mesos ,Kubernetes
虚机冗余 | Vmware Vcenter , Openstack , Kvm

在传统的数据中心三层网络结构中(如图1所示),由于存在多设备多路径冗余,就会存在环路结构,因此MSTP/VRRP/OSPF等处理多路径冗余的协议部署至关重要。一般在数据中心的核心到汇聚层间部署OSPF等动态路由协议,在汇聚层网关设备上部署VRRP处理多网关冗余,在汇聚层到接入层之间部署STP/MSTP解决二层网络环路冗余。当在汇聚层或核心层部署防火墙等基于4-7层的状态处理设备时,同时需要在多台设备间部署状态热备等特性。

为了保证数据中心的设备和链路发生故障时业务流量能够快速收敛,还需要部署NQA、BFD、OAM和DLDP等路径检测协议以降低故障检测响应时间。同时可以部署GR等不间断转发协议协助动态路由协议在主备板切换情况下快速完成业务流量收敛。

网络方案

网络拓扑

image

网络划分层

  • 运营商汇聚层
  • 客户侧互联网接入层
  • 客户侧出口层
  • 客户侧核心层
  • 客户侧接入层
  • 客户侧服务器

网络分层冗余方式

分层名称 冗余方式 备注
运营商汇聚层 3种互联网接入 VRRP冗余和双静态路由和OSPF接入 关于运营商接入感觉可以专门梳理一个小章节
客户侧互联网接入层 互联网双线,两台冗余交换级联
客户侧出口层 出口主备模式部署,用于NAT路由和防火墙
客户侧核心层 双核心,双主,双万兆 VPC协议互联
客户侧接入层 双万兆冗余交叉上联 核心交换
客户侧服务器 双线上联双交换机 ,主备线路或者双线hash捆绑

网络冗余测试方式

分层名称 测试方法 验证冗余 结果
运营商汇聚层 上联接入运营商线故障拔线测试 验证内部互联网是否正常 验证火墙主备 验证Vrrp切换 OK
客户侧互联网接入层 接入交换机断电故障测试 验证内部互联网是否正常 验证火墙主备 验证Vrrp切换 OK
客户侧出口层 主备设备主备断电测试 验证内部互联网是否正常 验证火墙主备 OK
客户侧核心层 主备设备断电切换测试 验证互联网和内网是否正常 OK
客户侧接入层 设备故障断电切换测试 验证互联网和内网是否正常 OK
客户侧服务器 线路故障断电切换测试绑 验证互联网和内网是否正常 OK
1
2
#1 测试结论,网络各层全冗余
#2 切换时间测试 断电任意节点设备,网络均可以可以恢复正常通信 ,会有设备切换产生 1-3个切换丢包

网段划分

Vlan ID 描述 IP地址段 vPC ID Port-Channel ID 备注
10 WEB 10.123.10.0/24 —- 用于WEB服务器
20 APP 10.123.10.0/24 —- 用APP服务器
30 DB 10.123.10.0/24 —- 用于DB服务器
100 ESXi 10.123.10.0/24 —- 用于Esxi服务器
110 OPS 10.123.10.0/24 —- 用于OPS服务器
200 MGT 10.123.10.0/24 —- 用于管理服务器
254 Connect 10.123.10.0/24 254 253 254 253 用于互联设备

技术概要

VPC 交换技术(冗余性能)

image

1
2
3
4
vPC(virtual PortChannel,虚拟链路聚合)技术
允许将连接到两个Nexus系列交换机的物理链路视作一条逻辑端口聚合链路,再连接到其他设备。
其他设备包括:Nexus 2000 系列的 Fabric Extender(后文暂且翻译为结构扩展器),交换机,服务器等其他任何的网络设备。
vPC技术可以提供二层的多路径选择,让用户可以在有多条可选路径的情况下增加网络冗余度,同时实现提升带宽、在多个节点之间启用多条并行路径和对流量进行负载均衡。

VPC技术与传统交换网络优势对比

image

  • 跨机箱多链路捆绑;
  • 避免以太网环路;
  • 增加链路带宽;
  • 双活的工作机制,支持双机箱双引擎性能;
  • 故障时可以实现快速收敛;
  • 网络架构简单、更可靠;
  • 有效使用 2 层带宽;

FailOver 故障转移技术(防火墙)

1
2
3
4
Failover

Cisco防火墙一种高可用技术,能在防火墙发生故障时数秒内转移
配置到另一台设备,使网络保持畅通,达到设备级冗余的目的。
  • 故障转移 心跳线
1
故障转移配置的技术,需要两台完全一样的设备,通过一个连接,连接到对方(这个连接也叫心跳线)。该技术用到的两台设备分为 主用和备用,备用处于待机状态。当主用设备故障后,备用设备可启用,并设置为主用,运行自主用设备复制过来的配置(配置是跟随主用设备移动的)。
  • 故障转移 状态线
1
同步NAT, TCP ,HTTP ,DHCP SSLvPN,等状态信息,保障长连接不丢失

Vrrp 虚拟路由器冗余网关协议

1
2
虚拟路由冗余协议(VRRP,Virtual Router Redundancy Protocol)是一种容错协议,保证当主机的下一跳路由器失效时,及时的由另一台路由器来替代,从而保持通信的连续性和可靠性。
为了使VRRP工作,要在路由器中配置VRRP虚拟网关,使得网络上的主机与虚拟路由器通信,无需了解这个网络上物理路由器的任何信息。

相关资料文档

1
2
3
4
5
#Nexus 交换机配置手册
https://www.cisco.com/c/en/us/support/switches/nexus-5000-series-switches/products-installation-and-configuration-guides-list.html

#ASA 防火墙配置手册
https://www.cisco.com/c/en/us/td/docs/security/asa/asa94/config-guides/cli/firewall/asa-94-firewall-config.html

注释

1
ip相关信息均已修改。