基于NGINX实现至轻云高可用部署
本文说明高可用部署的适用场景、操作步骤和关键配置,帮助用户完成环境部署与验证。
资源购买
配置:centos7.9、4核心、16GB内存
- 服务器1:nfs共享盘服务
- 共享磁盘:挂载到服务器1中
- 服务器2:NGINX负载均衡服务
- 服务器3:安装至轻云1
- 服务器4:安装至轻云2
- 服务器5:安装至轻云3
| 服务器名 | 公网IP | 内网IP |
|---|---|---|
| 服务器1 | 47.92.73.226 | 172.16.215.85 |
| 服务器2 | 39.100.69.110 | 172.16.215.84 |
| 服务器3 | 47.92.198.55 | 172.16.215.86 |
| 服务器4 | 47.92.1.129 | 172.16.215.87 |
| 服务器5 | 47.92.5.96 | 172.16.215.83 |
挂载磁盘
服务器1挂载磁盘,参考文档:linux 挂载磁盘
安装nfs服务
服务器1安装nfs服务,参考文档:linux 安装nfs服务
挂载共享盘
给服务器3、服务器4、服务器5挂载服务器的共享盘,参考文档:linux 挂载共享盘
安装至轻云服务
给服务器3、服务器4、服务器5安装至轻云服务,参考文档:至轻云离线部署
修改配置文件,将资源目录指向共享盘
包含以下配置项: spring.datasource.url:数据库数据目录(使用共享盘) isx-app.resources-path:资源文件目录(使用共享盘)
vim zhiqingyun/conf/application-local.yml
server:
port: 8080
spring:
security:
user:
name: admin
password: admin123
datasource:
driver-class-name: org.h2.Driver
url: jdbc:h2:file:/data/zhiqingyun/h2/data;AUTO_SERVER=TRUE
username: root
password: root1234
isx-app:
resources-path: /data/zhiqingyun
admin-passwd: admin123
use-ssl: false
注意:复制数据库驱动文件到共享盘 只需要执行一次,不需要重复执行
mkdir -p /data/zhiqingyun
cp -r zhiqingyun/resources/jdbc /data/zhiqingyun/
启动项目
三台服务器都要启动至轻云服务
bash zhiqingyun/bin/start.sh
安装NGINX负载服务
给服务器2安装NGINX负载服务 参考文档:NGINX 负载均衡配置
upstream zhiqingyun_servers {
server 172.16.215.86:8080 weight=1 max_fails=3 fail_timeout=60s;
server 172.16.215.85:8080 weight=1 max_fails=3 fail_timeout=60s;
# 所有节点挂掉后使用
server 172.16.215.84:8080 backup;
}
server {
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://zhiqingyun_servers/;
}
}
通过NGINX访问至轻云
- 网址:http://39.100.69.110
- 账号:admin
- 密码:admin123
