热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

Linux下基于Heartbeat的高可用服务器配置

由于机房只有一台反向代理服务器支撑其所有的业务,考虑到其服务器宕掉,后端所有服务均不可使用,因此会造成不必要的事故发生
 由于机房只有一台反向代理服务器支撑其所有的业务,考虑到其服务器宕掉,后端所有服务均不可使用,因此会造成不必要的事故发生,为了使反向代理服务器能达到高可用性,特增加了一台从服务器,双机互相进行心跳检测,当主服务器宕掉或相关应用服务停掉,则从服务器自动接管,主服务器恢复时自动接管,从服务器不再进行托管,从而避免单点故障造成的损失。
  目前最为流行的服务器高可用检测系统有Heartbeat、Keepalived。其中Heartbeat是基于主机或网络的服务的高可用方式;Keepalived的目的是模拟路由器的双机。至于其中选用哪一种方案,还得取决于你自己。几年前由于工作环境没有相关的设备支持,这些操作都是在虚拟机进行的,虽然试验成功,但没有在生产环境中派上用场的那种激动性。然而这次的所有操作都是按步骤在生产环境中实现出来。
下面是基于Linux Heartbeat的安装于实例演示:
1、主从服务器均要按照Heartbeat。
 yum -y install heratbeat
2、主从服务器各均有两块网卡,一块网卡进行日常的互联网数据业务通信、一块进行心跳检测,经过heartbeat虚拟一个给予外界使用的公用ip(简称VIP)
vip-server1 eth0 192.168.0.1 eth1 10.2.5.1 心跳检测 VIP192.168.0.3
vip-server2 eth0 192.168.0.2 eth1 10.2.5.2 心跳检测 VIP192.168.0.3
主服务器:
#rpm -q heartbeat -d 找到heartbeat安装目录
#cp /usr/share/heartbeat-2.1.3/authkeys /etc/ha.d/
#cp /usr/share/heartbeat-2.1.3/ha.cf /etc/ha.d/
#cp /usr/share/heartbeat-2.1.3/haresources /etc/ha.d/
#cd /etc/ha.d/
#vi authkeys去掉注释auth 1 去掉注释1 crc
#chmod 600 authkeys  改变authkeys权限
#vi ha.cf 去掉注释deadtime 20 去掉注释warntime 5 去掉注释initdead 120 去掉注释udpport 694 去掉注释bcast eth1 心跳使用的网卡 去掉注释ucast eth1 (10.2.5.2) 从节点的的心跳网卡地址 去掉注释node vip-server1主节点的机器名 去掉注释node vip-server2从节点的机器名
#vi haresources找到#nod-name resource1行
在该行下添加
vip-server1  192.168.0.3 #主节点机器名 虚拟ip 启动服务器
#vi /etc/hosts 主从服务器均要修改
192.168.0.1  vip-server1  #eth0  10.2.5.1 server1   #eth1 
192.168.0.2  vip-server2  #eth0  10.2.5.2 server2   #eth1 
从服务器:
#sftp 192.168.0.1 登录主节点
#cd /etc/ha.d
#get authkeys 
#get ha.cf
#get haresources
#bye
#cd /etc/ha.d
#vi  ha.cf 修改ucast eth1 (10.2.5.1) 为主节点的的心跳网卡地址
heartbeat是通过/usr/share/heartbeat/hb_standby进行节点切换、/usr/share/heartbeat/hb_takeover顶替正在使用的节点,用户可以根据自身的应用是否正常来进行其节点的切换。例如
if[ -f /usr/local/nginx/logs/nginx.pid]; 
then /usr/share/heartbeat/hb_takeover 
else /usr/share/heartbeat/hb_standby fi  #这条shell脚本没测试啊,只是原理的梳理。。
到这里主从服务器都配置好了,值得注意的是heartbeat是基于udp端口694的,iptables要开启此端口,SElinux也最好关闭
主从服务器启动heartbeat,service heartbeat start,不出意外ok...


推荐阅读
  • 深入理解Linux网络编程:UDP协议实战解析
    深入理解Linux网络编程:UDP协议实战解析 ... [详细]
  • 本文深入探讨了IO复用技术的原理与实现,重点分析了其在解决C10K问题中的关键作用。IO复用技术允许单个进程同时管理多个IO对象,如文件、套接字和管道等,通过系统调用如`select`、`poll`和`epoll`,高效地处理大量并发连接。文章详细介绍了这些技术的工作机制,并结合实际案例,展示了它们在高并发场景下的应用效果。 ... [详细]
  • SQL Server 2008 默认使用1433端口进行通信,但有时会误认为是5432端口,后者实际上已被IANA(互联网号码分配机构)指定为PostgreSQL的默认端口。本文详细解析了SQL Server 2008的端口配置,并提供了增强安全性的配置建议,包括更改默认端口、启用防火墙规则和实施严格的访问控制策略,以减少潜在的安全风险。 ... [详细]
  • 在Linux系统中Nginx环境下SSL证书的安装步骤与WordPress CDN的高级配置指南
    在Linux系统中,Nginx环境下安装SSL证书的具体步骤及WordPress CDN的高级配置指南。首先,安装SSL证书需要准备两个关键配置文件,并建议在操作前备份相关服务器配置文件,以确保数据安全。随后,本文将详细介绍如何在Nginx中正确配置SSL证书,以及如何优化WordPress的CDN设置,提升网站性能和安全性。 ... [详细]
  • 端口转发(Port Forwarding)类似于服务重定向,许多路由器中也称其为虚拟服务器(Virtual Server)。通过合理配置端口转发,可以实现外部网络对内部网络中特定设备和服务的高效访问,从而提高通信效率和灵活性。此外,正确设置端口转发还能增强网络安全,确保只有授权的流量能够进入内网,有效防止未授权访问和潜在威胁。 ... [详细]
  • 在无网络环境下于CentOS 7系统中离线部署Nginx服务器
    nginx背景俄罗斯程序员IgorSysoev创建,于2004年NGINX首次发布,来解决C10K问题(10000并发客户端连接到单个服务器,导致服务器连接数过多崩溃的问题),是一 ... [详细]
  • 比尔·盖茨最新个人网站出人意料地选择Linux服务器,背后有何深意?
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • Linux入门教程第七课:基础命令与操作详解
    在本课程中,我们将深入探讨 Linux 系统中的基础命令与操作,重点讲解网络配置的相关知识。首先,我们会介绍 IP 地址的概念及其在网络协议中的作用,特别是 IPv4(Internet Protocol Version 4)的具体应用和配置方法。通过实际操作和示例,帮助初学者更好地理解和掌握这些基本技能。 ... [详细]
  • 2016-2017学年《网络安全实战》第三次作业
    2016-2017学年《网络安全实战》第三次作业总结了教材中关于网络信息收集技术的内容。本章主要探讨了网络踩点、网络扫描和网络查点三个关键步骤。其中,网络踩点旨在通过公开渠道收集目标信息,为后续的安全测试奠定基础,而不涉及实际的入侵行为。 ... [详细]
  • 【Linux】CentOS 7 远程连接指南:高效安全的远程管理方法
    在 CentOS 7 中实现高效且安全的远程管理,本文详细介绍了如何检查和安装配置 OpenSSH。首先,通过 `yum list installed` 命令检查系统是否已安装 OpenSSH,若未安装,则使用 `yum install openssh-server` 进行安装。随后,配置 SSH 服务以确保其安全性和稳定性,包括修改默认端口、禁用 root 登录等关键步骤。此外,还提供了常见问题的解决方案,帮助用户顺利进行远程连接。 ... [详细]
  • PyQt5 QTextEdit:深入解析Python中多功能GUI库的应用与实现
    本文详细探讨了 PyQt5 中 QTextEdit 组件在 Python 多功能 GUI 库中的应用与实现。PyQt5 是 Qt 框架的 Python 绑定,提供了超过 620 个类和 6000 个函数及方法,广泛应用于跨平台应用程序开发。QTextEdit 作为其中的重要组件,支持丰富的文本编辑功能,如富文本格式、文本高亮和自定义样式等。PyQt5 的流行性不仅在于其强大的功能,还在于其易用性和灵活性,使其成为开发复杂用户界面的理想选择。 ... [详细]
  • 如何使用专业软件打开和编辑PHP电影文件?
    如何使用专业软件打开和编辑PHP电影文件? ... [详细]
  • 网宿科技正式宣布全面兼容最新QUIC (HTTP/3)协议标准
    网宿科技正式宣布全面兼容最新QUIC (HTTP/3)协议标准 ... [详细]
  • DNS解析流程详解
    在网络通信中,大多数数据交换依赖于TCP/IP协议,该协议以IP地址为基础。因此,计算机在互联网上进行通信时,主要通过如“202.96.134.133”这样的IP地址来识别目标设备。然而,为了提高用户体验和便于记忆,DNS(域名系统)应运而生,将易于理解的域名转换为IP地址,确保高效且准确的网络连接。本文详细解析了DNS解析的整个流程,包括域名查询、缓存机制及递归解析等关键环节,帮助读者深入了解这一核心网络技术。 ... [详细]
  • 探究计算机网络中Flow、Stream与Torrent的区别及其在五元组Microflow与Traffic Flow中的应用
    探究计算机网络中Flow、Stream与Torrent的区别及其在五元组Microflow与Traffic Flow中的应用 ... [详细]
author-avatar
莫乂乂_465
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有