Emobile集群配置
- 修改数据库服务
移动平台数据库服务默认只允许本机连接访问,所以在集群环境下需要对数据库添加远程连接用户,允许次节点能够连接到主节点上面的数据库服务。具体操作步骤如下:
在主节点服务器上使用以下命令连接MySQL:
Windows操作系统命令为:(假设系统安装在D:\路径下)
D:\emp\dbsvr\mysql\bin\mysql.exe -P4806 -uroot -pWEAVERemobile7!@#
Linux操作系统命令为:(假设系统安装在/usr路径下)
/usr/emp/dbsvr/mysql/bin/mysql -uroot -pWEAVERemobile7\!@# --socket=/usr/emp/data/mysqldata/mysql.sock
进入控制台,然后执行以下命令添加远程连接用户:
create user 'root'@'192.168.1.12' identified by 'WEAVERemobile7!@#'; grant all privileges on *.* to 'root'@'192.168.1.12' with grant option; flush privileges;
192.168.1.12为次节点IP地址。如果有多个次节点,则将以上命令中的192.168.1.12修改为其他次节点的IP地址,并再次执行即可。
- 修改缓存服务
移动平台缓存服务默认只允许本机连接访问,所以在集群环境下需要修改配置,允许次节点能够连接到主节点上面的缓存服务。具体操作步骤如下:
修改主节点服务器上的配置文件:
Windows操作系统为:emp\cachesvr\redis\redis.windows-service.conf
Linux操作系统为:emp/cachesvr/redis/redis.conf
- 找到“bind 127.0.0.1”,在这一行最前面加上“#”字符,即将“bind 127.0.0.1”修改为“# bind 127.0.0.1”
- 找到“protected-mode yes”,在这一行最前面加上“#”字符,即将“protected-mode yes”修改为“#protected-mode yes”;修改后保存文件。
- 子节点服务部署
在所有子节点服务器上解压移动平台基础安装包,并直接覆盖最新版的升级包文件
不要执行安装和启动命令,只是解压安装包,同时覆盖升级包
- 修改基础配置
修改配置文件:emp\work\config\application-custom.properties;所有节点服务上的这个文件都需要修改,但主次节点修改的内容有些不同。
- 主节点修改内容:
- 找到“session配置”的部分配置,将 spring.session.store-type=none 修改为 spring.session.store-type=redis
- 找到“其他配置”的部分配置,将 emobile.base-setting.cache-type=ehcache 修改为 emobile.base-setting.cache-type=redis
- 找到“集群配置”的部分配置,在后面增加一条数据 info.cluster.nodeId=node1
- 次节点修改内容:(前两点与主节点修改内容相同)
- 找到“session配置”的部分配置,将 spring.session.store-type=none 修改为 spring.session.store-type=redis
- 找到“其他配置”的部分配置,将 emobile.base-setting.cache-type=ehcache 修改为 emobile.base-setting.cache-type=redis
- 找到“集群配置”的部分配置,在后面增加一条数据 info.cluster.nodeId=node2
info.cluster.nodeId的值必须保证唯一,即不允许出现不同的节点info.cluster.nodeId值相同的情况。如果有多个次节点,则需要修改info.cluster.nodeId的值为node3、node4…
- 找到“数据源配置”-“MySQL数据库”的部分配置,将127.0.0.1修改为主节点IP地址192.168.1.11
- 找到“redis配置”的部分配置,将127.0.0.1修改为主节点IP地址192.168.1.11
修改后保存文件。
- 主节点修改内容:
- 启动服务
重新启动主节点所有服务,先执行stop命令停止服务,再执行start命令启动服务
启动子节点应用服务,注意子节点只需要启动应用(tomcat)服务,执行\emp\appsvr\目录下start_tomcat命令进行启动
启动后分别单独访问每个节点的地址进入系统,确保每个服务都启动正常并可以正常访问,同时确保提交license授权
- 配置负载均衡
负载均衡配置这里以nginx为例(其他负载均衡软件及设备请跳过该步骤自行配置,本文不做说明),假设nginx服务所在服务器IP地址为192.168.1.10,安装目录为:Windows操作系统为D:\nginx目录,Linux系统为/usr/local/nginx目录。
修改nginx.conf文件(通常位于nginx安装目录下的conf目录),在http节点里面添加以下内容:
upstream em7-cluster { ip_hash; server 192.168.1.11:8999; server 192.168.1.12:8999; } server { listen 8999; server_name localhost; location / { root html; index index.html index.htm; proxy_pass http://em7-cluster; proxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
使用“nginx”命令启动nginx服务,或者“nginx -s reload”命令重启nginx服务。
- 系统访问地址设置
经过以上步骤,集群配置已经完成,系统的访问地址也变为负载均衡的地址(http://192.168.1.10:8999),访问并登录到移动平台后台,进入到基础参数设置页面,请正确设置系统的访问地址并保存
系统外部地址:请填写负载均衡地址http://192.168.1.10:8999映射到外网的地址
系统内部地址:请填写http://192.168.1.10:8999
文件存储路径:需要配置网络共享目录
图1 系统访问地址设置
- 消息服务地址说明
特别注意:消息服务(openfire)是需要客户端进行连接的,在EM管理后台需要配置消息服务的地址,配置的地址需要是主节点的服务器地址,不要使用负载均衡的地址,负载均衡只是针对tomcat服务(8999端口)的。