产生背景
近年来服务器的性能有了大幅度的提升,服务器作为处理关键性事物的业务主机已随处可见。对于要求有高可用性和高安全性的系统,如金融、邮电、交通、电力、证券等行业,用户对系统安全性能提出了更高的要求,这时就需要一套能让系统永不停机的解决方案,集群技术应运而生。
集群技术是实现系统高可用性、可靠性、稳定性、安全性并需要快速处理能力、大容量存储及系统的可管理性的重要手段。
服务器集群:一组相互独立的服务器在网络中表现为单一的系统,并以单一系统的模式加以管理。此单一系统为客户工作站提供可靠性的服务。将多态同构或异构的计算机连接起来协同完成特定的任务就构成了集群系统。
表现形式与功能
大多数模式下,集群中所有的计算机拥有一个共同的名称,集群内任一系统上运行的服务可被所有的网络客户所使用。
对外表现为:一台虚拟主机
功能:协调管理各分离的组件的错误和失败,并可透明地向Cluster中加入组件,实现 更高的可用性、可管理性和更优异的可伸缩性
实现方式:一个Cluster包含两台以上拥有共享数据存储空间的服务器。任何一台服务 器运行一个应用时,应用数据被存储在共享的数据空间内。每台服务器的操作系统 和应用程序文件存储在其各自的本地储存空间上。
Cluster内各节点服务器通过一内部局域网相互通讯。当一台节点服务器发生故障 时,这台服务器上所运行的应用程序将在另一节点服务器上被自动接管。当一个应 用服务发生故障时,应用服务将被重新启动或被另一台服务器接管。
集群系统分类
按功能侧重:高可用性集群、高性能集群
按设备:镜像服务器双机、双机与磁盘阵列柜
高可用性集群主要是提供不间断的服务。适用于必须一天二十四小时不停运转的应用程序,如所有的web服务器、ATM、医学与军事监测仪以及股票处理机等,对于这些程序而言,暂时的停机都会导致数据的丢失和灾难性的后果。高性能集群通过将多台机器连接起来同时处理复杂的计算问题。模拟星球附近的磁场、预测龙卷风的出现等都需要对大量的数据进行处理。传统方法是用超级计算机来完成计算工作,但价格昂贵,可用性和可扩展性不够强。
集群中镜像服务器双机系统是硬件配置最简单和价格最低廉的解决方案,通常镜像服务的硬件配置需要两台服务器,在每台服务器有独立操作系统硬盘和数据存贮硬盘,每台服务器有与客户端相连的网卡,另有一对镜像卡或完成镜像功能的网卡。
优点:配置简单,使用方便,价格低廉。但由于镜像服务器需要采用网络方式镜像数据,通过镜像软件实现数据的同步,因此需要占用网络服务器的CPU及内存资源,镜像服务器的性能比单服务器的性能要低一些。例如内存镜像两服务器内存完全一致, 王机出故障时,备份机可以在几乎没有感觉的情况下接管所有应用程序,但当系统应用程序带有缺陷从而导致系统宕机时,两台服务器会同步宕机。镜像服务器适合那些预算较少、对集群系统要求不高的用户。
双机与磁盘阵列柜:比镜像服务器双机系统多了一个磁盘阵列柜,磁盘阵列柜通过SCSI电缆与服务器上普通SCSI卡相连,系统管理员需直接在磁盘柜上配置磁盘阵列。存在问题,但通常被改善后较多采用。 不采用内存镜像技术,因此需有一定的切换时间(通常为60-180秒),它可以有效的避免由于应用程序自身的缺陷导致系统全部宕机。同时由于所在的数据全部存贮在中置的磁盘阵列柜中,当工作机出现故障时,备份机接替工作机,从磁盘阵列中读取数据,所以不会产生数据不同步的问题,不需要网络镜像同步,性能高。磁盘阵列柜会导致单点错。当磁健阵列柜出现逻辑或物理故障时,所有存贮的数据会全部丢失,需选用好品质的产品。
双机集群
后台应用为客户端提供一个逻辑的虚拟主机或IP, 客户端用户只需要用到这一地址。 当后台服务有一台服务器出现故障点,另一台服务器就自动将本机地址或IP替换为逻辑的主机或IP,从而保证客户端用户的前台操作不出现问题。
两台机器通道“心跳”来通讯
即主从系统之间相互按照一定的时间间隔发送通讯信号,表明各自系统当前的运行状态
三种工作模式
双机热备 = 主机 + 备机(active/standby方式)
双机互备 = 主机(备机) + 备机(主机)
双机双工 = 主机 + 主机
LVS(DR直接路由)双机热备及负载均衡群集架构平台搭建
LVS(NAT)双机热备及负载均衡群集架构平台搭建
案例环境
主机 |
操作系统 |
主要软件 |
IP |
GateWay |
RHEL6.5 x86_64 CentOS6.5 x86_64 |
无 |
eth1:192.168.113.1 eth2:202.100.10.1 |
LvsMaster |
keepalived |
192.168.113.2 |
|
Lvs2Backup |
192.168.113.3 |
||
WebSrv1 |
httpd |
192.168.113.4 |
|
WebSrv2 |
192.168.113.5 |
||
StoreSrv |
nfs、rpcbind |
192.168.113.6 |
|
客户端 |
Windows 7 |
202.100.10.10 |
|
虚拟IP(VIP) |
私 有 IP:192.168.113.254 映射为公网地址:202.100.10.1 |
案例基本环境配置
1、克隆6台虚拟机(均为RHEL6.5 64位服务器)
2、配置6台虚拟机的IP地址、主机名、网关地址(参照案例环境完成)
3、配置Windows宿主机(物理机)的Vmnet8网卡的IP地址、网关地址(参照案例环境完成)
4、关闭6台Linux服务器的iptables防火墙、selinux
5、开启6台Linux服务器的本地yum功能
6、开启网关GateWay的路由转发功能
7、测试6台Linux服务器之间的连通性。
8、测试Windows宿主机与6台Linux虚拟机之间的连通性
克隆6台虚拟机(均为RHEL6.5 64位服务器)
配置6台虚拟机的IP地址、主机名、网关地址(参照案例环境完成)
网关的网卡配置
网卡的IP地址的配置 eth1为192.168.113.1 eth2为202.100.10.1
LvsMaster的IP地址配置 网卡选择也是仅主机模式
LvsBackup的IP地址配置 网卡选择也是仅主机模式
WebSrv1的IP地址配置 网卡选择也是仅主机模式
WebSrv2的IP地址配置 网卡选择也是仅主机模式
StoreSrv的IP地址配置 网卡选择也是仅主机模式
配置Windows宿主机(物理机)的Vmnet8网卡的IP地址、网关地址(参照案例环境完成)
关闭6台Linux服务器的iptables防火墙、selinux
开启6台Linux服务器的本地yum功能
开启网关GateWay的路由转发功能
测试6台Linux服务器之间的连通性
测试Windows宿主机与6台Linux虚拟机之间的连通性
LVS调度器配置 主、备服务器上分别完成
调整主从调度器的/proc相应参数 主要是关闭内核的ARP重定向响应
安装keepalived支持软件
安装群集管理工具ipvsadm
解压keepalived软件包
配置keepalived
编译keepalived
安装keepalived软件包
建立配置文件keepalived.conf
主调度器上的文件
备份调度器上的文件
将keepalived服务添加到开机自启动项中
设置当前系统中的keepalived服务为开启状态
启动keepalived服务
测试主、备调度器的双机热备功能
在windows主机上执行
在主调度器LVSMaster上执行 可以看到虚拟地址192.168.113.254被主调度器所有
在备份调度器LVSBackup上执行 无法查看虚拟地址
在主调度器LVSMaster上关闭eth1网卡
短暂丢包后又ping通了
在主调度器LVSMaster上继续执行 无法看到虚拟地址
在备份调度器LVSBackup上执行 可以看到虚拟地址192.168.113.254
主调度器故障后 调度功能已切换到备份调度器上
在主调度器上修复故障 激活网卡eth1
在win10上查看ping的情况 短暂丢包后又ping通
在备份调度器LVSBackup上执行 无法看到虚拟地址
说明主调度器故障修复后 调度功能已切换回主调度器上
在主调度器LVSMaster上继续执行 可以看到虚拟地址192.168.113.254
配置节点服务器(WEB服务器) 在2台节点服务器WebSrv1、WebSrv2上分别完成
创建环回子接口lo:0配置文件
重启网络服务
调整节点服务器(WEB服务器)的/proc响应参数
添加主机路由
安装、启动httpd服务
在WebSrv1服务器上建立网页文件index.html
测试网页 在win10上打开两个浏览器 分别访问192.168.113.4 192.168.113.5
测试负载均衡 在win10上打开两个浏览器 分别访问192.168.113.254 192.168.113.254
配置NFS服务器
查看已经安装了nfs和rpcbind软件包
创建共享目录
创建网站主页文件
设置NFS共享目录
启动rpcbind和NFS
配置节点服务器(在节点服务器WebSrv1、WebSrv2上分别完成)
查看共享资源
手动挂载共享资源
测试网页 win10上打开浏览器 访问192.168.113.254
配置DNAT 在网关上完成 映射Web应用端口80 443
映射tcp 80端口
映射tcp443端口
测试DNAT功能
在win10上打开浏览器 输入202.100.10.1
原文链接:https://blog.csdn.net/qq_37077262/article/details/104056110
原创文章,作者:优速盾-小U,如若转载,请注明出处:https://www.cdnb.net/bbs/archives/7191