双机热备+负载均衡 线上方案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

双机热备+负载均衡线上方案

(Heartbeat+DRBD+NFS+Keepalived+Lnmp)

gotop

对于网站服务器来说,可靠性之重要不用我多说,但要想做到可靠性一般需要昂贵的设备,这里最主要是就是数据同步用的共享磁盘了,磁盘柜+磁盘一共下来是20多万,这对于追求最高性价比的双机负载热备方案来说是极其不靠谱的,尤其是中小型企业,私有企业,一般经理是不会考虑这么高的成本的。我们通常做都是四台服务器+一个磁盘柜子+千兆交换机,那么这个成本下来将近30万了,而且这个方案有个弊端就是存储依然存在单点故障,除非使用双控制+双电源+双主板设计的磁盘柜,但这种成本实在太高。那是否有更为廉价的双机方案呢,很明显开源软件帮我们解决了成本问题!!!

用Heartbeat+DRBD+NFS+Keepalived+Lnmp等开源软件实现双机负载热备架构只需要两台服务器+一台全千兆交换机,这个成本是极其低廉的,我们做运维了就是要用技术来压榨硬件性能,用最低的成本实现最高的效能,不然天天谈论的性能优化有何用?堆叠硬件不是更好?那不是我们的目的,下面我们来看看这两台服务器的双机热备+负载均衡是如何实现并且稳定运行的。

这个方案是我给一个论坛做的,论坛15分钟在线8000人,以前放在IIS里面,并发连接6000-7000左右,我给设计的双机热备方案如下图:

图一

注意:第三台服务器可要可不要,我这里他由于成本问题,并没有采用第三台服务器,而是一共只有两台

系统环境配置

一,硬件配置:

节点一(centosa):做主负载点,和主数据库压力负载点,必须高性能高稳定高I/O

配置如下:

CPU:双CPU( 4核+4核) 5405级别

内存:8G 组三通道DDR3 ECC内存

硬盘:1块1TB普通硬盘+2块300G SAS15K(15000转)硬盘

网卡:2块千兆网卡

节点二(centosb):做分担负载和备服务器,稳定第一

CPU:双CPU( 4核+4核) 5405

内存:8G 组三通道DDR3 ECC内存

硬盘:1块1TB普通硬盘+3块300G SAS15K(15000转)硬盘

网卡:2块千兆网卡

注意:网卡极力建议用四块,这个架构对网络I/O要求极高,我这里只有两块,没办法,机房做不到,如果你是百兆交换机,拜托,你一定要用四块网卡

二,操作系统配置

1),所有服务器的操作系统版本:

操作系统版本:CentOS5.7 64位

操作系统官方下载地址:/centos/5/isos/x86_64/ 2),每台服务器的安装要求:

节点一:

分区:一共三块硬盘,不用组RAID

第一块硬盘:

系统占用一块,分区情况如下:

/boot 200MB

/ 40GB

swap交换分区 8GB

/data 第一块硬盘的所有剩余空间

第二块硬盘:

不要分区,留给我自己分区

第三块硬盘:

不要分区,留给我自己分区

系统安装安装规范

最小化安装,字符界面安装

去掉所有组件,只需要一个内核

节点二:

分区:一共三块硬盘,不用组RAID 第一块硬盘:

系统占用一块,分区情况如下:

/boot 500MB

/ 40GB

swap交换分区 16GB

/data 第一块硬盘的所有剩余空间

第二块硬盘:

不要分区,留给我自己分区

第三块硬盘:

不要分区,留给我自己分区

系统安装要求

最小化安装,字符界面安装

去掉所有组件,只需要一个内核

三,交换机配置:

注意:有条件最好用两台交换机,内网一台,外网一台

如果只有一台交换机,划分两个VLAN,一个外网使用,一个内网使用四,目录规划用途

/usr/local/src/lnmp:用来存放源码工具等等

/data:用来存放所有数据和NFS以及DRBD的挂载

/data/shell:用来存放所有管理脚本

/data/mysql:用来挂载DRBD的mysql资源,以供mysql存放数据库

/data/wwwnfs:用来挂载DRBD生成的www资源,以供两个节点挂载到各个节点的/data/www目录,以供论坛等程序数据使用

/data/www:用来挂载NFS资源,用来存放论坛(网站)等程序数据

双机热备+负载均衡具体配置

一,先建立用户和目录吧:

useradd -s /sbin/nologin www

useradd -s /sbin/nologin mysql

mkdir -p /data/mysql

mkdir -p /data/www

mkdir -p /data/wwwnfs

mkdir -p /data/shell

二,架构详解

如果用LVS做均衡器拓扑图如下:

图二

如果用Nginx做均衡器拓扑图如下:

图三

我们这里用NGINX做均衡器,因此我用图三来拓扑,来讲讲这个拓扑的工作原理

内网:

1,DRBD网络存储创建出两个资源,一个mysql给mysql数据库同步用,一个www给web(论坛)数据NFS共享挂载用,虚拟出两个虚拟IP,一个是192.168.1.100,用来连接数据库,一个是192.168.1.200,用来给节点挂载NFS

注意:NFS底下挂载了三次:DRBD挂载一次,文件系统挂载一次,客户端挂载一次

2,Heartbeat来实现DRBD的HA,同时虚拟出两个内网IP,并管理NFS,MySQL的启动和关闭

相关文档
最新文档