文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

CentOS7.4上怎么通过keepalive实现Tomcat高可用

2023-06-04 09:35

关注

这篇文章主要介绍“CentOS7.4上怎么通过keepalive实现Tomcat高可用”,在日常操作中,相信很多人在CentOS7.4上怎么通过keepalive实现Tomcat高可用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CentOS7.4上怎么通过keepalive实现Tomcat高可用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1. 项目背景介绍

作为企业内部IT服务部门,为用户提供稳定,高效,安全的服务是我们的一贯宗旨。IT运维管理尤其重要,其对用户最直接的效用在于提升IT系统的服务能力,服务中断时间减少了,可用性提高了,那么用户基于IT系统的业务流才会更加顺畅。为此,选择适当的IT运维管理软件可以保持服务的高度可用性。

2. 架构介绍

本章主要简述针对当前部门系统应用服务的特点,提供行之有效的架构。

架构图:

CentOS7.4上怎么通过keepalive实现Tomcat高可用

说明:

节点Node A作为双机热备环境中的主节点,节点Node B担任副节点的角色。当主节点出现故障时,副节点会自动接管主节点的角色保障应用的正常运行。

节点NFS用于存储Tomcat的数据

192.168.1.210是提供给应用服务的虚拟地址,用户访问应用服务通过此虚拟地址来实现,而不是访问节点Node A和Node B的系统地址。

3. Keepalive介绍

Keepalived主要功能是用来防止单点故障(单点故障是指一旦某一点出现故障就会导致整个系统架构的不可用)的发生,从而实现高可用性和热备。它诞生之初的目的是能够自主调用ipvsadm来生成规则,并且能够自动实现将用户访问的地址转移到其他节点上进行实现的。Keepalived:核心包含一个core模块和两个checkers和VRRP协议。Core模块为keepalived的核心,负责主进程的启动、维护以及全局配置文件的加载和解析。checkers:检查服务检查reserved的健康状况的,基于脚本也可检查服务本身的健康状况。这里是实现ipvs后端健康状况的检测的。VRRP (Virtual Router Redundancy Protocol,即虚拟路由冗余协议):是一种容错协议,它保证当主机的下一跳路由器出现故障时,由另一台路由器来代替出现故障的路由器进行工作,从而保持网络通信的连续性和可靠性。VRRP中每个节点之间都有优先级的一般为0-255(0,255有特殊用法)数字越大优先级越高。keepalived是以VRRP协议为实现基础的,即将N台提供相同功能的路由器组成一个路由器组,这个组里面有一个master节点和多个backup节点。Master节点上面有一个对外提供服务的vip(该路由器所在局域网内其他机器的默认路由为该vip),master会发组播,当 backup收不到vrrp包时就认为master宕掉了,这时就需要根据VRRP的优先级来选举一个backup当master。这样的话就可以保证路由器的高可用了。

4. 方案验证

本章将详述整套环境从硬件到软件的搭建过程,让读者更加直观深刻的了解Keepalive的配置及工作原理。

硬件环境规划:

选择三台联想xSeries 3650 M4 并按照表格所示初始化:

CentOS7.4上怎么通过keepalive实现Tomcat高可用

说明:1. xSeries 3650 M4服务器性能和稳定性符合项目的基本需求

IMM (Integrated Management Module) 提供远程管理

主板集成的第一块网卡Eth0用于配置系统IP地址

主板集成的第二块网卡Eth2用于和NFS连接,配置内网地址即可

系统及软件环境规划:

系统,软件和网络的详细信息如表格所示:

CentOS7.4上怎么通过keepalive实现Tomcat高可用

搭建:

在Node A,Node B和NFS节点上均选择mini方式安装CentOS 7.4 64-bit,并按照规划配置IP地址。

在节点Node A和Node B的/etc/hosts文件上添加同样的内容,如下:

192.168.1.198 NodeA.xx.xxx.com NodeA

10.10.11 NodeA.xx.xxx.com NodeA

192.168.1.199 NodeB.xx.xxx.com NodeB

10.10.12 NodeB.xx.xxx.com NodeB

在节点Node A和Node B安装Tomcat 7和Keepalive 1.3.5

#yum install tomcat

#yum install keeplived

将Tomcat 数据的存储路径配置在节点NFS上

配置节点Node A上的keeplive

编辑keepalive配置文件 /etc/keepalived/keepalived.conf 作如下修改:

vrrp_instance VI_1 {state MASTER #设置节点Node A为MASTER角色interface enp11s0f0 #网卡 enp11s0f0 配置的是节点Node A 的系统IP地址virtual_router_id 51 #两台系统保证这个数字相同priority 100 #数字越大等级越高advert_int 1authentication {auth_type PASS #vrrp协议,保证两台系统设置一致auth_pass 1111}virtual_ipaddress {192.168.1.210/24 #提供给Tomcat应用的虚拟服务地址}

配置节点Node B上的keeplive

编辑keepalive配置文件 /etc/keepalived/keepalived.conf 作如下修改:

vrrp_instance VI_1 {state BACKUP #设置节点Node B为BACKUP角色interface enp11s0f0 #网卡 enp11s0f0 配置的是节点Node B 的系统IP地址virtual_router_id 51 #两台系统保证这个数字相同priority 90 #数字比MASTER即可advert_int 1authentication {auth_type PASS #vrrp协议,保证两台系统设置一致auth_pass 1111}virtual_ipaddress {192.168.1.210/24 #提供给Tomcat应用的虚拟服务地址}

启动keepalive

#systemctl start keepalived#systemct enable keepalived #设置开机自启动

验证keepalive服务

CentOS7.4上怎么通过keepalive实现Tomcat高可用

验证节点Node A的虚拟网络服务地址

CentOS7.4上怎么通过keepalive实现Tomcat高可用

说明:默认情况下,虚拟网络服务地址192.168.1.210和主节点系统IP地址192.168.1.198绑定在相同的网卡接口表示其运行正常。

验证节点Node B的网络地址

CentOS7.4上怎么通过keepalive实现Tomcat高可用

说明:副节点Node B 没有看到虚拟网络服务地址且经过主节点的虚拟网络服务地址验证,表示keepalive服务在双机热备环境中已经运行正常。

验证Tomcat web portal是否正常运行

CentOS7.4上怎么通过keepalive实现Tomcat高可用

说明:拥有双机热备架构保障的Tomcat服务运行正常

验证当主节点Node A 的keepalive服务关闭或者宕机下,副节点Node B能否接管并保障Tomcat应用不受影响。

A. 查看副节点Node B的网络地址

CentOS7.4上怎么通过keepalive实现Tomcat高可用

说明:虚拟网络服务地址192.168.1.210和副节点系统IP地址192.168.1.199绑定在相同的网卡接口,表明副节点Node B已经成功接管主节点Node A的职责。

B. 验证Tomcat web portal是否仍然正常运行

说明:当主节点Node A出现故障后,副节点通过keepalive服务保障了业务 的正常运转。

到此,关于“CentOS7.4上怎么通过keepalive实现Tomcat高可用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯