nacos集群搭建
- 替换nacos内嵌数据库
- 配置nacos集群多服务
- 配置nginx方向代理构建nacos虚拟映射
参考官方文档:https://nacos.io/zh-cn/docs/deployment.html
替换内嵌数据库
由于需要搭建分布式nacos集群,所以需要将所有nacos连接得数据库改成统一得集群配置。
## 修改目录下数据库连接
nacos/conf/application.properties
## 增加数据库连接配置
#*************** Config Module Related Configurations ***************#
### If use MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://42.193.126.***:3981/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=*****
修改完毕,尝试单机启动
./startup.sh -m standalone
新增集群端口
## 该目录下,新增文件
nacos/conf/cluster.conf
## 编辑文件
172.17.0.1:9001 ## 未被占用端口号
172.17.0.1:9002
172.17.0.1:9003
修改shell脚本,多端口启动
## 新增 e参数,指向端口号传参
while getopts ":m:f:s:c:p:e:" opt
do
case $opt in
m)
MODE=$OPTARG;;
f)
FUNCTION_MODE=$OPTARG;;
s)
SERVER=$OPTARG;;
c)
MEMBER_LIST=$OPTARG;;
p)
EMBEDDED_STORAGE=$OPTARG;;
e)
PORT=$OPTARG;;
?)
echo "Unknown parameter"
exit 1;;
# start 启动时,指定端口参数
echo "$JAVA ${JAVA_OPT}" > ${BASE_DIR}/logs/start.out 2>&1 &
nohup $JAVA -Dserver.port=${PORT} ${JAVA_OPT} nacos.nacos >> ${BASE_DIR}/logs/start.out 2>&1 &
echo "nacos is starting,you can check the ${BASE_DIR}/logs/start.out"
配置完毕:
回到nacos/bin目录
./startup.sh -e 9001
./startup.sh -e 9002
./startup.sh -e 9003
访问9001端口测试
到此:nacos shell脚本多端口启动成功
搭建nginx代理
nginx安装参考:https://www.cnblogs.com/pxstar/p/14808244.html
## nginx新增功能块
#gzip on;
upstream cluster {
server 127.0.0.1:9001;
server 127.0.0.1:9002;
server 127.0.0.1:9003;
}
## server新增监听端口号 1111
listen 1111;
## 新增代理地址
proxy_pass http://cluster;
配置后,打开服务1111防火墙
访问如下