集群部署

cluster deploying

前言

本手册对协同管理系统的集群部署相关事宜进行说明。如对手册存在疑问,可与致远互联的客户服务人员联系。

系统集群配置

概要说明

支持集群部署

  • 集群部署需要单点部署的支持,请先根据单点部署,部署好每台服务器
  • 集群结构支持多节点、水平集群,不支持垂直集群(多节点部署在同一服务器);
  • 集群部署需要依赖共享存储,文件存储或oss,本文只配置nfs共享文件存储
  • 集群全文搜索依赖ElasticSearch
  • 集群支持Redis缓存
  • 集群支持MySQL、Oracle、PostgreSql、达梦、人大金仓数据库;
  • 集群支持需要Nginx提供web负载均衡服务;
  • 集群部署结构下,各应用版本要求如下
服务 版本
Web服务 Nginx 1.20.1及以上版本 建议使用对应软件的最新版本,以减少安全漏洞
Redis 5以上
ElasticSearch 7.12-7.15
MySQL 5.7及以上版本
Oracle 12c及以上版本
postgresql 13及以上版本
达梦 8及以上版本
人大金仓 8及以上版本

网络拓扑

集群部署的网络拓扑示意图如下:

网络拓扑图Cluster-V8.0SP2

集群配置

  • 集群配置主要有以下步骤
    • 应用集群配置:
  • 集群中所有服务器的CPU,内存请保持一致,应用的目录结构保持一致,application.yaml配置文件的配置信息保持一致
    • Web服务配置:
  • Web服务为集群环境中支持Web访问及承担负载均衡的服务。 v8使用nginx作为web访问和负载均衡服务,需要nginx的web目录挂载到所有应用服务器,nginx不与服务同节点 避免80端口冲突
  • 集群配置及启动时需注意事项
    • 所有服务器的操作系统时间要求相差不超过3秒。
    • 所有服务器的IP地址必须在相同网段,即IP地址前3段需一致。
    • 涉及目录的配置项,物理存储位置必须一致。
    • 所有服务器的BUG补丁包及月度修复包版本必须一致(以主服务为准)。即更新补丁时需将集群中所有节点一并更新。

示例主机说明:

ip 应用
10.3.9.11 nginx
10.3.9.193 主节点
10.3.9.194 从节点

公共资源目录配置

集群环境下,公共资源配置会影响元数据、流程表单发布、文件上传等应用的使用,所有应用服务器都需要共享一个目录,请务必引起重视!!!

Nfs安装请执行yum安装yum install -y nfs-utils,本文不提供其他安装方式

挂载两种方式:

  1. tomcat集群中的一台作为主节点,其他节点挂载主节点
  2. 把nfs服务独立到单独的一台文件服务器,然后tomcat集群挂载独立节点(推荐)
  • 公共资源目录配置主要为以下内容
需共享挂载目录 示例路径
元数据目录和上传文件目录 seeyon.file.nfs.root-path (可通过S1配置或直接修改application.yaml配置文件) /data/A8C/base/upload
表单发布前后端源码目录 /data/A8C/base/autocode
nginx前端文件挂载到应用本地static目录 /data/A8C/ApacheJetspeed/webapps/seeyon/static
后端编译依赖目录 /data/A8C/maven-dependencies
前端编译依赖目录 /data/A8C/frontend-dependencies
  • seeyon.file.nfs.root-path: /data/A8C/base/upload 元数据目录和上传文件目录

    descript

    目录可以自己修改结构,所有应用集群服务器需要通过nfs服务挂载到相同的目录下

    示例服务器10.3.9.193、10.3.9.194两台,挂载情况如下,多台挂载一样,示例为共享10.3.9.193目录,挂载至10.3.9.194节点。

    mount -t nfs 10.3.9.193:/data/A8C/base/upload /data/A8C/base/upload

以下目录配置不用修改配置文件,但需要通过共享存储挂载。

示例环境部署在/data/A8C,请根据实际情况修改对应路径。

  • 表单发布前后端源码目录

    mount -t nfs 10.3.9.193:/data/A8C/base/autocode /data/A8C/base/autocode

  • 前端挂载目录,挂载nginx对应目录(前端文件放nginx服务器)

    mount -t nfs 10.3.9.11:/mnt/nfs/v8/frontend/tomcat /data/A8C/ApacheJetspeed/webapps/seeyon/static

  • 后端编译依赖目录( /data/A8C/maven-dependencies需共享)

mount -t nfs 10.3.9.193/data/repository /data/A8C/maven-dependencies

  • 前端编译依赖目录(/data/A8C/frontend-dependencies需共享)

mount -t nfs 10.3.9.193:/data/repository /data/A8C/frontend-dependencies

集群参数配置

添加如下配置(消息中心内存数据同步)

descript

应用集群配置

前端web反向代理服务nginx的配置

nginx安装部署请参考致远 《致远 COP-A8C 协同运营平台 安装工具手册》

[root@devops-local /etc/nginx/conf.d]# cat tomcat.conf

前端静态文件目录要和后端配置(流程表单前端共享目录)配置共享

Nginx配置

在nginx.conf 文件http模块添加配置

Nginx启停

启动服务

使用应用启动脚本或在S1服务管理启动应用,观察启动日志

显示启动成功,即部署完成,可通过浏览器访问应用

访问http://集群代理域名:80

descript

依赖组件安装

redis安装

参照【腾讯文档】Redis安装部署手册

Redis安装部署手册

注意事项

  • 单台redis或者多台redis配置,只能二选一,暂不支持redis的哨兵模式
  • V8集群各个节点都需要配置redis,并且各节点配置内容需要一致。

Elasticsearch安装

参照【腾讯文档】Elasticsearch安装部署手册

Elasticsearch安装部署手册

Mysql安装

详见《数据库部署》说明