JIRA高可用集群部署

JIRA高可用集群部署,第1张

JIRA高可用集群部署

目录
  • 部署流程简述
  • 注意事项
  • 具体 *** 作步骤

部署流程简述

此文档基于JIRA V8.15.0版本配置部署,对其他JIRA版本只具有参考作用,不确保配置流程相同

注:集群模式配置完成后并没有VIP,以IP的方式内部访问没有意义,而外部访问前端SLB需要支持session sticky,例如前端使用nginx,需要添加nginx-sticky-module模块。

机器都在/opt目录下安装JIRA,/data目录下存储jira索引数据,/data1目录挂载NAS,存储共享数据。

以测试环境为例,JIRA高可用配置大致流程如下:
①、停止原JIRA服务,将JIRA的数据目录下的data/、plugins/、logos/、caches/四个目录拷贝到NAS(可用NFS等共享目录代替)盘中,例如/data1目录下
②、JIRA数据目录,例如在/data目录下,将除data/、plugins/、logos/、caches/以外的所有文件,拷贝到其他节点的数据目录/data中
③、JIRA安装目录,例如在/opt目录下,直接拷贝到其他节点的/opt目录下
④、在三台JIRA的hosts,添加三台主机hostname与IP的关系,可以通过主机名解析IP
⑤、在JIRA数据目录创建cluster.properties文件,配置Jira id,jira.shared.home项
⑥、配置完成后,重启原JIRA,从JIRA的集群配置中查看集群状态
⑦、其他两个节点的JIRA,在JIRA数据目录创建cluster.properties文件,配置Jira id,jira.shared.home项,启动服务
⑧、查看JIRA日志的连接情况,最终从JIRA的集群配置中确认集群状态

注意事项
①、cluster.properties文件中,Jira id不同节点名称不同,jira.shared.home指定相同挂载的共享目录
②、三台主机可以互相解析,需要把主机名与IP信息写到hosts文件中
③、启动时,先把一台配置好集群文件cluster.properties的JIRA启动起来,将单点转为集群模式
④、注意JIRA的启动权限,确保程序目录,数据目录,NAS目录都有权限访问
⑤、当一个集群JIRA启动没问题后,再将其他节点JIRA启动,通过在JIRA WEB的集群配置上查看节点是否上线

关于JIRA的启动权限,可以更改jira的启动用户,具体可查看===>JIRA修改运行用户

具体 *** 作步骤

原JIRA为单点,不能保证服务的可靠性,一但宕机就无法提供服务,现打算升级JIRA架构,配置集群模式,所有节点均为主,任意一、二台服务宕机,不影响JIRA提供服务。

原JIRA(有数据):172.31.0.46
新JIRA节点(无数据):172.31.0.76
新JIRA节点(无数据):172.31.0.107

/data1是共享目录,这里的环境为云主机部署,本地环境可用NFS等代替NAS

停止原JIRA服务,将有数据的JIRA中 data,plugins,caches,logos 放到/data1/下

/opt/atlassian/jira/bin/catalina.sh stop 
cp -r  /data/atlassian/application-data/jira/{data,plugins,caches,logos} /data1/

将JIRA程序目录整个拷贝到其他机器上

scp -r /opt/atlassian/jira/ root@172.31.0.76:/opt/atlassian 
scp -r /opt/atlassian/jira/ root@172.31.0.107:/opt/atlassian

172.31.0.76,172.31.0.107两台机器上创建JIRA多层数据目录

mkdir -p /data/atlassian/application-data/jira

在172.31.0.46那台机器上,将 data,plugins,caches,logos 以外的所有文件拷贝到172.31.0.76,172.31.0.107两台机器上

scp -r `ls /data/atlassian/application-data/jira | grep -v 'data|plugins|caches|logos'` root@172.31.0.76:/data/atlassian/application-data/jira 
scp -r `ls /data/atlassian/application-data/jira | grep -v 'data|plugins|caches|logos'` root@172.31.0.107:/data/atlassian/application-data/jira

数据在其他节点传输完成后,在hosts文件中添加三台主机的解析记录,例如:172.31.0.46 node01,172.31.0.76 node02,172.31.0.76 node02,用于集群连接心跳线时能够解析通信

172.31.0.46 node01 
172.31.0.76 node02 
172.31.0.107 node03

在原JIRA(172.31.0.46)的数据目录下创建集群文件cluster.properties

touch /data/atlassian/application-data/jira/cluster.properties

在集群文件cluster.properties中添加配置信息

jira.node.id:在JIRA WEB的集群配置中显示的名称,三台机器不能相同

jira.shared.home:JIRA集群的共享目录,这里为NAS盘/data1

ehcache.listener.hostName:声明集群中自己的主机名,名称同hosts文件中声明的记录,用于其他机器连接,三台机器不能相同

vim /data/atlassian/application-data/jira/cluster.properties
jira.node.id = node1
jira.shared.home = /data1
ehcache.listener.hostName = node01

配置完成后,启动JIRA服务

/opt/atlassian/jira/bin/catalina.sh start

启动成功后,使用管理员用户登录jira,点击一般设置==>集群,查看JIRA WEB的集群配置,是否识别到启动主机的节点ID

其他两台机器也在/data/atlassian/application-data/jira/目录下创建cluster.properties文件,内容如下

172.31.0.76的cluster.properties文件内容 
jira.node.id = node2 
jira.shared.home = /data1 
ehcache.listener.hostName = node02 

172.31.0.107的cluster.properties文件内容 
jira.node.id = node3 
jira.shared.home = /data1 
ehcache.listener.hostName = node03

在172.31.0.76,172.31.0.107机器上启动JIRA服务

/opt/atlassian/jira/bin/catalina.sh start

最终在JIRA WEB上查看集群配置,看三台机器是否上线

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5698593.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存